commit 3f50c8dd9ae06fac88d11ca32a1fa722ad5ebbd7 Author: 程广 Date: Fri Mar 24 19:34:36 2023 +0800 add diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json new file mode 100644 index 0000000..b4269a9 --- /dev/null +++ b/.vscode/c_cpp_properties.json @@ -0,0 +1,19 @@ +{ + "configurations": [ + { + "name": "Mac", + "includePath": [ + "${workspaceFolder}/**" + ], + "defines": [], + "macFrameworkPath": [ + "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks" + ], + "compilerPath": "/usr/bin/clang", + "cStandard": "c17", + "cppStandard": "c++17", + "intelliSenseMode": "macos-clang-x64" + } + ], + "version": 4 +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..e9a0125 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,65 @@ +{ + "files.associations": { + "__bit_reference": "cpp", + "__bits": "cpp", + "__config": "cpp", + "__debug": "cpp", + "__errc": "cpp", + "__hash_table": "cpp", + "__locale": "cpp", + "__mutex_base": "cpp", + "__node_handle": "cpp", + "__nullptr": "cpp", + "__split_buffer": "cpp", + "__string": "cpp", + "__threading_support": "cpp", + "__tuple": "cpp", + "array": "cpp", + "atomic": "cpp", + "bitset": "cpp", + "cctype": "cpp", + "chrono": "cpp", + "clocale": "cpp", + "cmath": "cpp", + "compare": "cpp", + "complex": "cpp", + "concepts": "cpp", + "cstdarg": "cpp", + "cstddef": "cpp", + "cstdint": "cpp", + "cstdio": "cpp", + "cstdlib": "cpp", + "cstring": "cpp", + "ctime": "cpp", + "cwchar": "cpp", + "cwctype": "cpp", + "exception": "cpp", + "initializer_list": "cpp", + "ios": "cpp", + "iosfwd": "cpp", + "iostream": "cpp", + "istream": "cpp", + "limits": "cpp", + "list": "cpp", + "locale": "cpp", + "memory": "cpp", + "mutex": "cpp", + "new": "cpp", + "optional": "cpp", + "ostream": "cpp", + "ratio": "cpp", + "sstream": "cpp", + "stdexcept": "cpp", + "streambuf": "cpp", + "string": "cpp", + "string_view": "cpp", + "system_error": "cpp", + "tuple": "cpp", + "type_traits": "cpp", + "typeinfo": "cpp", + "unordered_map": "cpp", + "variant": "cpp", + "vector": "cpp", + "algorithm": "cpp" + } +} \ No newline at end of file diff --git a/HkStreamer.cpp b/HkStreamer.cpp new file mode 100644 index 0000000..d71a224 --- /dev/null +++ b/HkStreamer.cpp @@ -0,0 +1,109 @@ +#include +#include +#include +#include +#include "HCNetSDK.h" +#include "HkStreamer.h" + + +void CALLBACK fPlayDataCallBack(LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser) +{ + if(dwBufSize>0){ + char pb[dwBufSize] = {0}; + memcpy(pb, pBuffer, dwBufSize); + std::cout.write(pb, dwBufSize); + } + int pos = NET_DVR_GetDownloadPos(lPlayHandle); + if (pos > 98) + { + fprintf(stderr, "pyd---Current Time:%d, data size:%d\n", time(NULL), dwBufSize); + printf("Play over!%d\n", pos); + } +} + +int login(LPLoginInfo loginInfo) +{ + NET_DVR_Init(); + long lUserID; + // login + NET_DVR_USER_LOGIN_INFO struLoginInfo = {0}; + struLoginInfo.bUseAsynLogin = false; + + struLoginInfo.wPort = 8000; + memcpy(struLoginInfo.sDeviceAddress, loginInfo->sDeviceAddress, NET_DVR_DEV_ADDRESS_MAX_LEN); + memcpy(struLoginInfo.sUserName, loginInfo->sUserName, NAME_LEN); + memcpy(struLoginInfo.sPassword, loginInfo->sPassword, NAME_LEN); + lUserID = NET_DVR_Login_V40(&struLoginInfo, nullptr); + return lUserID; +} +void cpTime(NET_DVR_TIME *nvrTime, StreamDate date){ + nvrTime->dwYear = date.dwYear; + nvrTime->dwMonth = date.dwMonth; + nvrTime->dwDay = date.dwDay; + nvrTime->dwHour = date.dwHour; + nvrTime->dwMinute = date.dwMinute; + nvrTime->dwSecond = date.dwSecond; +} +int playback(LPLoginInfo loginInfo, LPStream stream) +{ + long lUserID = login(loginInfo); + if (lUserID < 0) + { + printf("pyd1---Login error, %d\n", NET_DVR_GetLastError()); + return HPR_ERROR; + } + NET_DVR_VOD_PARA struVodPara = {0}; + StreamDate start = stream->start; + cpTime(&struVodPara.struBeginTime, start); + cpTime(&struVodPara.struEndTime, stream->end); + int hPlayback = NET_DVR_PlayBackByTime_V40(lUserID, &struVodPara); + if (hPlayback < 0) + { + printf("pyd1---PlayBack error, %d\n", NET_DVR_GetLastError()); + return HPR_ERROR; + } + + if (!NET_DVR_SetPlayDataCallBack(hPlayback, fPlayDataCallBack, 1)) + { + printf("NET_DVR_SetPlayDataCallBack fail!\n"); + } + + if (!NET_DVR_PlayBackControl(hPlayback, NET_DVR_PLAYSTART, 0, NULL)) + { + printf("play back control failed [%d]\n", NET_DVR_GetLastError()); + return HPR_ERROR; + } + + int pos = 0; + for (pos = 0; pos < 100 && pos >= 0; pos = NET_DVR_GetDownloadPos(hPlayback)) + { + sleep(10); + } + printf("have got %d\n", pos); + if (!NET_DVR_StopGetFile(hPlayback)) + { + printf("failed to stop get file [%d]\n", NET_DVR_GetLastError()); + return HPR_ERROR; + } + + printf("StopGetFile\n"); + if (pos < 0 || pos > 100) + { + printf("download err [%d]\n", NET_DVR_GetLastError()); + return HPR_ERROR; + } + else + { + return 0; + } + + // sleep(180); //˯3���� + NET_DVR_Logout_V30(lUserID); + // cleanup + NET_DVR_Cleanup(); + + return HPR_OK; +} +int main() +{ +} \ No newline at end of file diff --git a/HkStreamer.o b/HkStreamer.o new file mode 100755 index 0000000..297ffb9 Binary files /dev/null and b/HkStreamer.o differ diff --git a/include/DataType.h b/include/DataType.h new file mode 100644 index 0000000..e4de8c4 --- /dev/null +++ b/include/DataType.h @@ -0,0 +1,111 @@ +#ifndef DATA_TYPE_H +#define DATA_TYPE_H +#define FRAME_HEAD_MAGIC 0x03211546 +#define SYSTEM_SYNC_ID 2 + +#ifdef __LINUX__ +typedef unsigned char UCHAR; +typedef unsigned char* PBYTE; +typedef char* LPTSTR; +typedef unsigned short USHORT; +typedef int HANDLE; +typedef unsigned long ULONG; +typedef unsigned long DWORD; +#endif //#ifdef __LINUX__ + +typedef struct tagFrameInfo{ + ULONG SyncId; /* 00000000000000000000000000010b */ + ULONG Magic; + USHORT FrameType; /* I frames , P frames or BBP frames Audio frames or dsp status etc */ + ULONG Length; /*lenth include this header */ + ULONG FrameNumber; /* serial number of this frame */ + UCHAR Breakable; /* indicate if stream breakable, you could restart new file(with PktSysHeader) if true */ + /*ULONG Ack;*/ + ULONG PTS; /* system clock when this frames is processed */ +}TMFRAME_HEADER, *PTMFRAME_HEADER; + +typedef enum { + StandardNone = 0x80000000, + StandardNTSC = 0x00000001, + StandardPAL = 0x00000002, + StandardSECAM = 0x00000004, +} VideoStandard_t; + + +typedef enum { + PktError = 0, + PktIFrames = 0x0001, + PktPFrames = 0x0002, + PktBBPFrames = 0x0004, + PktAudioFrames = 0x0008, + PktMotionDetection = 0x00010, + PktDspStatus = 0x00020, + PktOrigImage = 0x00040, + PktSysHeader = 0x00080, + PktBPFrames = 0x00100, + PktSFrames = 0x00200, + PktSubIFrames = 0x00400, + PktSubPFrames = 0x00800, + PktSubBBPFrames = 0x01000, + PktSubSysHeader = 0x02000 +}FrameType_t; + +typedef struct tagVersion{ + ULONG DspVersion, DspBuildNum; + ULONG DriverVersion, DriverBuildNum; + ULONG SDKVersion, SDKBuildNum; +}VERSION_INFO, *PVERSION_INFO; + +typedef enum { + ENC_CIF_FORMAT = 0, + ENC_QCIF_FORMAT = 1, + ENC_2CIF_FORMAT = 2, + ENC_4CIF_FORMAT = 3, + ENC_QQCIF_FORMAT = 4, + ENC_CIFQCIF_FORMAT =5, + ENC_CIFQQCIF_FORMAT =6, + ENC_DCIF_FORMAT =7, + ENC_VGA_FORMAT=8 +}PictureFormat_t; + +typedef struct tagMotionData{ + PictureFormat_t PicFormat; + ULONG HorizeBlocks; + ULONG VerticalBlocks; + ULONG BlockSize; +}MOTION_DATA_HEADER, *PMOTION_DATA_HEADER; + + +#define _OSD_BASE 0x9000 /*base address of special character*/ +#define _OSD_YEAR4 (_OSD_BASE+0) /*show year time by length of 4 , for example: 2005*/ +#define _OSD_YEAR2 (_OSD_BASE+1) /*show year time by length of 2, for example: 05 */ +#define _OSD_MONTH3 (_OSD_BASE+2) /*show month time in English, for example: Jan*/ +#define _OSD_MONTH2 (_OSD_BASE+3) /*show month time by two Arabic numerals, for example: 07*/ +#define _OSD_DAY (_OSD_BASE+4) /*show day time by two Arabic numerals, for example: 31*/ +#define _OSD_WEEK3 (_OSD_BASE+5) /*show week time in English: MON¡«SUN*/ +#define _OSD_CWEEK1 (_OSD_BASE+6) /*show week time in Chinese GB code*/ +#define _OSD_HOUR24 (_OSD_BASE+7) /*show 24 hours clock: 00¡«23 */ +#define _OSD_HOUR12 (_OSD_BASE+8) /*show 12 hours clock: 00¡«12*/ +#define _OSD_MINUTE (_OSD_BASE+9) /*show minute time by length of 2: 00¡«59*/ +#define _OSD_SECOND (_OSD_BASE+10) /*show second time by length of 2: 00¡«59*/ +#define _OSD_MILISECOND (_OSD_BASE+11) /*show millisecond time by length of 3: 000~999*/ +#define _OSD_APM (_OSD_BASE+14) /*show a.m. or p.m. by length of 2 bit, AM or PM*/ + +//For new added APIs to set OSD: SetEncoderOsdDisplayMode, SetDecoderOsdDisplayMode and SetDisplayOsdDisplayMode in v6.0 SDK, we use new basic address of special character. +#define _OSD_BASE_EX 0x90000 /*base address of special character*/ +#define _OSD_YEAR4_EX (_OSD_BASE_EX+0) /*the same as _OSD_YEAR4*/ +#define _OSD_YEAR2_EX (_OSD_BASE_EX+1) /*the same as _OSD_YEAR2*/ +#define _OSD_MONTH3_EX (_OSD_BASE_EX+2) /*the same as _OSD_MONTH3*/ +#define _OSD_MONTH2_EX (_OSD_BASE_EX+3) /*the same as _OSD_MONTH2*/ +#define _OSD_DAY_EX (_OSD_BASE_EX+4) /*the same as _OSD_DAY*/ +#define _OSD_WEEK3_EX (_OSD_BASE_EX+5) /*the same as _OSD_WEEK3*/ +#define _OSD_CWEEK1_EX (_OSD_BASE_EX+6) /*the same as _OSD_CWEEK1*/ +#define _OSD_HOUR24_EX (_OSD_BASE_EX+7) /*the same as _OSD_HOUR24*/ +#define _OSD_HOUR12_EX (_OSD_BASE_EX+8) /*the same as _OSD_HOUR12*/ +#define _OSD_MINUTE_EX (_OSD_BASE_EX+9) /*the same as _OSD_MINUTE*/ +#define _OSD_SECOND_EX (_OSD_BASE_EX+10) /*the same as _OSD_SECOND*/ +#define _OSD_MILISECOND_EX (_OSD_BASE_EX+11) /*the same as _OSD_MILISECOND*/ +#define _OSD_APM_EX (_OSD_BASE_EX+14) /*the same as _OSD_APM*/ + + +#endif diff --git a/include/DecodeCardSdk.h b/include/DecodeCardSdk.h new file mode 100644 index 0000000..983e0fb --- /dev/null +++ b/include/DecodeCardSdk.h @@ -0,0 +1,451 @@ +/////////////////////////////////////////////////////////////////////////// +// DS-40xxHC/HF BOARD SYSTEM SDK // +/////////////////////////////////////////////////////////////////////////// + +#ifndef DECODECARD_SDK_H +#define DECODECARD_SDK_H + +#include "datatype.h" + +#define DLLEXPORT_API extern "C" __declspec(dllexport) +#define ERR_WAIT_TIMEOUT 0xc0000001 +#define ERR_INVALID_HANDLE 0xc0000002 +#define ERR_INVALID_ARGUMENT 0xc0000003 +#define ERR_DDRAW_CREATE_FAILED 0xc0000004 +#define ERR_DDRAW_CAPS_FAULT 0xc0000005 +#define ERR_SET_COOPERATIVELEVEL_FAILED 0xc0000006 +#define ERR_PRIMARY_SURFACE_CREATE_FAILED 0xc0000007 +#define ERR_GET_OVERLAY_ADDRESS_FAILED 0xc0000008 +#define ERR_OVERLAY_SURFACE_CREATE_FAILED 0xc0000009 +#define ERR_OVERLAY_UPDATE_FAILED 0xc000000a +#define ERR_TMMAN_FAILURE 0xc000000b +#define ERR_CHANNELMAGIC_MISMATCH 0xc000000c +#define ERR_CALLBACK_REGISTERED 0xc000000d +#define ERR_QUEUE_OVERFLOW 0xc000000e +#define ERR_STREAM_THREAD_FAILURE 0xc000000f +#define ERR_THREAD_STOP_ERROR 0xc0000010 +#define ERR_NOT_SUPPORT 0xc0000011 +#define ERR_OUTOF_MEMORY 0xc0000012 +#define ERR_DSP_BUSY 0xc0000013 +#define ERR_DATA_ERROR 0xc0000014 +#define ERR_KERNEL 0xc0000016 +#define ERR_OFFSCREEN_CREATE_FAILED 0xc0000017 +#define ERR_MULTICLOCK_FAILURE 0xc0000018 +#define ERR_INVALID_DEVICE 0xc0000019 +#define ERR_INVALID_DRIVER 0xc000001a +//error code for MD card +#define HWERR_SUCCESS 0 +#define HWERR_ALLOCATE_MEMORY 0xc1000001 +#define HWERR_INVALID_HANDLE 0xc1000002 +#define HWERR_DDRAW_CREATE_FAILED 0xc1000003 +#define HWERR_DDRAW_CAPS_FAULT 0xc1000004 +#define HWERR_SET_COOPERATIVELEVEL_FAILED 0xc1000005 +#define HWERR_PRIMARY_SURFACE_CREATE_FAILED 0xc1000006 +#define HWERR_OVERLAY_CREATE_FAILED 0xc1000007 +#define HWERR_GET_OVERLAY_ADDRESS_FAILED 0xc1000008 +#define HWERR_OVERLAY_UPDATE_FAILED 0xc1000009 +#define HWERR_SURFACE_NULL 0xc100000a +#define HWERR_FILEHEADER_UNKNOWN 0xc100000b +#define HWERR_CREATE_FILE_FAILED 0xc100000c +#define HWERR_FILE_SIZE_ZERO 0xc100000d +#define HWERR_FILE_SIZE_INVALID 0xc100000d +#define HWERR_CREATE_OBJ_FAILED 0xc100000e +#define HWERR_CHANNELMAGIC_MISMATCH 0xc100000f +#define HWERR_PARA_OVER 0xc1000010 +#define HWERR_ORDER 0xc1000011 +#define HWERR_COMMAND 0xc1000012 +#define HWERR_UNSUPPORTED 0xc1000013 +#define HWERR_DSPOPEN 0xc1000014 +#define HWERR_DSPLOAD 0xc1000015 +#define HWERR_ALLOCATE_DSPMEMORY 0xc1000016 +#define HWERR_DSPCHECHER 0xc1000017 +#define HWERR_IMGFILE_UNKNOWN 0xc1000018 +#define HWERR_INVALID_FILE 0xc1000019 +//standart +#define HW_PAL 2 +#define HW_NTSC 1 +//jump direction +#define HW_JUMP_FORWARD 309 +#define HW_JUMP_BACKWARD 310 + + +typedef enum tagTypeVideoFormat +{ + vdfRGB8A_233 = 0x00000001, + vdfRGB8R_332 = 0x00000002, + vdfRGB15Alpha = 0x00000004, + vdfRGB16 = 0x00000008, + vdfRGB24 = 0x00000010, + vdfRGB24Alpha = 0x00000020, + + vdfYUV420Planar = 0x00000040, + vdfYUV422Planar = 0x00000080, + vdfYUV411Planar = 0x00000100, + vdfYUV420Interspersed = 0x00000200, + vdfYUV422Interspersed = 0x00000400, + vdfYUV411Interspersed = 0x00000800, + vdfYUV422Sequence = 0x00001000, /* U0, Y0, V0, Y1: For VO overlay */ + vdfYUV422SequenceAlpha = 0x00002000, + /* U0, Y0, V0, Y1: For VO overlay, with low bit for alpha blending */ + vdfMono = 0x00004000, /* 8 bit monochrome */ + + vdfYUV444Planar = 0x00008000, +}TypeVideoFormat; + + +typedef enum _BitrateControlType_t +{ + brCBR = 0, + brVBR = 1, +}BitrateControlType_t; + +typedef enum _BOARD_TYPE_DS +{ + DS400XM =0, + DS400XH =1, + DS4004HC =2, + DS4008HC =3, + DS4016HC =4, + DS4001HF =5, + DS4004HF =6, + DS4002MD =7, + DS4004MD =8, //4004MD + DS4016HCS =9, //4016HCS + DS4002HT =10, //4002HT + DS4004HT =11, //4004HT + DS4008HT =12, //4008HT + DS4004HC_PLUS =13, //4004HC+ + DS4008HC_PLUS =14, //4008HC+ + DS4016HC_PLUS =15, //4016HC+ + DS4008HF =16, //4008HF + DS4008MD =17, //4008MD + DS4008HS =18, //4008HS + DS4016HS =19, //4016HS + INVALID_BOARD_TYPE =0xffffffff, +}BOARD_TYPE_DS; + +#define STREAM_TYPE_VIDEO 1 +#define STREAM_TYPE_AUDIO 2 +#define STREAM_TYPE_AVSYNC 3 +#define DRAWFUN(x) void (CALLBACK* x)(long nPort,HDC hDc,LONG nUser) + + +typedef void (*LOGRECORD_CALLBACK)(char *str, void *context); +typedef int (*STREAM_READ_CALLBACK)(ULONG channelNumber, void *context); +typedef int (*STREAM_DIRECT_READ_CALLBACK)(ULONG channelNumber,void *DataBuf,DWORD Length,int FrameType,void *context); + +typedef struct tagChannelCapability{ + UCHAR bAudioPreview; + UCHAR bAlarmIO; + UCHAR bWatchDog; +}CHANNEL_CAPABILITY, *PCHANNEL_CAPABILITY; + +typedef struct tagFramsStatistics{ + ULONG VideoFrames; + ULONG AudioFrames; + ULONG FramesLost; + ULONG QueueOverflow; + ULONG CurBps; +}FRAMES_STATISTICS, *PFRAMES_STATISTICS; + +DLLEXPORT_API int __stdcall InitDSPs(); +DLLEXPORT_API int __stdcall DeInitDSPs(); +DLLEXPORT_API HANDLE __stdcall ChannelOpen(int ChannelNum); +DLLEXPORT_API int __stdcall ChannelClose(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall GetTotalChannels(); +DLLEXPORT_API int __stdcall GetTotalDSPs(); +DLLEXPORT_API int __stdcall StartVideoPreview(HANDLE hChannelHandle,HWND WndHandle, RECT *rect, BOOLEAN bOverlay, int VideoFormat, int FrameRate); +DLLEXPORT_API int __stdcall StopVideoPreview(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall SetVideoPara(HANDLE hChannelHandle, int Brightness, int Contrast, int Saturation, int Hue); +DLLEXPORT_API int __stdcall GetVideoPara(HANDLE hChannelHandle, VideoStandard_t *VideoStandard, int *Brightness, int *Contrast, int *Saturation, int *Hue); +DLLEXPORT_API int __stdcall GetVideoSignal(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall GetSDKVersion(PVERSION_INFO VersionInfo); +DLLEXPORT_API int __stdcall GetCapability(HANDLE hChannelHandle, CHANNEL_CAPABILITY *Capability); +DLLEXPORT_API int __stdcall GetLastErrorNum(HANDLE hChannelHandle, ULONG *DspError, ULONG *SdkError); +DLLEXPORT_API int __stdcall SetStreamType(HANDLE hChannelHandle, USHORT Type); +DLLEXPORT_API int __stdcall GetStreamType(HANDLE hChannelHandle, USHORT *StreamType); +DLLEXPORT_API int __stdcall GetFramesStatistics(HANDLE hChannelHandle, PFRAMES_STATISTICS framesStatistics); +DLLEXPORT_API int __stdcall StartMotionDetection(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall GetBoardInfo(HANDLE hChannelHandle, ULONG *BoardType, UCHAR *SerialNo); +DLLEXPORT_API int __stdcall StopMotionDetection(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall GetOriginalImage(HANDLE hChannelHandle, UCHAR *ImageBuf, ULONG *Size); +DLLEXPORT_API int __stdcall RegisterLogRecordCallback(LOGRECORD_CALLBACK LogRecordFunc, void *Context); +DLLEXPORT_API int __stdcall SetAudioPreview(HANDLE hChannelHandle, BOOL bEnable); +DLLEXPORT_API int __stdcall ReadStreamData(HANDLE hChannelHandle, void *DataBuf, DWORD *Length, int *FrameType); +DLLEXPORT_API int __stdcall RegisterMessageNotifyHandle(HWND hWnd, UINT MessageId); +DLLEXPORT_API int __stdcall StartVideoCapture(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall StopVideoCapture(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall SetIBPMode(HANDLE hChannelHandle, int KeyFrameIntervals, int BFrames, int PFrames, int FrameRate); +DLLEXPORT_API int __stdcall SetDefaultQuant(HANDLE hChannelHandle, int IQuantVal, int PQuantVal, int BQuantVal); +DLLEXPORT_API int __stdcall SetOsd(HANDLE hChannelHandle, BOOL Enable); + +DLLEXPORT_API int __stdcall SetLogo(HANDLE hChannelHandle, int x, int y, int w, int h, unsigned char *yuv); +DLLEXPORT_API int __stdcall StopLogo(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall SetupMotionDetection(HANDLE hChannelHandle, RECT *RectList, int iAreas); +DLLEXPORT_API int __stdcall MotionAnalyzer(HANDLE hChannelHandle, char *MotionData, int iThreshold, int *iResult); +DLLEXPORT_API int __stdcall LoadYUVFromBmpFile(char *FileName, unsigned char *yuv, int BufLen, int *Width, int *Height); +DLLEXPORT_API int __stdcall SaveYUVToBmpFile(char *FileName, unsigned char *yuv, int Width, int Height); +DLLEXPORT_API int __stdcall CaptureIFrame(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall RegisterStreamReadCallback(STREAM_READ_CALLBACK StreamReadCallback, void *Context); +DLLEXPORT_API int __stdcall AdjustMotionDetectPrecision(HANDLE hChannelHandle, + int iGrade, int iFastMotionDetectFps, + int iSlowMotionDetectFps); +DLLEXPORT_API int __stdcall SetupBitrateControl(HANDLE hChannelHandle, ULONG MaxBps); +DLLEXPORT_API int __stdcall SetOverlayColorKey(COLORREF DestColorKey); +DLLEXPORT_API int __stdcall SetOsdDisplayMode(HANDLE hChannelHandle, int Brightness, BOOL Translucent, int parameter, USHORT *Format1, USHORT *Format2); +DLLEXPORT_API int __stdcall SetLogoDisplayMode(HANDLE hChannelHandle, COLORREF ColorKey, BOOL Translucent, int TwinkleInterval); +DLLEXPORT_API int __stdcall SetEncoderPictureFormat(HANDLE hChannelHandle, PictureFormat_t PictureFormat); +DLLEXPORT_API int __stdcall SetVideoStandard(HANDLE hChannelHandle, VideoStandard_t VideoStandard); +DLLEXPORT_API int __stdcall RestoreOverlay(); +DLLEXPORT_API int __stdcall ResetDSP(int DspNumber); +DLLEXPORT_API int __stdcall GetSoundLevel(HANDLE hChannelHandle); + + +DLLEXPORT_API int __stdcall SetBitrateControlMode(HANDLE hChannelHandle, BitrateControlType_t brc); +DLLEXPORT_API int __stdcall SetupNotifyThreshold(HANDLE hChannelHandle, int iFramesThreshold); + +DLLEXPORT_API int __stdcall SetupSubChannel(HANDLE hChannelHandle, int iSubChannel); +DLLEXPORT_API int __stdcall GetSubChannelStreamType(void *DataBuf, int FrameType); +//add for HC/HF +DLLEXPORT_API int __stdcall RegisterStreamDirectReadCallback(STREAM_DIRECT_READ_CALLBACK StreamDirectReadCallback,void *Context); +DLLEXPORT_API int __stdcall RegisterDrawFun(DWORD nport, DRAWFUN(DrawFun),LONG nUser); +DLLEXPORT_API int __stdcall SetupMask(HANDLE hChannelHandle, RECT *rectList, int iAreas); +DLLEXPORT_API int __stdcall StopMask(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall SetSubEncoderPictureFormat(HANDLE hChannelHandle, PictureFormat_t PictureFormat); +DLLEXPORT_API int __stdcall StartSubVideoCapture(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall StopSubVideoCapture(HANDLE hChannelHandle); +DLLEXPORT_API int __stdcall SetupDateTime(HANDLE hChannelHandle, SYSTEMTIME *now); +/* + ÒÔÏÂΪ1.7°æ±¾ÐÂÔöµÄ¹¦ÄÜ¡£ + ÒÔºó¿ÉÄÜ»á¸ù¾ÝÓû§µÄ·´À¡½øÐÐÐ޸ĺÍÍêÉÆ¡£ +*/ +//ԭʼͼÏñÁ÷ÉèÖà +typedef void (*IMAGE_STREAM_CALLBACK)(UINT channelNumber,void *context ); +DLLEXPORT_API int __stdcall SetImageStream(HANDLE hChannel,BOOL bStart,UINT fps,UINT width,UINT height,unsigned char *imageBuffer); +DLLEXPORT_API int __stdcall RegisterImageStreamCallback(IMAGE_STREAM_CALLBACK,void *context); +/* + ÉèÖÃÊÓƵÊäÈëλÖ㺠+ (x,y)ΪϵͳËù´¦ÀíͼÏñµÄ×óÉϽÇÔÚÉãÏñ»úÊäÈëµÄԭʼͼÏñÖеÄ×ø±ê¡£ + x±ØÐëΪ2µÄÕûÊý±¶¡£ + (x,y)×ø±êµÄ²ÎÊý·¶Î§ºÍÉãÏñ»úµÄÐͺÅÓйأ¬Èç¹ûÖ¸¶¨µÄÖµºÍÉãÏñ»úµÄÊäÈ벻ƥÅ䣬 + ¿ÉÄܻᵼÖÂͼÏñ¾²Ö¹»òˮƽ¡¢´¹Ö±·½Ïò¹ö¶¯¡£ +*/ +DLLEXPORT_API int __stdcall SetInputVideoPosition(HANDLE hChannel,UINT x,UINT y); +DLLEXPORT_API int __stdcall StopRegisterDrawFun(DWORD nport); + +/* + 3.0 +*/ +#define SERIAL_NUMBER_LENGTH 12 //°å¿¨ÐòÁкų¤¶È +typedef struct tagDS_BOARD_DETAIL +{ + BOARD_TYPE_DS type; //°å¿¨ÀàÐÍ + BYTE sn[16]; //ÐòÁкŠ+ UINT dspCount; //°å¿¨°üº¬µÄDSP¸öÊý + UINT firstDspIndex; //°å¿¨ÉϵÚÒ»¸öDSPµÄË÷Òý + UINT encodeChannelCount; //°å¿¨°üº¬µÄ±àÂëͨµÀ¸öÊý + UINT firstEncodeChannelIndex; //°å¿¨ÉϵÚÒ»¸ö±àÂëͨµÀµÄË÷Òý + UINT decodeChannelCount; //°å¿¨°üº¬µÄ½âÂëͨµÀ¸öÊý + UINT firstDecodeChannelIndex; //°å¿¨ÉϵÚÒ»¸ö½âÂëͨµÀµÄË÷Òý + UINT displayChannelCount; //°å¿¨°üº¬µÄÊÓƵÊä³öͨµÀ¸öÊý + UINT firstDisplayChannelIndex; //°å¿¨ÉϵÚÒ»¸öÊÓƵÊä³öͨµÀµÄË÷Òý + UINT reserved1; + UINT reserved2; + UINT reserved3; + UINT reserved4; +}DS_BOARD_DETAIL; +typedef struct tagDSP_DETAIL +{ + UINT encodeChannelCount; //°å¿¨°üº¬µÄ±àÂëͨµÀ¸öÊý + UINT firstEncodeChannelIndex; //°å¿¨ÉϵÚÒ»¸ö±àÂëͨµÀµÄË÷Òý + UINT decodeChannelCount; //°å¿¨°üº¬µÄ½âÂëͨµÀ¸öÊý + UINT firstDecodeChannelIndex; //°å¿¨ÉϵÚÒ»¸ö½âÂëͨµÀµÄË÷Òý + UINT displayChannelCount; //°å¿¨°üº¬µÄÊÓƵÊä³öͨµÀ¸öÊý + UINT firstDisplayChannelIndex; //°å¿¨ÉϵÚÒ»¸öÊÓƵÊä³öͨµÀµÄË÷Òý + UINT reserved1; + UINT reserved2; + UINT reserved3; + UINT reserved4; +}DSP_DETAIL; +DLLEXPORT_API unsigned int __stdcall GetBoardCount(); +DLLEXPORT_API int __stdcall GetBoardDetail(UINT boardNum,DS_BOARD_DETAIL *pBoardDetail); +DLLEXPORT_API unsigned int __stdcall GetDspCount(); +DLLEXPORT_API int __stdcall GetDspDetail(UINT dspNum,DSP_DETAIL *pDspDetail); +DLLEXPORT_API unsigned int __stdcall GetEncodeChannelCount(); +DLLEXPORT_API unsigned int __stdcall GetDecodeChannelCount(); +DLLEXPORT_API unsigned int __stdcall GetDisplayChannelCount(); +DLLEXPORT_API int __stdcall SetDefaultVideoStandard(VideoStandard_t VideoStandard); +DLLEXPORT_API int __stdcall SetVideoDetectPrecision(HANDLE hChannel,unsigned int value); +DLLEXPORT_API int __stdcall SetSubStreamType(HANDLE hChannelHandle, USHORT Type); +DLLEXPORT_API int __stdcall GetSubStreamType(HANDLE hChannelHandle, USHORT *StreamType); + +#define MAX_DISPLAY_REGION 16 +typedef struct tagREGION_PARAM +{ + UINT left; + UINT top; + UINT width; + UINT height; + COLORREF color; + UINT param; +}REGION_PARAM; +DLLEXPORT_API int __stdcall SetDisplayStandard(UINT nDisplayChannel,VideoStandard_t VideoStandard); +DLLEXPORT_API int __stdcall SetDisplayRegion(UINT nDisplayChannel,UINT nRegionCount,REGION_PARAM *pParam,UINT nReserved); +DLLEXPORT_API int __stdcall ClearDisplayRegion(UINT nDisplayChannel,UINT nRegionFlag); +DLLEXPORT_API int __stdcall SetDisplayRegionPosition(UINT nDisplayChannel,UINT nRegion,UINT nLeft,UINT nTop); +DLLEXPORT_API int __stdcall FillDisplayRegion(UINT nDisplayChannel,UINT nRegion,unsigned char *pImage); +DLLEXPORT_API int __stdcall SetEncoderVideoExtOutput(UINT nEncodeChannel,UINT nPort,BOOL bOpen,UINT nDisplayChannel,UINT nDisplayRegion,UINT nReserved); +DLLEXPORT_API int __stdcall SetDecoderVideoExtOutput(UINT nDecodeChannel,UINT nPort,BOOL bOpen,UINT nDisplayChannel,UINT nDisplayRegion,UINT nReserved); +DLLEXPORT_API int __stdcall SetDecoderVideoOutput(UINT nDecodeChannel,UINT nPort,BOOL bOpen,UINT nDisplayChannel,UINT nDisplayRegion,UINT nReserved); +DLLEXPORT_API int __stdcall SetDecoderAudioOutput(UINT nDecodeChannel,BOOL bOpen,UINT nOutputChannel); +//3.1 +DLLEXPORT_API int __stdcall SetDeInterlace(HANDLE hChannelHandle,UINT mode,UINT level); +DLLEXPORT_API int __stdcall SetPreviewOverlayMode(BOOL bTrue); + +//DECODE functions for DS4002MD +#if defined( _WINDLL) + #define PLAYER_API extern "C"__declspec(dllexport) +#else + #define PLAYER_API extern "C" __declspec(dllimport) +#endif +typedef struct tagDISPLAY_PARA +{ + long bToScreen; + long bToVideoOut; + long nLeft; + long nTop; + long nWidth; + long nHeight; + long nReserved; +}DISPLAY_PARA,*PDISPLAY_PARA; +//Version info +typedef struct tagVERSION{ + ULONG DspVersion, DspBuildNum; + ULONG DriverVersion, DriverBuildNum; + ULONG SDKVersion, SDKBuildNum; +}HW_VERSION, *PHW_VERSION; + +//init part +PLAYER_API int __stdcall HW_InitDirectDraw(HWND hParent,COLORREF colorKey); +PLAYER_API int __stdcall HW_ReleaseDirectDraw(); +PLAYER_API int __stdcall HW_InitDecDevice(long *pDeviceTotal); +PLAYER_API int __stdcall HW_ReleaseDecDevice(); +PLAYER_API int __stdcall HW_ChannelOpen(long nChannelNum,HANDLE* phChannel); +PLAYER_API int __stdcall HW_ChannelClose(HANDLE hChannel); +//open part + +PLAYER_API int __stdcall HW_OpenStream(HANDLE hChannel,PBYTE pFileHeadBuf,DWORD nSize); +DLLEXPORT_API int __stdcall HW_ResetStream(HANDLE hChannel); +PLAYER_API int __stdcall HW_CloseStream(HANDLE hChannel); +PLAYER_API int __stdcall HW_InputData(HANDLE hChannel,PBYTE pBuf,DWORD nSize); +PLAYER_API int __stdcall HW_OpenFile(HANDLE hChannel,LPTSTR sFileName); +PLAYER_API int __stdcall HW_CloseFile(HANDLE hChannel); + +//play part +PLAYER_API int __stdcall HW_SetDisplayPara(HANDLE hChannel,DISPLAY_PARA *pPara); +PLAYER_API int __stdcall HW_Play(HANDLE hChannel); +PLAYER_API int __stdcall HW_Stop(HANDLE hChannel); +PLAYER_API int __stdcall HW_Pause(HANDLE hChannel,ULONG bPause); + +//sound part +PLAYER_API int __stdcall HW_PlaySound(HANDLE hChannel); +PLAYER_API int __stdcall HW_StopSound(HANDLE hChannel); +PLAYER_API int __stdcall HW_SetVolume(HANDLE hChannel,ULONG nVolume); +//overlay part +PLAYER_API int __stdcall HW_RefreshSurface(); +PLAYER_API int __stdcall HW_RestoreSurface(); +PLAYER_API int __stdcall HW_ClearSurface(); +PLAYER_API int __stdcall HW_ZoomOverlay(RECT* pSrcClientRect, RECT* pDecScreenRect); +//cut file +PLAYER_API int __stdcall HW_StartCapFile(HANDLE hChannel,LPTSTR sFileName); +PLAYER_API int __stdcall HW_StopCapFile(HANDLE hChannel); +//capture picture +PLAYER_API int __stdcall HW_GetYV12Image(HANDLE hChannel, PBYTE pBuffer, ULONG nSize); +PLAYER_API int __stdcall HW_GetPictureSize(HANDLE hChannel,ULONG* pWidth, ULONG* pHeight); +PLAYER_API int __stdcall HW_ConvertToBmpFile(BYTE * pBuf,ULONG nSize,ULONG nWidth,ULONG nHeight,char *sFileName,ULONG nReserved); +//setting and getting part +PLAYER_API int __stdcall HW_Jump(HANDLE hChannel,ULONG nDirection); +PLAYER_API int __stdcall HW_SetJumpInterval(HANDLE hChannel,ULONG nSecond); +PLAYER_API int __stdcall HW_GetSpeed(HANDLE hChannel,long *pSpeed); +PLAYER_API int __stdcall HW_SetSpeed(HANDLE hChannel,long nSpeed); +PLAYER_API int __stdcall HW_SetPlayPos(HANDLE hChannel,ULONG nPos); +PLAYER_API int __stdcall HW_GetPlayPos(HANDLE hChannel,ULONG* pPos); +PLAYER_API int __stdcall HW_GetVersion(PHW_VERSION pVersion); +PLAYER_API int __stdcall HW_GetCurrentFrameRate(HANDLE hChannel,ULONG* pFrameRate); +PLAYER_API int __stdcall HW_GetCurrentFrameNum(HANDLE hChannel,ULONG* pFrameNum); +PLAYER_API int __stdcall HW_GetFileTotalFrames(HANDLE hChannel,ULONG* pTotalFrames); +PLAYER_API int __stdcall HW_GetFileTime(HANDLE hChannel, ULONG* pFileTime); +PLAYER_API int __stdcall HW_GetCurrentFrameTime(HANDLE hChannel,ULONG* pFrameTime); +PLAYER_API int __stdcall HW_GetPlayedFrames(HANDLE hChannel,ULONG *pDecVFrames); +PLAYER_API int __stdcall HW_GetDeviceSerialNo(HANDLE hChannel,ULONG *pDeviceSerialNo); +PLAYER_API int __stdcall HW_SetFileEndMsg(HANDLE hChannel,HWND hWnd,UINT nMsg); +PLAYER_API int __stdcall HW_SetStreamOpenMode(HANDLE hChannel,ULONG nMode); +PLAYER_API int __stdcall HW_GetStreamOpenMode(HANDLE hChannel,ULONG *pMode); +PLAYER_API int __stdcall HW_SetVideoOutStandard(HANDLE hChannel,ULONG nStandard); +PLAYER_API int __stdcall HW_SetDspDeadlockMsg(HWND hWnd,UINT nMsg); +PLAYER_API int __stdcall HW_GetChannelNum(long nDspNum,long *pChannelNum,ULONG nNumsToGet,ULONG * pNumsGotten); +PLAYER_API int __stdcall HW_ResetDsp(long nDspNum); +PLAYER_API int __stdcall HW_SetAudioPreview(HANDLE hChannel, BOOL bEnable); +////////////////////////////////////////////// + +PLAYER_API int __stdcall HW_OpenStreamEx(HANDLE hChannel,PBYTE pFileHeadBuf,DWORD nSize); +PLAYER_API int __stdcall HW_CloseStreamEx(HANDLE hChannel); +PLAYER_API int __stdcall HW_InputVideoData(HANDLE hChannel,PBYTE pBuf,DWORD nSize); +PLAYER_API int __stdcall HW_InputAudioData(HANDLE hChannel,PBYTE pBuf,DWORD nSize); + +//4.0 +PLAYER_API int __stdcall SetOsdDisplayModeEx(HANDLE hChannelHandle,int color,BOOL Translucent,int param,int nLineCount,USHORT **Format); +typedef void (*MOTION_DETECTION_CALLBACK)(ULONG channelNumber,BOOL bMotionDetected,void *context); +PLAYER_API int __stdcall SetupMotionDetectionEx(HANDLE hChannelHandle,int iGrade,int iFastMotionDetectFps, + int iSlowMotionDetectFps,UINT delay,RECT *RectList, int iAreas, + MOTION_DETECTION_CALLBACK MotionDetectionCallback,int reserved); +PLAYER_API int __stdcall GetJpegImage(HANDLE hChannelHandle,UCHAR *ImageBuf,ULONG *Size,UINT nQuality); +//WatchDog +PLAYER_API int __stdcall SetWatchDog(UINT boardNumber,BOOL bEnable); +//4.1 +typedef void (*FILE_REF_DONE_CALLBACK)(UINT nChannel,UINT nSize); +PLAYER_API int __stdcall HW_SetFileRef(HANDLE hChannel,BOOL bEnable,FILE_REF_DONE_CALLBACK FileRefDoneCallback); +PLAYER_API int __stdcall HW_LocateByAbsoluteTime(HANDLE hChannel,SYSTEMTIME time); +PLAYER_API int __stdcall HW_LocateByFrameNumber(HANDLE hChannel,UINT frmNum); +PLAYER_API int __stdcall HW_GetCurrentAbsoluteTime(HANDLE hChannel,SYSTEMTIME *pTime); +PLAYER_API int __stdcall HW_GetFileAbsoluteTime(HANDLE hChannel,SYSTEMTIME *pStartTime,SYSTEMTIME *pEndTime); +//4.2 +DLLEXPORT_API int __stdcall HW_ImportFileRef(HANDLE hChannel,char *pBuffer,UINT nSize); +DLLEXPORT_API int __stdcall HW_ExportFileRef(HANDLE hChannel,char *pBuffer,UINT nSize); +DLLEXPORT_API int __stdcall SetDisplayVideoCapture(UINT nDisplayChannel,BOOL bStart,UINT fps,UINT width,UINT height,unsigned char *imageBuffer); +DLLEXPORT_API int __stdcall RegisterDisplayVideoCaptureCallback(IMAGE_STREAM_CALLBACK DisplayVideoCaptureCallback,void *context); +DLLEXPORT_API int __stdcall SetDisplayVideoBrightness(UINT chan,int Brightness); +DLLEXPORT_API int __stdcall SetChannelStreamCRC(HANDLE hChannel,BOOL bEnable); +DLLEXPORT_API int __stdcall SetSubChannelStreamCRC(HANDLE hChannel,BOOL bEnable); +DLLEXPORT_API int __stdcall HW_SetDecoderPostProcess(HANDLE hChannel,UINT param); +// +typedef void (*DECODER_VIDEO_CAPTURE_CALLBACK)(UINT nChannelNumber,void *DataBuf,UINT width,UINT height,UINT nFrameNum,UINT nFrameTime,SYSTEMTIME *pFrameAbsoluteTime,void *context); +DLLEXPORT_API int __stdcall RegisterDecoderVideoCaptureCallback(DECODER_VIDEO_CAPTURE_CALLBACK DecoderVideoCaptureCallback,void *context); +DLLEXPORT_API int __stdcall HW_SetDecoderVideoCapture(HANDLE hChannel,BOOL bStart,UINT param); +DLLEXPORT_API int __stdcall HW_InputDataByFrame(HANDLE hChannel,PBYTE pBuf,DWORD nSize); +/* +ÈËÁ³¼ì²â½Ó¿Ú:½ö¹©²âÊÔ¡¢ÆÀ¹À£¬ÒÔºó¿ÉÄÜ»á×öÐ޸ġ£ +*/ +typedef struct +{ + short x,y,width,height; +}FACE_AREA_DEMO; +typedef struct +{ + FACE_AREA_DEMO faceArea; + FACE_AREA_DEMO leftEyeArea; + FACE_AREA_DEMO rightEyeArea; + FACE_AREA_DEMO leftPupilArea; + FACE_AREA_DEMO rightPupilArea; + FACE_AREA_DEMO noseArea; + FACE_AREA_DEMO mouthArea; +}FACE_INFO_DEMO; +typedef void (*FACE_DETECTION_DEMO_CALLBACK)(UINT nChannel,UINT nFaceCount,FACE_INFO_DEMO *pFaceInfo, + char *pData,UINT nDataSize,UINT nImageWidth,UINT nImageHeight); + +DLLEXPORT_API int __stdcall SetFaceDetectionDemo(HANDLE hChannelHandle,BOOL bEnable, + UINT nFrameInterval,FACE_DETECTION_DEMO_CALLBACK pFunc, + BOOL bCompress,UINT nCompressQuality,BOOL bLocateEyePos); + +#endif + diff --git a/include/HCNetSDK.h b/include/HCNetSDK.h new file mode 100644 index 0000000..6f16c7e --- /dev/null +++ b/include/HCNetSDK.h @@ -0,0 +1,52626 @@ +#ifndef _HC_NET_SDK_H_ +#define _HC_NET_SDK_H_ + +#ifndef _WINDOWS_ + #if (defined(_WIN32) || defined(_WIN64)) + #include + #include + #endif +#endif + +#if defined(_WIN64) + #define OS_WINDOWS64 1 +#endif + +#if defined(__LP64__) + #define OS_POSIX64 1 +#endif + +#ifndef __PLAYRECT_defined + #define __PLAYRECT_defined + typedef struct __PLAYRECT + { + int x; + int y; + int uWidth; + int uHeight; + }PLAYRECT; +#endif + +#if (defined(_WIN32)) //windows + #define NET_DVR_API extern "C" __declspec(dllimport) + typedef unsigned __int64 UINT64; + typedef signed __int64 INT64; +#elif defined(__linux__) || defined(__APPLE__) //linux + #define BOOL int + typedef unsigned int DWORD; + typedef unsigned short WORD; + typedef unsigned short USHORT; + typedef short SHORT; + typedef int LONG; + typedef unsigned char BYTE; + typedef unsigned int UINT; + typedef void* LPVOID; + typedef void* HANDLE; + typedef unsigned int* LPDWORD; + typedef unsigned long long UINT64; + typedef signed long long INT64; + + #ifndef TRUE + #define TRUE 1 + #endif + #ifndef FALSE + #define FALSE 0 + #endif + #ifndef NULL + #define NULL 0 + #endif + + #define __stdcall + #define CALLBACK + + #define NET_DVR_API extern "C" + typedef unsigned int COLORKEY; + typedef unsigned int COLORREF; + + #ifndef __HWND_defined + #define __HWND_defined + #if defined(__APPLE__) || defined(ANDROID) + typedef void* HWND; + #elif defined(__linux__) + typedef unsigned int HWND; + #else + typedef void* HWND; + #endif + #endif + + #ifndef __HDC_defined + #define __HDC_defined + #if defined(__linux__) + typedef struct __DC + { + void* surface; //SDL Surface + HWND hWnd; //HDC window handle + }DC; + typedef DC* HDC; + #else + typedef void* HDC; + #endif + #endif + + typedef struct tagInitInfo + { + int uWidth; + int uHeight; + }INITINFO; +#endif + +//ºê¶¨Òå +#define MAX_NAMELEN 16 //DVR±¾µØµÇ½Ãû +#define MAX_RIGHT 32 //É豸֧³ÖµÄȨÏÞ£¨1-12±íʾ±¾µØȨÏÞ£¬13-32±íʾԶ³ÌȨÏÞ£© +#define NAME_LEN 32 //Óû§Ãû³¤¶È +#define MIN_PASSWD_LEN 8 //×îСÃÜÂ볤¶È +#define PASSWD_LEN 16 //ÃÜÂ볤¶È +#define STREAM_PASSWD_LEN 12 //ÂëÁ÷¼ÓÃÜÃÜÔ¿×î´ó³¤¶È +#define MAX_PASSWD_LEN_EX 64 //ÃÜÂ볤¶È64λ +#define GUID_LEN 16 //GUID³¤¶È +#define DEV_TYPE_NAME_LEN 24 //É豸ÀàÐÍÃû³Æ³¤¶È +#define SERIALNO_LEN 48 //ÐòÁкų¤¶È +#define MACADDR_LEN 6 //macµØÖ·³¤¶È +#define MAC_ADDRESS_NUM 48 //MacµØÖ·³¤¶È +#define MAX_SENCE_NUM 16 //³¡¾°Êý +#define RULE_REGION_MAX 128 //×î´óÇøÓò +#define MAX_ETHERNET 2 //É豸¿ÉÅäÒÔÌ«ÍøÂç +#define MAX_NETWORK_CARD 4 //É豸¿ÉÅä×î´óÍø¿¨ÊýÄ¿ +#define MAX_NETWORK_CARD_EX 12 //É豸¿ÉÅä×î´óÍø¿¨ÊýÄ¿À©Õ¹ +#define PATHNAME_LEN 128 //·¾¶³¤¶È +#define MAX_PRESET_V13 16 //Ô¤Öõã +#define MAX_TEST_COMMAND_NUM 32 //²úÏß²âÊÔ±£Áô×ֶγ¤¶È +#define MAX_NUMBER_LEN 32 //ºÅÂë×î´ó³¤¶È +#define MAX_NAME_LEN 128 //É豸Ãû³Æ×î´ó³¤¶È +#define MAX_INDEX_LED 8 //LEDË÷Òý×î´óÖµ 2013-11-19 +#define MAX_CUSTOM_DIR 64 //×Ô¶¨ÒåĿ¼×î´ó³¤¶È +#define URL_LEN_V40 256 //×î´óURL³¤¶È +#define CLOUD_NAME_LEN 48 //ÔÆ´æ´¢·þÎñÆ÷Óû§Ãû³¤¶È +#define CLOUD_PASSWD_LEN 48 //ÔÆ´æ´¢·þÎñÆ÷ÃÜÂ볤¶È +#define MAX_SENSORNAME_LEN 64 //´«¸ÐÆ÷Ãû³Æ³¤¶È +#define MAX_SENSORCHAN_LEN 32 //´«¸ÐÆ÷ͨµÀ³¤¶È +#define MAX_DESCRIPTION_LEN 32 //´«¸ÐÆ÷ÃèÊö³¤¶È +#define MAX_DEVNAME_LEN_EX 64 //É豸Ãû³Æ³¤¶ÈÀ©Õ¹ +#define NET_SDK_MAX_FILE_PATH 256 //Îļþ·¾¶³¤¶È +#define MAX_TMEVOICE_LEN 64 //TMEÓïÒô²¥±¨ÄÚÈݳ¤¶È +#define ISO_8601_LEN 32 //ISO_8601ʱ¼ä³¤¶È +#define MODULE_INFO_LEN 32 //Ä£¿éÐÅÏ¢³¤¶È +#define VERSION_INFO_LEN 32 //°æ±¾ÐÅÏ¢³¤¶È + +#define MAX_NUM_INPUT_BOARD 512 //ÊäÈë°å×î´ó¸öÊý +#define MAX_SHIPSDETE_REGION_NUM 8 // ´¬Ö»¼ì²âÇøÓòÁбí×î´óÊýÄ¿ + +#define MAX_RES_NUM_ONE_VS_INPUT_CHAN 8 //Ò»¸öÐéÄâÆÁÊäÈëͨµÀÖ§³ÖµÄ·Ö±æÂʵÄ×î´óÊýÁ¿ +#define MAX_VS_INPUT_CHAN_NUM 16 //ÐéÄâÆÁÊäÈëͨµÀ×î´óÊýÁ¿ + +#define NET_SDK_MAX_FDID_LEN 256//ÈËÁ³¿âID×î´ó³¤¶È +#define NET_SDK_MAX_PICID_LEN 256 //ÈËÁ³ID×î´ó³¤¶È +#define NET_SDK_FDPIC_CUSTOM_INFO_LEN 96 //ÈËÁ³¿âͼƬ×Ô¶¨ÒåÐÅÏ¢³¤¶È +#define NET_DVR_MAX_FACE_ANALYSIS_NUM 32 //×î´óÖ§³Öµ¥ÕÅͼƬʶ±ð³öµÄÈËÁ³ÇøÓò¸öÊý +#define NET_DVR_MAX_FACE_SEARCH_NUM 5 //×î´óÖ§³ÖËÑË÷ÈËÁ³ÇøÓò¸öÊý +#define NET_SDK_SECRETKEY_LEN 128 //ÅäÖÃÎļþÃÜÔ¿³¤¶È +#define NET_SDK_CUSTOM_LEN 512 //×Ô¶¨ÒåÐÅÏ¢×î´ó³¤¶È +#define NET_SDK_CHECK_CODE_LEN 128//УÑéÂ볤¶È +#define RELATIVE_CHANNEL_LEN 2//±¨¾¯¹ØÁªµÄͨµÀºÅµÄÊýÁ¿ +#define NET_SDK_MAX_CALLEDTARGET_NAME 32 //ߺô½ÐÄ¿±êµÄÓû§Ãû +#define NET_SDK_MAX_HBDID_LEN 256 /*256 ÈËÌå¿âID×î´ó³¤¶È*/ +//С¼ä¾àLED¿ØÖÆÆ÷ +#define MAX_LEN_TEXT_CONTENT 128 //×Ö·ûÄÚÈݳ¤¶È +#define MAX_NUM_INPUT_SOURCE_TEXT 32 //ÐźÅÔ´¿Éµþ¼ÓµÄÎı¾ÊýÁ¿ +#define MAX_NUM_OUTPUT_CHANNEL 512 //LEDÇøÓò°üº¬µÄÊä³ö¿Ú¸öÊý + +//×Ó´°¿Ú½âÂëOSD +#define MAX_LEN_OSD_CONTENT 256 //OSDÐÅÏ¢×î´ó³¤¶È +#define MAX_NUM_OSD_ONE_SUBWND 8 //µ¥¸ö×Ó´°¿ÚÖ§³ÖµÄ×î´óOSDÊýÁ¿ +#define MAX_NUM_SPLIT_WND 64 //µ¥¸ö´°¿ÚÖ§³ÖµÄ×î´ó·ÖÆÁ´°¿ÚÊýÁ¿£¨¼´×Ó´°¿ÚÊýÁ¿£© +#define MAX_NUM_OSD 8 + +//2013-11-19 +#define MAX_DEVNAME_LEN 32 //É豸Ãû³Æ×î´ó³¤¶È +#define MAX_LED_INFO 256 //ÆÁÄ»×ÖÌåÏÔʾÐÅÏ¢×î´ó³¤¶È +#define MAX_TIME_LEN 32 //ʱ¼ä×î´ó³¤¶È +#define MAX_CARD_LEN 24 //¿¨ºÅ×î´ó³¤¶È +#define MAX_OPERATORNAME_LEN 32 //²Ù×÷ÈËÔ±Ãû³Æ×î´ó³¤¶È + +#define THERMOMETRY_ALARMRULE_NUM 40 //ÈȳÉÏñ±¨¾¯¹æÔòÊý +#define MAX_THERMOMETRY_REGION_NUM 40 //ÈȶÈͼ¼ì²âÇøÓò×î´óÖ§³ÖÊý +#define MAX_THERMOMETRY_DIFFCOMPARISON_NUM 40 //ÈȳÉÏñβ¾¯¹æÔòÊý +#define MAX_SHIPS_NUM 20 //´¬Ö»¼ì²â×î´ó´¬Ö»Êý +#define MAX_SHIPIMAGE_NUM 6 //´¬Ö»×î´óץͼÊý +#define KEY_WORD_NUM 3 //¹Ø¼ü×Ö¸öÊý +#define KEY_WORD_LEN 128 //¹Ø¼ü×Ö³¤¶È +//Òì²½µÇ¼»Øµ÷״̬ºê¶¨Òå +#define ASYN_LOGIN_SUCC 1 //Òì²½µÇ¼³É¹¦ +#define ASYN_LOGIN_FAILED 0 //Òì²½µÇ¼ʧ°Ü + +#define NET_SDK_MAX_VERIFICATION_CODE_LEN 32 //өʯÔÆÑéÖ¤Â볤¶È +#define NET_SDK_MAX_OPERATE_CODE_LEN 64 //өʯÔƲÙ×÷Â볤¶È +#define MAX_TIMESEGMENT_V30 8 //9000É豸×î´óʱ¼ä¶ÎÊý +#define MAX_TIMESEGMENT 4 //8000É豸×î´óʱ¼ä¶ÎÊý +#define MAX_ICR_NUM 8 //×¥ÅÄ»úºìÍâÂ˹âƬԤÖõãÊý2013-07-09 +#define MAX_VEHICLEFLOW_INFO 24 //³µÁ÷Á¿ÐÅÏ¢×î´ó¸öÊý +#define MAX_SHELTERNUM 4 //8000É豸×î´óÕÚµ²ÇøÓòÊý +#define MAX_DAYS 7 //ÿÖÜÌìÊý +#define PHONENUMBER_LEN 32 //pppoe²¦ºÅºÅÂë×î´ó³¤¶È +#define MAX_ACCESSORY_CARD 256 //Åä¼þ°åÐÅÏ¢×î´ó³¤¶È +#define MAX_DISKNUM_V30 33 //9000É豸×î´óÓ²ÅÌÊý/* ×î¶à33¸öÓ²ÅÌ(°üÀ¨16¸öÄÚÖÃSATAÓ²ÅÌ¡¢1¸öeSATAÓ²Å̺Í16¸öNFSÅÌ) */ +#define NET_SDK_MAX_NET_USER_NUM 64 //ÍøÂçÓû§ + +#define NET_SDK_DISK_LOCATION_LEN 16 //Ó²ÅÌλÖó¤¶È +#define NET_SDK_SUPPLIER_NAME_LEN 32 //¹©Ó¦ÉÌÃû³Æ³¤¶È +#define NET_SDK_DISK_MODEL_LEN 64 //Ó²ÅÌÐͺų¤¶È +#define NET_SDK_MAX_DISK_VOLUME 33 //×î´óÓ²Å̾í¸öÊý +#define NET_SDK_DISK_VOLUME_LEN 36 //Ó²Å̾íÃû³Æ³¤¶È + +#define MAX_DISKNUM 16 //8000É豸×î´óÓ²ÅÌÊý +#define MAX_DISKNUM_V10 8 //1.2°æ±¾Ö®Ç°°æ±¾ +#define CARD_READER_DESCRIPTION 32 //¶Á¿¨Æ÷ÃèÊö +#define MAX_FACE_NUM 2 //×î´óÈËÁ³Êý + +#define MAX_WINDOW_V30 32 //9000É豸±¾µØÏÔʾ×î´ó²¥·Å´°¿ÚÊý +#define MAX_WINDOW_V40 64 //Netra 2.3.1À©Õ¹ +#define MAX_WINDOW 16 //8000É豸×î´óÓ²ÅÌÊý +#define MAX_VGA_V30 4 //9000É豸×î´ó¿É½ÓVGAÊý +#define MAX_VGA 1 //8000É豸×î´ó¿É½ÓVGAÊý + +#define MAX_USERNUM_V30 32 //9000É豸×î´óÓû§Êý +#define MAX_USERNUM 16 //8000É豸×î´óÓû§Êý +#define MAX_EXCEPTIONNUM_V30 32 //9000É豸×î´óÒì³£´¦ÀíÊý +#define MAX_EXCEPTIONNUM 16 //8000É豸×î´óÒì³£´¦ÀíÊý +#define MAX_LINK 6 //8000É豸µ¥Í¨µÀ×î´óÊÓƵÁ÷Á¬½ÓÊý +#define MAX_ITC_EXCEPTIONOUT 32 //×¥ÅÄ»ú×î´ó±¨¾¯Êä³ö +#define MAX_SCREEN_DISPLAY_LEN 512 //ÆÁÄ»ÏÔʾ×Ö·û³¤¶È + +#define MAX_DECPOOLNUM 4 //µ¥Â·½âÂëÆ÷ÿ¸ö½âÂëͨµÀ×î´ó¿ÉÑ­»·½âÂëÊý +#define MAX_DECNUM 4 //µ¥Â·½âÂëÆ÷µÄ×î´ó½âÂëͨµÀÊý£¨Êµ¼ÊÖ»ÓÐÒ»¸ö£¬ÆäËûÈý¸ö±£Áô£© +#define MAX_TRANSPARENTNUM 2 //µ¥Â·½âÂëÆ÷¿ÉÅäÖÃ×î´ó͸Ã÷ͨµÀÊý +#define MAX_CYCLE_CHAN 16 //µ¥Â·½âÂëÆ÷×î´óÂÖѲͨµÀÊý +#define MAX_CYCLE_CHAN_V30 64 //×î´óÂÖѲͨµÀÊý£¨À©Õ¹£© +#define MAX_DIRNAME_LENGTH 80 //×î´óĿ¼³¤¶È +#define MAX_WINDOWS 16 //×î´ó´°¿ÚÊý + + +#define MAX_STRINGNUM_V30 8 //9000É豸×î´óOSD×Ö·ûÐÐÊýÊý +#define MAX_STRINGNUM 4 //8000É豸×î´óOSD×Ö·ûÐÐÊýÊý +#define MAX_STRINGNUM_EX 8 //8000¶¨ÖÆÀ©Õ¹ +#define MAX_AUXOUT_V30 16 //9000É豸×î´ó¸¨ÖúÊä³öÊý +#define MAX_AUXOUT 4 //8000É豸×î´ó¸¨ÖúÊä³öÊý +#define MAX_HD_GROUP 16 //9000É豸×î´óÓ²ÅÌ×éÊý +#define MAX_HD_GROUP_V40 32 //É豸×î´óÓ²ÅÌ×éÊý +#define MAX_NFS_DISK 8 //8000É豸×î´óNFSÓ²ÅÌÊý +#define NET_SDK_VERSION_LIST_LEN 64 //Ëã·¨¿â°æ±¾×î´óÖµ +#define IW_ESSID_MAX_SIZE 32 //WIFIµÄSSIDºÅ³¤¶È +#define IW_ENCODING_TOKEN_MAX 32 //WIFIÃÜËø×î´ó×Ö½ÚÊý +#define MAX_SERIAL_NUM 64 //×î¶àÖ§³ÖµÄ͸Ã÷ͨµÀ·Êý +#define MAX_DDNS_NUMS 10 //9000É豸×î´ó¿ÉÅäddnsÊý +#define MAX_DOMAIN_NAME 64 /* ×î´óÓòÃû³¤¶È */ +#define MAX_EMAIL_ADDR_LEN 48 //×î´óemailµØÖ·³¤¶È +#define MAX_EMAIL_PWD_LEN 32 //×î´óemailÃÜÂ볤¶È +#define MAX_SLAVECAMERA_NUM 8 //´ÓÉãÏñ»ú¸öÊý +#define MAX_CALIB_NUM 6 //±ê¶¨µãµÄ¸öÊý +#define MAX_CALIB_NUM_EX 20 //À©Õ¹±ê¶¨µãµÄ¸öÊý +#define MAX_LEDDISPLAYINFO_LEN 1024 //×î´óLEDÆÁÏÔʾ³¤¶È +#define MAX_PEOPLE_DETECTION_NUM 8 //×î´óÈËÔ±¼ì²âÇøÓòÊý +#define MAXPROGRESS 100 //»Ø·ÅʱµÄ×î´ó°Ù·ÖÂÊ +#define MAX_SERIALNUM 2 //8000É豸֧³ÖµÄ´®¿ÚÊý 1-232£¬ 2-485 +#define CARDNUM_LEN 20 //¿¨ºÅ³¤¶È +#define PATIENTID_LEN 64 +#define CARDNUM_LEN_OUT 32 //Íⲿ½á¹¹Ì忨ºÅ³¤¶È +#define MAX_VIDEOOUT_V30 4 //9000É豸µÄÊÓƵÊä³öÊý +#define MAX_VIDEOOUT 2 //8000É豸µÄÊÓƵÊä³öÊý + +#define MAX_PRESET_V30 256 /* 9000É豸֧³ÖµÄÔÆ̨ԤÖõãÊý */ +#define MAX_TRACK_V30 256 /* 9000É豸֧³ÖµÄÔÆ̨¹ì¼£Êý */ +#define MAX_CRUISE_V30 256 /* 9000É豸֧³ÖµÄÔÆ̨Ѳº½Êý */ +#define MAX_PRESET 128 /* 8000É豸֧³ÖµÄÔÆ̨ԤÖõãÊý */ +#define MAX_TRACK 128 /* 8000É豸֧³ÖµÄÔÆ̨¹ì¼£Êý */ +#define MAX_CRUISE 128 /* 8000É豸֧³ÖµÄÔÆ̨Ѳº½Êý */ + +#define MAX_PRESET_V40 300 /* ÔÆ̨֧³ÖµÄ×î´óÔ¤ÖõãÊý */ +#define MAX_CRUISE_POINT_NUM 128 /* ×î´óÖ§³ÖµÄѲº½µãµÄ¸öÊý */ +#define MAX_CRUISEPOINT_NUM_V50 256 //×î´óÖ§³ÖµÄѲº½µãµÄ¸öÊýÀ©Õ¹ + +#define CRUISE_MAX_PRESET_NUMS 32 /* Ò»ÌõѲº½×î¶àµÄѲº½µã */ +#define MAX_FACE_PIC_NUM 30 /*ÈËÁ³×Óͼ¸öÊý*/ +#define LOCKGATE_TIME_NUM 4 //Ëøբʱ¼ä¶Î¸öÊý + +#define MAX_SERIAL_PORT 8 //9000É豸֧³Ö232´®¿ÚÊý +#define MAX_PREVIEW_MODE 8 /* É豸֧³Ö×î´óÔ¤ÀÀģʽÊýÄ¿ 1»­Ãæ,4»­Ãæ,9»­Ãæ,16»­Ãæ.... */ +#define MAX_MATRIXOUT 16 /* ×î´óÄ£Äâ¾ØÕóÊä³ö¸öÊý */ +#define LOG_INFO_LEN 11840 /* ÈÕÖ¾¸½¼ÓÐÅÏ¢ */ +#define DESC_LEN 16 /* ÔÆ̨ÃèÊö×Ö·û´®³¤¶È */ +#define PTZ_PROTOCOL_NUM 200 /* 9000×î´óÖ§³ÖµÄÔÆ̨ЭÒéÊý */ +#define IPC_PROTOCOL_NUM 50 //ipc ЭÒé×î´ó¸öÊý + +#define MAX_AUDIO 1 //8000ÓïÒô¶Ô½²Í¨µÀÊý +#define MAX_AUDIO_V30 2 //9000ÓïÒô¶Ô½²Í¨µÀÊý +#define MAX_CHANNUM 16 //8000É豸×î´óͨµÀÊý +#define MAX_ALARMIN 16 //8000É豸×î´ó±¨¾¯ÊäÈëÊý +#define MAX_ALARMOUT 4 //8000É豸×î´ó±¨¾¯Êä³öÊý +#define MAX_AUDIOCAST_CFG_TYPE 3 //Ö§³Ö¹ã²¥²ÎÊýÅäÖõÄÀàÐÍÊýÁ¿ MP3¡¢MPEG2¡¢AAC +//9000 IPC½ÓÈë +#define MAX_ANALOG_CHANNUM 32 //×î´ó32¸öÄ£ÄâͨµÀ +#define MAX_ANALOG_ALARMOUT 32 //×î´ó32·ģÄⱨ¾¯Êä³ö +#define MAX_ANALOG_ALARMIN 32 //×î´ó32·ģÄⱨ¾¯ÊäÈë + +#define MAX_IP_DEVICE 32 //ÔÊÐí½ÓÈëµÄ×î´óIPÉ豸Êý +#define MAX_IP_DEVICE_V40 64 // ÔÊÐí½ÓÈëµÄ×î´óIPÉ豸Êý ×î¶à¿ÉÌí¼Ó64¸ö IVMS 2000µÈÐÂÉ豸 +#define MAX_IP_CHANNEL 32 //ÔÊÐí¼ÓÈëµÄ×î¶àIPͨµÀÊý +#define MAX_IP_ALARMIN 128 //ÔÊÐí¼ÓÈëµÄ×î¶à±¨¾¯ÊäÈëÊý +#define MAX_IP_ALARMOUT 64 //ÔÊÐí¼ÓÈëµÄ×î¶à±¨¾¯Êä³öÊý +#define MAX_IP_ALARMIN_V40 4096 //ÔÊÐí¼ÓÈëµÄ×î¶à±¨¾¯ÊäÈëÊý +#define MAX_IP_ALARMOUT_V40 4096 //ÔÊÐí¼ÓÈëµÄ×î¶à±¨¾¯Êä³öÊý + +#define MAX_RECORD_FILE_NUM 20 // ÿ´Îɾ³ý»òÕ߿̼µÄ×î´óÎļþÊý +//SDK_V31 ATM +#define MAX_ACTION_TYPE 12 //×Ô¶¨ÒåЭÒéµþ¼Ó½»Ò×ÐÐΪ×î´óÐÐΪ¸öÊý +#define MAX_ATM_PROTOCOL_NUM 256 //ÿÖÖÊäÈ뷽ʽ¶ÔÓ¦µÄATM×î´óЭÒéÊý +#define ATM_CUSTOM_PROTO 1025 //×Ô¶¨ÒåЭÒé ֵΪ1025 +#define ATM_PROTOCOL_SORT 4 //ATMЭÒé¶ÎÊý +#define ATM_DESC_LEN 32 //ATMÃèÊö×Ö·û´®³¤¶È +// SDK_V31 ATM + + +#define MAX_IPV6_LEN 64 //IPv6µØÖ·×î´ó³¤¶È +#define MAX_EVENTID_LEN 64 //ʼþID³¤¶È + +#define INVALID_VALUE_UINT32 0xffffffff //ÎÞЧֵ +#define MAX_CHANNUM_V40 512 +#define MAX_MULTI_AREA_NUM 24 + +//SDK ¼²¥Ö÷»ú +#define COURSE_NAME_LEN 32 //¿Î³ÌÃû³Æ +#define INSTRUCTOR_NAME_LEN 16 //ÊڿνÌʦ +#define COURSE_DESCRIPTION_LEN 256 //¿Î³ÌÐÅÏ¢ + +#define MAX_TIMESEGMENT_V40 16 //ÿ½Ú¿ÎÐÅÏ¢ + + +#define MAX_MIX_CHAN_NUM 16 /*Ä¿Ç°Ö§³ÖµÄ×î´ó»ìÒôͨµÀÊý£¬±³¾°Í¨µÀ + MIC + LINE IN + ×î¶à4¸öС»­Ãæ*/ +#define MAX_LINE_IN_CHAN_NUM 16 //×î´óline inͨµÀÊý +#define MAX_MIC_CHAN_NUM 16 //×î´óMICͨµÀÊý +#define INQUEST_CASE_NO_LEN 64 //ÉóѶ°¸¼þ±àºÅ³¤¶È +#define INQUEST_CASE_NAME_LEN 64 //ÉóѶ°¸¼þÃû³Æ³¤¶È +#define CUSTOM_INFO_LEN 64 //×Ô¶¨ÒåÐÅÏ¢³¤¶È +#define INQUEST_CASE_LEN 64 //ÉóѶÐÅÏ¢³¤¶È + + +#define MAX_FILE_ID_LEN 128 //ÊÓͼ¿âÏîÄ¿ÖÐÎļþIDµÄ×î´ó³¤¶È +#define MAX_PIC_NAME_LEN 128 //ͼƬÃû³Æ³¤¶È + +/* ×î´óÖ§³ÖµÄͨµÀÊý ×î´óÄ£Äâ¼ÓÉÏ×î´óIPÖ§³Ö */ +#define MAX_CHANNUM_V30 ( MAX_ANALOG_CHANNUM + MAX_IP_CHANNEL )//64 +#define MAX_ALARMOUT_V40 (MAX_IP_ALARMOUT_V40 +MAX_ANALOG_ALARMOUT) //4128 +#define MAX_ALARMOUT_V30 ( MAX_ANALOG_ALARMOUT + MAX_IP_ALARMOUT )//96 +#define MAX_ALARMIN_V30 ( MAX_ANALOG_ALARMIN + MAX_IP_ALARMIN )//160 +#define MAX_ALARMIN_V40 (MAX_IP_ALARMIN_V40 +MAX_ANALOG_ALARMOUT) //4128 +#define MAX_ANALOG_ALARM_WITH_VOLT_LIMIT 16 //ÊܵçѹÏÞ¶¨µÄÄ£Äⱨ¾¯×î´óÊäÈëÊý + +#define MAX_ROIDETECT_NUM 8 //Ö§³ÖµÄROIÇøÓòÊý +#define MAX_LANERECT_NUM 5 //×î´ó³µÅÆʶ±ðÇøÓòÊý +#define MAX_FORTIFY_NUM 10 //×î´ó²¼·À¸öÊý +#define MAX_INTERVAL_NUM 4 //×î´óʱ¼ä¼ä¸ô¸öÊý +#define MAX_CHJC_NUM 3 //×î´ó³µÁ¾Ê¡·Ý¼ò³Æ×Ö·û¸öÊý +#define MAX_VL_NUM 5 //×î´óÐéÄâÏßȦ¸öÊý +#define MAX_DRIVECHAN_NUM 16 //×î´ó³µµÀÊý +#define MAX_COIL_NUM 3 //×î´óÏßȦ¸öÊý +#define MAX_SIGNALLIGHT_NUM 6 //×î´óÐźŵƸöÊý +#define LEN_16 16 +#define LEN_32 32 +#define LEN_64 64 +#define LEN_31 31 +#define MAX_LINKAGE_CHAN_NUM 16 //±¨¾¯Áª¶¯µÄͨµÀµÄ×î´óÊýÁ¿ +#define MAX_CABINET_COUNT 8 //×î´óÖ§³Ö»ú¹ñÊýÁ¿ +#define MAX_ID_LEN 48 +#define MAX_PARKNO_LEN 16 +#define MAX_ALARMREASON_LEN 32 +#define MAX_UPGRADE_INFO_LEN 48 //»ñÈ¡Éý¼¶ÎļþÆ¥ÅäÐÅÏ¢(Ä£ºýÉý¼¶) +#define MAX_CUSTOMDIR_LEN 32 //×Ô¶¨ÒåĿ¼³¤¶È +#define MAX_LED_INFO_LEN 512//LEDÄÚÈݳ¤¶È +#define MAX_VOICE_INFO_LEN 128//ÓïÒô²¥±¨ÄÚÈݳ¤¶È +#define MAX_LITLE_INFO_LEN 64 //ֽƱ±êÌâÄÚÈݳ¤¶È +#define MAX_CUSTOM_INFO_LEN 64 //ֽƱ×Ô¶¨ÒåÐÅÏ¢ÄÚÈݳ¤¶È +#define MAX_PHONE_NUM_LEN 16 //ÁªÏµµç»°ÄÚÈݳ¤¶È +#define MAX_APP_SERIALNUM_LEN 32 //Ó¦ÓÃÐòÁкų¤¶È + +#define AUDIOTALKTYPE_G722 0 +#define AUDIOTALKTYPE_G711_MU 1 +#define AUDIOTALKTYPE_G711_A 2 +#define AUDIOTALKTYPE_MP2L2 5 +#define AUDIOTALKTYPE_G726 6 +#define AUDIOTALKTYPE_AAC 7 +#define AUDIOTALKTYPE_PCM 8 +#define AUDIOTALKTYPE_G722C 9 +#define AUDIOTALKTYPE_MP3 15 + +//packet type +#define FILE_HEAD 0 //file head +#define VIDEO_I_FRAME 1 //video I frame +#define VIDEO_B_FRAME 2 //video B frame +#define VIDEO_P_FRAME 3 //video P frame +#define AUDIO_PACKET 10 //audio packet +#define PRIVT_PACKET 11 //private packet +//E frame +#define HIK_H264_E_FRAME (1 << 6) // ÒÔÇ°EÖ¡²»ÓÃÁË,ÉîP֡ҲûÓõ½ +#define MAX_TRANSPARENT_CHAN_NUM 4 //ÿ¸ö´®¿ÚÔÊÐí½¨Á¢µÄ×î´ó͸Ã÷ͨµÀÊý +#define MAX_TRANSPARENT_ACCESS_NUM 4 //ÿ¸ö¼àÌý¶Ë¿ÚÔÊÐí½ÓÈëµÄ×î´óÖ÷»úÊý + +//ITS +#define MAX_PARKING_STATUS 8 //³µÎ»×´Ì¬ 0´ú±íÎÞ³µ£¬1´ú±íÓгµ£¬2´ú±íѹÏß(ÓÅÏȼ¶×î¸ß), 3ÌØÊ⳵λ +#define MAX_PARKING_NUM 4 //Ò»¸öͨµÀ×î´ó4¸ö³µÎ» (´Ó×óµ½ÓÒ³µÎ» Êý×é0¡«3) + +#define MAX_ITS_SCENE_NUM 16 //×î´ó³¡¾°ÊýÁ¿ +#define MAX_SCENE_TIMESEG_NUM 16 //×î´ó³¡¾°Ê±¼ä¶ÎÊýÁ¿ +#define MAX_IVMS_IP_CHANNEL 128 //×î´óIPͨµÀÊý +#define DEVICE_ID_LEN 48 //É豸±àºÅ³¤¶È +#define MONITORSITE_ID_LEN 48 //¼à²âµã±àºÅ³¤¶È +#define MAX_AUXAREA_NUM 16 //¸¨ÖúÇøÓò×î´óÊýÄ¿ +#define MAX_SLAVE_CHANNEL_NUM 16 //×î´ó´ÓͨµÀÊýÁ¿ +#define MAX_DEVDESC_LEN 64 //É豸ÃèÊöÐÅÏ¢×î´ó³¤¶È +#define ILLEGAL_LEN 32 //Î¥·¨´úÂ볤¶È +#define MAX_TRUCK_AXLE_NUM 10 //»õ³µÖá×î´óÊý +#define MAX_CATEGORY_LEN 8 //³µÅƸ½¼ÓÐÅÏ¢×î´ó×Ö·û +#define SERIAL_NO_LEN 16 //²´³µÎ»±àºÅ + + +#define MAX_SECRETKEY_LEN 512 //×î´óÃØÔ¿³¤¶È +#define MAX_INDEX_CODE_LEN 64 //×î´óÐòºÅ³¤¶È +#define MAX_ILLEGAL_LEN 64 //Î¥·¨´úÂë×î´ó×Ö·û³¤¶È +#define CODE_LEN 64 //ÊÚȨÂë +#define ALIAS_LEN 32 //±ðÃû£¬Ö»¶Á +#define MAX_SCH_TASKS_NUM 10 + +#define MAX_SERVERID_LEN 64 //×î´ó·þÎñÆ÷IDµÄ³¤¶È +#define MAX_SERVERDOMAIN_LEN 128 //·þÎñÆ÷ÓòÃû×î´ó³¤¶È +#define MAX_AUTHENTICATEID_LEN 64 //ÈÏÖ¤ID×î´ó³¤¶È +#define MAX_AUTHENTICATEPASSWD_LEN 32 //ÈÏÖ¤ÃÜÂë×î´ó³¤¶È +#define MAX_SERVERNAME_LEN 64 //×î´ó·þÎñÆ÷Óû§Ãû +#define MAX_COMPRESSIONID_LEN 64 //±àÂëIDµÄ×î´ó³¤¶È +#define MAX_SIPSERVER_ADDRESS_LEN 128 //SIP·þÎñÆ÷µØÖ·Ö§³ÖÓòÃûºÍIPµØÖ· +//ѹÏß±¨¾¯ +#define MAX_PlATE_NO_LEN 32 //³µÅƺÅÂë×î´ó³¤¶È 2013-09-27 +#define UPNP_PORT_NUM 12 //upnp¶Ë¿ÚÓ³Éä¶Ë¿ÚÊýÄ¿ + +#define MAX_PEOPLE_DETECTION_NUM 8 //×î´óÈËÔ±¼ì²âÇøÓòÊý + +#define MAX_NOTICE_NUMBER_LEN 32 //¹«¸æ±àºÅ×î´ó³¤¶È +#define MAX_NOTICE_THEME_LEN 64 //¹«¸æÖ÷Ìâ×î´ó³¤¶È +#define MAX_NOTICE_DETAIL_LEN 1024 //¹«¸æÏêÇé×î´ó³¤¶È +#define MAX_NOTICE_PIC_NUM 6 //¹«¸æÐÅÏ¢×î´óͼƬÊýÁ¿ +#define MAX_DEV_NUMBER_LEN 32 //É豸±àºÅ×î´ó³¤¶È +#define LOCK_NAME_LEN 32 //ËøÃû³Æ + + +#define HOLIDAY_GROUP_NAME_LEN 32 //¼ÙÈÕ×éÃû³Æ³¤¶È +#define MAX_HOLIDAY_PLAN_NUM 16 //¼ÙÈÕ×é×î´ó¼ÙÈռƻ®Êý +#define TEMPLATE_NAME_LEN 32 //¼Æ»®Ä£°åÃû³Æ³¤¶È +#define MAX_HOLIDAY_GROUP_NUM 16 //¼Æ»®Ä£°å×î´ó¼ÙÈÕ×éÊý +#define DOOR_NAME_LEN 32 //ÃÅÃû³Æ +#define STRESS_PASSWORD_LEN 8 //вÆÈÃÜÂ볤¶È +#define SUPER_PASSWORD_LEN 8 //вÆÈÃÜÂ볤¶È +#define GROUP_NAME_LEN 32 //Ⱥ×éÃû³Æ³¤¶È +#define GROUP_COMBINATION_NUM 8 //Ⱥ×é×éºÏÊý +#define MULTI_CARD_GROUP_NUM 4 //µ¥ÃÅ×î´ó¶àÖØ¿¨×éÊý +#define ACS_CARD_NO_LEN 32 //ÃŽû¿¨ºÅ³¤¶È +#define NET_SDK_EMPLOYEE_NO_LEN 32 //¹¤ºÅ³¤¶È +#define NET_SDK_UUID_LEN 36 //UUID³¤¶È +#define NET_SDK_EHOME_KEY_LEN 32 //EHome Key³¤¶È +#define CARD_PASSWORD_LEN 8 //¿¨ÃÜÂ볤¶È +#define MAX_DOOR_NUM 32 //×î´óÃÅÊý +#define MAX_CARD_RIGHT_PLAN_NUM 4 //¿¨È¨ÏÞ×î´ó¼Æ»®¸öÊý +#define MAX_GROUP_NUM_128 128 //×î´óȺ×éÊý +#define MAX_CARD_READER_NUM 64 //×î´ó¶Á¿¨Æ÷Êý +#define MAX_SNEAK_PATH_NODE 8 //×î´óºóÐø¶Á¿¨Æ÷Êý +#define MAX_MULTI_DOOR_INTERLOCK_GROUP 8 //×î´ó¶àÃÅ»¥Ëø×éÊý +#define MAX_INTER_LOCK_DOOR_NUM 8 //Ò»¸ö¶àÃÅ»¥Ëø×éÖÐ×î´ó»¥ËøÃÅÊý +#define MAX_CASE_SENSOR_NUM 8 //×î´ócase sensor´¥·¢Æ÷Êý +#define MAX_DOOR_NUM_256 256 //×î´óÃÅÊý +#define MAX_READER_ROUTE_NUM 16 //×î´óË¢¿¨Ñ­Ðò·¾¶ +#define MAX_FINGER_PRINT_NUM 10 //×î´óÖ¸ÎƸöÊý +#define MAX_CARD_READER_NUM_512 512 //×î´ó¶Á¿¨Æ÷Êý +#define NET_SDK_MULTI_CARD_GROUP_NUM_20 20 //µ¥ÃÅ×î´ó¶àÖØ¿¨×éÊý + +#define ERROR_MSG_LEN 32 //Ï·¢´íÎóÐÅÏ¢ +#define MAX_DOOR_CODE_LEN 8 //·¿¼ä´úÂ볤¶È +#define MAX_LOCK_CODE_LEN 8 //Ëø´úÂ볤¶È +#define PER_RING_PORT_NUM 2 //ÿ¸ö»·µÄ¶Ë¿ÚÊý +#define SENSORNAME_LEN 32 //´«¸ÐÆ÷Ãû³Æ³¤¶È +#define MAX_SENSORDESCR_LEN 64 //´«¸ÐÆ÷ÃèÊö³¤¶È +#define MAX_DNS_SERVER_NUM 2 //×î´óDNS¸öÊý +#define SENSORUNIT_LEN 32 //×î´óµ¥Î»³¤¶È + +#define WEP_KEY_MAX_SIZE 32 //×î´óWEP¼ÓÃÜÃÜÔ¿³¤¶È +#define WEP_KEY_MAX_NUM 4 //×î´óWEP¼ÓÃÜÃÜÔ¿¸öÊý +#define WPA_KEY_MAX_SIZE 64 //×î´óWPA¹²ÏíÃÜÔ¿³¤¶È + +#define MAX_SINGLE_FTPPICNAME_LEN 20 //×î´óµ¥¸öFTPͨµÀÃû³Æ +#define MAX_CAMNAME_LEN 32 //×î´óͨµÀÃû³Æ +#define MAX_FTPNAME_NUM 12 //TFPÃû³ÆÊý + + +#define MAX_IDCODE_LEN 128 // ʶ±ðÂë×î´ó³¤¶È +#define MAX_VERSIIN_LEN 64 //°æ±¾×î´ó³¤¶È +#define MAX_IDCODE_NUM 32 // ʶ±ðÂë¸öÊý +#define SDK_LEN_2048 2048 +#define SDK_MAX_IP_LEN 48 + +#define RECT_POINT_NUM 4 //¾ØÐνÇÊý + +#define MAX_PUBLIC_KEY_LEN 512 // ×î´ó¹«Ô¿³¤¶È +#define CHIP_SERIALNO_LEN 32 //¼ÓÃÜоƬÐòÁкų¤¶È +#define ENCRYPT_DEV_ID_LEN 20 //É豸ID³¤¶È + +//MCUÏà¹ØµÄ +#define MAX_SEARCH_ID_LEN 36 //ËÑË÷±êʶ·û×î´ó³¤¶È +#define TERMINAL_NAME_LEN 64 //ÖÕ¶ËÃû³Æ³¤¶È +#define MAX_URL_LEN 512 //URL³¤¶È +#define REGISTER_NAME_LEN 64 //ÖÕ¶Ë×¢²áGKÃû³Æ×î´ó³¤¶È + +//¹âÏË +#define MAX_PORT_NUM 64 //×î´ó¶Ë¿ÚÊý +#define MAX_SINGLE_CARD_PORT_NO 4 //¹âÏËÊÕ·¢Æ÷µ¥¿¨×î´ó¶Ë¿ÚÊý +#define MAX_FUNC_CARD_NUM 32 //¹âÏËÊÕ·¢Æ÷×î´ó¹¦ÄÜ¿¨Êý +#define MAX_FC_CARD_NUM 33 //¹âÏËÊÕ·¢Æ÷×î´ó¿¨Êý +#define MAX_REMARKS_LEN 128 //×¢ÊÍ×î´ó³¤¶È +#define MAX_OUTPUT_PORT_NUM 32 //µ¥Â·Êä³ö°üº¬µÄ×î´óÊä³ö¶Ë¿ÚÊý +#define MAX_SINGLE_PORT_RECVCARD_NUM 64 //µ¥¸ö¶Ë¿ÚÁ¬½ÓµÄ×î´ó½ÓÊÕ¿¨Êý +#define MAX_GAMMA_X_VALUE 256 //GAMMA±íXÖáÈ¡Öµ¸öÊý +#define NET_DEV_NAME_LEN 64 //É豸Ãû³Æ³¤¶È +#define NET_DEV_TYPE_NAME_LEN 64 //É豸ÀàÐÍÃû³Æ³¤¶È +#define ABNORMAL_INFO_NUM 4 //Ò쳣ʱ¼ä¶Î¸öÊý + +#define PLAYLIST_NAME_LEN 64 //²¥·Å±íÃû³Æ³¤¶È +#define PLAYLIST_ITEM_NUM 64 //²¥·ÅÏîÊýÄ¿ + +//ºó¶ËÏà¹Ø +#define NET_SDK_MAX_LOGIN_PASSWORD_LEN 128 //Óû§µÇ¼ÃÜÂë×î´ó³¤¶È +#define NET_SDK_MAX_ANSWER_LEN 256 //°²È«ÎÊÌâ´ð°¸×î´ó³¤¶È +#define NET_SDK_MAX_QUESTION_LIST_LEN 32//°²È«ÎÊÌâÁбí×î´ó³¤¶È + +#define MAX_SCREEN_AREA_NUM 128 //ÆÁÄ»ÇøÓò×î´óÊýÁ¿ +#define NET_SDK_MAX_THERMOMETRYALGNAME 128//²âÎÂËã·¨¿â°æ±¾×î´ó³¤¶È +#define NET_SDK_MAX_SHIPSALGNAME 128//´¬Ö»Ëã·¨¿â°æ±¾×î´ó³¤¶È +#define NET_SDK_MAX_FIRESALGNAME 128//»ðµãËã·¨¿â°æ±¾×î´ó³¤¶È + +#define MAX_PASSPORT_NUM_LEN 16 //×î´ó»¤ÕÕÖ¤¼þºÅ³¤¶È +#define MAX_PASSPORT_INFO_LEN 128 //×î´ó»¤ÕÕͨÓÃÐÅÏ¢³¤¶È +#define MAX_PASSPORT_NAME_LEN 64 //×î´ó»¤ÕÕÐÕÃû³¤¶È +#define MAX_PASSPORT_MONITOR_LEN 1024 //×î´ó»¤Õռ໤ÐÅÏ¢³¤¶È +#define MAX_NATIONALITY_LEN 16 //×î´ó»¤ÕÕ¹ú¼®³¤¶È +#define MAX_PASSPORT_TYPE_LEN 4 //×î´ó»¤ÕÕÖ¤¼þÀàÐͳ¤¶È + +/*******************È«¾Ö´íÎóÂë begin**********************/ +#define NET_DVR_NOERROR 0 //ûÓдíÎó +#define NET_DVR_PASSWORD_ERROR 1 //Óû§ÃûÃÜÂë´íÎó +#define NET_DVR_NOENOUGHPRI 2 //ȨÏÞ²»×ã +#define NET_DVR_NOINIT 3 //ûÓгõʼ»¯ +#define NET_DVR_CHANNEL_ERROR 4 //ͨµÀºÅ´íÎó +#define NET_DVR_OVER_MAXLINK 5 //Á¬½Óµ½DVRµÄ¿Í»§¶Ë¸öÊý³¬¹ý×î´ó +#define NET_DVR_VERSIONNOMATCH 6 //°æ±¾²»Æ¥Åä +#define NET_DVR_NETWORK_FAIL_CONNECT 7 //Á¬½Ó·þÎñÆ÷ʧ°Ü +#define NET_DVR_NETWORK_SEND_ERROR 8 //Ïò·þÎñÆ÷·¢ËÍʧ°Ü +#define NET_DVR_NETWORK_RECV_ERROR 9 //´Ó·þÎñÆ÷½ÓÊÕÊý¾Ýʧ°Ü +#define NET_DVR_NETWORK_RECV_TIMEOUT 10 //´Ó·þÎñÆ÷½ÓÊÕÊý¾Ý³¬Ê± +#define NET_DVR_NETWORK_ERRORDATA 11 //´«Ë͵ÄÊý¾ÝÓÐÎó +#define NET_DVR_ORDER_ERROR 12 //µ÷ÓôÎÐò´íÎó +#define NET_DVR_OPERNOPERMIT 13 //ÎÞ´ËȨÏÞ +#define NET_DVR_COMMANDTIMEOUT 14 //DVRÃüÁîÖ´Ðг¬Ê± +#define NET_DVR_ERRORSERIALPORT 15 //´®¿ÚºÅ´íÎó +#define NET_DVR_ERRORALARMPORT 16 //±¨¾¯¶Ë¿Ú´íÎó +#define NET_DVR_PARAMETER_ERROR 17 //²ÎÊý´íÎó +#define NET_DVR_CHAN_EXCEPTION 18 //·þÎñÆ÷ͨµÀ´¦ÓÚ´íÎó״̬ +#define NET_DVR_NODISK 19 //ûÓÐÓ²ÅÌ +#define NET_DVR_ERRORDISKNUM 20 //Ó²Å̺ŴíÎó +#define NET_DVR_DISK_FULL 21 //·þÎñÆ÷Ó²ÅÌÂú +#define NET_DVR_DISK_ERROR 22 //·þÎñÆ÷Ó²Å̳ö´í +#define NET_DVR_NOSUPPORT 23 //·þÎñÆ÷²»Ö§³Ö +#define NET_DVR_BUSY 24 //·þÎñÆ÷æ +#define NET_DVR_MODIFY_FAIL 25 //·þÎñÆ÷Ð޸IJ»³É¹¦ +#define NET_DVR_PASSWORD_FORMAT_ERROR 26 //ÃÜÂëÊäÈë¸ñʽ²»ÕýÈ· +#define NET_DVR_DISK_FORMATING 27 //Ó²ÅÌÕýÔÚ¸ñʽ»¯£¬²»ÄÜÆô¶¯²Ù×÷ +#define NET_DVR_DVRNORESOURCE 28 //DVR×ÊÔ´²»×ã +#define NET_DVR_DVROPRATEFAILED 29 //DVR²Ù×÷ʧ°Ü +#define NET_DVR_OPENHOSTSOUND_FAIL 30 //´ò¿ªPCÉùÒôʧ°Ü +#define NET_DVR_DVRVOICEOPENED 31 //·þÎñÆ÷ÓïÒô¶Ô½²±»Õ¼Óà +#define NET_DVR_TIMEINPUTERROR 32 //ʱ¼äÊäÈë²»ÕýÈ· +#define NET_DVR_NOSPECFILE 33 //»Ø·Åʱ·þÎñÆ÷ûÓÐÖ¸¶¨µÄÎļþ +#define NET_DVR_CREATEFILE_ERROR 34 //´´½¨Îļþ³ö´í +#define NET_DVR_FILEOPENFAIL 35 //´ò¿ªÎļþ³ö´í +#define NET_DVR_OPERNOTFINISH 36 //ÉϴεIJÙ×÷»¹Ã»ÓÐÍê³É +#define NET_DVR_GETPLAYTIMEFAIL 37 //»ñÈ¡µ±Ç°²¥·ÅµÄʱ¼ä³ö´í +#define NET_DVR_PLAYFAIL 38 //²¥·Å³ö´í +#define NET_DVR_FILEFORMAT_ERROR 39 //Îļþ¸ñʽ²»ÕýÈ· +#define NET_DVR_DIR_ERROR 40 //·¾¶´íÎó +#define NET_DVR_ALLOC_RESOURCE_ERROR 41 //×ÊÔ´·ÖÅä´íÎó +#define NET_DVR_AUDIO_MODE_ERROR 42 //Éù¿¨Ä£Ê½´íÎó +#define NET_DVR_NOENOUGH_BUF 43 //»º³åÇø̫С +#define NET_DVR_CREATESOCKET_ERROR 44 //´´½¨SOCKET³ö´í +#define NET_DVR_SETSOCKET_ERROR 45 //ÉèÖÃSOCKET³ö´í +#define NET_DVR_MAX_NUM 46 //¸öÊý´ïµ½×î´ó +#define NET_DVR_USERNOTEXIST 47 //Óû§²»´æÔÚ +#define NET_DVR_WRITEFLASHERROR 48 //дFLASH³ö´í +#define NET_DVR_UPGRADEFAIL 49 //DVRÉý¼¶Ê§°Ü +#define NET_DVR_CARDHAVEINIT 50 //½âÂ뿨ÒѾ­³õʼ»¯¹ý +#define NET_DVR_PLAYERFAILED 51 //µ÷Óò¥·Å¿âÖÐij¸öº¯Êýʧ°Ü +#define NET_DVR_MAX_USERNUM 52 //É豸¶ËÓû§Êý´ïµ½×î´ó +#define NET_DVR_GETLOCALIPANDMACFAIL 53 //»ñµÃ¿Í»§¶ËµÄIPµØÖ·»òÎïÀíµØַʧ°Ü +#define NET_DVR_NOENCODEING 54 //¸ÃͨµÀûÓбàÂë +#define NET_DVR_IPMISMATCH 55 //IPµØÖ·²»Æ¥Åä +#define NET_DVR_MACMISMATCH 56 //MACµØÖ·²»Æ¥Åä +#define NET_DVR_UPGRADELANGMISMATCH 57 //Éý¼¶ÎļþÓïÑÔ²»Æ¥Åä +#define NET_DVR_MAX_PLAYERPORT 58 //²¥·ÅÆ÷·Êý´ïµ½×î´ó +#define NET_DVR_NOSPACEBACKUP 59 //±¸·ÝÉ豸ÖÐûÓÐ×ã¹»¿Õ¼ä½øÐб¸·Ý +#define NET_DVR_NODEVICEBACKUP 60 //ûÓÐÕÒµ½Ö¸¶¨µÄ±¸·ÝÉ豸 +#define NET_DVR_PICTURE_BITS_ERROR 61 //ͼÏñËØλÊý²»·û£¬ÏÞ24É« +#define NET_DVR_PICTURE_DIMENSION_ERROR 62 //ͼƬ¸ß*¿í³¬ÏÞ£¬ ÏÞ128*256 +#define NET_DVR_PICTURE_SIZ_ERROR 63 //ͼƬ´óС³¬ÏÞ£¬ÏÞ100K +#define NET_DVR_LOADPLAYERSDKFAILED 64 //ÔØÈ뵱ǰĿ¼ÏÂPlayer Sdk³ö´í +#define NET_DVR_LOADPLAYERSDKPROC_ERROR 65 //ÕÒ²»µ½Player SdkÖÐij¸öº¯ÊýÈë¿Ú +#define NET_DVR_LOADDSSDKFAILED 66 //ÔØÈ뵱ǰĿ¼ÏÂDSsdk³ö´í +#define NET_DVR_LOADDSSDKPROC_ERROR 67 //ÕÒ²»µ½DsSdkÖÐij¸öº¯ÊýÈë¿Ú +#define NET_DVR_DSSDK_ERROR 68 //µ÷ÓÃÓ²½âÂë¿âDsSdkÖÐij¸öº¯Êýʧ°Ü +#define NET_DVR_VOICEMONOPOLIZE 69 //Éù¿¨±»¶ÀÕ¼ +#define NET_DVR_JOINMULTICASTFAILED 70 //¼ÓÈë¶à²¥×éʧ°Ü +#define NET_DVR_CREATEDIR_ERROR 71 //½¨Á¢ÈÕÖ¾ÎļþĿ¼ʧ°Ü +#define NET_DVR_BINDSOCKET_ERROR 72 //°ó¶¨Ì×½Ó×Öʧ°Ü +#define NET_DVR_SOCKETCLOSE_ERROR 73 //socketÁ¬½ÓÖжϣ¬´Ë´íÎóͨ³£ÊÇÓÉÓÚÁ¬½ÓÖжϻòÄ¿µÄµØ²»¿É´ï +#define NET_DVR_USERID_ISUSING 74 //×¢ÏúʱÓû§IDÕýÔÚ½øÐÐij²Ù×÷ +#define NET_DVR_SOCKETLISTEN_ERROR 75 //¼àÌýʧ°Ü +#define NET_DVR_PROGRAM_EXCEPTION 76 //³ÌÐòÒì³£ +#define NET_DVR_WRITEFILE_FAILED 77 //дÎļþʧ°Ü +#define NET_DVR_FORMAT_READONLY 78 //½ûÖ¹¸ñʽ»¯Ö»¶ÁÓ²ÅÌ +#define NET_DVR_WITHSAMEUSERNAME 79 //Óû§ÅäÖýṹÖдæÔÚÏàͬµÄÓû§Ãû +#define NET_DVR_DEVICETYPE_ERROR 80 /*µ¼Èë²ÎÊýʱÉ豸ÐͺŲ»Æ¥Åä*/ +#define NET_DVR_LANGUAGE_ERROR 81 /*µ¼Èë²ÎÊýʱÓïÑÔ²»Æ¥Åä*/ +#define NET_DVR_PARAVERSION_ERROR 82 /*µ¼Èë²ÎÊýʱÈí¼þ°æ±¾²»Æ¥Åä*/ +#define NET_DVR_IPCHAN_NOTALIVE 83 /*Ô¤ÀÀʱÍâ½ÓIPͨµÀ²»ÔÚÏß*/ +#define NET_DVR_RTSP_SDK_ERROR 84 /*¼ÓÔظßÇåIPCͨѶ¿âStreamTransClient.dllʧ°Ü*/ +#define NET_DVR_CONVERT_SDK_ERROR 85 /*¼ÓÔØתÂë¿âʧ°Ü*/ +#define NET_DVR_IPC_COUNT_OVERFLOW 86 /*³¬³ö×î´óµÄip½ÓÈëͨµÀÊý*/ +#define NET_DVR_MAX_ADD_NUM 87 /*Ìí¼Ó±êÇ©(Ò»¸öÎļþƬ¶Î64)µÈ¸öÊý´ïµ½×î´ó*/ +#define NET_DVR_PARAMMODE_ERROR 88 //ͼÏñÔöÇ¿ÒÇ£¬²ÎÊýģʽ´íÎó£¨ÓÃÓÚÓ²¼þÉèÖÃʱ£¬¿Í»§¶Ë½øÐÐÈí¼þÉèÖÃʱ´íÎóÖµ£© +#define NET_DVR_CODESPITTER_OFFLINE 89 //ÊÓƵ×ÛºÏƽ̨£¬Âë·ÖÆ÷²»ÔÚÏß +#define NET_DVR_BACKUP_COPYING 90 //É豸ÕýÔÚ±¸·Ý +#define NET_DVR_CHAN_NOTSUPPORT 91 // ͨµÀ²»Ö§³Ö¸Ã²Ù×÷ +#define NET_DVR_CALLINEINVALID 92 // ¸ß¶ÈÏßλÖÃÌ«¼¯Öлò³¤¶ÈÏß²»¹»Çãб +#define NET_DVR_CALCANCELCONFLICT 93 // È¡Ïû±ê¶¨³åÍ»£¬Èç¹ûÉèÖÃÁ˹æÔò¼°È«¾ÖµÄʵ¼Ê´óС³ß´ç¹ýÂË +#define NET_DVR_CALPOINTOUTRANGE 94 // ±ê¶¨µã³¬³ö·¶Î§ +#define NET_DVR_FILTERRECTINVALID 95 // ³ß´ç¹ýÂËÆ÷²»·ûºÏÒªÇó +#define NET_DVR_DDNS_DEVOFFLINE 96 //É豸ûÓÐ×¢²áµ½ddnsÉÏ +#define NET_DVR_DDNS_INTER_ERROR 97 //DDNS ·þÎñÆ÷ÄÚ²¿´íÎó +#define NET_DVR_FUNCTION_NOT_SUPPORT_OS 98 //´Ë¹¦Äܲ»Ö§³Ö¸Ã²Ù×÷ϵͳ +#define NET_DVR_DEC_CHAN_REBIND 99 //½âÂëͨµÀ°ó¶¨ÏÔʾÊä³ö´ÎÊýÊÜÏÞ +#define NET_DVR_INTERCOM_SDK_ERROR 100 //¼ÓÔص±Ç°Ä¿Â¼ÏµÄÓïÒô¶Ô½²¿âʧ°Ü +#define NET_DVR_NO_CURRENT_UPDATEFILE 101 //ûÓÐÕýÈ·µÄÉý¼¶°ü +#define NET_DVR_USER_NOT_SUCC_LOGIN 102 //Óû§»¹Ã»µÇ½³É¹¦ +#define NET_DVR_USE_LOG_SWITCH_FILE 103 //ÕýÔÚʹÓÃÈÕÖ¾¿ª¹ØÎļþ +#define NET_DVR_POOL_PORT_EXHAUST 104 //¶Ë¿Ú³ØÖÐÓÃÓڰ󶨵Ķ˿ÚÒѺľ¡ +#define NET_DVR_PACKET_TYPE_NOT_SUPPORT 105 //ÂëÁ÷·â×°¸ñʽ´íÎó +#define NET_DVR_IPPARA_IPID_ERROR 106 //IP½ÓÈëÅäÖÃʱIPIDÓÐÎó + +#define NET_DVR_LOAD_HCPREVIEW_SDK_ERROR 107 //Ô¤ÀÀ×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCVOICETALK_SDK_ERROR 108 //ÓïÒô×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCALARM_SDK_ERROR 109 //±¨¾¯×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCPLAYBACK_SDK_ERROR 110 //»Ø·Å×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCDISPLAY_SDK_ERROR 111 //ÏÔʾ×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCINDUSTRY_SDK_ERROR 112 //ÐÐÒµÓ¦ÓÃ×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCGENERALCFGMGR_SDK_ERROR 113 //ͨÓÃÅäÖùÜÀí×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCCOREDEVCFG_SDK_ERROR 114 //É豸ÅäÖúËÐÄ×é¼þ¼ÓÔØʧ°Ü +#define NET_DVR_LOAD_HCNETUTILS_SDK_ERROR 115 //HCNetUtils¼ÓÔØʧ°Ü + +#define NET_DVR_CORE_VER_MISMATCH 121 //µ¥¶À¼ÓÔØ×é¼þʱ£¬×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCPREVIEW 122 //Ô¤ÀÀ×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCVOICETALK 123 //ÓïÒô×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCALARM 124 //±¨¾¯×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCPLAYBACK 125 //»Ø·Å×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCDISPLAY 126 //ÏÔʾ×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCINDUSTRY 127 //ÐÐÒµÓ¦ÓÃ×é¼þÓëcore°æ±¾²»Æ¥Åä +#define NET_DVR_CORE_VER_MISMATCH_HCGENERALCFGMGR 128 //ͨÓÃÅäÖùÜÀí×é¼þÓëcore°æ±¾²»Æ¥Åä + +#define NET_DVR_COM_VER_MISMATCH_HCPREVIEW 136 //Ô¤ÀÀ×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä +#define NET_DVR_COM_VER_MISMATCH_HCVOICETALK 137 //ÓïÒô×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä +#define NET_DVR_COM_VER_MISMATCH_HCALARM 138 //±¨¾¯×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä +#define NET_DVR_COM_VER_MISMATCH_HCPLAYBACK 139 //»Ø·Å×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä +#define NET_DVR_COM_VER_MISMATCH_HCDISPLAY 140 //ÏÔʾ×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä +#define NET_DVR_COM_VER_MISMATCH_HCINDUSTRY 141 //ÐÐÒµÓ¦ÓÃ×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä +#define NET_DVR_COM_VER_MISMATCH_HCGENERALCFGMGR 142 //ͨÓÃÅäÖùÜÀí×é¼þÓëHCNetSDK°æ±¾²»Æ¥Åä + +#define NET_ERR_CONFIG_FILE_IMPORT_FAILED 145 //ÅäÖÃÎļþµ¼Èëʧ°Ü +#define NET_ERR_CONFIG_FILE_EXPORT_FAILED 146 //ÅäÖÃÎļþµ¼³öʧ°Ü +#define NET_DVR_CERTIFICATE_FILE_ERROR 147 //Ö¤Êé´íÎó +#define NET_DVR_LOAD_SSL_LIB_ERROR 148 //¼ÓÔØSSL¿âʧ°Ü£¨¿ÉÄÜÊÇ°æ±¾²»Æ¥Å䣬Ҳ¿ÉÄÜÊDz»´æÔÚ£© +#define NET_DVR_SSL_VERSION_NOT_MATCH 149 //SSL¿â°æ±¾²»Æ¥Åä + +#define NET_DVR_ALIAS_DUPLICATE 150 //±ðÃûÖظ´ //2011-08-31 ͨ¹ý±ðÃû»òÕßÐòÁкÅÀ´·ÃÎÊÉ豸µÄа汾ddnsµÄÅäÖà +#define NET_DVR_INVALID_COMMUNICATION 151 //ÎÞЧͨÐÅ +#define NET_DVR_USERNAME_NOT_EXIST 152 //Óû§Ãû²»´æÔÚ£¨Óû§Ãû²»´æÔÚ£¬IPC5.1.7Öз¢²¼³öÈ¥ÁË£¬ËùÒÔɾ²»µô¡£ºóÐøµÄ²úÆ·Õâ¸ö´íÎóÂëÓò»ÉÏ£© +#define NET_DVR_USER_LOCKED 153 //Óû§±»Ëø¶¨ +#define NET_DVR_INVALID_USERID 154 //ÎÞЧÓû§ID +#define NET_DVR_LOW_LOGIN_VERSION 155 //µÇ¼°æ±¾µÍ +#define NET_DVR_LOAD_LIBEAY32_DLL_ERROR 156 //¼ÓÔØlibeay32.dll¿âʧ°Ü +#define NET_DVR_LOAD_SSLEAY32_DLL_ERROR 157 //¼ÓÔØssleay32.dll¿âʧ°Ü +#define NET_ERR_LOAD_LIBICONV 158 //¼ÓÔØlibiconv¿âʧ°Ü +#define NET_ERR_SSL_CONNECT_FAILED 159 //SSLÁ¬½Óʧ°Ü +#define NET_ERR_MCAST_ADDRESS_ERROR 160 //»ñÈ¡¶à²¥µØÖ·´íÎó +#define NET_ERR_LOAD_ZLIB 161 //¼ÓÔØzlib.dll¿âʧ°Ü +#define NET_ERR_OPENSSL_NO_INIT 162 //Openssl¿âδ³õʼ»¯ + +#define NET_DVR_SERVER_NOT_EXIST 164 //¶ÔÓ¦µÄ·þÎñÆ÷ÕÒ²»µ½,²éÕÒʱÊäÈëµÄ¹ú¼Ò±àºÅ»òÕß·þÎñÆ÷ÀàÐÍ´íÎó +#define NET_DVR_TEST_SERVER_FAIL_CONNECT 165 //Á¬½Ó²âÊÔ·þÎñÆ÷ʧ°Ü +#define NET_DVR_NAS_SERVER_INVALID_DIR 166 //NAS·þÎñÆ÷¹ÒÔØĿ¼ʧ°Ü£¬Ä¿Â¼ÎÞЧ +#define NET_DVR_NAS_SERVER_NOENOUGH_PRI 167 //NAS·þÎñÆ÷¹ÒÔØĿ¼ʧ°Ü£¬Ã»ÓÐȨÏÞ +#define NET_DVR_EMAIL_SERVER_NOT_CONFIG_DNS 168 //·þÎñÆ÷ʹÓÃÓòÃû£¬µ«ÊÇûÓÐÅäÖÃDNS£¬¿ÉÄÜÔì³ÉÓòÃûÎÞЧ¡£ +#define NET_DVR_EMAIL_SERVER_NOT_CONFIG_GATEWAY 169 //ûÓÐÅäÖÃÍø¹Ø£¬¿ÉÄÜÔì³É·¢ËÍÓʼþʧ°Ü¡£ +#define NET_DVR_TEST_SERVER_PASSWORD_ERROR 170 //Óû§ÃûÃÜÂë²»ÕýÈ·£¬²âÊÔ·þÎñÆ÷µÄÓû§Ãû»òÃÜÂë´íÎó +#define NET_DVR_EMAIL_SERVER_CONNECT_EXCEPTION_WITH_SMTP 171 //É豸ºÍsmtp·þÎñÆ÷½»»¥Òì³£ +#define NET_DVR_FTP_SERVER_FAIL_CREATE_DIR 172 //FTP·þÎñÆ÷´´½¨Ä¿Â¼Ê§°Ü +#define NET_DVR_FTP_SERVER_NO_WRITE_PIR 173 //FTP·þÎñÆ÷ûÓÐдÈëȨÏÞ +#define NET_DVR_IP_CONFLICT 174 //IP³åÍ» +#define NET_DVR_INSUFFICIENT_STORAGEPOOL_SPACE 175 //´æ´¢³Ø¿Õ¼äÒÑÂú +#define NET_DVR_STORAGEPOOL_INVALID 176 //ÔÆ·þÎñÆ÷´æ´¢³ØÎÞЧ,ûÓÐÅäÖô洢³Ø»òÕß´æ´¢³ØID´íÎó +#define NET_DVR_EFFECTIVENESS_REBOOT 177 //ÉúЧÐèÒªÖØÆô +#define NET_ERR_ANR_ARMING_EXIST 178 //¶ÏÍøÐø´«²¼·ÀÁ¬½ÓÒѾ­´æÔÚ(¸Ã´íÎóÂëÊÇÔÚ˽Óв¼·ÀÁ¬½Ó½¨Á¢µÄÇé¿öÏ£¬Öظ´²¼·ÀµÄ¶ÏÍøÐø´«¹¦ÄÜʱ£¬·µ»Ø¡£) +#define NET_ERR_UPLOADLINK_EXIST 179 //¶ÏÍøÐø´«ÉÏ´«Á¬½ÓÒѾ­´æÔÚ(EHOMEЭÒéºÍSDKЭÒéÊDz»ÄÜͬʱ֧³Ö¶ÏÍøÐø´«µÄ£¬µ±Ò»¸öЭÒé´æÔÚµÄʱºò£¬ÁíÍâÒ»¸öÁ¬½Ó½¨Á¢»°£¬±¨´íÕâ¸ö´íÎóÂë¡£) +#define NET_ERR_INCORRECT_FILE_FORMAT 180 //µ¼ÈëÎļþ¸ñʽ²»ÕýÈ· +#define NET_ERR_INCORRECT_FILE_CONTENT 181 //µ¼ÈëÎļþÄÚÈݲ»ÕýÈ· +#define NET_ERR_MAX_HRUDP_LINK 182 //HRUDP Á¬½ÓÊý ³¬¹ýÉ豸ÏÞÖÆ +#define NET_SDK_ERR_ACCESSKEY_SECRETKEY 183 // ½ÓÈëÃØÔ¿»ò¼ÓÃÜÃØÔ¿²»ÕýÈ· +#define NET_SDK_ERR_CREATE_PORT_MULTIPLEX 184 //´´½¨¶Ë¿Ú¸´ÓÃʧ°Ü +#define NET_DVR_NONBLOCKING_CAPTURE_NOTSUPPORT 185 //²»Ö§³ÖÎÞ×èÈûץͼ +#define NET_SDK_ERR_FUNCTION_INVALID 186 //ÒÑ¿ªÆôÒì²½£¬¸Ã¹¦ÄÜÎÞЧ +#define NET_SDK_ERR_MAX_PORT_MULTIPLEX 187 //ÒÑ´ïµ½¶Ë¿Ú¸´ÓÃ×î´óÊýÄ¿ +#define NET_DVR_INVALID_LINK 188 //Á¬½ÓÉÐ佨Á¢»òÁ¬½ÓÎÞЧ +#define NET_DVR_ISAPI_NOT_SUPPORT 189 //½Ó¿Ú²»Ö§³ÖISAPIЭÒé + +// 2010-5-28 +// ÕóÁдíÎóÂë +#define RAID_ERROR_INDEX 200 +#define NET_DVR_NAME_NOT_ONLY (RAID_ERROR_INDEX + 0) // Ãû³ÆÒÑ´æÔÚ +#define NET_DVR_OVER_MAX_ARRAY (RAID_ERROR_INDEX + 1 ) // ÕóÁдﵽÉÏÏÞ +#define NET_DVR_OVER_MAX_VD (RAID_ERROR_INDEX + 2 ) // ÐéÄâ´ÅÅÌ´ïµ½ÉÏÏÞ +#define NET_DVR_VD_SLOT_EXCEED (RAID_ERROR_INDEX + 3 ) // ÐéÄâ´ÅÅ̲ÛλÒÑÂú +#define NET_DVR_PD_STATUS_INVALID (RAID_ERROR_INDEX + 4 ) // Öؽ¨ÕóÁÐËùÐèÎïÀí´ÅÅÌ״̬´íÎó +#define NET_DVR_PD_BE_DEDICATE_SPARE (RAID_ERROR_INDEX + 5 ) // Öؽ¨ÕóÁÐËùÐèÎïÀí´ÅÅÌΪָ¶¨Èȱ¸ +#define NET_DVR_PD_NOT_FREE (RAID_ERROR_INDEX + 6 ) // Öؽ¨ÕóÁÐËùÐèÎïÀí´ÅÅÌ·Ç¿ÕÏÐ +#define NET_DVR_CANNOT_MIG2NEWMODE (RAID_ERROR_INDEX + 7 ) // ²»ÄÜ´Óµ±Ç°µÄÕóÁÐÀàÐÍǨÒƵ½ÐµÄÕóÁÐÀàÐÍ +#define NET_DVR_MIG_PAUSE (RAID_ERROR_INDEX + 8 ) // ǨÒƲÙ×÷ÒÑÔÝÍ£ +#define NET_DVR_MIG_CANCEL (RAID_ERROR_INDEX + 9 ) // ÕýÔÚÖ´ÐеÄǨÒƲÙ×÷ÒÑÈ¡Ïû +#define NET_DVR_EXIST_VD (RAID_ERROR_INDEX + 10) // ÕóÁÐÉÏÕóÁÐÉÏ´æÔÚÐéÄâ´ÅÅÌ£¬ÎÞ·¨É¾³ýÕóÁÐ +#define NET_DVR_TARGET_IN_LD_FUNCTIONAL (RAID_ERROR_INDEX + 11) // ¶ÔÏóÎïÀí´ÅÅÌΪÐéÄâ´ÅÅÌ×é³É²¿·ÖÇÒ¹¤×÷Õý³£ +#define NET_DVR_HD_IS_ASSIGNED_ALREADY (RAID_ERROR_INDEX + 12) // Ö¸¶¨µÄÎïÀí´ÅÅ̱»·ÖÅäΪÐéÄâ´ÅÅÌ +#define NET_DVR_INVALID_HD_COUNT (RAID_ERROR_INDEX + 13) // ÎïÀí´ÅÅÌÊýÁ¿ÓëÖ¸¶¨µÄRAIDµÈ¼¶²»Æ¥Åä +#define NET_DVR_LD_IS_FUNCTIONAL (RAID_ERROR_INDEX + 14) // ÕóÁÐÕý³££¬ÎÞ·¨Öؽ¨ +#define NET_DVR_BGA_RUNNING (RAID_ERROR_INDEX + 15) // ´æÔÚÕýÔÚÖ´Ðеĺǫ́ÈÎÎñ +#define NET_DVR_LD_NO_ATAPI (RAID_ERROR_INDEX + 16) // ÎÞ·¨ÓÃATAPIÅÌ´´½¨ÐéÄâ´ÅÅÌ +#define NET_DVR_MIGRATION_NOT_NEED (RAID_ERROR_INDEX + 17) // ÕóÁÐÎÞÐèǨÒÆ +#define NET_DVR_HD_TYPE_MISMATCH (RAID_ERROR_INDEX + 18) // ÎïÀí´ÅÅ̲»ÊôÓÚͬÒâÀàÐÍ +#define NET_DVR_NO_LD_IN_DG (RAID_ERROR_INDEX + 19) // ÎÞÐéÄâ´ÅÅÌ£¬ÎÞ·¨½øÐдËÏî²Ù×÷ +#define NET_DVR_NO_ROOM_FOR_SPARE (RAID_ERROR_INDEX + 20) // ´ÅÅÌ¿Õ¼ä¹ýС£¬ÎÞ·¨±»Ö¸¶¨ÎªÈȱ¸ÅÌ +#define NET_DVR_SPARE_IS_IN_MULTI_DG (RAID_ERROR_INDEX + 21) // ´ÅÅÌÒѱ»·ÖÅäΪijÕóÁÐÈȱ¸ÅÌ +#define NET_DVR_DG_HAS_MISSING_PD (RAID_ERROR_INDEX + 22) // ÕóÁÐȱÉÙÅÌ + +// x86 64bit nvrÐÂÔö 2012-02-04 +#define NET_DVR_NAME_EMPTY (RAID_ERROR_INDEX + 23) /*Ãû³ÆΪ¿Õ*/ +#define NET_DVR_INPUT_PARAM (RAID_ERROR_INDEX + 24) /*ÊäÈë²ÎÊýÓÐÎó*/ +#define NET_DVR_PD_NOT_AVAILABLE (RAID_ERROR_INDEX + 25) /*ÎïÀí´ÅÅ̲»¿ÉÓÃ*/ +#define NET_DVR_ARRAY_NOT_AVAILABLE (RAID_ERROR_INDEX + 26) /*ÕóÁв»¿ÉÓÃ*/ +#define NET_DVR_PD_COUNT (RAID_ERROR_INDEX + 27) /*ÎïÀí´ÅÅÌÊý²»ÕýÈ·*/ +#define NET_DVR_VD_SMALL (RAID_ERROR_INDEX + 28) /*ÐéÄâ´ÅÅÌ̫С*/ +#define NET_DVR_NO_EXIST (RAID_ERROR_INDEX + 29) /*²»´æÔÚ*/ +#define NET_DVR_NOT_SUPPORT (RAID_ERROR_INDEX + 30) /*²»Ö§³Ö¸Ã²Ù×÷*/ +#define NET_DVR_NOT_FUNCTIONAL (RAID_ERROR_INDEX + 31) /*ÕóÁÐ״̬²»ÊÇÕý³£×´Ì¬*/ +#define NET_DVR_DEV_NODE_NOT_FOUND (RAID_ERROR_INDEX + 32) /*ÐéÄâ´ÅÅÌÉ豸½Úµã²»´æÔÚ*/ +#define NET_DVR_SLOT_EXCEED (RAID_ERROR_INDEX + 33) /*²Ûλ´ïµ½ÉÏÏÞ*/ +#define NET_DVR_NO_VD_IN_ARRAY (RAID_ERROR_INDEX + 34) /*ÕóÁÐÉϲ»´æÔÚÐéÄâ´ÅÅÌ*/ +#define NET_DVR_VD_SLOT_INVALID (RAID_ERROR_INDEX + 35) /*ÐéÄâ´ÅÅ̲ÛλÎÞЧ*/ +#define NET_DVR_PD_NO_ENOUGH_SPACE (RAID_ERROR_INDEX + 36) /*ËùÐèÎïÀí´ÅÅ̿ռ䲻×ã*/ +#define NET_DVR_ARRAY_NONFUNCTION (RAID_ERROR_INDEX + 37) /*Ö»Óд¦ÓÚÕý³£×´Ì¬µÄÕóÁвÅÄܽøÐÐǨÒÆ*/ +#define NET_DVR_ARRAY_NO_ENOUGH_SPACE (RAID_ERROR_INDEX + 38) /*ÕóÁпռ䲻×ã*/ +#define NET_DVR_STOPPING_SCANNING_ARRAY (RAID_ERROR_INDEX + 39) /*ÕýÔÚÖ´Ðа²È«°ÎÅÌ»òÖØÐÂɨÃè*/ +#define NET_DVR_NOT_SUPPORT_16T (RAID_ERROR_INDEX + 40) /*²»Ö§³Ö´´½¨´óÓÚ16TµÄÕóÁÐ*/ +#define NET_DVR_ARRAY_FORMATING (RAID_ERROR_INDEX + 41) /*ÕýÔÚÖ´Ðиñʽ»¯µÄÕóÁÐÎÞ·¨É¾³ý*/ +#define NET_DVR_QUICK_SETUP_PD_COUNT (RAID_ERROR_INDEX + 42) /*Ò»¼üÅäÖÃÖÁÉÙÐèÒªÈý¿é¿ÕÏÐÅÌ*/ + +//É豸δ¼¤»îʱ£¬µÇ¼ʧ°Ü£¬·µ»Ø´íÎóÂë +#define NET_DVR_ERROR_DEVICE_NOT_ACTIVATED 250//É豸δ¼¤»î +//ÀÏSDK½ÓÐÂÉ豸£¬ÉèÖÃÓû§ÃÜÂë»òÕß¼¤»îµÄʱºòΪ·çÏÕÃÜÂëʱ£¬´íÎóÂë +#define NET_DVR_ERROR_RISK_PASSWORD 251 //ÓзçÏÕµÄÃÜÂë +//ÒѼ¤»îµÄÉ豸£¬Ôٴ줻îʱ·µ»Ø´íÎóÂë +#define NET_DVR_ERROR_DEVICE_HAS_ACTIVATED 252//É豸ÒѼ¤»î + + +// ÖÇÄÜ´íÎóÂë +#define VCA_ERROR_INDEX 300 // ÖÇÄÜ´íÎóÂëË÷Òý +#define NET_DVR_ID_ERROR (VCA_ERROR_INDEX + 0) // ÅäÖÃID²»ºÏÀí +#define NET_DVR_POLYGON_ERROR (VCA_ERROR_INDEX + 1) // ¶à±ßÐβ»·ûºÏÒªÇó +#define NET_DVR_RULE_PARAM_ERROR (VCA_ERROR_INDEX + 2) // ¹æÔò²ÎÊý²»ºÏÀí +#define NET_DVR_RULE_CFG_CONFLICT (VCA_ERROR_INDEX + 3) // ÅäÖÃÐÅÏ¢³åÍ» +#define NET_DVR_CALIBRATE_NOT_READY (VCA_ERROR_INDEX + 4) // µ±Ç°Ã»Óб궨ÐÅÏ¢ +#define NET_DVR_CAMERA_DATA_ERROR (VCA_ERROR_INDEX + 5) // ÉãÏñ»ú²ÎÊý²»ºÏÀí +#define NET_DVR_CALIBRATE_DATA_UNFIT (VCA_ERROR_INDEX + 6) // ³¤¶È²»¹»Çãб£¬²»ÀûÓڱ궨 +#define NET_DVR_CALIBRATE_DATA_CONFLICT (VCA_ERROR_INDEX + 7) // ±ê¶¨³ö´í£¬ÒÔΪËùÓе㹲Ïß»òÕßλÖÃÌ«¼¯ÖÐ +#define NET_DVR_CALIBRATE_CALC_FAIL (VCA_ERROR_INDEX + 8) // ÉãÏñ»ú±ê¶¨²ÎÊýÖµ¼ÆËãʧ°Ü +#define NET_DVR_CALIBRATE_LINE_OUT_RECT (VCA_ERROR_INDEX + 9) // ÊäÈëµÄÑù±¾±ê¶¨Ïß³¬³öÁËÑù±¾Íâ½Ó¾ØÐοò +#define NET_DVR_ENTER_RULE_NOT_READY (VCA_ERROR_INDEX + 10) // ûÓÐÉèÖýøÈëÇøÓò +#define NET_DVR_AID_RULE_NO_INCLUDE_LANE (VCA_ERROR_INDEX + 11) // ½»Í¨Ê¼þ¹æÔòÖÐûÓаüÀ¨³µµÀ£¨ÌØÖµÓµ¶ÂºÍÄæÐУ© +#define NET_DVR_LANE_NOT_READY (VCA_ERROR_INDEX + 12) // µ±Ç°Ã»ÓÐÉèÖóµµÀ +#define NET_DVR_RULE_INCLUDE_TWO_WAY (VCA_ERROR_INDEX + 13) // ʼþ¹æÔòÖаüº¬2ÖÖ²»Í¬·½Ïò +#define NET_DVR_LANE_TPS_RULE_CONFLICT (VCA_ERROR_INDEX + 14) // ³µµÀºÍÊý¾Ý¹æÔò³åÍ» +#define NET_DVR_NOT_SUPPORT_EVENT_TYPE (VCA_ERROR_INDEX + 15) // ²»Ö§³ÖµÄʼþÀàÐÍ +#define NET_DVR_LANE_NO_WAY (VCA_ERROR_INDEX + 16) // ³µµÀûÓз½Ïò +#define NET_DVR_SIZE_FILTER_ERROR (VCA_ERROR_INDEX + 17) // ³ß´ç¹ýÂË¿ò²»ºÏÀí +#define NET_DVR_LIB_FFL_NO_FACE (VCA_ERROR_INDEX + 18) // ÌØÕ÷µã¶¨Î»Ê±ÊäÈëµÄͼÏñûÓÐÈËÁ³ +#define NET_DVR_LIB_FFL_IMG_TOO_SMALL (VCA_ERROR_INDEX + 19) // ÌØÕ÷µã¶¨Î»Ê±ÊäÈëµÄͼÏñ̫С +#define NET_DVR_LIB_FD_IMG_NO_FACE (VCA_ERROR_INDEX + 20) // µ¥ÕÅͼÏñÈËÁ³¼ì²âʱÊäÈëµÄͼÏñûÓÐÈËÁ³ +#define NET_DVR_LIB_FACE_TOO_SMALL (VCA_ERROR_INDEX + 21) // ½¨Ä£Ê±ÈËÁ³Ì«Ð¡ +#define NET_DVR_LIB_FACE_QUALITY_TOO_BAD (VCA_ERROR_INDEX + 22) // ½¨Ä£Ê±ÈËÁ³Í¼ÏñÖÊÁ¿Ì«²î +#define NET_DVR_KEY_PARAM_ERR (VCA_ERROR_INDEX + 23) //¸ß¼¶²ÎÊýÉèÖôíÎó +#define NET_DVR_CALIBRATE_DATA_ERR (VCA_ERROR_INDEX + 24) //±ê¶¨Ñù±¾ÊýÄ¿´íÎ󣬻òÊý¾ÝÖµ´íÎ󣬻òÑù±¾µã³¬³öµØƽÏß +#define NET_DVR_CALIBRATE_DISABLE_FAIL (VCA_ERROR_INDEX + 25) //ËùÅäÖùæÔò²»ÔÊÐíÈ¡Ïû±ê¶¨ +#define NET_DVR_VCA_LIB_FD_SCALE_OUTRANGE (VCA_ERROR_INDEX + 26) //×î´ó¹ýÂË¿òµÄ¿í¸ß×îСֵ³¬¹ý×îС¹ýÂË¿òµÄ¿í¸ß×î´óÖµÁ½±¶ÒÔÉÏ +#define NET_DVR_LIB_FD_REGION_TOO_LARGE (VCA_ERROR_INDEX + 27) //µ±Ç°¼ì²âÇøÓò·¶Î§¹ý´ó¡£¼ì²âÇø×î´óΪͼÏñµÄ2/3 +#define NET_DVR_TRIAL_OVERDUE (VCA_ERROR_INDEX + 28) //ÊÔÓðæÆÀ¹ÀÆÚÒѽáÊø +#define NET_DVR_CONFIG_FILE_CONFLICT (VCA_ERROR_INDEX + 29) //É豸ÀàÐÍÓëÅäÖÃÎļþ³åÍ»£¨¼ÓÃܹ·ÀàÐÍÓëÏÖÓзÖÎöÒÇÅäÖò»·û´íÎóÂëÌáʾ£© +//Ëã·¨¿âÏà¹Ø´íÎóÂë +#define NET_DVR_FR_FPL_FAIL (VCA_ERROR_INDEX + 30) // ÈËÁ³ÌØÕ÷µã¶¨Î»Ê§°Ü +#define NET_DVR_FR_IQA_FAIL (VCA_ERROR_INDEX + 31) // ÈËÁ³ÆÀ·Öʧ°Ü +#define NET_DVR_FR_FEM_FAIL (VCA_ERROR_INDEX + 32) // ÈËÁ³ÌØÕ÷Ìáȡʧ°Ü +#define NET_DVR_FPL_DT_CONF_TOO_LOW (VCA_ERROR_INDEX + 33) // ÌØÕ÷µã¶¨Î»Ê±ÈËÁ³¼ì²âÖÃÐŶȹýµÍ +#define NET_DVR_FPL_CONF_TOO_LOW (VCA_ERROR_INDEX + 34) // ÌØÕ÷µã¶¨Î»ÖÃÐŶȹýµÍ +#define NET_DVR_E_DATA_SIZE (VCA_ERROR_INDEX + 35) // Êý¾Ý³¤¶È²»Æ¥Åä +#define NET_DVR_FR_MODEL_VERSION_ERR (VCA_ERROR_INDEX + 36) // ÈËÁ³Ä£ÐÍÊý¾ÝÖеÄÄ£ÐÍ°æ±¾´íÎó +#define NET_DVR_FR_FD_FAIL (VCA_ERROR_INDEX + 37) // ʶ±ð¿âÖÐÈËÁ³¼ì²âʧ°Ü +#define NET_DVR_FA_NORMALIZE_ERR (VCA_ERROR_INDEX + 38) // ÈËÁ³¹éÒ»»¯³ö´í +//ÆäËû´íÎóÂë +#define NET_DVR_DOG_PUSTREAM_NOT_MATCH (VCA_ERROR_INDEX + 39) // ¼ÓÃܹ·ÓëÇ°¶ËÈ¡Á÷É豸ÀàÐͲ»Æ¥Åä +#define NET_DVR_DEV_PUSTREAM_NOT_MATCH (VCA_ERROR_INDEX + 40) // Ç°¶ËÈ¡Á÷É豸°æ±¾²»Æ¥Åä +#define NET_DVR_PUSTREAM_ALREADY_EXISTS (VCA_ERROR_INDEX + 41) // É豸µÄÆäËûͨµÀÒѾ­Ìí¼Ó¹ý¸ÃÇ°¶ËÉ豸 +#define NET_DVR_SEARCH_CONNECT_FAILED (VCA_ERROR_INDEX + 42) // Á¬½Ó¼ìË÷·þÎñÆ÷ʧ°Ü +#define NET_DVR_INSUFFICIENT_DISK_SPACE (VCA_ERROR_INDEX + 43) // ¿É´æ´¢µÄÓ²Å̿ռ䲻×ã +#define NET_DVR_DATABASE_CONNECTION_FAILED (VCA_ERROR_INDEX + 44) // Êý¾Ý¿âÁ¬½Óʧ°Ü +#define NET_DVR_DATABASE_ADM_PW_ERROR (VCA_ERROR_INDEX + 45) // Êý¾Ý¿âÓû§Ãû¡¢ÃÜÂë´íÎó +#define NET_DVR_DECODE_YUV (VCA_ERROR_INDEX + 46) // ½âÂëʧ°Ü +#define NET_DVR_IMAGE_RESOLUTION_ERROR (VCA_ERROR_INDEX + 47) // +#define NET_DVR_CHAN_WORKMODE_ERROR (VCA_ERROR_INDEX + 48) // + +#define NET_DVR_RTSP_ERROR_NOENOUGHPRI 401 //ÎÞȨÏÞ£º·þÎñÆ÷·µ»Ø401ʱ£¬×ª³ÉÕâ¸ö´íÎóÂë +#define NET_DVR_RTSP_ERROR_ALLOC_RESOURCE 402 //·ÖÅä×ÊԴʧ°Ü +#define NET_DVR_RTSP_ERROR_PARAMETER 403 //²ÎÊý´íÎó +#define NET_DVR_RTSP_ERROR_NO_URL 404 //Ö¸¶¨µÄURLµØÖ·²»´æÔÚ£º·þÎñÆ÷·µ»Ø404ʱ£¬×ª³ÉÕâ¸ö´íÎóÂë +#define NET_DVR_RTSP_ERROR_FORCE_STOP 406 //Óû§ÖÐ;ǿÐÐÍ˳ö + +#define NET_DVR_RTSP_GETPORTFAILED 407 //rtsp µÃµ½¶Ë¿Ú´íÎó +#define NET_DVR_RTSP_DESCRIBERROR 410 //rtsp decribe ½»»¥´íÎó +#define NET_DVR_RTSP_DESCRIBESENDTIMEOUT 411 //rtsp decribe ·¢Ëͳ¬Ê± +#define NET_DVR_RTSP_DESCRIBESENDERROR 412 //rtsp decribe ·¢ËÍʧ°Ü +#define NET_DVR_RTSP_DESCRIBERECVTIMEOUT 413 //rtsp decribe ½ÓÊÕ³¬Ê± +#define NET_DVR_RTSP_DESCRIBERECVDATALOST 414 //rtsp decribe ½ÓÊÕÊý¾Ý´íÎó +#define NET_DVR_RTSP_DESCRIBERECVERROR 415 //rtsp decribe ½ÓÊÕʧ°Ü +#define NET_DVR_RTSP_DESCRIBESERVERERR 416 //rtsp decribe ·þÎñÆ÷·µ»Ø´íÎó״̬ + +#define NET_DVR_RTSP_SETUPERROR 420 //rtsp setup ½»»¥´íÎó +#define NET_DVR_RTSP_SETUPSENDTIMEOUT 421 //rtsp setup ·¢Ëͳ¬Ê± +#define NET_DVR_RTSP_SETUPSENDERROR 422 //rtsp setup ·¢ËÍ´íÎó +#define NET_DVR_RTSP_SETUPRECVTIMEOUT 423 //rtsp setup ½ÓÊÕ³¬Ê± +#define NET_DVR_RTSP_SETUPRECVDATALOST 424 //rtsp setup ½ÓÊÕÊý¾Ý´íÎó +#define NET_DVR_RTSP_SETUPRECVERROR 425 //rtsp setup ½ÓÊÕʧ°Ü +#define NET_DVR_RTSP_OVER_MAX_CHAN 426 //³¬¹ý·þÎñÆ÷×î´óÁ¬½ÓÊý£¬»òÕß·þÎñÆ÷×ÊÔ´²»×㣬·þÎñÆ÷·µ»Ø453ʱ£¬×ª³ÉÕâ¸ö´íÎóÂë¡£ +#define NET_DVR_RTSP_SETUPSERVERERR 427 //rtsp setup ·þÎñÆ÷·µ»Ø´íÎó״̬ + +#define NET_DVR_RTSP_PLAYERROR 430 //rtsp play ½»»¥´íÎó +#define NET_DVR_RTSP_PLAYSENDTIMEOUT 431 //rtsp play ·¢Ëͳ¬Ê± +#define NET_DVR_RTSP_PLAYSENDERROR 432 //rtsp play ·¢ËÍ´íÎó +#define NET_DVR_RTSP_PLAYRECVTIMEOUT 433 //rtsp play ½ÓÊÕ³¬Ê± +#define NET_DVR_RTSP_PLAYRECVDATALOST 434 //rtsp play ½ÓÊÕÊý¾Ý´íÎó +#define NET_DVR_RTSP_PLAYRECVERROR 435 //rtsp play ½ÓÊÕʧ°Ü +#define NET_DVR_RTSP_PLAYSERVERERR 436 //rtsp play ·þÎñÆ÷·µ»Ø´íÎó״̬ + +#define NET_DVR_RTSP_TEARDOWNERROR 440 //rtsp teardown ½»»¥´íÎó +#define NET_DVR_RTSP_TEARDOWNSENDTIMEOUT 441 //rtsp teardown ·¢Ëͳ¬Ê± +#define NET_DVR_RTSP_TEARDOWNSENDERROR 442 //rtsp teardown ·¢ËÍ´íÎó +#define NET_DVR_RTSP_TEARDOWNRECVTIMEOUT 443 //rtsp teardown ½ÓÊÕ³¬Ê± +#define NET_DVR_RTSP_TEARDOWNRECVDATALOST 444 //rtsp teardown ½ÓÊÕÊý¾Ý´íÎó +#define NET_DVR_RTSP_TEARDOWNRECVERROR 445 //rtsp teardown ½ÓÊÕʧ°Ü +#define NET_DVR_RTSP_TEARDOWNSERVERERR 446 //rtsp teardown ·þÎñÆ÷·µ»Ø´íÎó״̬ + +#define NET_PLAYM4_NOERROR 500 //no error +#define NET_PLAYM4_PARA_OVER 501 //input parameter is invalid; +#define NET_PLAYM4_ORDER_ERROR 502 //The order of the function to be called is error. +#define NET_PLAYM4_TIMER_ERROR 503 //Create multimedia clock failed; +#define NET_PLAYM4_DEC_VIDEO_ERROR 504 //Decode video data failed. +#define NET_PLAYM4_DEC_AUDIO_ERROR 505 //Decode audio data failed. +#define NET_PLAYM4_ALLOC_MEMORY_ERROR 506 //Allocate memory failed. +#define NET_PLAYM4_OPEN_FILE_ERROR 507 //Open the file failed. +#define NET_PLAYM4_CREATE_OBJ_ERROR 508 //Create thread or event failed +#define NET_PLAYM4_CREATE_DDRAW_ERROR 509 //Create DirectDraw object failed. +#define NET_PLAYM4_CREATE_OFFSCREEN_ERROR 510 //failed when creating off-screen surface. +#define NET_PLAYM4_BUF_OVER 511 //buffer is overflow +#define NET_PLAYM4_CREATE_SOUND_ERROR 512 //failed when creating audio device. +#define NET_PLAYM4_SET_VOLUME_ERROR 513 //Set volume failed +#define NET_PLAYM4_SUPPORT_FILE_ONLY 514 //The function only support play file. +#define NET_PLAYM4_SUPPORT_STREAM_ONLY 515 //The function only support play stream. +#define NET_PLAYM4_SYS_NOT_SUPPORT 516 //System not support. +#define NET_PLAYM4_FILEHEADER_UNKNOWN 517 //No file header. +#define NET_PLAYM4_VERSION_INCORRECT 518 //The version of decoder and encoder is not adapted. +#define NET_PALYM4_INIT_DECODER_ERROR 519 //Initialize decoder failed. +#define NET_PLAYM4_CHECK_FILE_ERROR 520 //The file data is unknown. +#define NET_PLAYM4_INIT_TIMER_ERROR 521 //Initialize multimedia clock failed. +#define NET_PLAYM4_BLT_ERROR 522 //Blt failed. +#define NET_PLAYM4_UPDATE_ERROR 523 //Update failed. +#define NET_PLAYM4_OPEN_FILE_ERROR_MULTI 524 //openfile error, streamtype is multi +#define NET_PLAYM4_OPEN_FILE_ERROR_VIDEO 525 //openfile error, streamtype is video +#define NET_PLAYM4_JPEG_COMPRESS_ERROR 526 //JPEG compress error +#define NET_PLAYM4_EXTRACT_NOT_SUPPORT 527 //Don't support the version of this file. +#define NET_PLAYM4_EXTRACT_DATA_ERROR 528 //extract video data failed. + +//ת·â×°¿â´íÎóÂë +#define NET_CONVERT_ERROR_NOT_SUPPORT 581 //convert not support + +//ÓïÒô¶Ô½²¿â´íÎóÂë +#define NET_AUDIOINTERCOM_OK 600 //ÎÞ´íÎó +#define NET_AUDIOINTECOM_ERR_NOTSUPORT 601 //²»Ö§³Ö +#define NET_AUDIOINTECOM_ERR_ALLOC_MEMERY 602 //ÄÚ´æÉêÇë´íÎó +#define NET_AUDIOINTECOM_ERR_PARAMETER 603 //²ÎÊý´íÎó +#define NET_AUDIOINTECOM_ERR_CALL_ORDER 604 //µ÷ÓôÎÐò´íÎó +#define NET_AUDIOINTECOM_ERR_FIND_DEVICE 605 //δ·¢ÏÖÉ豸 +#define NET_AUDIOINTECOM_ERR_OPEN_DEVICE 606 //²»ÄÜ´ò¿ªÉ豸ÚÀ +#define NET_AUDIOINTECOM_ERR_NO_CONTEXT 607 //É豸ÉÏÏÂÎijö´í +#define NET_AUDIOINTECOM_ERR_NO_WAVFILE 608 //WAVÎļþ³ö´í +#define NET_AUDIOINTECOM_ERR_INVALID_TYPE 609 //ÎÞЧµÄWAV²ÎÊýÀàÐÍ +#define NET_AUDIOINTECOM_ERR_ENCODE_FAIL 610 //±àÂëʧ°Ü +#define NET_AUDIOINTECOM_ERR_DECODE_FAIL 611 //½âÂëʧ°Ü +#define NET_AUDIOINTECOM_ERR_NO_PLAYBACK 612 //²¥·Åʧ°Ü +#define NET_AUDIOINTECOM_ERR_DENOISE_FAIL 613 //½µÔëʧ°Ü +#define NET_AUDIOINTECOM_ERR_UNKOWN 619 //δ֪´íÎó + +#define NET_QOS_OK 700 //no error +#define NET_QOS_ERROR (NET_QOS_OK - 1) //qos error +#define NET_QOS_ERR_INVALID_ARGUMENTS (NET_QOS_OK - 2) //invalid arguments +#define NET_QOS_ERR_SESSION_NOT_FOUND (NET_QOS_OK - 3) //session net found +#define NET_QOS_ERR_LIB_NOT_INITIALIZED (NET_QOS_OK - 4) //lib not initialized +#define NET_QOS_ERR_OUTOFMEM (NET_QOS_OK - 5) //outtofmem +#define NET_QOS_ERR_PACKET_UNKNOW (NET_QOS_OK - 10) //packet unknow +#define NET_QOS_ERR_PACKET_VERSION (NET_QOS_OK - 11) //packet version error +#define NET_QOS_ERR_PACKET_LENGTH (NET_QOS_OK - 12) //packet length error +#define NET_QOS_ERR_PACKET_TOO_BIG (NET_QOS_OK - 13) //packet too big +#define NET_QOS_ERR_SCHEDPARAMS_INVALID_BANDWIDTH (NET_QOS_OK - 20) //schedparams invalid bandwidth +#define NET_QOS_ERR_SCHEDPARAMS_BAD_FRACTION (NET_QOS_OK - 21) //schedparams bad fraction +#define NET_QOS_ERR_SCHEDPARAMS_BAD_MINIMUM_INTERVAL (NET_QOS_OK - 22) //schedparams bad minimum interval + +#define NET_ERROR_TRUNK_LINE 711 //×ÓϵͳÒѱ»Åä³É¸ÉÏß +#define NET_ERROR_MIXED_JOINT 712 //²»ÄܽøÐлìºÏÆ´½Ó +#define NET_ERROR_DISPLAY_SWITCH 713 //²»ÄܽøÐÐÏÔʾͨµÀÇл» +#define NET_ERROR_USED_BY_BIG_SCREEN 714 //½âÂë×ÊÔ´±»´óÆÁÕ¼Óà +#define NET_ERROR_USE_OTHER_DEC_RESOURCE 715 //²»ÄÜʹÓÃÆäËû½âÂë×Óϵͳ×ÊÔ´ +#define NET_ERROR_DISP_MODE_SWITCH 716 //ÏÔʾͨµÀÏÔʾ״̬Çл»ÖÐ +#define NET_ERROR_SCENE_USING 717 //³¡¾°ÕýÔÚʹÓà +#define NET_ERR_NO_ENOUGH_DEC_RESOURCE 718 //½âÂë×ÊÔ´²»×ã +#define NET_ERR_NO_ENOUGH_FREE_SHOW_RESOURCE 719 //³©ÏÔ×ÊÔ´²»×ã +#define NET_ERR_NO_ENOUGH_VIDEO_MEMORY 720 //ÏÔ´æ×ÊÔ´²»×ã +#define NET_ERR_MAX_VIDEO_NUM 721 //Ò»Í϶à×ÊÔ´²»×ã +#define NET_ERR_WIN_COVER_FREE_SHOW_AND_NORMAL 722 //´°¿Ú¿çÔ½Á˳©ÏÔÊä³ö¿ÚºÍ·Ç³©ÏÔÊä³ö¿Ú +#define NET_ERR_FREE_SHOW_WIN_SPLIT 723 //³©ÏÔ´°¿Ú²»Ö§³Ö·ÖÆÁ +#define NET_ERR_INAPPROPRIATE_WIN_FREE_SHOW 724 //²»ÊÇÊä³ö¿ÚÕûÊý±¶µÄ´°¿Ú²»Ö§³Ö¿ªÆô³©ÏÔ +#define NET_DVR_TRANSPARENT_WIN_NOT_SUPPORT_SPLIT 725 //¿ªÆô͸Ã÷¶ÈµÄ´°¿Ú²»Ö§³Ö·ÖÆÁ +#define NET_DVR_SPLIT_WIN_NOT_SUPPORT_TRANSPARENT 726 //¿ªÆô¶à·ÖÆÁµÄ´°¿Ú²»Ö§³Ö͸Ã÷¶ÈÉèÖà +#define NET_ERR_MAX_LOGO_NUM 727 //logoÊý´ïµ½ÉÏÏÞ +#define NET_ERR_MAX_WIN_LOOP_NUM 728 //ÂÖѲ´°¿ÚÊý´ïµ½ÉÏÏÞ +#define NET_ERR_VIRTUAL_LED_VERTICAL_CROSS 729 //ÐéÄâLED²»ÄÜ×ÝÏò¿çÆÁ +#define NET_ERR_MAX_VIRTUAL_LED_HEIGHT 730 //ÐéÄâLED¸ß¶È³¬ÏÞ +#define NET_ERR_VIRTUAL_LED_ILLEGAL_CHARACTER 731 //ÐéÄâLEDÄÚÈÝ°üº¬·Ç·¨×Ö·û +#define NET_ERR_BASEMAP_NOT_EXIST 732 //µ×ͼͼƬ²»´æÔÚ +#define NET_ERR_LED_NOT_SUPPORT_VIRTUAL_LED 733 //LEDÆÁÄ»²»Ö§³ÖÐéÄâLED +#define NET_ERR_LED_RESOLUTION_NOT_SUPPORT 734 //LED·Ö±æÂʲ»Ö§³Ö +#define NET_ERR_PLAN_OVERDUE 735 //Ô¤°¸³¬ÆÚ£¬²»ÄÜÔÙµ÷Óà +#define NET_ERR_PROCESSER_MAX_SCREEN_BLK 736 //µ¥¸ö´¦ÀíÆ÷½ÓÈëµÄÐźſçÔ½µÄÆÁÄ»¸öÊý³¬ÏÞ +#define NET_ERR_WND_SIZE_TOO_SMALL 737 //¿ª´°´°¿Ú¿í¸ß̫С +#define NET_ERR_WND_SPLIT_NOT_SUPPORT_ROAM 738 //·ÖÆÁ´°¿Ú²»Ö§³ÖÂþÓÎ +#define NET_ERR_OUTPUT_ONE_BOARD_ONE_WALL 739 //ͬһ¸ö×Ó°åµÄÊä³ö¿ÚÖ»Äܰ󶨵½Í¬Ò»ÃæǽÉÏ +#define NET_ERR_WND_CANNOT_LCD_AND_LED_OUTPUT 740 //´°¿Ú²»ÄÜͬʱ¿çLCDºÍLEDÊä³ö¿Ú +#define NET_ERR_MAX_OSD_NUM 741 //OSDÊýÁ¿´ïµ½×î´ó + +#define NET_SDK_CANCEL_WND_TOPKEEP_ATTR_FIRST 751 //ÏÈÈ¡ÏûÖö¥±£³Ö´°¿ÚµÄÖö¥±£³ÖÊôÐÔ²ÅÄܽøÐÐÖõײÙ×÷ +#define NET_SDK_ERR_LED_SCREEN_CHECKING 752 //ÕýÔÚУÕýLEDÆÁÄ» +#define NET_SDK_ERR_NOT_SUPPORT_SINGLE_RESOLUTION 753 //LCD/LEDÊä³ö¿Ú°ó¶¨Ö®ºó²»Ö§³Öµ¥¸öÊä³ö¿ÚµÄ·Ö±æÂÊÅäÖà +#define NET_SDK_ERR_LED_RESOLUTION_MISMATCHED 754 //¸ÃÊä³ö¿ÚµÄLED·Ö±æÂʺÍÆäËûÊä³ö¿ÚµÄLED·Ö±æÂʲ»Æ¥Å䣬ÐèÒªÂú×ãͬÐеȸߡ¢Í¬Áеȿí + + +#define NET_SDK_ERR_MAX_VIRTUAL_LED_WIDTH 755 //ÐéÄâLED¿í¶È³¬ÏÞ£¬°üÀ¨×î´óÖµºÍ×îСֵ +#define NET_SDK_ERR_MAX_VIRTUAL_LED_IN_SCREEN 756 //µ¥ÆÁÐéÄâLEDÊýÁ¿³¬ÏÞ +#define NET_SDK_ERR_MAX_VIRTUAL_LED_IN_WALL 757 //µ¥Ç½ÐéÄâLEDÊýÁ¿³¬ÏÞ +#define NET_SDK_ERR_VIRTUAL_LED_OVERLAP 758 //ÐéÄâLEDÖصþ´íÎó +#define NET_SDK_ERR_VIRTUAL_LED_TYPE 759 //ÀàÐÍ´íÎó +#define NET_SDK_ERR_VIRTUAL_LED_COLOUR 760 //ÑÕÉ«´íÎó +#define NET_SDK_ERR_VIRTUAL_LED_MOVE_DIRECTION 761 //Òƶ¯·½Ïò´íÎó +#define NET_SDK_ERR_VIRTUAL_LED_MOVE_MODE 762 //Òƶ¯Ä£Ê½´íÎó +#define NET_SDK_ERR_VIRTUAL_LED_MOVE_SPEED 763 //Òƶ¯ËٶȴíÎó +#define NET_SDK_ERR_VIRTUAL_LED_DISP_MODE 764 //ÏÔʾģʽÓÐÎó +#define NET_SDK_ERR_VIRTUAL_LED_NO 765 //ÐéÄâLEDÐòºÅ´íÎó +#define NET_SDK_ERR_VIRTUAL_LED_PARA 766 //ÐéÄâLED²ÎÊýÅäÖôíÎ󣬰üÀ¨½á¹¹ÌåÄÚÆäËû²ÎÊý +#define NET_SDK_ERR_BASEMAP_POSITION 767 //µ×ͼ´°¿Ú¿í¸ß²ÎÊý´íÎó +#define NET_SDK_ERR_BASEMAP_PICTURE_LEN 768 //µ×ͼͼƬ³¤¶È³¬ÏÞ +#define NET_SDK_ERR_BASEMAP_PICTURE_RESOLUTION 769 //µ×ͼͼƬ·Ö±æÂÊ´íÎó +#define NET_SDK_ERR_BASEMAP_PICTURE_FORMAT 770 //µ×ͼͼƬ¸ñʽ´íÎó +#define NET_SDK_ERR_MAX_VIRTUAL_LED_NUM 771 //É豸֧³ÖµÄÐéÄâLEDÊýÁ¿³¬ÏÞ +#define NET_SDK_ERR_MAX_TIME_VIRTUAL_LED_IN_WALL 772 //µ¥ÃæµçÊÓǽ֧³ÖµÄʱ¼äÐéÄâLEDµÄÊýÁ¿³¬ÏÞ + +#define NET_ERR_TERMINAL_BUSY 780 //ÖÕ¶Ë棬Öն˴¦ÓÚ»áÒéÖÐ + +#define NET_ERR_DATA_RETURNED_ILLEGAL 790 //É豸·µ»ØµÄÊý¾Ý²»ºÏ·¨ +#define NET_DVR_FUNCTION_RESOURCE_USAGE_ERROR 791 //É豸ÆäËü¹¦ÄÜÕ¼ÓÃ×ÊÔ´£¬µ¼Ö¸ù¦ÄÜÎÞ·¨¿ªÆô + +#define NET_DVR_ERR_IMPORT_EMPTY_FILE 792 //µ¼ÈëÎļþΪ¿Õ +#define NET_DVR_ERR_IMPORT_TOO_LARGE_FILE 793 //µ¼ÈëÎļþ¹ý´ó +#define NET_DVR_ERR_BAD_IPV4_ADDRESS 794 //IPV4µØÖ·ÎÞЧ +#define NET_DVR_ERR_BAD_NET_MASK 795 //×ÓÍøÑÚÂëµØÖ·ÎÞЧ +#define NET_DVR_ERR_INVALID_NET_GATE_ADDRESS 796 //Íø¹ØµØÖ·ÎÞЧ +#define NET_DVR_ERR_BAD_DNS 797 //DNSµØÖ·ÎÞЧ +#define NET_DVR_ERR_ILLEGAL_PASSWORD 798 //ÃÜÂë²»ÄÜ°üº¬Óû§Ãû + +#define NET_DVR_DEV_NET_OVERFLOW 800 //ÍøÂçÁ÷Á¿³¬¹ýÉ豸ÄÜÁ¦ÉÏÏÞ +#define NET_DVR_STATUS_RECORDFILE_WRITING_NOT_LOCK 801 //¼ÏñÎļþÔÚ¼Ïñ£¬ÎÞ·¨±»Ëø¶¨ +#define NET_DVR_STATUS_CANT_FORMAT_LITTLE_DISK 802 //ÓÉÓÚÓ²ÅÌ̫СÎÞ·¨¸ñʽ»¯ + +//N+1´íÎóÂë +#define NET_SDK_ERR_REMOTE_DISCONNECT 803 //Ô¶¶ËÎÞ·¨Á¬½Ó +#define NET_SDK_ERR_RD_ADD_RD 804 //±¸»ú²»ÄÜÌí¼Ó±¸»ú +#define NET_SDK_ERR_BACKUP_DISK_EXCEPT 805 //±¸·ÝÅÌÒì³£ +#define NET_SDK_ERR_RD_LIMIT 806 //±¸»úÊýÒÑ´ïÉÏÏÞ +#define NET_SDK_ERR_ADDED_RD_IS_WD 807 //Ìí¼ÓµÄ±¸»úÊǹ¤×÷»ú +#define NET_SDK_ERR_ADD_ORDER_WRONG 808 //Ìí¼Ó˳Ðò³ö´í£¬±ÈÈçûÓб»¹¤×÷»úÌí¼ÓΪ±¸»ú£¬¾ÍÌí¼Ó¹¤×÷»ú +#define NET_SDK_ERR_WD_ADD_WD 809 //¹¤×÷»ú²»ÄÜÌí¼Ó¹¤×÷»ú +#define NET_SDK_ERR_WD_SERVICE_EXCETP 810 //¹¤×÷»úCVR·þÎñÒì³£ +#define NET_SDK_ERR_RD_SERVICE_EXCETP 811 //±¸»úCVR·þÎñÒì³£ +#define NET_SDK_ERR_ADDED_WD_IS_RD 812 //Ìí¼ÓµÄ¹¤×÷»úÊDZ¸»ú +#define NET_SDK_ERR_PERFORMANCE_LIMIT 813 //ÐÔÄÜ´ïµ½ÉÏÏÞ +#define NET_SDK_ERR_ADDED_DEVICE_EXIST 814 //Ìí¼ÓµÄÉ豸ÒѾ­´æÔÚ + +//ÉóѶ»ú´íÎóÂë +#define NET_SDK_ERR_INQUEST_RESUMING 815 //ÉóѶ»Ö¸´ÖÐ +#define NET_SDK_ERR_RECORD_BACKUPING 816 //ÉóѶ±¸·ÝÖÐ +#define NET_SDK_ERR_DISK_PLAYING 817 //¹âÅ̻طÅÖÐ +#define NET_SDK_ERR_INQUEST_STARTED 818 //ÉóѶÒÑ¿ªÆô +#define NET_SDK_ERR_LOCAL_OPERATING 819 //±¾µØ²Ù×÷½øÐÐÖÐ +#define NET_SDK_ERR_INQUEST_NOT_START 820 //ÉóѶ먦Æô +//Netra3.1.0´íÎóÂë +#define NET_SDK_ERR_CHAN_AUDIO_BIND 821 //ͨµÀδ°ó¶¨»ò°ó¶¨ÓïÒô¶Ô½²Ê§°Ü +//ÔÆ´æ´¢´íÎóÂë +#define NET_DVR_N_PLUS_ONE_MODE 822 //É豸µ±Ç°´¦ÓÚN+1ģʽ +#define NET_DVR_CLOUD_STORAGE_OPENED 823 //Ôƴ洢ģʽÒÑ¿ªÆô + +#define NET_DVR_ERR_OPER_NOT_ALLOWED 824 //É豸´¦ÓÚN+0±»½Ó¹Ü״̬£¬²»ÔÊÐí¸Ã²Ù×÷ +#define NET_DVR_ERR_NEED_RELOCATE 825 //É豸´¦ÓÚN+0±»½Ó¹Ü״̬£¬ÐèÒª»ñÈ¡Öض¨ÏòÐÅÏ¢£¬ÔÙÖØвÙ×÷ + +//Í¥ÉóÖ÷»ú´íÎóÂë +#define NET_SDK_ERR_IR_PORT_ERROR 830 //ºìÍâÊä³ö¿Ú´íÎó +#define NET_SDK_ERR_IR_CMD_ERROR 831 //ºìÍâÊä³ö¿ÚµÄÃüÁîºÅ´íÎó +#define NET_SDK_ERR_NOT_INQUESTING 832 //É豸´¦ÓÚ·ÇÉóѶ״̬ +#define NET_SDK_ERR_INQUEST_NOT_PAUSED 833 //É豸´¦ÓÚ·ÇÔÝͣ״̬ +#define NET_DVR_CHECK_PASSWORD_MISTAKE_ERROR 834 //УÑéÃÜÂë´íÎó +#define NET_DVR_CHECK_PASSWORD_NULL_ERROR 835 //УÑéÃÜÂë²»ÄÜΪ¿Õ +#define NET_DVR_UNABLE_CALIB_ERROR 836 // µ±Ç°ÎÞ·¨±ê¶¨ +#define NET_DVR_PLEASE_CALIB_ERROR 837 //ÇëÏÈÍê³É±ê¶¨ +#define NET_DVR_ERR_PANORAMIC_CAL_EMPTY 838 //FlashÖÐÈ«¾°±ê¶¨Îª¿Õ +#define NET_DVR_ERR_CALIB_FAIL_PLEASEAGAIN 839 //±ê¶¨Ê§°Ü£¬ÇëÖØб궨(Calibration failed. Please calibrate again.) +#define NET_DVR_ERR_DETECTION_LINE 840 //¹æÔòÏßÅäÖôíÎó£¬ÇëÖØÐÂÅäÖùæÔòÏߣ¬È·±£¹æÔòÏßλÓÚºìÉ«ÇøÓòÄÚ(Please set detection line again. The detection line should be within the red count area.) +#define NET_DVR_ERR_TURN_OFF_IMAGE_PARA 841 //ÇëÏȹرÕͼÏñ²ÎÊýÇл»¹¦ÄÜ(Please turn off the image parameters switch first.) +#define NET_DVR_EXCEED_FACE_IMAGES_ERROR 843 //³¬¹ýÈËÁ³Í¼Æ¬×î´óÕÅÊý +#define NET_DVR_ANALYSIS_FACE_IMAGES_ERROR 844 //ͼƬÊý¾Ýʶ±ðʧ°Ü +#define NET_ERR_ALARM_INPUT_OCCUPIED 845 //A<-1±¨¾¯ºÅÒÑÓÃÓÚ´¥·¢³µÁ¾×¥ÅÄAlarm Input No. A<-1 is used to trigger vehicle capture. +#define NET_DVR_FACELIB_DATABASE_ERROR 846 //ÈËÁ³¿âÖÐÊý¾Ý¿â°æ±¾²»Æ¥Åä +#define NET_DVR_FACELIB_DATA_ERROR 847 //ÈËÁ³¿âÊý¾Ý´íÎó +#define NET_DVR_FACE_DATA_ID_ERROR 848 //ÈËÁ³Êý¾ÝPIDÎÞЧ +#define NET_DVR_FACELIB_ID_ERROR 849 //ÈËÁ³¿âIDÎÞЧ +#define NET_DVR_EXCEED_FACE_LIBARY_ERROR 850 //³¬¹ýÈËÁ³¿â×î´ó¸öÊý +#define NET_DVR_PIC_ANALYSIS_NO_TARGET_ERROR 851 //ͼƬδʶ±ðµ½Ä¿±ê +#define NET_DVR_SUBPIC_ANALYSIS_MODELING_ERROR 852 //×Óͼ½¨Ä£Ê§°Ü +#define NET_DVR_PIC_ANALYSIS_NO_RESOURCE_ERROR 853 //ÎÞ¶ÔÓ¦ÖÇÄÜ·ÖÎöÒýÇæÖ§³ÖͼƬ¶þ´Îʶ±ð +#define NET_DVR_ANALYSIS_ENGINES_NO_RESOURCE_ERROR 854//ÎÞ·ÖÎöÒýÇæ×ÊÔ´ +#define NET_DVR_ANALYSIS_ENGINES_USAGE_EXCEED_ERROR 855//ÒýÇæʹÓÃÂʳ¬¸ººÉ£¬ÒÑ´ï100% +#define NET_DVR_EXCEED_HUMANMISINFO_FILTER_ENABLED_ERROR 856 //³¬¹ý¿ªÆôÈËÌåÈ¥Îó±¨×î´óͨµÀ¸öÊý +#define NET_DVR_NAME_ERROR 857 //Ãû³Æ´íÎó +#define NET_DVR_NAME_EXIST_ERROR 858 //Ãû³ÆÒÑ´æÔÚ +#define NET_DVR_FACELIB_PIC_IMPORTING_ERROR 859 //ÈËÁ³¿âµ¼ÈëͼƬÖÐ +#define NET_DVR_ERR_CALIB_POSITION 860 //±ê¶¨Î»Öó¬³öÉãÏñ»úÔ˶¯·¶Î§ +#define NET_DVR_ERR_DELETE 861 //ÎÞ·¨É¾³ý +#define NET_DVR_ERR_SCENE_ID 862 //³¡¾°IDÎÞЧ +#define NET_DVR_ERR_CALIBING 863 //±ê¶¨ÖÐ +#define NET_DVR_PIC_FORMAT_ERROR 864 //ͼƬ¸ñʽ´íÎó +#define NET_DVR_PIC_RESOLUTION_INVALID_ERROR 865 //ͼƬ·Ö±æÂÊÎÞЧ´íÎó +#define NET_DVR_PIC_SIZE_EXCEED_ERROR 866 //ͼƬ¹ý´ó +#define NET_DVR_PIC_ANALYSIS_TARGRT_NUM_EXCEED_ERROR 867 //ͼƬĿ±ê¸öÊý³¬¹ýÉÏÏÞ +#define NET_DVR_ANALYSIS_ENGINES_LOADING_ERROR 868//·ÖÎöÒýÇæ³õʼ»¯ÖÐ +#define NET_DVR_ANALYSIS_ENGINES_ABNORMA_ERROR 869//·ÖÎöÒýÇæÒì³£ +#define NET_DVR_ANALYSIS_ENGINES_FACELIB_IMPORTING 870//·ÖÎöÒýÇæÕýÔÚµ¼ÈëÈËÁ³¿â +#define NET_DVR_NO_DATA_FOR_MODELING_ERROR 871 //ÎÞ´ý½¨Ä£Êý¾Ý +#define NET_DVR_FACE_DATA_MODELING_ERROR 872 //É豸ÕýÔÚ½øÐÐͼƬ½¨Ä£²Ù×÷£¬²»Ö§³Ö²¢·¢´¦Àí +#define NET_ERR_FACELIBDATA_OVERLIMIT 873 //³¬¹ýÉ豸ÖÐÖ§³Öµ¼ÈëÈËÁ³Êý×î´ó¸öÊýÏÞÖÆ£¨µ¼ÈëµÄÈËÁ³¿âÖÐÊý¾Ý£© +#define NET_DVR_ANALYSIS_ENGINES_ASSOCIATED_CHANNEL 874//·ÖÎöÒýÇæÒѹØÁªÍ¨µÀ +#define NET_DVR_ERR_CUSTOMID_LEN 875 //Éϲã×Ô¶¨ÒåIDµÄ³¤¶È×îС32×Ö·û³¤¶È +#define NET_DVR_ERR_CUSTOMFACELIBID_REPEAT 876 //ÉϲãÏ·¢Öظ´µÄ×Ô¶¨ÒåÈËÁ³¿âID +#define NET_DVR_ERR_CUSTOMHUMANID_REPEAT 877 //ÉϲãÏ·¢Öظ´µÄ×Ô¶¨ÒåÈËÔ±ID +#define NET_DVR_ERR_URL_DOWNLOAD_FAIL 878 //urlÏÂÔØʧ°Ü +#define NET_DVR_ERR_URL_DOWNLOAD_NOTSTART 879 //urlδ¿ªÊ¼ÏÂÔØ + +#define NET_DVR_CFG_FILE_SECRETKEY_ERROR 880 //ÅäÖÃÎļþ°²È«Ð£ÑéÃÜÔ¿´íÎó +#define NET_DVR_WDR_NOTDISABLE_ERROR 881 //ÇëÏȹرÕËùÓÐͨµÀµ±Ç°ÈÕÒ¹²ÎÊýת»»Ä£Ê½ÏÂµÄ¿í¶¯Ì¬ +#define NET_DVR_HLC_NOTDISABLE_ERROR 882 //ÇëÏȹرÕËùÓÐͨµÀµ±Ç°ÈÕÒ¹²ÎÊýת»»Ä£Ê½ÏµÄÇ¿¹âÒÖÖÆ + +#define NET_DVR_THERMOMETRY_REGION_OVERSTEP_ERROR 883 //²âÎÂÇøÓòÔ½½ç + + +#define NET_DVR_ERR_MODELING_DEVICEINTERNAL 884 //½¨Ä£Ê§°Ü£¬É豸ÄÚ²¿´íÎó +#define NET_DVR_ERR_MODELING_FACE 885 //½¨Ä£Ê§°Ü£¬ÈËÁ³½¨Ä£´íÎó +#define NET_DVR_ERR_MODELING_FACEGRADING 886 //½¨Ä£Ê§°Ü£¬ÈËÁ³ÖÊÁ¿ÆÀ·Ö´íÎó +#define NET_DVR_ERR_MODELING_FACEGFEATURE 887 //½¨Ä£Ê§°Ü£¬ÌØÕ÷µãÌáÈ¡´íÎó +#define NET_DVR_ERR_MODELING_FACEGANALYZING 888 //½¨Ä£Ê§°Ü£¬ÊôÐÔÌáÈ¡´íÎó + +#define NET_DVR_ERR_STREAM_LIMIT 889 //ÂëÁ÷ÐÔÄܳ¬¹ýÉÏÏÞ£¬Çë¼õÉÙÈ¡Á÷·Êý +#define NET_DVR_ERR_STREAM_DESCRIPTION 890 //ÇëÊäÈëÂëÁ÷ÃèÊö +#define NET_DVR_ERR_STREAM_DELETE 891 //ÂëÁ÷ÕýÔÚʹÓÃÎÞ·¨É¾³ý +#define NET_DVR_ERR_CUSTOMSTREAM_NAME 892 //×Ô¶¨ÒåÂëÁ÷Ãû³ÆΪ¿Õ»ò²»ºÏ·¨ +#define NET_DVR_ERR_CUSTOMSTREAM_NOTEXISTED 893 //¸Ã×Ô¶¨ÒåÂëÁ÷²»´æÔÚ + +#define NET_DVR_ERR_TOO_SHORT_CALIBRATING_TIME 894 //±ê¶¨Ê±¼äÌ«¶Ì +#define NET_DVR_ERR_AUTO_CALIBRATE_FAILED 895 //×Ô¶¯±ê¶¨Ê§°Ü +#define NET_DVR_ERR_VERIFICATION_FAILED 896 //УÑéʧ°Ü + +#define NET_DVR_NO_TEMP_SENSOR_ERROR 897 //ÎÞζȴ«¸ÐÆ÷ +#define NET_DVR_PUPIL_DISTANCE_OVERSIZE_ERROR 898 //Í«¾à¹ý´ó +#define NET_DVR_ERR_UNOPENED_FACE_SNAP 899 //²Ù×÷ÎÞЧ£¬ÇëÏÈ¿ªÆôÈËÁ³×¥ÅÄ +//2011-10-25¶àÆÁ¿ØÖÆÆ÷´íÎóÂ루900-950£© +#define NET_ERR_CUT_INPUTSTREAM_OVERLIMIT 900 //ÐźÅÔ´²Ã¼ôÊýÖµ³¬ÏÞ +#define NET_ERR_WINCHAN_IDX 901 // ¿ª´°Í¨µÀºÅ´íÎó +#define NET_ERR_WIN_LAYER 902 // ´°¿Ú²ãÊý´íÎ󣬵¥¸öÆÁÄ»ÉÏ×î¶à¸²¸ÇµÄ´°¿Ú²ãÊý +#define NET_ERR_WIN_BLK_NUM 903 // ´°¿ÚµÄ¿éÊý´íÎ󣬵¥¸ö´°¿Ú¿É¸²¸ÇµÄÆÁÄ»¸öÊý +#define NET_ERR_OUTPUT_RESOLUTION 904 // Êä³ö·Ö±æÂÊ´íÎó +#define NET_ERR_LAYOUT 905 // ²¼¾ÖºÅ´íÎó +#define NET_ERR_INPUT_RESOLUTION 906 // ÊäÈë·Ö±æÂʲ»Ö§³Ö +#define NET_ERR_SUBDEVICE_OFFLINE 907 // ×ÓÉ豸²»ÔÚÏß +#define NET_ERR_NO_DECODE_CHAN 908 // ûÓпÕÏнâÂëͨµÀ +#define NET_ERR_MAX_WINDOW_ABILITY 909 // ¿ª´°ÄÜÁ¦ÉÏÏÞ, ·Ö²¼Ê½¶àÆÁ¿ØÖÆÆ÷ÖнâÂë×ÓÉ豸ÄÜÁ¦ÉÏÏÞ»òÕßÏÔʾ´¦ÀíÆ÷ÄÜÁ¦ÉÏÏÞµ¼Ö +#define NET_ERR_ORDER_ERROR 910 // µ÷ÓÃ˳ÐòÓÐÎó +#define NET_ERR_PLAYING_PLAN 911 // ÕýÔÚÖ´ÐÐÔ¤°¸ +#define NET_ERR_DECODER_USED 912 // ½âÂë°åÕýÔÚʹÓà +#define NET_ERR_OUTPUT_BOARD_DATA_OVERFLOW 913 // Êä³ö°åÊý¾ÝÁ¿³¬ÏÞ +#define NET_ERR_SAME_USER_NAME 914 // Óû§ÃûÏàͬ +#define NET_ERR_INVALID_USER_NAME 915 // ÎÞЧÓû§Ãû +#define NET_ERR_MATRIX_USING 916 // ÊäÈë¾ØÕóÕýÔÚʹÓà +#define NET_ERR_DIFFERENT_CHAN_TYPE 917 // ͨµÀÀàÐͲ»Í¬£¨¾ØÕóÊä³öͨµÀºÍ¿ØÖÆÆ÷µÄÊäÈëΪ²»Í¬µÄÀàÐÍ£© +#define NET_ERR_INPUT_CHAN_BINDED 918 // ÊäÈëͨµÀÒѾ­±»ÆäËû¾ØÕó°ó¶¨ +#define NET_ERR_BINDED_OUTPUT_CHAN_OVERFLOW 919 // ÕýÔÚʹÓõľØÕóÊä³öͨµÀ¸öÊý³¬¹ý¾ØÕóÓë¿ØÖÆÆ÷°ó¶¨µÄͨµÀ¸öÊý +#define NET_ERR_MAX_SIGNAL_NUM 920 // ÊäÈëÐźÅÔ´¸öÊý´ïµ½ÉÏÏÞ +#define NET_ERR_INPUT_CHAN_USING 921 // ÊäÈëͨµÀÕýÔÚʹÓà +#define NET_ERR_MANAGER_LOGON 922 // ¹ÜÀíÔ±ÒѾ­µÇ½£¬²Ù×÷ʧ°Ü +#define NET_ERR_USERALREADY_LOGON 923 // ¸ÃÓû§ÒѾ­µÇ½£¬²Ù×÷ʧ°Ü +#define NET_ERR_LAYOUT_INIT 924 // ²¼¾ÖÕýÔÚ³õʼ»¯£¬²Ù×÷ʧ°Ü +#define NET_ERR_BASEMAP_SIZE_NOT_MATCH 925 // µ×ͼ´óС²»·û +#define NET_ERR_WINDOW_OPERATING 926 // ´°¿ÚÕýÔÚÖ´ÐÐÆäËû²Ù×÷£¬±¾´Î²Ù×÷ʧ°Ü +#define NET_ERR_SIGNAL_UPLIMIT 927 // ÐźÅÔ´¿ª´°¸öÊý´ïµ½ÉÏÏÞ +#define NET_ERR_SIGNAL_MAX_ENLARGE_TIMES 928 // ÐźÅÔ´·Å´ó±¶Êý³¬ÏÞ +#define NET_ERR_ONE_SIGNAL_MULTI_CROSS 929 // µ¥¸öÐźÅÔ´²»Äܶà´Î¿çÆÁ +#define NET_ERR_ULTRA_HD_SIGNAL_MULTI_WIN 930 // ³¬¸ßÇåÐźÅÔ´²»ÄÜÖظ´¿ª´° +#define NET_ERR_MAX_VIRTUAL_LED_WIDTH 931 //ÐéÄâLED¿í¶È´óÓÚÏÞÖÆÖµ +#define NET_ERR_MAX_VIRTUAL_LED_WORD_LEN 932 //ÐéÄâLED×Ö·ûÊý´óÓÚÏÞÖÆÖµ +#define NET_ERR_SINGLE_OUTPUTPARAM_CONFIG 933//²»Ö§³Öµ¥¸öÏÔʾÊä³ö²ÎÊýÉèÖà +#define NET_ERR_MULTI_WIN_BE_COVER 934//¶à·ÖÆÁ´°¿Ú±»¸²¸Ç +#define NET_ERR_WIN_NOT_EXIST 935 //´°¿Ú²»´æÔÚ +#define NET_ERR_WIN_MAX_SIGNALSOURCE 936//´°¿ÚÐźÅÔ´Êý³¬¹ýÏÞÖÆÖµ +#define NET_ERR_MULTI_WIN_MOVE 937//¶Ô¶à·ÖÆÁ´°¿ÚÒƶ¯ +#define NET_ERR_MULTI_WIN_YPBPR_SDI 938 // YPBPR ºÍSDIÐźÅÔ´²»Ö§³Ö9/16·ÖÆÁ +#define NET_ERR_DIFF_TYPE_OUTPUT_MIXUSE 939 //²»Í¬ÀàÐÍÊä³ö°å»ì²å +#define NET_ERR_SPLIT_WIN_CROSS 940//¶Ô¿çÆÁ´°¿Ú·ÖÆÁ +#define NET_ERR_SPLIT_WIN_NOT_FULL_SCREEN 941 //¶ÔδÂúÆÁ´°¿Ú·ÖÆÁ +#define NET_ERR_SPLIT_WIN_MANY_WIN 942 //¶Ôµ¥¸öÊä³ö¿ÚÉÏÓжà¸ö´°¿ÚµÄ´°¿Ú·ÖÆÁ +#define NET_ERR_WINDOW_SIZE_OVERLIMIT 943 //´°¿Ú´óС³¬ÏÞ +#define NET_ERR_INPUTSTREAM_ALREADY_JOINT 944 //ÐźÅÔ´ÒѼÓÈëÆ´½Ó +#define NET_ERR_JOINT_INPUTSTREAM_OVERLIMIT 945 //Æ´½ÓÐźÅÔ´¸öÊý³¬ÏÞ + +#define NET_ERR_LED_RESOLUTION 946 //LED ·Ö±æÂÊ´óÓÚÊä³ö·Ö±æÂÊ +#define NET_ERR_JOINT_SCALE_OVERLIMIT 947 //Æ´½ÓÐźÅÔ´µÄ¹æÄ£³¬ÏÞ +#define NET_ERR_INPUTSTREAM_ALREADY_DECODE 948 //ÐźÅÔ´ÒÑÉÏǽ +#define NET_ERR_INPUTSTREAM_NOTSUPPORT_CAPTURE 949 //ÐźÅÔ´²»Ö§³Öץͼ +#define NET_ERR_JOINT_NOTSUPPORT_SPLITWIN 950 //¸ÃÐźÅÔ´²»Ö§³Ö·ÖÆÁ + +//½âÂëÆ÷´íÎóÂ루951-999£© +#define NET_ERR_MAX_WIN_OVERLAP 951 //´ïµ½×î´ó´°¿ÚÖصþÊý +#define NET_ERR_STREAMID_CHAN_BOTH_VALID 952 //stream IDºÍͨµÀºÅͬʱÓÐЧ +#define NET_ERR_NO_ZERO_CHAN 953 //É豸ÎÞÁãͨµÀ +#define NEED_RECONNECT 955 //ÐèÒªÖض¨Ïò£¨×ªÂë×ÓϵͳʹÓã© +#define NET_ERR_NO_STREAM_ID 956 //Á÷ID²»´æÔÚ +#define NET_DVR_TRANS_NOT_START 957 //תÂëδÆô¶¯ +#define NET_ERR_MAXNUM_STREAM_ID 958 //Á÷IDÊý´ïµ½ÉÏÏÞ +#define NET_ERR_WORKMODE_MISMATCH 959 //¹¤×÷ģʽ²»Æ¥Åä +#define NET_ERR_MODE_IS_USING 960 //Òѹ¤×÷ÔÚµ±Ç°Ä£Ê½ +#define NET_ERR_DEV_PROGRESSING 961 //É豸ÕýÔÚ´¦ÀíÖÐ +#define NET_ERR_PASSIVE_TRANSCODING 962 //ÕýÔÚ±»¶¯×ªÂë + +#define NET_ERR_RING_NOT_CONFIGURE 964 //»·ÍøδÅäÖà + +#define NET_ERR_CLOSE_WINDOW_FIRST 971 //Çл»È«Ö¡Âʳ©ÏÔʱ±ØÐëÏȹرնÔÓ¦µÄÒÑÉÏǽµÄ´°¿Ú +#define NET_ERR_SPLIT_WINDOW_NUM_NOT_SUPPORT 972 //VGA/DVI/DP/HDMI/HDBase_TÊäÈëÔ´ÔÚÈ«Ö¡Âʳ©ÏÔϲ»Ö§³Ö9/16»­Ãæ +#define NET_ERR_REACH_ONE_SIGNAL_PREVIEW_MAX_LINK 973 //µ¥ÐźÅÔ´»ØÏÔÁ¬½ÓÊýÁ¿³¬ÏÞ +#define NET_ERR_ONLY_SPLITWND_SUPPORT_AMPLIFICATION 974 //Ö»ÓзÖÆÁ´°¿ÚÖ§³Ö×Ó´°¿Ú·Å´ó +#define NET_DVR_ERR_WINDOW_SIZE_PLACE 975 //´°¿ÚλÖôíÎó +#define NET_DVR_ERR_RGIONAL_RESTRICTIONS 976 //ÆÁÄ»¾àÀ볬ÏÞ +#define NET_ERR_WNDZOOM_NOT_SUPPORT 977 //µ¥´°¿Ú²»Ö§³Ö×Ó´°¿ÚÈ«ÆÁ¹¦ÄÜ +#define NET_ERR_LED_SCREEN_SIZE 978 //LEDÆÁ¿í¸ß²»ÕýÈ· +#define NET_ERR_OPEN_WIN_IN_ERROR_AREA 979 //ÔÚ·Ç·¨ÇøÓò¿ª´°(°üÀ¨¿çLCD/LEDÆÁ) +#define NET_ERR_TITLE_WIN_NOT_SUPPORT_MOVE 980 //ƽÆÌģʽ²»Ö§³ÖÂþÓÎ +#define NET_ERR_TITLE_WIN_NOT_SUPPORT_COVER 981 //ƽÆÌģʽ²»Ö§³Öͼ²ã¸²¸Ç +#define NET_ERR_TITLE_WIN_NOT_SUPPORT_SPLIT 982 //ƽÆÌģʽ²»Ö§³Ö·ÖÆÁ +#define NET_DVR_LED_WINDOWS_ALREADY_CLOSED 983 //LEDÇøÓòÄÚÊä³ö¿ÚµÄ·Ö±æÂÊ·¢Éú±ä»¯£¬É豸ÒѹرոÃÇøÓòÄÚµÄËùÓÐLED´°¿Ú +#define NET_DVR_ERR_CLOSE_WINDOWS 984 //²Ù×÷ʧ°Ü£¬ÇëÏȹرմ°¿Ú +#define NET_DVR_ERR_MATRIX_LOOP_ABILITY 985 //³¬³öÂÖѲ½âÂëÄÜÁ¦ÏÞÖÆ +#define NET_DVR_ERR_MATRIX_LOOP_TIME 986 //ÂÖѲ½âÂëʱ¼ä²»Ö§³Ö +#define NET_DVR_ERR_LINKED_OUT_ABILITY 987 //Áª¶¯Í¨µÀÊý³¬¹ýÉÏÏÞ +#define NET_ERR_REACH_SCENE_MAX_NUM 988 //³¡¾°ÊýÁ¿´ïµ½ÉÏÏÞ +#define NET_ERR_SCENE_MEM_NOT_ENOUGH 989 //ÄÚ´æ²»×㣬ÎÞ·¨Ð½¨³¡¾° +#define NET_ERR_RESOLUTION_NOT_SUPPORT_ODD_VOUT 990 //Ææ¿Ú²»Ö§³Ö¸Ã·Ö±æÂÊ +#define NET_ERR_RESOLUTION_NOT_SUPPORT_EVEN_VOUT 991 //ż¿Ú²»Ö§³Ö¸Ã·Ö±æÂÊ + +#define NET_DVR_CANCEL_WND_OPENKEEP_ATTR_FIRST 992 //³£¿ª´°¿ÚÐèÒªÏÈÈ¡Ïû³£¿ªÊôÐÔ²ÅÄܱ»¹Ø±Õ +#define NET_SDK_LED_MODE_NOT_SUPPORT_SPLIT 993 //LEDģʽϲ»Ö§³Ö´°¿Ú·ÖÆÁ +#define NET_ERR_VOICETALK_ONLY_SUPPORT_ONE_TALK 994 //ͬʱֻ֧³Öһ·ÓïÒô¶Ô½² +#define NET_ERR_WND_POSITION_ADJUSTED 995 //´°¿ÚλÖñ»É豸µ÷Õû£¬ÉϲãÐèÒªÖØлñÈ¡Ï´°¿ÚλÖà +#define NET_SDK_ERR_STARTTIME_CANNOT_LESSTHAN_CURTIME 996 //¿ªÊ¼Ê±¼ä²»ÄÜСÓÚµ±Ç°Ê±¼ä +#define NET_SDK_ERR_NEED_ADJUST_PLAN 997 //³¡¾°Òѱ»Ô¤°¸¹ØÁª£¬ÇëÏȽ«¸Ã³¡¾°´ÓÔ¤°¸ÖÐɾ³ý +#define NET_ERR_UnitConfig_Failed 998 //µ±¡°ÆôÓõ¥Î»Í³Ò»¡±¹´Ñ¡Ê±£¬²âÎÂÏÂÅäÖõĵ¥Î»ÓëϵͳÉèÖÃϵĵ¥Î»²»Í¬·µ»Øµ¥Î»ÅäÖôíÎó + +//ÄÜÁ¦¼¯½âÎö¿â´íÎóÂë +#define XML_ABILITY_NOTSUPPORT 1000 //²»Ö§³ÖÄÜÁ¦½Úµã»ñÈ¡ +#define XML_ANALYZE_NOENOUGH_BUF 1001 //Êä³öÄÚ´æ²»×ã +#define XML_ANALYZE_FIND_LOCALXML_ERROR 1002 //ÎÞ·¨ÕÒµ½¶ÔÓ¦µÄ±¾µØxml +#define XML_ANALYZE_LOAD_LOCALXML_ERROR 1003 //¼ÓÔر¾µØxml³ö´í +#define XML_NANLYZE_DVR_DATA_FORMAT_ERROR 1004 //É豸ÄÜÁ¦Êý¾Ý¸ñʽ´íÎó +#define XML_ANALYZE_TYPE_ERROR 1005 //ÄÜÁ¦¼¯ÀàÐÍ´íÎó +#define XML_ANALYZE_XML_NODE_ERROR 1006 //XMLÄÜÁ¦½Úµã¸ñʽ´íÎó +#define XML_INPUT_PARAM_ERROR 1007 //ÊäÈëµÄÄÜÁ¦XML½ÚµãÖµ´íÎó + +#define NET_DVR_ERR_RETURNED_XML_DATA 1008 //É豸·µ»ØµÄXMLÊý¾ÝÓÐÎó + +//´«ÏÔ´íÎóÂë +#define NET_ERR_LEDAREA_EXIST_WINDOW 1051 //LEDÇøÓòÓд°¿Ú´æÔÚ(Èç¹ûLEDÇøÓòÉÏÒѾ­Óд°¿Ú´æÔÚ£¬²»ÔÊÐíÐÞ¸ÄLEDÇøÓò£© +#define NET_ERR_AUDIO_EXIST 1052 //Êä³ö¿ÚÉÏ´æÔÚÒôƵÊä³ö£¬²»ÔÊÐí½â³ý°ó¶¨ +#define NET_ERR_MATERIAL_NAME_EXIST 1053 //ËزÄÃû³ÆÒÑ´æÔÚ +#define NET_ERR_MATERIAL_APPROVE_STATE 1054 //ËزÄÉóºË״̬´íÎó +#define NET_ERR_DATAHD_SIGNAL_FORMAT 1055 //ÒÑʹÓõÄÓ²Å̲»ÔÊÐíµ¥¸ö¸ñʽ»¯ + +#define NET_ERR_SCENE_SWITCHING 1056 //³¡¾°ÕýÔÚÇл» +#define NER_ERR_DATA_TRANSFER 1057 //É豸ÕýÔÚÊý¾ÝתÒÆÖÐ +#define NET_ERR_DATA_RESTORE 1058 //É豸ÕýÔÚÊý¾Ý»¹Ô­ÖÐ +#define NET_ERR_CHECK_NOT_ENABLE 1059 //УÕýʹÄÜ먦Æô +#define NET_ERR_AREA_OFFLINE 1060 //ÇøÓò²»ÔÚÏß +#define NET_ERR_SCREEN_TYPE 1061 //ÆÁÄ»ÀàÐͲ»Æ¥Åä +#define NET_ERR_MIN_OPERATE_UNIT 1062 //×îС²Ù×÷µ¥Ôª²»Æ¥Åä +#define NET_ERR_MAINHD_NOT_BACKUP 1063 //µÚÒ»²ÛλÉϵÄÆÕͨÅÌ£¨Ö÷ÅÌ£©½ûÖ¹ÉèÖóɱ¸·ÝÅÌ +#define NET_ERR_ONE_BACKUP_HD 1064 //ÉèÖñ¸·ÝÅÌʱ£¬É豸ÖÁÉÙÓÐÒ»¿éÆÕͨÅÌ +#define NET_ERR_CONNECT_SUB_SYSTEM_ABNORMAL 1065 //Á¬½Ó×ÓϵͳÒì³£ +#define NET_ERR_SERIAL_PORT_VEST 1066 //´íÎóµÄ´®¿Ú¹éÊô +#define NET_ERR_BLOCKLIST_FULL 1067 //ÔÊÐíÃûµ¥ÁбíÊýÁ¿ÒÑÂú +#define NET_ERR_NOT_MATCH_SOURCE 1068 //²»Æ¥ÅäµÄÐźÅÔ´ÀàÐÍ +#define NET_ERR_CLOCK_VIRTUAL_LED_FULL 1069 //¿ªÆôʱÖÓ¹¦ÄܵÄÐéÄâLED´ïÉÏÏÞ +#define NET_ERR_MAX_WIN_SIGNAL_LOOP_NUM 1070 //´°¿ÚÂÖѲÐźÅÔ´¸öÊýÒÑ´ïÉÏÏÞ +#define NET_ERR_RESOLUTION_NO_MATCH_FRAME 1071 //·Ö±æÂÊÓ뵱ǰ֡Êý²»Æ¥Åä +#define NET_ERR_NOT_UPDATE_LOW_VERSION 1072 //²»Ö§³ÖÏòµÍ°æ±¾Éý¼¶ +#define NET_ERR_NO_CUSTOM_TO_UPDATE 1073 //·Ç¶¨ÖƳÌÐòÎÞ·¨Éý¼¶ +#define NET_ERR_CHAN_RESOLUTION_NOT_SUPPORT_SPLIT 1074 //¸ÃÊä³ö¿Ú·Ö±æÂʲ»Ö§³Ö·ÖÆÁ +#define NET_ERR_HIGH_DEFINITION_NOT_SUPPORT_SPLIT 1075 //³¬¸ßÇå²»Ö§³Ö9/16»­Ãæ·Ö¸î +#define NET_ERR_MIRROR_IMAGE_BY_VIDEO_WALL 1076 //µçÊÓǽ¾µÏñ³ö´í +#define NET_ERR_MAX_OSD_FONT_SIZE 1077 //³¬¹ýOSD×î´óÖ§³Ö×Ö·ûÊý +#define NET_ERR_HIGH_DEFINITION_NOT_SUPPORT_VIDEO_SET 1078 //³¬Çå²»Ö§³ÖÊÓƵ²ÎÊýÉèÖà +#define NET_ERR_TILE_MODE_NOT_SUPPORT_JOINT 1079 //ƽÆÌģʽ²»Ö§³ÖÆ´½Ó´°¿Ú +#define NET_ERR_ADD_AUDIO_MATRIX_FAILED 1080 //´´½¨ÒôƵ¾ØÕóʧ°Ü +#define NET_ERR_ONE_VIRTUAL_LED_AREA_BIND_ONE_AUDIO_AREA 1081 //Ò»¸öÐéÄâLEDÇøÓòÖ»ÄÜ°ó¶¨Ò»¸öÒôƵÇøÓò +#define NET_ERR_NAT_NOT_MODIFY_SERVER_NETWORK_PARAM 1082 //NATÏÂÎÞ·¨Ð޸ķþÎñÆ÷ÍøÂç²ÎÊý +#define NET_ERR_ORIGINAL_CHECH_DATA_ERROR 1083 //ԭʼУÕýÊý¾Ý´íÎó +#define NET_ERR_INPUT_BOARD_SPLICED_IN_DIFFERENT_NETWORKAREAS 1084 //²»Í¬ÍøÂçÇøÓòµÄÊäÈë°å²»ÄÜÆ´½Ó +#define NET_ERR_SPLICINGSOURCE_ONWALL_IN_DIFFERENT_NETWORKAREAS 1085 //²»Í¬ÍøÂçÇøÓòµÄÆ´½ÓÔ´²»ÄÜÉÏǽ +#define NET_ERR_ONWALL_OUTPUTBOARD_MODIFY_NETWORKAREAS 1086 //ÒÑ°ó¶¨ÔÚµçÊÓǽÉϵÄÊä³ö°å²»ÄÜÐÞ¸ÄÍøÂçÇøÓò +#define NET_ERR_LAN_AND_WAN_CANNOT_SAME_NET_SEGMENT 1087 //LAN¿ÚIPºÍWAN¿ÚIP²»ÄÜ´¦ÓÚͬһÍø¶Î +#define NET_ERR_USERNAME_REPETITIVE 1088 //Óû§ÃûÖظ´ +#define NET_ERR_ASSOCIATED_SAMEWALL_IN_DIFFERENT_NETWORKAREAS 1089 //²»Í¬Êý¾ÝÍøÂçÇøÓòµÄÊä³ö¿Ú²»ÄܹØÁªµ½Í¬Ò»µçÊÓǽ +#define NET_ERR_BASEMAP_ROAM_IN_LED_AREA 1090 //LEDÇøÓò²»ÔÊÐíµ×ͼÂþÓÎ +#define NET_ERR_VIRTUAL_LED_NOT_SUPPORT_4K_OUTPUT 1091 //ÐéÄâLED²»Ö§³Ö4KÊä³ö¿ÚÏÔʾ +#define NET_ERR_BASEMAP_NOT_SUPPORT_4K_OUTPUT 1092 //µ×ͼ²»Ö§³Ö4KÊä³ö¿ÚÏÔʾ +#define NET_ERR_MIN_BLOCK_IN_VIRTUAL_LED_AND_OUTPUT 1093 //ÐéÄâLEDÓëÊä³ö¿ÚÏཻ³öÏÖ×îС¿é +#define NET_ERR_485FIlE_VERSION_INVALID 1094 //485Îļþ°æ±¾ÎÞЧ +#define NET_ERR_485FIlE_CHECK_ERROR 1095 //485ÎļþУÑé´íÎó +#define NET_ERR_485FIlE_ABNORMAL_SIZE 1096 //485Îļþ´óСÒ쳣Ч +#define NET_ERR_MODIFY_SUBBOARD_NETCFG_IN_NAT 1097 //NATÏÂÎÞ·¨ÐÞ¸Ä×Ó°åÍøÂç²Î +#define NET_ERR_OSD_CONTENT_WITH_ILLEGAL_CHARACTERS 1098 //OSDÄÚÈÝ°üº¬·Ç·¨×Ö·û +#define NET_ERR_NON_SLAVE_DEVICE_INSERT_SYNC_LINE 1099 //·Ç´ÓÉ豸½ûÖ¹²åÈëͬ²½Ïß +//ÃñÓôíÎóÂ루1100¡«1200£© +#define NET_ERR_PLT_USERID 1100 //Ñé֤ƽ̨userid´íÎó +#define NET_ERR_TRANS_CHAN_START 1101 //͸Ã÷ͨµÀÒÑ´ò¿ª£¬µ±Ç°²Ù×÷ÎÞ·¨Íê³É +#define NET_ERR_DEV_UPGRADING 1102 //É豸ÕýÔÚÉý¼¶ +#define NET_ERR_MISMATCH_UPGRADE_PACK_TYPE 1103 //Éý¼¶°üÀàÐͲ»Æ¥Åä +#define NET_ERR_DEV_FORMATTING 1104 //É豸ÕýÔÚ¸ñʽ»¯ +#define NET_ERR_MISMATCH_UPGRADE_PACK_VERSION 1105 //Éý¼¶°ü°æ±¾²»Æ¥Åä +#define NET_ERR_PT_LOCKED 1106 //PTËø¶¨¹¦ÄÜ + +#define NET_DVR_LOGO_OVERLAY_WITHOUT_UPLOAD_PIC 1110 //logoµþ¼Óʧ°Ü£¬Ã»ÓÐÉÏ´«logoͼƬ +#define NET_DVR_ERR_ILLEGAL_VERIFICATION_CODE 1111 //²»ºÏ·¨ÑéÖ¤Âë +#define NET_DVR_ERR_LACK_VERIFICATION_CODE 1112 //ȱÉÙÑéÖ¤Âë +#define NET_DVR_ERR_FORBIDDEN_IP 1113 //¸ÃIPµØÖ·Òѱ»½ûÖ¹£¬²»ÔÊÐíÅäÖÃ(É豸֧³ÖµÄIPµØÖ·¹ýÂ˹¦ÄÜ) +#define NET_DVR_ERR_UNLOCKPTZ 1114 //²Ù×÷ÎÞЧ£¬ÇëÏÈËø¶¨ÔÆ̨ +#define NET_DVR_ERR_COUNTAREA_LARGE 1116 //¼ÆÊýÇøÓò»æÖÆ´íÎó£¬ÇøÓòÃæ»ý´óÓÚÉ豸ÔÊÐíÖµ +#define NET_DVR_ERR_LABEL_ID_EXCEED 1117//±êÇ©ID³¬ÏÞ +#define NET_DVR_ERR_LABEL_TYPE 1118//±êÇ©ÀàÐÍ´íÎó +#define NET_DVR_ERR_LABEL_FULL 1119//±êÇ©Âú +#define NET_DVR_ERR_LABEL_DISABLED 1120//±êǩδʹÄÜ +#define NET_DVR_ERR_DOME_PT_TRANS_TO_DOME_XY 1121//Çò»úPTתÇò»úXYʧ°Ü +#define NET_DVR_ERR_DOME_PT_TRANS_TO_PANORAMA_XY 1122//Çò»úPTתȫ¾°XYʧ°Ü +#define NET_DVR_ERR_PANORAMA_XY_TRANS_TO_DOME_PT 1123//È«¾°XY×ø±êתÇò»úPT´íÎó +#define NET_DVR_ERR_SCENE_DUR_TIME_LESS_THAN_INTERV_TIME 1124//³¡¾°Í£Áôʱ¼äÒª´óÓÚ¼ì²âÖÜÆÚ +#define NET_DVR_ERR_HTTP_BKN_EXCEED_ONE 1125//¶ÏÍøÐø´«²¼·ÀÖ»Ö§³Öһ· +#define NET_DVR_ERR_DELETING_FAILED_TURN_OFF_HTTPS_ESDK_WEBSOCKETS_FIRST 1126//ɾ³ýʧ°Ü£¬ÇëÏȹرÕHTTPSºÍÍøÂç·þÎñÖеÄÔöÇ¿ÐÍSDK·þÎñ¼°WebSockets·þÎñ¡£ +#define NET_DVR_ERR_DELETING_FAILED_TURN_OFF_HTTPS_ESDK_FIRST 1127//ɾ³ýʧ°Ü£¬ÇëÏȹرÕHTTPSºÍÍøÂç·þÎñÖеÄÔöÇ¿ÐÍSDK·þÎñ +#define NET_DVR_ERR_PTZ_OCCUPIED_PRIORITY 1128// ÓиßÓÅÏȼ¶ÔÆ̨¿ØÖÆȨÏÞÓû§²Ù×÷ +#define NET_DVR_ERR_INCORRECT_VIDEOAUDIO_ID 1129// ÊÓƵͨµÀ±àÂëID»òÓïÒôÊä³öͨµÀ±àÂëID´íÎó +#define NET_DVR_ERR_REPETITIONTIME_OVER_MAXIMUM 1130// È¥ÖØʱ¼ä×î´ó²»³¬¹ý×î´óÖµ +#define NET_DVR_ERR_FORMATTING_FAILED 1131// ¸ñʽ»¯´íÎó£¬ÇëÖØР+#define NET_DVR_ERR_ENCRYPTED_FORMATTING_FAILED 1132// ¼ÓÃܸñʽ»¯Ê§°Ü£¬ÇëÖØÊÔ +#define NET_DVR_ERR_WRONG_PASSWORD 1133// ÃÜÂë´íÎó,ÇëÊäÈëÕýÈ·µÄÃÜÂ루SD¿¨ ÃÜÂëУÑéʧ°Ü£© +#define NET_DVR_ERR_EXPOSURE_SYNC 1134// ¾µÍ·¼äÆعâͬ²½ÒÑ¿ªÆô£¬²»ÔÊÐíÅäÖÃÊÖ¶¯RGB + +//2012-10-16 ±¨¾¯É豸´íÎóÂ루1200~1300£© +#define NET_ERR_SEARCHING_MODULE 1201 // ÕýÔÚËÑË÷Íâ½ÓÄ£¿é +#define NET_ERR_REGISTERING_MODULE 1202 // ÕýÔÚ×¢²áÍâ½ÓÄ£¿é +#define NET_ERR_GETTING_ZONES 1203 // ÕýÔÚ»ñÈ¡·ÀÇø²ÎÊý +#define NET_ERR_GETTING_TRIGGERS 1204 // ÕýÔÚ»ñÈ¡´¥·¢Æ÷ +#define NET_ERR_ARMED_STATUS 1205 // ϵͳ´¦ÓÚ²¼·À״̬ +#define NET_ERR_PROGRAM_MODE_STATUS 1206 // ϵͳ´¦ÓÚ±à³Ìģʽ +#define NET_ERR_WALK_TEST_MODE_STATUS 1207 // ϵͳ´¦ÓÚ²½²âģʽ +#define NET_ERR_BYPASS_STATUS 1208 // ÅÔ·״̬ +#define NET_ERR_DISABLED_MODULE_STATUS 1209 // ¹¦ÄÜδʹÄÜ +#define NET_ERR_NOT_SUPPORT_OPERATE_ZONE 1210 // ·ÀÇø²»Ö§³Ö¸Ã²Ù×÷ +#define NET_ERR_NOT_SUPPORT_MOD_MODULE_ADDR 1211 // Ä£¿éµØÖ·²»Äܱ»ÐÞ¸Ä +#define NET_ERR_UNREGISTERED_MODULE 1212 // Ä£¿éδע²á +#define NET_ERR_PUBLIC_SUBSYSTEM_ASSOCIATE_SELF 1213 // ¹«¹²×Óϵͳ¹ØÁª×ÔÉí +#define NET_ERR_EXCEEDS_ASSOCIATE_SUBSYSTEM_NUM 1214 // ³¬¹ý¹«¹²×Óϵͳ×î´ó¹ØÁª¸öÊý +#define NET_ERR_BE_ASSOCIATED_BY_PUBLIC_SUBSYSTEM 1215 // ×Óϵͳ±»ÆäËû¹«¹²×Óϵͳ¹ØÁª +#define NET_ERR_ZONE_FAULT_STATUS 1216 // ·ÀÇø´¦ÓÚ¹ÊÕÏ״̬ +#define NET_ERR_SAME_EVENT_TYPE 1217 // ʼþ´¥·¢±¨¾¯Êä³ö¿ªÆôºÍʼþ´¥·¢±¨¾¯Êä³ö¹Ø±ÕÖÐÓÐÏàͬʼþÀàÐÍ +#define NET_ERR_ZONE_ALARM_STATUS 1218 // ·ÀÇø´¦ÓÚ±¨¾¯×´Ì¬ +#define NET_ERR_EXPANSION_BUS_SHORT_CIRCUIT 1219 //À©Õ¹×ÜÏ߶Ì· +#define NET_ERR_PWD_CONFLICT 1220 //ÃÜÂë³åÍ» +#define NET_ERR_DETECTOR_GISTERED_BY_OTHER_ZONE 1221 //̽²âÆ÷Òѱ»ÆäËû·ÀÇø×¢²á +#define NET_ERR_DETECTOR_GISTERED_BY_OTHER_PU 1222 //̽²âÆ÷Òѱ»ÆäËûÖ÷»ú×¢²á +#define NET_ERR_DETECTOR_DISCONNECT 1223 //̽²âÆ÷²»ÔÚÏß +#define NET_ERR_CALL_BUSY 1224 //É豸ÕýÔÚͨ»°ÖÐ +#define NET_DVR_ERR_ZONE_TAMPER_STAUS 1225 //·ÀÇø´¦ÓÚ·À²ð״̬ +#define NET_DVR_ERR_WIRELESS_DEV_REGISTER 1226 //ÎÞÏßÍâÉèÒѱ»ÆäËûÖ÷»ú×¢²á +#define NET_DVR_ERR_WIRELESS_DEV_ADDED 1227 //ÎÞÏßÍâÉèÒѱ»Ìí¼Ó +#define NET_DVR_ERR_WIRELESS_DEV_OFFLINE 1228 //ÎÞÏßÍâÉè²»ÔÚÏß +#define NET_DVR_ERR_WIRELESS_DEV_TAMPER_STATUS 1229 //ÎÞÏßÍâÉè´¦ÓÚ·À²ð״̬ +#define NET_DVR_ERR_GPRS_PHONE_CONFLICT 1230 //µç»°±¨¾¯ÓëÎÞÏß±¨¾¯ÖÐÐijåÍ» +#define NET_ERR_INIT_PASSWORD_NOT_MODIFY 1231 //³õʼÃÜÂëδÐ޸ģ¬ÎÞ·¨½øÐÐÆäËû²Ù×÷£¨°²×°ÉÌ/¹ÜÀíÔ±Óû§ÔÚ³õʼÃÜÂëδÐÞ¸Äʱ£¬³ýÐÞ¸Ä×ÔÉíÓû§ÃÜÂëÍ⣬ÆäËû²Ù×÷¾ù·µ»Ø¸Ã´íÎóÂë +#define NET_ERR_USER_DISABLED 1232 //Óû§Î´¿ªÆô +#define NET_ERR_DEVICE_DEBUGGING 1233 //µ±Ç°É豸´¦ÓÚµ÷ÊÔģʽÖÐ +//ÐÅÏ¢·¢²¼Ö÷»ú +#define NET_ERR_GET_ALL_RETURN_OVER 1300 //»ñÈ¡ËùÓзµ»ØÊýÄ¿³¬ÏÞ +#define NET_ERR_RESOURCE_USING 1301 //ÐÅÏ¢·¢²¼×ÊÔ´ÕýÔÚʹÓ㬲»ÄÜÐÞ¸Ä +#define NET_ERR_FILE_SIZE_OVERLIMIT 1302 //Îļþ´óС³¬ÏÞ + +//ÐÅÏ¢·¢²¼·þÎñÆ÷´íÎóÂë +#define NET_ERR_MATERIAL_NAME 1303 //ËزÄÃû³Æ·Ç·¨ +#define NET_ERR_MATERIAL_NAME_LEN 1304 //ËزÄÃû³Æ³¤¶È·Ç·¨ +#define NET_ERR_MATERIAL_REMARK 1305 //ËزÄÃèÊö·Ç·¨ +#define NET_ERR_MATERIAL_REMARK_LEN 1306 //ËزÄÃèÊö³¤¶È·Ç·¨ +#define NET_ERR_MATERIAL_SHARE_PROPERTY 1307 //ËزĹ²ÏíÊôÐÔ·Ç·¨ +#define NET_ERR_UNSUPPORT_MATERIAL_TYPE 1308 //ËزÄÀàÐͲ»Ö§³Ö +#define NET_ERR_MATERIAL_NOT_EXIST 1309 //ËزIJ»´æÔÚ +#define NET_ERR_READ_FROM_DISK 1310 //´ÓÓ²Å̶ÁÈ¡ËزÄÎļþʧ°Ü +#define NET_ERR_WRITE_TO_DISK 1311 //ÏòÓ²ÅÌдËزÄÎļþʧ°Ü +#define NET_ERR_WRITE_DATA_BASE 1312 //ËزÄдÊý¾Ý¿âʧ°Ü +#define NET_ERR_NO_APPROVED_NOT_EXPORT 1313 //δÉóºËÄÚÈݽûÖ¹·¢²¼ +#define NET_ERR_MATERIAL_EXCEPTION 1314 //ËزÄÒì³£ +#define NET_ERR_NO_MISINFO 1315 //ÎÞÎó±¨ÐÅÏ¢ +#define NET_ERR_LAN_NOT_SUP_DHCP_CLIENT_CONFIGURATION 1316 //ÍøÇÅÔÚ·ÓÉģʽÏ£¬ÅäÖÃDHCP¿Í»§¶Ë·µ»Ø´íÎó +#define NET_ERR_VIDEOWALL_OPTPORT_RESOLUTION_INCONSISTENT 1317 //µçÊÓǽÉϸ÷Êä³ö¿Ú·Ö±æÂʲ»Ò»ÖÂ(Ö÷ÒªÓÃÓÚÉèÖÃÊä³ö·Ö±æÂÊΪ4K³öÏÖÒ쳣ʱ±¨´í) +#define NET_ERR_VIDEOWALL_OPTPORT_RESOLUTION_INCONSISTENT_UNBIND_OPTPORT_FIRST 1318 //µçÊÓǽÉϸ÷Êä³ö¿Ú·Ö±æÂʲ»Ò»Ö£¬ÇëÏȽâ°ó¶¨Êä³ö¿Ú(Ö÷ÒªÓÃÓÚ°ó¶¨Êä³ö¿Ú³öÏÖÒ쳣ʱ±¨´í) +#define NET_ERR_FOUR_K_OUTPUT_RESOLUTION_UNSUPPORT_NINE_TO_SIXTEEN_SPLIT_SCREEN 1319 //4KÊä³ö·Ö±æÂʲ»Ö§³Ö9/16·ÖÆÁ +#define NET_ERR_SIGNAL_SOURCE_UNSUPPORT_CUSTOM_RESOLUTION 1320 //ÐźÅÔ´²»Ö§³Ö¸Ã×Ô¶¨Òå·Ö±æÂÊ +#define NET_ERR_DVI_UNSUPPORT_FOURK_OUTPUT_RESOLUTION 1321 //DVI²»Ö§³Ö4KÊä³ö·Ö±æÂÊ +#define NET_ERR_BNC_UNSUPPORT_SOURCE_CROPPING 1322 //BNC²»Ö§³ÖÐźÅÔ´²Ã¼ô +#define NET_ERR_OUTPUT_NOT_SUPPORT_VIDEOWALL_RESOLUTION 1323 //Êä³ö¿Ú²»Ö§³ÖµçÊÓǽ·Ö±æÂÊ + +//¶àÆÁ»¥¶¯´íÎóÂë +#define NET_ERR_MAX_SCREEN_CTRL_NUM 1351 //ÆÁÄ»¿ØÖÆÁ¬½ÓÊý´ïµ½ÉÏÏÞ +#define NET_ERR_FILE_NOT_EXIST 1352 //Îļþ²»´æÔÚ +#define NET_ERR_THUMBNAIL_NOT_EXIST 1353 //ËõÂÔͼ²»´æÔÚ +#define NET_ERR_DEV_OPEN_FILE_FAIL 1354 //É豸¶Ë´ò¿ªÎļþʧ°Ü +#define NET_ERR_SERVER_READ_FILE_FAIL 1355 //É豸¶Ë¶ÁÈ¡Îļþʧ°Ü +#define NET_ERR_FILE_SIZE 1356 //Îļþ´óС´íÎó +#define NET_ERR_FILE_NAME 1357 //ÎļþÃû³Æ´íÎó£¬Îª¿Õ»ò²»ºÏ·¨ + +//·Ö¶Î´íÎóÂ루1351-1400£© +#define NET_ERR_BROADCAST_BUSY 1358 //É豸ÕýÔڹ㲥ÖÐ + +//2012-12-20×¥ÅÄ»ú´íÎóÂ루1400-1499£© +#define NET_DVR_ERR_LANENUM_EXCEED 1400 //³µµÀÊý³¬³öÄÜÁ¦ +#define NET_DVR_ERR_PRAREA_EXCEED 1401 //ÅÆʶÇøÓò¹ý´ó +#define NET_DVR_ERR_LIGHT_PARAM 1402 //ÐźŵƽÓÈë²ÎÊý´íÎó +#define NET_DVR_ERR_LANE_LINE_INVALID 1403 //³µµÀÏßÅäÖôíÎó +#define NET_DVR_ERR_STOP_LINE_INVALID 1404 //Í£Ö¹ÏßÅäÖôíÎó +#define NET_DVR_ERR_LEFTORRIGHT_LINE_INVALID 1405 //×ó/ÓÒת·Ö½çÏßÅäÖôíÎó +#define NET_DVR_ERR_LANE_NO_REPEAT 1406 //µþ¼Ó³µµÀºÅÖظ´ +#define NET_DVR_ERR_PRAREA_INVALID 1407 //ÅÆʶ¶à±ßÐβ»·ûºÏÒªÇó +#define NET_DVR_ERR_LIGHT_NUM_EXCEED 1408 //ÊÓƵ¼ì²â½»Í¨µÆÐźŵÆÊýÄ¿³¬³ö×î´óÖµ +#define NET_DVR_ERR_SUBLIGHT_NUM_INVALID 1409 //ÊÓƵ¼ì²â½»Í¨µÆÐźŵÆ×ÓµÆÊýÄ¿²»ºÏ·¨ +#define NET_DVR_ERR_LIGHT_AREASIZE_INVALID 1410 //ÊÓƵ¼ì²â½»Í¨µÆÊäÈëÐźŵƿò´óС²»ºÏ·¨ +#define NET_DVR_ERR_LIGHT_COLOR_INVALID 1411 //ÊÓƵ¼ì²â½»Í¨µÆÊäÈëÐźŵÆÑÕÉ«²»ºÏ·¨ +#define NET_DVR_ERR_LIGHT_DIRECTION_INVALID 1412 //ÊÓƵ¼ì²â½»Í¨µÆÊäÈëµÆ·½ÏòÊôÐÔ²»ºÏ·¨ +#define NET_DVR_ERR_LACK_IOABLITY 1413 //IO¿Úʵ¼ÊÖ§³ÖµÄÄÜÁ¦²»×ã + +#define NET_DVR_ERR_FTP_PORT 1414 //FTP¶Ë¿ÚºÅ·Ç·¨£¨¶Ë¿ÚºÅÖظ´»òÕßÒì³££© +#define NET_DVR_ERR_FTP_CATALOGUE 1415 //FTPĿ¼Ãû·Ç·¨£¨ÆôÓö༶Ŀ¼£¬¶à¼¶Ä¿Â¼´«ÖµÎª¿Õ£© +#define NET_DVR_ERR_FTP_UPLOAD_TYPE 1416 //FTPÉÏ´«ÀàÐÍ·Ç·¨£¨µ¥ftpÖ»Ö§³ÖÈ«²¿/Ë«ftpÖ»Ö§³Ö¿¨¿ÚºÍÎ¥Õ£© +#define NET_DVR_ERR_FLASH_PARAM_WRITE 1417 //ÅäÖòÎÊýʱдFLASHʧ°Ü +#define NET_DVR_ERR_FLASH_PARAM_READ 1418 //ÅäÖòÎÊýʱ¶ÁFLASHʧ°Ü +#define NET_DVR_ERR_PICNAME_DELIMITER 1419 //FTPͼƬÃüÃû·Ö¸ô·û·Ç·¨ +#define NET_DVR_ERR_PICNAME_ITEM 1420 //FTPͼƬÃüÃûÏî·Ç·¨£¨ÀýÈç ·Ö¸ô·û£© +#define NET_DVR_ERR_PLATE_RECOGNIZE_TYPE 1421 //ÅÆʶÇøÓòÀàÐÍ·Ç·¨ £¨¾ØÐκͶà±ßÐÎÓÐЧÐÔУÑ飩 +#define NET_DVR_ERR_CAPTURE_TIMES 1422 //×¥ÅÄ´ÎÊý·Ç·¨ £¨ÓÐЧֵÊÇ0¡«5£© +#define NET_DVR_ERR_LOOP_DISTANCE 1423 //ÏßȦ¾àÀë·Ç·¨ £¨ÓÐЧֵÊÇ0¡«2000ms£© +#define NET_DVR_ERR_LOOP_INPUT_STATUS 1424 //ÏßȦÊäÈë״̬·Ç·¨ £¨ÓÐЧֵ£© +#define NET_DVR_ERR_RELATE_IO_CONFLICT 1425 //²âËÙ×éIO¹ØÁª³åÍ» +#define NET_DVR_ERR_INTERVAL_TIME 1426 //Á¬Åļä¸ôʱ¼ä·Ç·¨ £¨0¡«6000ms£© +#define NET_DVR_ERR_SIGN_SPEED 1427 //±êÖ¾ÏÞËÙÖµ·Ç·¨£¨´ó³µ±êÖ¾ÏÞËÙ²»ÄÜ´óÓÚС³µ±êÖ¾ÏÞËÙ £© +#define NET_DVR_ERR_PIC_FLIP 1428 //ͼÏñÅäÖ÷­×ª £¨ÅäÖý»»¥Ó°Ï죩 +#define NET_DVR_ERR_RELATE_LANE_NUMBER 1429 //¹ØÁª³µµÀÊý´íÎó (Öظ´ ÓÐЧֵУÑé1¡«99) +#define NET_DVR_ERR_TRIGGER_MODE 1430 //ÅäÖÃ×¥ÅÄ»ú´¥·¢Ä£Ê½·Ç·¨ +#define NET_DVR_ERR_DELAY_TIME 1431 //´¥·¢ÑÓʱʱ¼ä´íÎó(2000ms) +#define NET_DVR_ERR_EXCEED_RS485_COUNT 1432 //³¬¹ý×î´ó485¸öÊýÏÞÖÆ +#define NET_DVR_ERR_RADAR_TYPE 1433 //À×´ïÀàÐÍ´íÎó +#define NET_DVR_ERR_RADAR_ANGLE 1434 //À×´ï½Ç¶È´íÎó +#define NET_DVR_ERR_RADAR_SPEED_VALID_TIME 1435 //À×´ïÓÐЧʱ¼ä´íÎó +#define NET_DVR_ERR_RADAR_LINE_CORRECT 1436 //À×´ïÏßÐÔ½ÃÕý²ÎÊý´íÎó +#define NET_DVR_ERR_RADAR_CONST_CORRECT 1437 //À×´ï³£Á¿½ÃÕý²ÎÊý´íÎó +#define NET_DVR_ERR_RECORD_PARAM 1438 //¼Ïñ²ÎÊýÎÞЧ£¨Ô¤Â¼Ê±¼ä²»³¬¹ý10s£© +#define NET_DVR_ERR_LIGHT_WITHOUT_COLOR_AND_DIRECTION 1439 //ÊÓƵ¼ì²âÐźŵÆÅäÖÃÐźŵƸöÊý£¬µ«ÊÇûÓй´Ñ¡ÐźŵƷ½ÏòºÍÑÕÉ«µÄ +#define NET_DVR_ERR_LIGHT_WITHOUT_DETECTION_REGION 1440 //ÊÓƵ¼ì²âÐźŵÆÅäÖÃÐźŵƸöÊý£¬µ«ÊÇûÓл­¼ì²âÇøÓò +#define NET_DVR_ERR_RECOGNIZE_PROVINCE_PARAM 1441 //ÅÆʶ²ÎÊýÊ¡·Ý²ÎÊýµÄºÏ·¨ÐÔ + +#define NET_DVR_ERR_SPEED_TIMEOUT 1442 //IO²âËÙ³¬Ê±Ê±¼ä·Ç·¨£¨ÓÐЧֵ´óÓÚ0£© +#define NET_DVR_ERR_NTP_TIMEZONE 1443 //ntpʱÇø²ÎÊý´íÎó +#define NET_DVR_ERR_NTP_INTERVAL_TIME 1444 //ntpУʱ¼ä¸ô´íÎó +#define NET_DVR_ERR_NETWORK_CARD_NUM 1445 //¿ÉÅäÖÃÍø¿¨ÊýÄ¿´íÎó +#define NET_DVR_ERR_DEFAULT_ROUTE 1446 //ĬÈÏ·ÓÉ´íÎó +#define NET_DVR_ERR_BONDING_WORK_MODE 1447 //bondingÍø¿¨¹¤×÷ģʽ´íÎó +#define NET_DVR_ERR_SLAVE_CARD 1448 //slaveÍø¿¨´íÎó +#define NET_DVR_ERR_PRIMARY_CARD 1449 //PrimaryÍø¿¨´íÎó +#define NET_DVR_ERR_DHCP_PPOE_WORK 1450 //dhcpºÍpppoE²»ÄÜͬʱÆô¶¯ +#define NET_DVR_ERR_NET_INTERFACE 1451 //ÍøÂç½Ó¿Ú´íÎó +#define NET_DVR_ERR_MTU 1452 //MTU´íÎó +#define NET_DVR_ERR_NETMASK 1453 //×ÓÍøÑÚÂë´íÎó +#define NET_DVR_ERR_IP_INVALID 1454 //IPµØÖ·²»ºÏ·¨ +#define NET_DVR_ERR_MULTICAST_IP_INVALID 1455 //¶à²¥µØÖ·²»ºÏ·¨ +#define NET_DVR_ERR_GATEWAY_INVALID 1456 //Íø¹Ø²»ºÏ·¨ +#define NET_DVR_ERR_DNS_INVALID 1457 //DNS²»ºÏ·¨ +#define NET_DVR_ERR_ALARMHOST_IP_INVALID 1458 //¸æ¾¯Ö÷»úµØÖ·²»ºÏ·¨ +#define NET_DVR_ERR_IP_CONFLICT 1459 //IP³åÍ» +#define NET_DVR_ERR_NETWORK_SEGMENT 1460 //IP²»Ö§³ÖͬÍø¶Î +#define NET_DVR_ERR_NETPORT 1461 //¶Ë¿Ú´íÎó + +#define NET_DVR_ERR_PPPOE_NOSUPPORT 1462 //PPPOE²»Ö§³Ö +#define NET_DVR_ERR_DOMAINNAME_NOSUPPORT 1463 //ÓòÃû²»Ö§³Ö +#define NET_DVR_ERR_NO_SPEED 1464 //δÆôÓòâËÙ¹¦ÄÜ +#define NET_DVR_ERR_IOSTATUS_INVALID 1465 //IO״̬´íÎó +#define NET_DVR_ERR_BURST_INTERVAL_INVALID 1466 //Á¬Åļä¸ô·Ç·¨ +#define NET_DVR_ERR_RESERVE_MODE 1467 //±¸ÓÃģʽ´íÎó + +#define NET_DVR_ERR_LANE_NO 1468 //µþ¼Ó³µµÀºÅ´íÎó +#define NET_DVR_ERR_COIL_AREA_TYPE 1469 //ÏßȦÇøÓòÀàÐÍ´íÎó +#define NET_DVR_ERR_TRIGGER_AREA_PARAM 1470 //´¥·¢ÇøÓò²ÎÊý´íÎó +#define NET_DVR_ERR_SPEED_LIMIT_PARAM 1471 //Î¥ÕÂÏÞËÙ²ÎÊý´íÎó +#define NET_DVR_ERR_LANE_PROTOCOL_TYPE 1472 //³µµÀ¹ØÁªÐ­ÒéÀàÐÍ´íÎó + +#define NET_DVR_ERR_INTERVAL_TYPE 1473 //Á¬Åļä¸ôÀàÐÍ·Ç·¨ +#define NET_DVR_ERR_INTERVAL_DISTANCE 1474 //Á¬Åļä¸ô¾àÀë·Ç·¨ +#define NET_DVR_ERR_RS485_ASSOCIATE_DEVTYPE 1475 //RS485¹ØÁªÀàÐÍ·Ç·¨ +#define NET_DVR_ERR_RS485_ASSOCIATE_LANENO 1476 //RS485¹ØÁª³µµÀºÅ·Ç·¨ +#define NET_DVR_ERR_LANENO_ASSOCIATE_MULTIRS485 1477 //³µµÀºÅ¹ØÁª¶à¸öRS485¿Ú +#define NET_DVR_ERR_LIGHT_DETECTION_REGION 1478 //ÊÓƵ¼ì²âÐźŵÆÅäÖÃÐźŵƸöÊý£¬µ«ÊǼì²âÇøÓò¿í»ò¸ßΪ0 + +#define NET_DVR_ERR_DN2D_NOSUPPORT 1479 //²»Ö§³Ö×¥ÅÄÖ¡2D½µÔë +#define NET_DVR_ERR_IRISMODE_NOSUPPORT 1480 //²»Ö§³ÖµÄ¾µÍ·ÀàÐÍ +#define NET_DVR_ERR_WB_NOSUPPORT 1481 //²»Ö§³ÖµÄ°×ƽºâģʽ +#define NET_DVR_ERR_IO_EFFECTIVENESS 1482 //IO¿ÚµÄÓÐЧÐÔ +#define NET_DVR_ERR_LIGHTNO_MAX 1483 //ÐźŵƼì²âÆ÷½ÓÈëºì/»ÆµÆ³¬ÏÞ(16) +#define NET_DVR_ERR_LIGHTNO_CONFLICT 1484 //ÐźŵƼì²âÆ÷½ÓÈëºì/»ÆµÆ³åÍ» + +#define NET_DVR_ERR_CANCEL_LINE 1485 //Ö±Ðд¥·¢Ïß +#define NET_DVR_ERR_STOP_LINE 1486 //´ýÐÐÇøÍ£Ö¹Ïß +#define NET_DVR_ERR_RUSH_REDLIGHT_LINE 1487 //´³ºìµÆ´¥·¢Ïß +#define NET_DVR_ERR_IOOUTNO_MAX 1488 //IOÊä³ö¿Ú±àºÅÔ½½ç + +#define NET_DVR_ERR_IOOUTNO_AHEADTIME_MAX 1489 //IOÊä³ö¿ÚÌáǰʱ¼ä³¬ÏÞ +#define NET_DVR_ERR_IOOUTNO_IOWORKTIME 1490 //IOÊä³ö¿ÚÓÐЧ³ÖÐøʱ¼ä³¬ÏÞ +#define NET_DVR_ERR_IOOUTNO_FREQMULTI 1491 //IOÊä³ö¿ÚÂö³åģʽϱ¶Æµ³ö´í +#define NET_DVR_ERR_IOOUTNO_DUTYRATE 1492 //IOÊä³ö¿ÚÂö³åģʽÏÂÕ¼¿Õ±È³ö´í +#define NET_DVR_ERR_VIDEO_WITH_EXPOSURE 1493 //ÒÔÆØÉÁÆðЧ£¬¹¤×÷·½Ê½²»Ö§³ÖÊÓƵ +#define NET_DVR_ERR_PLATE_BRIGHTNESS_WITHOUT_FLASHDET 1494 //³µÅÆÁÁ¶È×Ô¶¯Ê¹ÄÜÉÁ¹âµÆ½öÔÚ³µÅÆÁÁ¶È²¹³¥Ä£Ê½ÏÂÆðЧ + +#define NET_DVR_ERR_RECOGNIZE_TYPE_PARAM 1495 //ʶ±ðÀàÐÍ·Ç·¨ ³µÅÆʶ±ð²ÎÊý£¨Èç´ó³µ¡¢Ð¡³µ¡¢±³Ïò¡¢ÕýÏò¡¢³µ±êʶ±ðµÈ£© +#define NET_DVR_ERR_PALTE_RECOGNIZE_AREA_PARAM 1496 //ÅÆʶ²ÎÊý·Ç·¨ ÅÆʶÇøÓòÅäÖÃʱÅжϳö´í +#define NET_DVR_ERR_PORT_CONFLICT 1497 //¶Ë¿ÚÓгåÍ» +#define NET_DVR_ERR_LOOP_IP 1498 //IP²»ÄÜÉèÖÃΪ»Ø»·µØÖ· +#define NET_DVR_ERR_DRIVELINE_SENSITIVE 1499 //ѹÏßÁéÃô¶È³ö´í(ÊÓƵµç¾¯Ä£Ê½ÏÂ) + + +//2013-3-6VQD´íÎóÂ루1500¡«1550£© +#define NET_ERR_VQD_TIME_CONFLICT 1500 //VQDÕï¶Ïʱ¼ä¶Î³åÍ» +#define NET_ERR_VQD_PLAN_NO_EXIST 1501 //VQDÕï¶Ï¼Æ»®²»´æÔÚ +#define NET_ERR_VQD_CHAN_NO_EXIST 1502 //VQD¼à¿Øµã²»´æÔÚ +#define NET_ERR_VQD_CHAN_MAX 1503 //VQD¼Æ»®ÊýÒÑ´ïÉÏÏÞ +#define NET_ERR_VQD_TASK_MAX 1504 //VQDÈÎÎñÊýÒÑ´ïÉÏÏÞ + +#define NET_SDK_GET_INPUTSTREAMCFG 1551 //»ñÈ¡ÐźÅÔ´ +#define NET_SDK_AUDIO_SWITCH_CONTROL 1552 //×Ó´°¿ÚÒôƵ¿ª¹Ø¿ØÖÆ +#define NET_SDK_GET_VIDEOWALLDISPLAYNO 1553 //»ñÈ¡É豸ÏÔʾÊä³öºÅ +#define NET_SDK_GET_ALLSUBSYSTEM_BASIC_INFO 1554//»ñÈ¡ËùÓÐ×Óϵͳ»ù±¾ÐÅÏ¢ +#define NET_SDK_SET_ALLSUBSYSTEM_BASIC_INFO 1555 //ÉèÖÃËùÓÐ×Óϵͳ»ù±¾ÐÅÏ¢ +#define NET_SDK_GET_AUDIO_INFO 1556//»ñÈ¡ËùÓÐÒôƵÐÅÏ¢ +#define NET_SDK_GET_MATRIX_STATUS_V50 1557 // »ñÈ¡ÊÓƵ×ÛºÏƽ̨״̬_V50 +#define NET_SDK_DELETE_MONITOR_INFO 1558//ɾ³ýMonitorÐÅÏ¢ +#define NET_SDK_DELETE_CAMERA_INFO 1559//ɾ³ýCamaeraÐÅÏ¢ + + +//×¥ÅÄ»ú´íÎóÂëÐÂÔöÀ©Õ¹(1600~1900) +#define NET_DVR_ERR_EXCEED_MAX_CAPTURE_TIMES 1600 //×¥ÅÄģʽΪƵÉÁʱ×î´ó×¥ÅÄÕÅÊýΪ2ÕÅ(IVTģʽÏÂ) +#define NET_DVR_ERR_REDAR_TYPE_CONFLICT 1601 //Ïàͬ485¿Ú¹ØÁªÀ×´ïÀàÐͳåÍ» +#define NET_DVR_ERR_LICENSE_PLATE_NULL 1602 //³µÅƺÅΪ¿Õ +#define NET_DVR_ERR_WRITE_DATABASE 1603 //дÈëÊý¾Ý¿âʧ°Ü +#define NET_DVR_ERR_LICENSE_EFFECTIVE_TIME 1604 //³µÅÆÓÐЧʱ¼ä´íÎó +//ÊÓƵµç¾¯ +#define NET_DVR_ERR_PRERECORDED_STARTTIME_LONG 1605 //Ԥ¼¿ªÊ¼Ê±¼ä´óÓÚÎ¥·¨×¥ÅÄÕÅÊý +//»ìºÏ¿¨¿Ú +#define NET_DVR_ERR_TRIGGER_RULE_LINE 1606 //´¥·¢¹æÔòÏß´íÎó +#define NET_DVR_ERR_LEFTRIGHT_TRIGGERLINE_NOTVERTICAL 1607 //×ó/ÓÒ´¥·¢Ïß²»´¹Ö± +#define NET_DVR_ERR_FLASH_LAMP_MODE 1608 //ÉÁ¹âµÆÉÁ˸ģʽ´íÎó +#define NET_DVR_ERR_ILLEGAL_SNAPSHOT_NUM 1609 //Î¥ÕÂ×¥ÅÄÕÅÊý´íÎó +#define NET_DVR_ERR_ILLEGAL_DETECTION_TYPE 1610 //Î¥Õ¼ì²âÀàÐÍ´íÎó +#define NET_DVR_ERR_POSITIVEBACK_TRIGGERLINE_HIGH 1611 //Õý±³Ïò´¥·¢Ï߸߶ȴíÎó +#define NET_DVR_ERR_MIXEDMODE_CAPTYPE_ALLTARGETS 1612 //»ìºÏģʽÏÂÖ»Ö§³Ö»ú·ÇÈË×¥ÅÄÀàÐÍ + +#define NET_DVR_ERR_CARSIGNSPEED_GREATERTHAN_LIMITSPEED 1613//С³µ±êÖ¾ÏÞËÙ´óÓÚÏÞËÙÖµ +#define NET_DVR_ERR_BIGCARSIGNSPEED_GREATERTHAN_LIMITSPEED 1614//´ó³µ±êÖ¾ÏÞËÙ´óÓÚÏÞËÙÖµ +#define NET_DVR_ERR_BIGCARSIGNSPEED_GREATERTHAN_CARSIGNSPEED 1615//´ó³µ±êÖ¾ÏÞËÙ´óÓÚС³µ±êÖ¾ÏÞËÙÖµ +#define NET_DVR_ERR_BIGCARLIMITSPEED_GREATERTHAN_CARLIMITSPEED 1616//´ó³µÏÞËÙÖµ´óÓÚС³µÏÞËÙÖµ +#define NET_DVR_ERR_BIGCARLOWSPEEDLIMIT_GREATERTHAN_CARLOWSPEEDLIMIT 1617//´ó³µµÍËÙÏÞËÙÖµ´óÓÚС³µµÍËÙÏÞËÙÖµ +#define NET_DVR_ERR_CARLIMITSPEED_GREATERTHAN_EXCEPHIGHSPEED 1618//С³µÏÞËÙ´óÓÚÒì³£¸ßËÙÖµ +#define NET_DVR_ERR_BIGCARLIMITSPEED_GREATERTHAN_EXCEPHIGHSPEED 1619//´ó³µÏÞËÙ´óÓÚÒì³£¸ßËÙÖµ +#define NET_DVR_ERR_STOPLINE_MORETHAN_TRIGGERLINE 1620//Í£Ö¹Ïß³¬¹ýÖ±Ðд¥·¢Ïß +#define NET_DVR_ERR_YELLOWLIGHTTIME_INVALID 1621/*ÊÓƵ¼ì²â»ÆµÆ³ÖÐøʱ¼ä²»ºÏ·¨±¨´í*/ +#define NET_DVR_ERR_TRIGGERLINE1_FOR_NOT_YIELD_TO_PEDESTRIAN_CANNOT_EXCEED_TRIGGERLINE2 1622//µÚÒ»Ìõ²»ÀñÈÃÐÐÈË´¥·¢ÏßµÄλÖó¬¹ýÁ˵ڶþÌõ²»ÀñÈÃÐÐÈË´¥·¢Ïß +#define NET_DVR_ERR_TRIGGERLINE2_FOR_NOT_YIELD_TO_PEDESTRIAN_CANNOT_EXCEED_TRIGGERLINE1 1623//µÚ¶þÌõ²»ÀñÈÃÐÐÈË´¥·¢ÏßµÄλÖó¬¹ýÁ˵ÚÒ»Ìõ²»ÀñÈÃÐÐÈË´¥·¢Ïß + +//ÃŽûÖ÷»ú´íÎóÂë +#define NET_ERR_TIME_OVERLAP 1900 //ʱ¼ä¶ÎÖصþ +#define NET_ERR_HOLIDAY_PLAN_OVERLAP 1901 //¼ÙÈռƻ®Öصþ +#define NET_ERR_CARDNO_NOT_SORT 1902 //¿¨ºÅδÅÅÐò +#define NET_ERR_CARDNO_NOT_EXIST 1903 //¿¨ºÅ²»´æÔÚ +#define NET_ERR_ILLEGAL_CARDNO 1904 //¿¨ºÅ´íÎó +#define NET_ERR_ZONE_ALARM 1905 //·ÀÇø´¦ÓÚ²¼·À״̬(²ÎÊýÐ޸IJ»ÔÊÐí) +#define NET_ERR_ZONE_OPERATION_NOT_SUPPORT 1906 //·ÀÇø²»Ö§³Ö¸Ã²Ù×÷ +#define NET_ERR_INTERLOCK_ANTI_CONFLICT 1907 //¶àÃÅ»¥ËøºÍ·´Ç±»ØͬʱÅäÖôíÎó +#define NET_ERR_DEVICE_CARD_FULL 1908 //¿¨ÒÑÂú£¨¿¨´ïµ½10Wºó·µ»Ø£© +#define NET_ERR_HOLIDAY_GROUP_DOWNLOAD 1909 //¼ÙÈÕ×éÏÂÔØʧ°Ü +#define NET_ERR_LOCAL_CONTROL_OFF 1910 //¾ÍµØ¿ØÖÆÆ÷ÀëÏß +#define NET_ERR_LOCAL_CONTROL_DISADD 1911 //¾ÍµØ¿ØÖÆÆ÷δÌí¼Ó +#define NET_ERR_LOCAL_CONTROL_HASADD 1912 //¾ÍµØ¿ØÖÆÆ÷ÒÑÌí¼Ó +#define NET_ERR_LOCAL_CONTROL_DOORNO_CONFLICT 1913 //ÓëÒÑÌí¼ÓµÄ¾ÍµØ¿ØÖÆÆ÷ÃűàºÅ³åÍ» +#define NET_ERR_LOCAL_CONTROL_COMMUNICATION_FAIL 1914 //¾ÍµØ¿ØÖÆÆ÷ͨÐÅʧ°Ü +#define NET_ERR_OPERAND_INEXISTENCE 1915 //²Ù×÷¶ÔÏó²»´æÔÚ£¨¶ÔÃÅ¡¢±¨¾¯Êä³ö¡¢±¨¾¯ÊäÈëÏà¹Ø²Ù×÷£¬µ±¶ÔÏóδÌí¼Óʱ·µ»Ø£© +#define NET_ERR_LOCAL_CONTROL_OVER_LIMIT 1916 //¾ÍµØ¿ØÖÆÆ÷³¬³öÉ豸×î´óÄÜÁ¦£¨Ö÷¿Ø¶Ô¾ÍµØÊýÁ¿ÓÐÏÞÖÆ£© +#define NET_ERR_DOOR_OVER_LIMIT 1917 //Ãų¬³öÉ豸×î´óÄÜÁ¦ +#define NET_ERR_ALARM_OVER_LIMIT 1918 //±¨¾¯ÊäÈëÊä³ö³¬³öÉ豸×î´óÄÜÁ¦ +#define NET_ERR_LOCAL_CONTROL_ADDRESS_INCONFORMITY_TYPE 1919 //¾ÍµØ¿ØÖÆÆ÷µØÖ·ÓëÀàÐͲ»·û +#define NET_ERR_NOT_SUPPORT_ONE_MORE_CARD 1920 //²»Ö§³ÖÒ»È˶࿨ +#define NET_ERR_DELETE_NO_EXISTENCE_FACE 1921 //ɾ³ýµÄÈËÁ³²»´æÔÚ +#define NET_ERR_DOOR_SPECIAL_PASSWORD_REPEAT 1922 //ÓëÉ豸ÃÅÌØÊâÃÜÂëÖظ´ +#define NET_ERR_AUTH_CODE_REPEAT 1923 //ÓëÉ豸ÈÏÖ¤ÂëÖظ´ +#define NET_ERR_DEPLOY_EXCEED_MAX 1924 //²¼·À³¬¹ý×î´óÁ¬½ÓÊý +#define NET_ERR_NOT_SUPPORT_DEL_FP_BY_ID 1925 //¶Á¿¨Æ÷²»Ö§³Ö°´ÊÖÖ¸IDɾ³ýÖ¸ÎÆ +#define NET_ERR_TIME_RANGE 1926 //ÓÐЧÆÚ²ÎÊýÅäÖ÷¶Î§ÓÐÎó +#define NET_ERR_CAPTURE_TIMEOUT 1927 //²É¼¯³¬Ê± +#define NET_ERR_LOW_SCORE 1928 //²É¼¯ÖÊÁ¿µÍ +#define NET_ERR_OFFLINE_CAPTURING 1929 //ÀëÏ߲ɼ¯ÖУ¬ÎÞ·¨ÏìÓ¦ + +//¿ÉÊÓ¶Ô½²´íÎóÂë +#define NET_DVR_ERR_OUTDOOR_COMMUNICATION 1950 //ÓëÃÅ¿Ú»úͨÐÅÒì³£ +#define NET_DVR_ERR_ROOMNO_UNDEFINED 1951 //δÉèÖ÷¿¼äºÅ +#define NET_DVR_ERR_NO_CALLING 1952 //ÎÞºô½Ð +#define NET_DVR_ERR_RINGING 1953 //ÏìÁå +#define NET_DVR_ERR_IS_CALLING_NOW 1954 //ÕýÔÚͨ»° +#define NET_DVR_ERR_LOCK_PASSWORD_WRONG 1955//ÖÇÄÜËøÃÜÂë´íÎó +#define NET_DVR_ERR_CONTROL_LOCK_FAILURE 1956//¿ª¹ØËøʧ°Ü +#define NET_DVR_ERR_CONTROL_LOCK_OVERTIME 1957//¿ª¹ØËø³¬Ê± +#define NET_DVR_ERR_LOCK_DEVICE_BUSY 1958//ÖÇÄÜËøÉ豸·±Ã¦ +#define NET_DVR_ERR_UNOPEN_REMOTE_LOCK_FUNCTION 1959//Ô¶³Ì¿ªËø¹¦ÄÜδ´ò¿ª + + +//ºó¶Ë´íÎóÂë £¨2100 - 3000£© +#define NET_DVR_ERR_FILE_NOT_COMPLETE 2100 //ÏÂÔصÄÎļþ²»ÍêÕû +#define NET_DVR_ERR_IPC_EXIST 2101 //¸ÃIPCÒѾ­´æÔÚ +#define NET_DVR_ERR_ADD_IPC 2102 //¸ÃͨµÀÒÑÌí¼ÓIPC +#define NET_DVR_ERR_OUT_OF_RES 2103 //ÍøÂç´ø¿íÄÜÁ¦²»×ã +#define NET_DVR_ERR_CONFLICT_TO_LOCALIP 2104 //IPCµÄipµØÖ·¸úDVRµÄipµØÖ·³åÍ» +#define NET_DVR_ERR_IP_SET 2105 //·Ç·¨ipµØÖ· +#define NET_DVR_ERR_PORT_SET 2106 //·Ç·¨µÄ¶Ë¿ÚºÅ + +#define NET_ERR_WAN_NOTSUPPORT 2107 //²»ÔÚͬһ¸ö¾ÖÓòÍø£¬ÎÞ·¨ÉèÖð²È«ÎÊÌâ»òµ¼³öGUIDÎļþ +#define NET_ERR_MUTEX_FUNCTION 2108 //¹¦ÄÜ»¥³â +#define NET_ERR_QUESTION_CONFIGNUM 2109 //°²È«ÎÊÌâÅäÖÃÊýÁ¿´íÎó +#define NET_ERR_FACECHAN_NORESOURCE 2110 //ÈËÁ³ÖÇÄÜͨµÀ×ÊÔ´ÒÑÓÃÍê +#define NET_ERR_DATA_CALLBACK 2111 //ÕýÔÚÊý¾Ý»ØǨ +#define NET_ERR_ATM_VCA_CHAN_IS_RELATED 2112 //ATMÖÇÄÜͨµÀÒѱ»¹ØÁª +#define NET_ERR_ATM_VCA_CHAN_IS_OVERLAPED 2113 //ATMÖÇÄÜͨµÀÒѱ»µþ¼Ó +#define NET_ERR_FACE_CHAN_UNOVERLAP_EACH_OTHER 2114 //ÈËÁ³Í¨µÀ²»ÄÜ»¥Ïàµþ¼Ó +#define NET_ERR_ACHIEVE_MAX_CHANNLE_LIMIT 2115 //´ïµ½×î´ó·ÊýÏÞÖÆ +#define NET_DVR_SMD_ENCODING_NORESOURSE 2116 //SMD±àÂë×ÊÔ´²»×ã +#define NET_DVR_SMD_DECODING_NORESOURSE 2117 //SMD½âÂë×ÊÔ´²»×ã +#define NET_DVR_FACELIB_DATA_PROCESSING 2118 //ÈËÁ³¿âÊý¾ÝÕýÔÚ´¦Àí +#define NET_DVR_ERR_LARGE_TIME_DIFFRENCE 2119 //É豸ºÍ·þÎñÆ÷Ö®¼äµÄʱ¼ä²îÒìÌ«´ó +#define NET_DVR_NO_SUPPORT_WITH_PLAYBACK 2120 //ÒÑ¿ªÆô»Ø·Å£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_CHANNEL_NO_SUPPORT_WITH_SMD 2121 //ͨµÀÒÑ¿ªÆôSMD£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_CHANNEL_NO_SUPPORT_WITH_FD 2122 //ͨµÀÒÑ¿ªÆôÈËÁ³×¥ÅÄ£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_ILLEGAL_PHONE_NUMBER 2123 //·Ç·¨µÄµç»°ºÅÂë +#define NET_DVR_ILLEGAL_CERITIFICATE_NUMBER 2124 //·Ç·¨µÄÖ¤¼þºÅÂë +#define NET_DVR_ERR_CHANNEL_RESOLUTION_NO_SUPPORT 2125 //ͨµÀ·Ö±æÂʲ»Ö§³Ö +#define NET_DVR_ERR_CHANNEL_COMPRESSION_NO_SUPPORT 2126 //ͨµÀ±àÂë¸ñʽ²»Ö§³Ö + +#define NET_DVR_ERR_CLUSTER_DEVICE_TOO_LESS 2127 //É豸ÊýÉÙ£¬²»ÔÊÐíɾ³ý +#define NET_DVR_ERR_CLUSTER_DEL_DEVICE_CM_PLAYLOAD 2128 //¸ÃÉ豸ÊǼ¯ÈºÖ÷»ú£¬²»ÔÊÐíɾ³ý +#define NET_DVR_ERR_CLUSTER_DEVNUM_OVER_UPPER_LIMIT 2129 //É豸Êý´ïµ½ÉÏÏÞ£¬²»ÔÊÐíÔö¼Ó +#define NET_DVR_ERR_CLUSTER_DEVICE_TYPE_INCONFORMITY 2130 //É豸ÀàÐͲ»Ò»Ö +#define NET_DVR_ERR_CLUSTER_DEVICE_VERSION_INCONFORMITY 2131 //É豸°æ±¾²»Ò»Ö +#define NET_DVR_ERR_CLUSTER_IP_CONFLICT 2132 //¼¯ÈºÏµÍ³IPµØÖ·³åÍ»£ºipv4µØÖ·³åÍ»¡¢ipv6µØÖ·³åÍ» +#define NET_DVR_ERR_CLUSTER_IP_INVALID 2133 //¼¯ÈºÏµÍ³IPµØÖ·ÎÞЧ£ºipv4·Ç·¨¡¢ipv6·Ç·¨ +#define NET_DVR_ERR_CLUSTER_PORT_CONFLICT 2134 //¼¯ÈºÏµÍ³¶Ë¿Ú³åÍ» +#define NET_DVR_ERR_CLUSTER_PORT_INVALID 2135 //¼¯ÈºÏµÍ³¶Ë¿Ú·Ç·¨ +#define NET_DVR_ERR_CLUSTER_USERNAEM_OR_PASSWORD_INVALID 2136 //×éÍøÓû§Ãû»òÃÜÂë·Ç·¨ +#define NET_DVR_ERR_CLUSTER_DEVICE_ALREADY_EXIST 2137 //´æÔÚÏàͬÉ豸 +#define NET_DVR_ERR_CLUSTER_DEVICE_NOT_EXIST 2138 //É豸²»´æÔÚ(×éÍøʱÏ·¢µÄcsÁбíÖеÄÉ豸ÐÅÏ¢ÔÚÈκÎһ̨csÉ϶¼ÕÒ²»µ½£¬É¾³ýµÄʱºòÏ·¢µÄid²»¶Ô) +#define NET_DVR_ERR_CLUSTER_NON_CLUSTER_MODE 2139 //É豸´¦ÓڷǼ¯ÈºÄ£Ê½ +#define NET_DVR_ERR_CLUSTER_IP_NOT_SAME_LAN 2140 //IPµØÖ·²»ÔÚͬһ¾ÖÓòÍø£¬²»Í¬ÇøÓòÍø²»ÔÊÐí×éÍø/À©ÈÝ + +#define NET_DVR_ERR_CAPTURE_PACKAGE_FAILED 2141 //×¥°üʧ°Ü +#define NET_DVR_ERR_CAPTURE_PACKAGE_PROCESSING 2142 //ÕýÔÚ×¥°ü +#define NET_DVR_ERR_SAFETY_HELMET_NO_RESOURCE 2143 //°²È«Ã±¼ì²â×ÊÔ´²»×ã +#define NET_DVR_NO_SUPPORT_WITH_ABSTRACT 2144 //ÒÑ¿ªÆôÊÓƵժҪ£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_ERR_TAPE_LIB_NEED_STOP_ARCHIVE 2145 //´Å´ø¿â¹éµµÐèҪֹͣ +#define NET_DVR_INSUFFICIENT_DEEP_LEARNING_RESOURCES 2146 //Éî¶Èѧϰ×ÊÔ´³¬ÏÞ +#define NET_DVR_ERR_IDENTITY_KEY 2147 //½»»¥¿ÚÁî´íÎó +#define NET_DVR_MISSING_IDENTITY_KEY 2148 //½»»¥¿ÚÁîȱʧ +#define NET_DVR_NO_SUPPORT_WITH_PERSON_DENSITY_DETECT 2149 //ÒÑ¿ªÆôÈËÔ±Ãܶȼì²â£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_IPC_RESOLUTION_OVERFLOW 2150 //IPC·Ö±æÂʳ¬ÏÞ +#define NET_DVR_IPC_BITRATE_OVERFLOW 2151 //IPCÂëÂʳ¬ÏÞ +#define NET_DVR_ERR_INVALID_TASKID 2152 //ÎÞЧµÄtaskID +#define NET_DVR_PANEL_MODE_NOT_CONFIG 2153 //ûÓÐÅäÖÃÃæ°å·ÖÇÄÜ +#define NET_DVR_NO_HUMAN_ENGINES_RESOURCE 2154 //ÈËÌåÒýÇæ×ÊÔ´²»×ã +#define NET_DVR_ERR_TASK_NUMBER_OVERFLOW 2155 //ÈÎÎñÊý¾Ý³¬¹ýÉÏÏÞ +#define NET_DVR_ERR_COLLISION_TIME_OVERFLOW 2156 //Åöײʱ¼ä³¬¹ýÉÏÏÞ +#define NET_DVR_ERR_CAPTURE_PACKAGE_NO_USB 2157 //δʶ±ðµ½UÅÌ£¬Çë²åÈëUÅÌ»òÖØвåÈë +#define NET_DVR_ERR_NO_SET_SECURITY_EMAIL 2158 //δÉèÖð²È«ÓÊÏä +#define NET_DVR_ERR_EVENT_NOTSUPPORT 2159 //¶©ÔÄʼþ²»Ö§³Ö +#define NET_DVR_ERR_PASSWORD_FORMAT 2160 //ÃÜÂë¸ñʽ²»¶Ô +#define NET_DVR_ACCESS_FRONT_DEVICE_PARAM_FAILURE 2161 //»ñÈ¡Ç°¶ËÉ豸²ÎÊýʧ°Ü +#define NET_DVR_ACCESS_FRONT_DEVICE_STREAM_FAILURE 2162 //¶ÔÇ°¶ËÉ豸ȡÁ÷ʧ°Ü +#define NET_DVR_ERR_USERNAME_FORMAT 2163 //Óû§Ãû¸ñʽ²»¶Ô +#define NET_DVR_ERR_UNOPENED_HIGH_RESOLUTION_MODE 2164 //³¬¸ß·Ö±æÂÊģʽ먦Æô +#define NET_DVR_ERR_TOO_SMALL_QUATO 2165 //Åä¶îÉèÖÃ̫С +#define NET_DVR_ERR_EMAIL_FORMAT 2166 //ÓÊÏä¸ñʽ²»¶Ô +#define NET_DVR_ERR_SECURITY_CODE_FORMAT 2167 //°²È«Âë¸ñʽ²»¶Ô +#define NET_DVR_PD_SPACE_TOO_SMALL 2168 //ÕóÁÐÓ²ÅÌÈÝÁ¿Ì«Ð¡ +#define NET_DVR_PD_NUM_TOO_BIG 2169 //ÕóÁÐÓ²ÅÌ×ÜÊý³¬¹ý×ÜÅÌÊýµÄ¶þ·ÖÖ®Ò» +#define NET_DVR_ERR_USB_IS_FULL 2170 //UÅÌÒÑÂú +#define NET_DVR_EXCEED_MAX_SMD_TYPE 2171 //´ïµ½×î´óSMDʼþÖÖÀàÉÏÏÞ +#define NET_DVR_CHANNEL_NO_SUPPORT_WITH_BEHAVIOR 2172 //ͨµÀÒÑ¿ªÆôÐÐΪ·ÖÎö£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_NO_BEHAVIOR_ENGINES_RESOURCE 2173 //ÐÐΪ·ÖÎö×ÊÔ´²»×ã +#define NET_DVR_NO_RETENTION_ENGINES_RESOURCE 2174 //ÈËÔ±ÖÍÁô¼ì²â×ÊÔ´²»×ã +#define NET_DVR_NO_LEAVE_POSITION_ENGINES_RESOURCE 2175 //Àë¸Ú¼ì²â×ÊÔ´²»×ã +#define NET_DVR_NO_PEOPLE_NUM_CHANGE_ENGINES_RESOURCE 2176 //ÈËÊýÒì³£×ÊÔ´²»×ã +#define NET_DVR_PANEL_MODE_NUM_OVER_LIMIT 2177 //³¬¹ýÃæ°å·×î´ó·Êý +#define NET_DVR_SURROUND_MODE_NUM_OVER_LIMIT 2178 //³¬¹ý»·¾³Â·×î´ó·Êý +#define NET_DVR_FACE_MODE_NUM_OVER_LIMIT 2179 //³¬¹ýÈËÁ³Â·×î´ó·Êý +#define NET_DVR_SAFETYCABIN_MODE_NUM_OVER_LIMIT 2180 //³¬¹ý·À»¤²Õ·×î´ó·Êý +#define NET_DVR_DETECT_REGION_RANGE_INVALID 2181 //¼ì²âÇøÓò·¶Î§·Ç·¨ +#define NET_DVR_CHANNEL_CAPTURE_PICTURE_FAILURE 2182 //ͨµÀץͼʧ°Ü +#define NET_DVR_VCACHAN_IS_NORESOURCE 2183 //ÖÇÄÜͨµÀ×ÊÔ´ÓÃÍê +#define NET_DVR_IPC_NUM_REACHES_LIMIT 2184 // IpcͨµÀÊýÄ¿´ïµ½ÉÏÏÞ +#define NET_DVR_IOT_NUM_REACHES_LIMIT 2185 // IOTͨµÀÊýÄ¿´ïµ½ÉÏÏÞ +#define NET_DVR_IOT_CHANNEL_DEVICE_EXIST 2186 //µ±Ç°IOTͨµÀÒѾ­Ìí¼ÓÉ豸 +#define NET_DVR_IOT_CHANNEL_DEVICE_NOT_EXIST 2187 //µ±Ç°IOTͨµÀ²»´æÔÚÉ豸 +#define NET_DVR_INVALID_IOT_PROTOCOL_TYPE 2188 //·Ç·¨µÄIOTЭÒéÀàÐÍ +#define NET_DVR_INVALID_EZVIZ_SECRET_KEY 2189 //·Ç·¨µÄөʯע²áÑéÖ¤Âë +#define NET_DVR_DUPLICATE_IOT_DEVICE 2190 //Öظ´µÄIOTÉ豸 +#define NET_DVR_SADP_MODIFY_FALIURE 2191 // SADPÐÞ¸Äʧ°Ü +#define NET_DVR_IPC_NETWORK_ABNORMAL 2192 // IPCÍøÂçÒì³£ +#define NET_DVR_IPC_PASSWORD_ERROR 2193 // IPCÓû§ÃûÃÜÂë´íÎó +#define NET_DVR_ERROR_IPC_TYPE 2194 //IPCÀàÐͲ»¶Ô +#define NET_DVR_ERROR_IPC_LIST_NOT_EMPTY 2195 //ÒÑÌí¼ÓIPCÁÐ±í²»Îª¿Õ£¬²»Ö§³ÖÒ»¼üÅäÖà +#define NET_DVR_ERROR_IPC_LIST_NOT_MATCH_PAIRING 2196 //IPCÁбíºÍÅäµ¥²»Æ¥Åä +#define NET_DVR_ERROR_IPC_BAD_LANGUAGE 2197 //IPCÓïÑÔºÍÉ豸²»Æ¥Åä +#define NET_DVR_ERROR_IPC_IS_LOCKING 2198 //IPCÒѱ»Ëø +#define NET_DVR_ERROR_IPC_NOT_ACTIVATED 2199 //IPCδ¼¤»î +#define NET_DVR_FIELD_CODING_NOT_SUPPORT 2200 //³¡±àÂë²»Ö§³Ö +#define NET_DVR_ERROR_H323_NOT_SUPPORT_H265 2201 //H323ÊÓƵ»áÒé¾Í²»Ö§³ÖH265ÂëÁ÷ +#define NET_DVR_ERROR_EXPOSURE_TIME_TOO_BIG_IN_MODE_P 2202 //PÖÆʽÏ£¬Æعâʱ¼ä¹ý´ó +#define NET_DVR_ERROR_EXPOSURE_TIME_TOO_BIG_IN_MODE_N 2203 //NÖÆʽÏ£¬Æعâʱ¼ä¹ý´ó +#define NET_DVR_ERROR_PING_PROCESSING 2204 //ÕýÔÚPING +#define NET_DVR_ERROR_PING_NOT_START 2205 //Ping¹¦ÄÜδ¿ªÊ¼ +#define NET_DVR_ERROR_NEED_DOUBLE_VERIFICATION 2206 //ÐèÒª¶þ´ÎÈÏÖ¤ +#define NET_DVR_NO_DOUBLE_VERIFICATION_USER 2207 //ÎÞ¶þ´ÎÈÏÖ¤Óû§ +#define NET_DVR_CHANNEL_OFFLINE 2208 //ͨµÀÀëÏß +#define NET_DVR_TIMESPAN_NUM_OVER_LIMIT 2209 //ʱ¼ä¶Î³¬³öÖ§³Ö×î´óÊýÄ¿ +#define NET_DVR_CHANNEL_NUM_OVER_LIMIT 2210 //ͨµÀÊýÄ¿³¬³öÖ§³Ö×î´óÊýÄ¿ +#define NET_DVR_NO_SEARCH_ID_RESOURCE 2211 //·ÖÒ³²éѯµÄsearchID×ÊÔ´²»×ã +#define NET_DVR_ERROR_ONEKEY_EXPORT 2212 //ÕýÔÚ½øÐе¼³ö²Ù×÷£¬ÇëÉÔºóÔÙÊÔ +#define NET_DVR_NO_CITY_MANAGEMENT_ENGINES_RESOURCE 2213 //³Ç¹ÜËã·¨ÒýÇæ×ÊÔ´²»×ã +#define NET_DVR_NO_SITUATION_ANALYSIS_ENGINES_RESOURCE 2214 //̬ÊÆ·ÖÎöÒýÇæ×ÊÔ´²»×ã +#define NET_DVR_INTELLIGENT_ANALYSIS_IPC_CANNT_DELETE 2215 //ÕýÔÚ½øÐÐÖÇÄÜ·ÖÎöµÄIPCÎÞ·¨É¾³ý +#define NET_DVR_NOSUPPORT_RESET_PASSWORD 2216 //NVR²»Ö§³Ö¶ÔIPCÖØÖÃÃÜÂë +#define NET_DVR_ERROR_IPC_NEED_ON_LAN 2217 // IPCÐèÒªÔÚ¾ÖÓòÍøÄÚ +#define NET_DVR_CHANNEL_NO_SUPPORT_WITH_SAFETY_HELMET 2218 //ͨµÀÒÑ¿ªÆô°²È«Ã±¼ì²â£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_ERROR_GET_RESETPASSWORDTYPE_IS_ABNORMAL 2219 /*IPCÖØÖÃÃÜÂëʱ£¬»ñÈ¡IPCµÄÖØÖÃÃÜÂëÀàÐÍÒì³£*/ +#define NET_DVR_ERROR_IPC_NOSUPPORT_RESET_PASSWORD 2220 /* IPC²»Ö§³ÖÖØÖÃÃÜÂë*/ +#define NET_DVR_ERROR_IP_IS_NOT_ONLY_ONE 2221 /*IPCµÄIP²»Î¨Ò»£¬ÓÐÖظ´*/ +#define NET_DVR_NO_SUPPORT_WITH_SMD_OR_SCD 2222 //ÒÑ¿ªÆôSMD/SCD£¬²»Ö§³Ö±¾¹¦ÄÜ£¨SCDΪ³¡¾°±ä¸ü£© +#define NET_DVR_NO_SUPPORT_WITH_FD 2223 //ÒÑ¿ªÆôÈËÁ³×¥ÅÄ£¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_NO_FD_ENGINES_RESOURCE 2224 //ÈËÁ³×¥ÅÄ×ÊÔ´²»×ã +#define NET_DVR_ERROR_ONEKEY_REMOVE 2225 //ÕýÔÚ½øÐÐɾ³ý²Ù×÷£¬ÇëÉÔºóÔÙÊÔ +#define NET_DVR_FACE_PIP_BACKGROUND_CHANNEL_OVERFLOW 2226 //ÈËÁ³»­Öл­±³¾°Í¨µÀ³¬ÏÞ +#define NET_DVR_MICIN_CHANNEL_OCCUPIED 2227 //micinͨµÀ±»Õ¼Óà +#define NET_DVR_IPC_CHANNEL_IS_IN_PIP 2228 //²Ù×÷ʧ°Ü£¬¸ÃͨµÀÒѹØÁªµ½ÉóѶͨµÀ£¬ÇëÏÈÈ¡Ïû»­Öл­ÅäÖùØÁª + +#define NET_DVR_CHANNEL_NO_SUPPORT_WITH_FACE_CONTRAST 2229 //ͨµÀÒÑ¿ªÆôÈËÁ³±È¶Ô£¬²»Ö§³Ö±¾¹¦ÄÜ + +#define NET_DVR_INVALID_RECHARGE_CARD 2230 //ÎÞЧµÄ³äÖµ¿¨ +#define NET_DVR_CLOUD_PLATFORM_SERVER_EXCEPTION 2231 //ÔÆƽ̨·þÎñÆ÷Òì³£ +#define NET_DVR_OPERATION_FAILURE_WITHOUT_LOGIN 2232 //δµÇ¼²Ù×÷ʧ°Ü +#define NET_DVR_INVALID_ASSOCIATED_SERIAL_NUMBER 2233 //¹ØÁªÐòÁкŷǷ¨ +#define NET_DVR_CLOUD_PLATFORM_ACCOUNT_NOT_EXIST 2234 //ÔÆƽ̨ÕʺŲ»´æÔÚ +#define NET_DVR_DEVICE_SERIAL_NUMBER_REGISTERED 2235 //É豸ÐòÁкÅÒÑ×¢²á +#define NET_DVR_CONFERENCE_ROOM_NOT_EXIST 2236 //»áÒéÊÒ²»´æÔÚ +#define NET_DVR_NEED_DISABLED_ANALOG_CHANNEL 2237//Ðè½ûÓÃÄ£ÄâͨµÀ +#define NET_DVR_STUDENT_ROLL_CALL_FAILURE 2238//ѧÉúµãÃûʧ°Ü +#define NET_DVR_SUB_DEVICE_NOT_ENABLE_INDIVIDUAL_BEHAVIOR 2239//×ÓÉ豸δÆôÓøöÌåÐÐΪģʽ +#define NET_DVR_SUB_DEVICE_CHANNEL_CONTROL_FAILED 2240//×ÓÉ豸ͨµÀ¿ØÖÆʧ°Ü +#define NET_DVR_DEVICE_NOT_IN_CONFERENCE 2241//É豸²»ÔÚ»áÒéÖÐ +#define NET_DVR_ALREADY_EXIST_CONFERENCE 2242//µ±Ç°ÒѾ­´æÔÚ»áÒé +#define NET_DVR_NO_SUPPORT_WITH_VIDEO_CONFERENCE 2243//µ±Ç°ÕýÔÚÊÓƵ»áÒéÖУ¬²»Ö§³Ö±¾¹¦ÄÜ +#define NET_DVR_START_INTERACTION_FAILURE 2244//»¥¶¯¿ªÊ¼Ê§°Ü +#define NET_DVR_ASK_QUESTION_STARTED 2245//ÒÑ¿ªÊ¼ÌáÎÊ +#define NET_DVR_ASK_QUESTION_CLOSED 2246//ÒѽáÊøÌáÎÊ +#define NET_DVR_UNABLE_OPERATE_BY_HOST 2247//Òѱ»Ö÷³ÖÈ˽ûÓã¬ÎÞ·¨²Ù×÷ +#define NET_DVR_REPEATED_ASK_QUESTION 2248//Öظ´ÌáÎÊ +#define NET_DVR_SWITCH_TIMEDIFF_LESS_LIMIT 2249/*¿ª¹Ø»úʱ¼ä²îСÓÚÏÞÖÆÖµ(10·ÖÖÓ)*/ +#define NET_DVR_CHANNEL_DEVICE_EXIST 2250 //µ±Ç°Í¨µÀÒѾ­Ìí¼ÓÉ豸 +#define NET_DVR_CHANNEL_DEVICE_NOT_EXIST 2251 //µ±Ç°Í¨µÀ²»´æÔÚÉ豸 +#define NET_DVR_ERROR_ADJUSTING_RESOLUTION 2252 //ÏȹرÕÉãÏñ»úµÄ²Ã¼ô£¬ÔÙµ÷Õû·Ö±æÂÊ +#define NET_DVR_SSD_FILE_SYSTEM_IS_UPGRADING 2253 //SSDÎļþϵͳÕýÔÚÉý¼¶ +#define NET_DVR_SSD_FILE_SYSTEM_IS_FORMAT 2254 //SSDÕýÔÚ¸ñʽ»¯ +#define NET_DVR_CHANNEL_IS_CONNECTING 2255 //µ±Ç°Í¨µÀÕýÔÚÁ¬½Ó + +#define NET_DVR_CHANNEL_STREAM_TYPE_NOT_SUPPORT 2257 //µ±Ç°Í¨µÀÂëÁ÷ÀàÐͲ»Ö§³Ö +#define NET_DVR_CHANNEL_USERNAME_NOT_EXIST 2258 //µ±Ç°Í¨µÀÓû§Ãû²»´æÔÚ +#define NET_DVR_CHANNEL_ACCESS_PARAM_FAILURE 2259 //µ±Ç°Í¨µÀ»ñÈ¡²ÎÊýʧ°Ü +#define NET_DVR_CHANNEL_GET_STREAM_FAILURE 2260 //µ±Ç°Í¨µÀÈ¡Á÷ʧ°Ü +#define NET_DVR_CHANNEL_RISK_PASSWORD 2261 //µ±Ç°Í¨µÀÃÜÂëΪ·çÏÕÃÜÂë + +#define NET_DVR_NO_SUPPORT_DELETE_STRANGER_LIB 2262 //²»Ö§³Öɾ³ýÄ°ÉúÈË¿â +#define NET_DVR_NO_SUPPORT_CREATE_STRANGER_LIB 2263 //²»Ö§³Ö´´½¨Ä°ÉúÈË¿â + +#define NET_DVR_NETWORK_PORT_CONFLICT 2264 //ÍøÂçÅäÖö˿ڳåÍ» +#define NET_DVR_TRANSCODE_NO_RESOURCES 2265 //תÂë×ÊÔ´²»×ã +#define NET_DVR_SSD_FILE_SYSTEM_ERROR 2266 //SSDÎļþϵͳ´íÎó +#define NET_DVR_INSUFFICIENT_SSD__FOR_FPD 2267 //ÓÃÓÚÈËԱƵ´ÎÒµÎñµÄSSDÈÝÁ¿²»¹» +#define NET_DVR_ASSOCIATED_FACELIB_OVER_LIMIT 2268 //¹ØÁªÈËÁ³¿âÒÑ´ïÉÏÏÞ +#define NET_DVR_NEED_DELETE_DIGITAL_CHANNEL 2269 //Ðèɾ³ýÊý×ÖͨµÀ +#define NET_DVR_ERR_FALL_DOWN_RULENUM_LIMIT 2270 //ÈËÔ±µ¹µØ¹æÔòÊýÉÏÏÞ +#define NET_DVR_ERR_VIOLENT_MOTION_RULENUM_LIMIT 2271 //¾çÁÒÔ˶¯¹æÔòÊýÉÏÏÞ +#define NET_DVR_UPGRADE_ENGINE_VERSION_MISMATCH 2272 //Éý¼¶°üÒýÇæ°æ±¾²»Æ¥Åä(Éý¼¶¹ý³ÌÖзµ»Ø) + +//ÈȳÉÏñ²úÏßÏà¹Ø´íÎóÂ루3001 - 3500£© +#define NET_DVR_ERR_NOTSUPPORT_DEICING 3001 //É豸µ±Ç°×´Ì¬²»Ö§³Ö³ý±ù¹¦ÄÜ£¨Ö»ÔÚPOE+¡¢AC24V¡¢DC12V¹©µçÏÂÖ§³Ö³ý±ù¹¦ÄÜ£© +#define NET_DVR_ERR_THERMENABLE_CLOSE 3002 //²âι¦ÄÜ×ÜʹÄÜ먦Æô¡£(¼´NET_DVR_THERMOMETRY_BASICPARAMʹÄÜ먦Æô) +#define NET_DVR_ERR_NOTMEET_DEICING 3003 //µ±Ç°¿ÕǻζȲ»Âú×ãÊÖ¶¯³ý±ù¿ªÆôÌõ¼þ£¨Ðè¿ÕǻζÈСÓÚ30¶È²Å¿É¿ªÆô£© +#define NET_DVR_ERR_PANORAMIC_LIMIT_OPERATED 3004 //È«¾°µØͼºÍÏÞλ²»¿Éͬʱ²Ù×÷ +#define NET_DVR_ERR_SMARTH264_ROI_OPERATED 3005 //SmartH264ºÍROI²»¿Éͬʱ²Ù×÷ +#define NET_DVR_ERR_RULENUM_LIMIT 3006 //¹æÔòÊýÉÏÏÞ +#define NET_DVR_ERR_LASER_DEICING_OPERATED 3007 //¼¤¹âÒÔ¼°³ý±ù¹¦Äܲ»¿Éͬʱ²Ù×÷ +#define NET_DVR_ERR_OFFDIGITALZOOM_OR_MINZOOMLIMIT 3008 //ÇëÏȹرÕÊý¾Ý±ä±¶¹¦ÄÜ»ò±ä±¶ÏÞÖÆÉèÖÃΪ×îСֵ¡£µ±Ö´ÐÐÑÌ»ð¼ì²â¡¢ÐÐΪ·ÖÎö¡¢´¬Ö»¼ì²â¡¢»µµã½ÃÕý¡¢²âΡ¢ÑÌ»ðÆÁ±Î¹¦ÄÜʱ£¬ÈôûÓйرÕÊý¾Ý±ä±¶»òÕ߱䱶ÏÞÖÆûÓÐÉèÖÃΪ×îСֵʱ£¬½«»áÌáʾ¸Ã´íÎóÂë¡£ +#define NET_DVR_ERR_FIREWAITING 3009 //É豸ÔÆ̨ÕýÔÚ»ðµãµÈ´ýÖÐ +#define NET_DVR_SYNCHRONIZEFOV_ERROR 3010 //ͬ²½ÊÓ³¡½Ç´íÎó +#define NET_DVR_CERTIFICATE_VALIDATION_ERROR 3011 //Ö¤ÊéÑéÖ¤²»Í¨¹ý +#define NET_DVR_CERTIFICATES_NUM_EXCEED_ERROR 3012 //Ö¤Êé¸öÊý³¬¹ýÉÏÏÞ +#define NET_DVR_RULE_SHIELDMASK_CONFLICT_ERROR 3013 //¹æÔòÇøÓòÓëÆÁ±ÎÇøÓò³åÍ» +#define NET_DVR_MOTOR_PREHEATING_ERROR 3014 //µç»úÔ¤ÈÈÖÐ +#define NET_DVR_PT_DEICING_ERROR 3015 //ÔÆ̨³ý±ùÖÐ + +//Ç°¶Ë²úÆ·Ïß´íÎóÂ루3501-4000£© +#define NET_DVR_ERR_NO_SAFETY_HELMET_REGION 3501 //δÅäÖð²È«Ã±¼ì²âÇøÓò +#define NET_DVR_ERR_UNCLOSED_SAFETY_HELMET 3502 //δ¹Ø±Õ°²È«Ã±¼ì²âʹÄÜ +#define NET_DVR_ERR_MUX_RECV_STATE 3503 //¶à·¸´ÓýÓÊÕ״̬Òì³£ +#define NET_DVR_UPLOAD_HBDLIBID_ERROR 3504 // ÉÏ´«ÈËÌå¿âID£¨HBDID or customHBDID£©´íÎó +#define NET_DVR_NOTSUPPORT_SMALLER_RATIOS 3505 // ±¶ÂÊСÓÚ1±¶Ê±²»Ö§³Ö¹¦ÄÜÅäÖÃ,Çëµ÷¸ß±¶ÂÊ +#define NET_ERR_ACCOUNT_NOT_ACTIVED 3506// Óû§ÕË»§Î´¼¤»î£¬ÅŲ齨Ò飺ÇëÏȵǼÕË»§Ð޸ijõʼÃÜÂ룬ÔÙ³¢ÊÔ²Ù×÷¡£ + +#define NET_ERR_NPQ_BASE_INDEX 8000 //NPQ¿â´íÎóÂë +#define NET_ERR_NPQ_PARAM (NET_ERR_NPQ_BASE_INDEX + 1) //NPQ¿â²ÎÊýÓÐÎó +#define NET_ERR_NPQ_SYSTEM (NET_ERR_NPQ_BASE_INDEX + 2) //NPQ¿â²Ù×÷ϵͳµ÷ÓôíÎó(°üÀ¨×ÊÔ´ÉêÇëʧ°Ü»òÄÚ²¿´íÎóµÈ£© +#define NET_ERR_NPQ_GENRAL (NET_ERR_NPQ_BASE_INDEX + 3) //NPQ¿âÄÚ²¿Í¨ÓôíÎó +#define NET_ERR_NPQ_PRECONDITION (NET_ERR_NPQ_BASE_INDEX + 4) //NPQ¿âµ÷ÓÃ˳Ðò´íÎó +#define NET_ERR_NPQ_NOTSUPPORT (NET_ERR_NPQ_BASE_INDEX + 5) //NPQ¿â¹¦Äܲ»Ö§³Ö + +#define NET_ERR_NPQ_NOTCALLBACK (NET_ERR_NPQ_BASE_INDEX + 100) //Êý¾ÝûÓлص÷ÉÏÀ´ +#define NET_ERR_NPQ_LOADLIB (NET_ERR_NPQ_BASE_INDEX + 101) //NPQ¿â¼ÓÔØʧ°Ü +#define NET_ERR_NPQ_STEAM_CLOSE (NET_ERR_NPQ_BASE_INDEX + 104) //±¾Â·ÂëÁ÷NPQ¹¦ÄÜ먦Æô +#define NET_ERR_NPQ_MAX_LINK (NET_ERR_NPQ_BASE_INDEX + 110) //NPQÈ¡Á÷·Êý´ïµ½ÉÏÏÞ +#define NET_ERR_NPQ_STREAM_CFG (NET_ERR_NPQ_BASE_INDEX + 111) //±àÂë²ÎÊý´æÔÚ³åÍ»ÅäÖà +#define NET_ERR_NPQ_PLAYBACK_OVERSPEED (NET_ERR_NPQ_BASE_INDEX + 112) //NPQ»Ø·Å±¶ÂÊ´ïµ½ÉÏÏÞ +#define NET_ERR_NPQ_PLAYBACK_BELOWSPEED (NET_ERR_NPQ_BASE_INDEX + 113) //NPQ»Ø·Å±¶ÂÊ´ïµ½ÏÂÏÞ + +#define NET_EZVIZ_P2P_BASE_INDEX 8300 //өʯP2P×é¼þ´íÎóÂë +#define NET_DVR_EZVIZ_P2P_REGISTER_ERROR (NET_EZVIZ_P2P_BASE_INDEX + 1) +#define NET_DVR_EZVIZ_P2P_LOGIN_2C_ERROR (NET_EZVIZ_P2P_BASE_INDEX + 2) +#define NET_DVR_EZVIZ_P2P_LOGIN_2B_ERROR (NET_EZVIZ_P2P_BASE_INDEX + 3) +#define NET_DVR_EZVIZ_P2P_BUILDLINK_ERROR (NET_EZVIZ_P2P_BASE_INDEX + 4) +#define NET_DVR_EZVIZ_P2P_PORTMAPPING_ERROR (NET_EZVIZ_P2P_BASE_INDEX + 5) +#define NET_DVR_EZVIZ_P2P_COULDNT_RESOLVE_HOST (NET_EZVIZ_P2P_BASE_INDEX + 6) //P2PCLOUD_ER_COULDNT_RESOLVE_HOST 1006 +#define NET_DVR_EZVIZ_P2P_COULDNT_CONNECT (NET_EZVIZ_P2P_BASE_INDEX + 7) //P2PCLOUD_ER_COULDNT_CONNECT 1007 +#define NET_DVR_EZVIZ_P2P_OPERATION_TIMEOUT (NET_EZVIZ_P2P_BASE_INDEX + 8) //P2PCLOUD_ER_OPERATION_TIMEOUT 1028 +#define NET_DVR_EZVIZ_P2P_NOT_INITIALIZED (NET_EZVIZ_P2P_BASE_INDEX + 9) //P2PCLOUD_ER_NOT_INITIALIZED 2001 +#define NET_DVR_EZVIZ_P2P_INVALID_ARG (NET_EZVIZ_P2P_BASE_INDEX + 10) //P2PCLOUD_ER_INVALID_ARG 2002 +#define NET_DVR_EZVIZ_P2P_EXCEED_MAX_SERVICE (NET_EZVIZ_P2P_BASE_INDEX + 11) //P2PCLOUD_ER_EXCEED_MAX_SERVICE 2003 +#define NET_DVR_EZVIZ_P2P_TOKEN_NOT_EXIST (NET_EZVIZ_P2P_BASE_INDEX + 12) //P2PCLOUD_ER_TOKEN_NOT_EXIST 2004 +#define NET_DVR_EZVIZ_P2P_DISCONNECTED (NET_EZVIZ_P2P_BASE_INDEX + 13) //P2PCLOUD_ER_DISCONNECTED 2005 +#define NET_DVR_EZVIZ_P2P_RELAY_ADDR_NOT_EXIST (NET_EZVIZ_P2P_BASE_INDEX + 14) //P2PCLOUD_ER_RELAY_ADDR_NOT_EXIST 2006 +#define NET_DVR_EZVIZ_P2P_DEV_NOT_ONLINE (NET_EZVIZ_P2P_BASE_INDEX + 15) //P2PCLOUD_ER_DEV_NOT_ONLINE 3121 +#define NET_DVR_EZVIZ_P2P_DEV_CONNECT_EXCEED (NET_EZVIZ_P2P_BASE_INDEX + 16) //P2PCLOUD_ER_DEV_CONNECT_EXCEED 3123 +#define NET_DVR_EZVIZ_P2P_DEV_CONNECT_FAILED (NET_EZVIZ_P2P_BASE_INDEX + 17) //P2PCLOUD_ER_DEV_CONNECT_FAILED 3209 +#define NET_DVR_EZVIZ_P2P_DEV_RECV_TIMEOUT (NET_EZVIZ_P2P_BASE_INDEX + 18) //P2PCLOUD_ER_DEV_RECV_TIMEOUT 3213 +#define NET_DVR_EZVIZ_P2P_USER_FORCE_STOP (NET_EZVIZ_P2P_BASE_INDEX + 19) //P2PCLOUD_ER_USER_FORCE_STOP 3216 +#define NET_DVR_EZVIZ_P2P_NO_PERMISSION (NET_EZVIZ_P2P_BASE_INDEX + 20) //P2PCLOUD_ER_NO_PERMISSION 3255 +#define NET_DVR_EZVIZ_P2P_DEV_PU_NOT_FOUND (NET_EZVIZ_P2P_BASE_INDEX + 21) //P2PCLOUD_ER_DEV_PU_NOT_FOUND 3297 +#define NET_DVR_EZVIZ_P2P_DEV_CONN_NOLONGER_AVAIL (NET_EZVIZ_P2P_BASE_INDEX + 22) //P2PCLOUD_ER_DEV_CONN_NOLONGER_AVAIL 3351 +#define NET_DVR_EZVIZ_P2P_DEV_NOT_LISTENING (NET_EZVIZ_P2P_BASE_INDEX + 23) //P2PCLOUD_ER_DEV_NOT_LISTENING 3610 +#define NET_DVR_EZVIZ_P2P_DEV_TUNNEL_SOCKET_LIMITED (NET_EZVIZ_P2P_BASE_INDEX + 24) //P2PCLOUD_ER_DEV_TUNNEL_SOCKET_LIMITED 3612 +#define NET_DVR_EZVIZ_P2P_FAIL_CREATE_THREAD (NET_EZVIZ_P2P_BASE_INDEX + 25) //TUNNEL_ER_FAIL_CREATE_THREAD 4001 +#define NET_DVR_EZVIZ_P2P_FAIL_ALLOC_BUFFERS (NET_EZVIZ_P2P_BASE_INDEX + 26) //P2PCLOUD_ER_FAIL_ALLOC_BUFFERS 4002 +#define NET_DVR_EZVIZ_P2P_FAIL_CREATE_SOCKET (NET_EZVIZ_P2P_BASE_INDEX + 27) //P2PCLOUD_ER_FAIL_CREATE_SOCKET 4003 +#define NET_DVR_EZVIZ_P2P_BIND_LOCAL_SERVICE (NET_EZVIZ_P2P_BASE_INDEX + 28) //P2PCLOUD_ER_BIND_LOCAL_SERVICE 4004 +#define NET_DVR_EZVIZ_P2P_LISTEN_LOCAL_SERVICE (NET_EZVIZ_P2P_BASE_INDEX + 29) //P2PCLOUD_ER_LISTEN_LOCAL_SERVICE 4005 +#define NET_DVR_EZVIZ_P2P_SVR_RSP_BAD (NET_EZVIZ_P2P_BASE_INDEX + 30) //P2PCLOUD_ER_SVR_RSP_BAD 5001 +#define NET_DVR_EZVIZ_P2P_SVR_RSP_INVALID (NET_EZVIZ_P2P_BASE_INDEX + 31) //P2PCLOUD_ER_SVR_RSP_INVALID 5002 +#define NET_DVR_EZVIZ_P2P_SVR_LOGIN_FAILED (NET_EZVIZ_P2P_BASE_INDEX + 32) //P2PCLOUD_ER_SVR_LOGIN_FAILED 5003 +#define NET_DVR_EZVIZ_P2P_SVR_TOKEN_EXPIRED (NET_EZVIZ_P2P_BASE_INDEX + 33) //P2PCLOUD_ER_SVR_TOKEN_EXPIRED 5004 +#define NET_DVR_EZVIZ_P2P_SVR_DEV_NOT_BELONG_TO_USER (NET_EZVIZ_P2P_BASE_INDEX + 34) //P2PCLOUD_ER_SVR_DEV_NOT_BELONG_TO_USER 5005 + + +//´«ÏÔ´íÎóÂë 8501~9500 +#define NET_ERR_UPGRADE_PROG_ERR 8501 //³ÌÐòÖ´Ðгö´í +#define NET_ERR_UPGRADE_NO_DEVICE 8502 //ûÓÐÉ豸(Ö¸LED¿ØÖÆÆ÷ûÓнӽÓÊÕ¿¨) +#define NET_ERR_UPGRADE_NO_FILE 8503 //ûÓÐÕÒµ½Éý¼¶Îļþ +#define NET_ERR_UPGRADE_DATA_ERROR 8504 //Éý¼¶ÎļþÊý¾Ý²»¼æÈÝ +#define NET_ERR_UPGRADE_LINK_SERVER_ERR 8505 //Óë·þÎñÆ÷Á¬½Óʧ°Ü +#define NET_ERR_UPGRADE_OEMCODE_NOMATCH 8506 //oemCode²»Æ¥Åä +#define NET_ERR_UPGRADE_FLASH_NOENOUGH 8507 //flash²»×ã +#define NET_ERR_UPGRADE_RAM_NOENOUGH 8508 //RAM²»×ã +#define NET_ERR_UPGRADE_DSPRAM_NOENOUGH 8509 //DSP RAM²»×ã +#define NET_ERR_NOT_SUPPORT_CHECK 8510 //¸ÃÆÁÄ»ÐͺŲ»Ö§³ÖУÕý +#define NET_ERR_LED_DEVICE_BUSY_CHECK 8511 //LEDÉ豸棨ÕýÔÚУÕý£© +#define NET_ERR_DEVICE_MEM_NOT_ENOUGH 8512 //É豸ÄÚ´æ²»×ã +#define NET_ERR_CHECK_PARAM 8513 //УÕý²ÎÊý´íÎó +#define NET_ERR_RESOLUTION_OVER_LIMIT 8514 //ÊäÈë·Ö±æÂʳ¬¹ýÏÞÖÆ +#define NET_ERR_NO_CUSTOM_BASE 8515 //ÎÞ×Ô¶¨Òåµ×ͼ +#define NET_ERR_PRIORITY_LOWER 8516 //ÓÅÏȼ¶µÍÓÚµ±Ç°Ä£Ê½ +#define NET_ERR_SEND_MESSAGE_EXCEPT 8517 //ÏûÏ¢·¢ËÍÒì³£ +#define NET_ERR_SENDCARD_UPGRADING 8518 //·¢ËÍ¿¨Éý¼¶ÖÐ +#define NET_ERR_NO_WIRELESS_NETCARD 8519 //δ²åÈëÎÞÏßÍø¿¨ +#define NET_ERR_LOAD_FS_FAIL 8520 //´ÓÆÁÄ»¼ÓÔØʧ°Ü +#define NET_ERR_FLASH_UNSTORAGE_RECCARD 8521 //FlashÖÐδ´æ´¢½ÓÊÕ¿¨²ÎÊý +#define NET_ERR_NOT_SUPPORT_SINGLE_NETWORKCARD_AGGREGA 8522 //²»Ö§³Öµ¥Íø¿¨¾ÛºÏ +#define NET_ERR_DISPLAYRESOLUTION_LESSTHAN_SMALLESTRESOLUTION 8523 //ÏÔʾ·Ö±æÂÊСÓÚ×îС·Ö±æÂÊ +#define NET_ERR_NOT_SUPPORT_LOCAL_SOURCE_DRAG_MORE 8524 //²»Ö§³Ö±¾µØÔ´Ò»Í϶à +#define NET_ERR_CANCEL_CURRENT_LED_AREA 8525 //ÇëÏÈÈ¡ÏûLEDÇøÓò +#define NET_ERR_LED_OUT_ASSOCIATED_AREA 8526 //LEDδÔÚ¹ØÁªÇøÓò +#define NET_ERR_MAX_VIRTUAL_LED_PICTURE_SIZE 8527 //ÐéÄâLEDͼƬ´óС³¬ÏÞ +#define NET_ERR_DEVICE_CTRLED_BY_REMOTER 8528 //É豸µ±Ç°ÊÜÒ£¿ØÆ÷¿ØÖÆ +/*******************È«¾Ö´íÎóÂë end**********************/ + +/************************************************* +NET_DVR_IsSupport()·µ»ØÖµ +1£­9λ·Ö±ð±íʾÒÔÏÂÐÅÏ¢£¨Î»ÓëÊÇTRUE)±íʾ֧³Ö£» +**************************************************/ +#define NET_DVR_SUPPORT_DDRAW 0x01//Ö§³ÖDIRECTDRAW£¬Èç¹û²»Ö§³Ö£¬Ôò²¥·ÅÆ÷²»Äܹ¤×÷£» +#define NET_DVR_SUPPORT_BLT 0x02//ÏÔ¿¨Ö§³ÖBLT²Ù×÷£¬Èç¹û²»Ö§³Ö£¬Ôò²¥·ÅÆ÷²»Äܹ¤×÷£» +#define NET_DVR_SUPPORT_BLTFOURCC 0x04//ÏÔ¿¨BLTÖ§³ÖÑÕɫת»»£¬Èç¹û²»Ö§³Ö£¬²¥·ÅÆ÷»áÓÃÈí¼þ·½·¨×÷RGBת»»£» +#define NET_DVR_SUPPORT_BLTSHRINKX 0x08//ÏÔ¿¨BLTÖ§³ÖXÖáËõС£»Èç¹û²»Ö§³Ö£¬ÏµÍ³»áÓÃÈí¼þ·½·¨×ª»»£» +#define NET_DVR_SUPPORT_BLTSHRINKY 0x10//ÏÔ¿¨BLTÖ§³ÖYÖáËõС£»Èç¹û²»Ö§³Ö£¬ÏµÍ³»áÓÃÈí¼þ·½·¨×ª»»£» +#define NET_DVR_SUPPORT_BLTSTRETCHX 0x20//ÏÔ¿¨BLTÖ§³ÖXÖá·Å´ó£»Èç¹û²»Ö§³Ö£¬ÏµÍ³»áÓÃÈí¼þ·½·¨×ª»»£» +#define NET_DVR_SUPPORT_BLTSTRETCHY 0x40//ÏÔ¿¨BLTÖ§³ÖYÖá·Å´ó£»Èç¹û²»Ö§³Ö£¬ÏµÍ³»áÓÃÈí¼þ·½·¨×ª»»£» +#define NET_DVR_SUPPORT_SSE 0x80//CPUÖ§³ÖSSEÖ¸ÁIntel Pentium3ÒÔÉÏÖ§³ÖSSEÖ¸Á +#define NET_DVR_SUPPORT_MMX 0x100//CPUÖ§³ÖMMXÖ¸Á£¬Intel Pentium3ÒÔÉÏÖ§³ÖSSEÖ¸Á + +/**********************ÔÆ̨¿ØÖÆÃüÁî begin*************************/ +#define LIGHT_PWRON 2 /* ½ÓͨµÆ¹âµçÔ´ */ +#define WIPER_PWRON 3 /* ½ÓͨÓêË¢¿ª¹Ø */ +#define FAN_PWRON 4 /* ½Óͨ·çÉÈ¿ª¹Ø */ +#define HEATER_PWRON 5 /* ½Óͨ¼ÓÈÈÆ÷¿ª¹Ø */ +#define AUX_PWRON1 6 /* ½Óͨ¸¨ÖúÉ豸¿ª¹Ø */ +#define AUX_PWRON2 7 /* ½Óͨ¸¨ÖúÉ豸¿ª¹Ø */ +#define SET_PRESET 8 /* ÉèÖÃÔ¤Öõã */ +#define CLE_PRESET 9 /* Çå³ýÔ¤Öõã */ + +#define ZOOM_IN 11 /* ½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó) */ +#define ZOOM_OUT 12 /* ½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС) */ +#define FOCUS_NEAR 13 /* ½¹µãÒÔËÙ¶ÈSSÇ°µ÷ */ +#define FOCUS_FAR 14 /* ½¹µãÒÔËÙ¶ÈSSºóµ÷ */ +#define IRIS_OPEN 15 /* ¹âȦÒÔËÙ¶ÈSSÀ©´ó */ +#define IRIS_CLOSE 16 /* ¹âȦÒÔËÙ¶ÈSSËõС */ + +#define TILT_UP 21 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑö */ +#define TILT_DOWN 22 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ© */ +#define PAN_LEFT 23 /* ÔÆ̨ÒÔSSµÄËÙ¶È×óת */ +#define PAN_RIGHT 24 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÓÒת */ +#define UP_LEFT 25 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑöºÍ×óת */ +#define UP_RIGHT 26 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑöºÍÓÒת */ +#define DOWN_LEFT 27 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©ºÍ×óת */ +#define DOWN_RIGHT 28 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©ºÍÓÒת */ +#define PAN_AUTO 29 /* ÔÆ̨ÒÔSSµÄËÙ¶È×óÓÒ×Ô¶¯É¨Ãè */ + +#define FILL_PRE_SEQ 30 /* ½«Ô¤Öõã¼ÓÈëѲº½ÐòÁÐ */ +#define SET_SEQ_DWELL 31 /* ÉèÖÃѲº½µãÍ£¶Ùʱ¼ä */ +#define SET_SEQ_SPEED 32 /* ÉèÖÃѲº½ËÙ¶È */ +#define CLE_PRE_SEQ 33 /* ½«Ô¤Öõã´ÓѲº½ÐòÁÐÖÐɾ³ý */ +#define STA_MEM_CRUISE 34 /* ¿ªÊ¼¼Ç¼¹ì¼£ */ +#define STO_MEM_CRUISE 35 /* Í£Ö¹¼Ç¼¹ì¼£ */ +#define RUN_CRUISE 36 /* ¿ªÊ¼¹ì¼£ */ +#define RUN_SEQ 37 /* ¿ªÊ¼Ñ²º½ */ +#define STOP_SEQ 38 /* ֹͣѲº½ */ +#define GOTO_PRESET 39 /* ¿ìÇòתµ½Ô¤Öõã */ +//dacͨ¹ý˽ÓÐЭÒé½ÓÈëNVR£¬NVRͨ¹ýOnvifЭÒé½ÓÈëÏà»úʱ¡£ÓÉÓÚ˽ÓÐЭÒéѲº½µãλÏ·¢Ëٶȡ¢Ê±¼äµÈΪµ¥¸öÃüÁ +//OnvifΪÅúÁ¿Ï·¢ËùÓеãλ£¬Ë½ÓÐЭÒéÖÐÎÞѲº½µãλÏ·¢µÄ¿ªÊ¼ºÍ½áÊø£¬µ¼ÖÂNVRÎÞ·¨ÅжϺÎʱ×éOnvif±¨ÎĸøÇ°¶ËÉ豸 +#define SET_SEQ_START 41 /* IP¿ìÇò£¬¿ªÊ¼ÉèÖÃѲº½*/ +#define SET_SEQ_END 42 /* IP¿ìÇò£¬½áÊøÉèÖÃѲº½*/ + +#define DEL_SEQ 43 /* ɾ³ýѲº½Â·¾¶ */ +#define STOP_CRUISE 44 /* Í£Ö¹¹ì¼£ */ +#define DELETE_CRUISE 45 /* ɾ³ýµ¥Ìõ¹ì¼£ */ +#define DELETE_ALL_CRUISE 46/* ɾ³ýËùÓй켣 */ + +#define PAN_CIRCLE 50 /* ÔÆ̨ÒÔSSµÄËÙ¶È×Ô¶¯Ô²ÖÜɨÃè */ +#define DRAG_PTZ 51 /* Í϶¯PTZ */ +#define LINEAR_SCAN 52 /* ÇøÓòɨÃè */ //2014-03-15 +#define CLE_ALL_PRESET 53 /* Ô¤ÖõãÈ«²¿Çå³ý */ +#define CLE_ALL_SEQ 54 /* Ѳº½È«²¿Çå³ý */ +#define CLE_ALL_CRUISE 55 /* ¹ì¼£È«²¿Çå³ý */ + +#define POPUP_MENU 56 /* ÏÔʾ²Ù×÷²Ëµ¥ */ + +#define TILT_DOWN_ZOOM_IN 58 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó) */ +#define TILT_DOWN_ZOOM_OUT 59 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС) */ +#define PAN_LEFT_ZOOM_IN 60 /* ÔÆ̨ÒÔSSµÄËÙ¶È×óת&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó)*/ +#define PAN_LEFT_ZOOM_OUT 61 /* ÔÆ̨ÒÔSSµÄËÙ¶È×óת&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС)*/ +#define PAN_RIGHT_ZOOM_IN 62 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÓÒת&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó) */ +#define PAN_RIGHT_ZOOM_OUT 63 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÓÒת&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС) */ +#define UP_LEFT_ZOOM_IN 64 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑöºÍ×óת&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó)*/ +#define UP_LEFT_ZOOM_OUT 65 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑöºÍ×óת&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС)*/ +#define UP_RIGHT_ZOOM_IN 66 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑöºÍÓÒת&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó)*/ +#define UP_RIGHT_ZOOM_OUT 67 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑöºÍÓÒת&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС)*/ +#define DOWN_LEFT_ZOOM_IN 68 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©ºÍ×óת&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó) */ +#define DOWN_LEFT_ZOOM_OUT 69 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©ºÍ×óת&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС) */ +#define DOWN_RIGHT_ZOOM_IN 70 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©ºÍÓÒת&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó) */ +#define DOWN_RIGHT_ZOOM_OUT 71 /* ÔÆ̨ÒÔSSµÄËÙ¶Èϸ©ºÍÓÒת&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС) */ +#define TILT_UP_ZOOM_IN 72 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑö&&½¹¾àÒÔËÙ¶ÈSS±ä´ó(±¶Âʱä´ó) */ +#define TILT_UP_ZOOM_OUT 73 /* ÔÆ̨ÒÔSSµÄËÙ¶ÈÉÏÑö&&½¹¾àÒÔËÙ¶ÈSS±äС(±¶ÂʱäС) */ +/**********************ÔÆ̨¿ØÖÆÃüÁî end*************************/ + +#define DVR_VEHICLE_CONTROL_LIST 0x1 //³µÁ¾Ãûµ¥Êý¾ÝÀàÐÍ(·¢Ë͵ÄÊý¾ÝÀàÐÍ)2013-11-04 + + +/************************************************* +»Ø·Åʱ²¥·Å¿ØÖÆÃüÁîºê¶¨Òå +NET_DVR_PlayBackControl +NET_DVR_PlayControlLocDisplay +NET_DVR_DecPlayBackCtrlµÄºê¶¨Òå +¾ßÌåÖ§³Ö²é¿´º¯Êý˵Ã÷ºÍ´úÂë +**************************************************/ +#define NET_DVR_PLAYSTART 1//¿ªÊ¼²¥·Å +#define NET_DVR_PLAYSTOP 2//Í£Ö¹²¥·Å +#define NET_DVR_PLAYPAUSE 3//ÔÝÍ£²¥·Å +#define NET_DVR_PLAYRESTART 4//»Ö¸´²¥·Å +#define NET_DVR_PLAYFAST 5//¿ì·Å +#define NET_DVR_PLAYSLOW 6//Âý·Å +#define NET_DVR_PLAYNORMAL 7//Õý³£ËÙ¶È +#define NET_DVR_PLAYFRAME 8//µ¥Ö¡·Å +#define NET_DVR_PLAYSTARTAUDIO 9//´ò¿ªÉùÒô +#define NET_DVR_PLAYSTOPAUDIO 10//¹Ø±ÕÉùÒô +#define NET_DVR_PLAYAUDIOVOLUME 11//µ÷½ÚÒôÁ¿ +#define NET_DVR_PLAYSETPOS 12//¸Ä±äÎļþ»Ø·ÅµÄ½ø¶È +#define NET_DVR_PLAYGETPOS 13//»ñÈ¡Îļþ»Ø·ÅµÄ½ø¶È +#define NET_DVR_PLAYGETTIME 14//»ñÈ¡µ±Ç°ÒѾ­²¥·ÅµÄʱ¼ä(°´Îļþ»Ø·ÅµÄʱºòÓÐЧ) +#define NET_DVR_PLAYGETFRAME 15//»ñÈ¡µ±Ç°ÒѾ­²¥·ÅµÄÖ¡Êý(°´Îļþ»Ø·ÅµÄʱºòÓÐЧ) +#define NET_DVR_GETTOTALFRAMES 16//»ñÈ¡µ±Ç°²¥·ÅÎļþ×ܵÄÖ¡Êý(°´Îļþ»Ø·ÅµÄʱºòÓÐЧ) +#define NET_DVR_GETTOTALTIME 17//»ñÈ¡µ±Ç°²¥·ÅÎļþ×ܵÄʱ¼ä(°´Îļþ»Ø·ÅµÄʱºòÓÐЧ) +#define NET_DVR_THROWBFRAME 20//¶ªBÖ¡ +#define NET_DVR_SETSPEED 24//ÉèÖÃÂëÁ÷ËÙ¶È +#define NET_DVR_KEEPALIVE 25//±£³ÖÓëÉ豸µÄÐÄÌø(Èç¹û»Øµ÷×èÈû£¬½¨Òé2Ãë·¢ËÍÒ»´Î) +#define NET_DVR_PLAYSETTIME 26//°´¾ø¶Ôʱ¼ä¶¨Î» +#define NET_DVR_PLAYGETTOTALLEN 27//»ñÈ¡°´Ê±¼ä»Ø·Å¶ÔӦʱ¼ä¶ÎÄÚµÄËùÓÐÎļþµÄ×ܳ¤¶È +#define NET_DVR_PLAYSETTIME_V50 28//°´¾ø¶Ôʱ¼ä¶¨Î»(Ö§³ÖʱÇøÀ©Õ¹) +#define NET_DVR_PLAY_FORWARD 29 //µ¹·ÅÇл»ÎªÕý·Å +#define NET_DVR_PLAY_REVERSE 30 //Õý·ÅÇл»Îªµ¹·Å +#define NET_DVR_SET_DECODEFFRAMETYPE 31 +#define NET_DVR_SET_TRANS_TYPE 32 //ÉèÖÃתÂë¸ñʽ +#define NET_DVR_PLAY_CONVERT 33 //»Ø·ÅתÂë +#define NET_DVR_START_DRAWFRAME 34 //¿ªÊ¼³éÖ¡»Ø·Å +#define NET_DVR_STOP_DRAWFRAME 35 //Í£Ö¹³éÖ¡»Ø·Å +#define NET_DVR_CHANGEWNDRESOLUTION 36 //´°¿Ú´óС¸Ä±ä£¬Í¨Öª²¥·Å¿â +#define NET_DVR_RESETBUFFER 37 //Çå¿Õ¾ØÕó½âÂ뻺³åÇø£¨Ô¶³Ì»Ø·ÅÎļþ£© +#define NET_DVR_VOD_DRAG_ING 38 //»Ø·ÅÍ϶¯ÖÐ +#define NET_DVR_VOD_DRAG_END 39 //»Ø·ÅÍ϶¯½áÊø +#define NET_DVR_VOD_RESET_PLAYTIME 40 //ÖØÉè²¥·Åʱ¼ä + + +#define PLAYM4_DECODE_NORMAIL 0 //Õý³£½âÂë +#define PLAYM4_DECODE_KEY_FRAME 1 //Ö»½âIÖ¡ +#define PLAYM4_DECODE_NONE 2 //È«²»½â +#define PLAYM4_DECODE_TEMPORAL_LAYER_0 3 //½â1/2 +#define PLAYM4_DECODE_TEMPORAL_LAYER_1 4 //½â1/4 + + +//Ô¶³Ì°´¼ü¶¨ÒåÈçÏ£º +/* key value send to CONFIG program */ +#define KEY_CODE_1 1 +#define KEY_CODE_2 2 +#define KEY_CODE_3 3 +#define KEY_CODE_4 4 +#define KEY_CODE_5 5 +#define KEY_CODE_6 6 +#define KEY_CODE_7 7 +#define KEY_CODE_8 8 +#define KEY_CODE_9 9 +#define KEY_CODE_0 10 +#define KEY_CODE_POWER 11 +#define KEY_CODE_MENU 12 +#define KEY_CODE_ENTER 13 +#define KEY_CODE_CANCEL 14 +#define KEY_CODE_UP 15 +#define KEY_CODE_DOWN 16 +#define KEY_CODE_LEFT 17 +#define KEY_CODE_RIGHT 18 +#define KEY_CODE_EDIT 19 +#define KEY_CODE_ADD 20 +#define KEY_CODE_MINUS 21 +#define KEY_CODE_PLAY 22 +#define KEY_CODE_REC 23 +#define KEY_CODE_PAN 24 +#define KEY_CODE_M 25 +#define KEY_CODE_A 26 +#define KEY_CODE_F1 27 +#define KEY_CODE_F2 28 + +/* for PTZ control */ +#define KEY_PTZ_UP_START KEY_CODE_UP +#define KEY_PTZ_UP_STOP 32 + +#define KEY_PTZ_DOWN_START KEY_CODE_DOWN +#define KEY_PTZ_DOWN_STOP 33 + +#define KEY_PTZ_LEFT_START KEY_CODE_LEFT +#define KEY_PTZ_LEFT_STOP 34 + +#define KEY_PTZ_RIGHT_START KEY_CODE_RIGHT +#define KEY_PTZ_RIGHT_STOP 35 + +#define KEY_PTZ_AP1_START KEY_CODE_EDIT /*¹âȦ+*/ +#define KEY_PTZ_AP1_STOP 36 + +#define KEY_PTZ_AP2_START KEY_CODE_PAN /*¹âȦ-*/ +#define KEY_PTZ_AP2_STOP 37 + +#define KEY_PTZ_FOCUS1_START KEY_CODE_A /*¾Û½¹+*/ +#define KEY_PTZ_FOCUS1_STOP 38 + +#define KEY_PTZ_FOCUS2_START KEY_CODE_M /*¾Û½¹-*/ +#define KEY_PTZ_FOCUS2_STOP 39 + +#define KEY_PTZ_B1_START 40 /*±ä±¶+*/ +#define KEY_PTZ_B1_STOP 41 + +#define KEY_PTZ_B2_START 42 /*±ä±¶-*/ +#define KEY_PTZ_B2_STOP 43 + +//9000ÐÂÔö +#define KEY_CODE_11 44 +#define KEY_CODE_12 45 +#define KEY_CODE_13 46 +#define KEY_CODE_14 47 +#define KEY_CODE_15 48 +#define KEY_CODE_16 49 + + + +/*************************²ÎÊýÅäÖÃÃüÁî begin*******************************/ +//ÓÃÓÚNET_DVR_SetDVRConfigºÍNET_DVR_GetDVRConfig,×¢ÒâÆä¶ÔÓ¦µÄÅäÖýṹ + +#define NET_DVR_GET_DEVICECFG 100 //»ñÈ¡É豸²ÎÊý +#define NET_DVR_SET_DEVICECFG 101 //ÉèÖÃÉ豸²ÎÊý +#define NET_DVR_GET_NETCFG 102 //»ñÈ¡ÍøÂç²ÎÊý +#define NET_DVR_SET_NETCFG 103 //ÉèÖÃÍøÂç²ÎÊý +#define NET_DVR_GET_PICCFG 104 //»ñȡͼÏó²ÎÊý +#define NET_DVR_SET_PICCFG 105 //ÉèÖÃͼÏó²ÎÊý +#define NET_DVR_GET_COMPRESSCFG 106 //»ñȡѹËõ²ÎÊý +#define NET_DVR_SET_COMPRESSCFG 107 //ÉèÖÃѹËõ²ÎÊý +#define NET_DVR_GET_RECORDCFG 108 //»ñȡ¼Ïñʱ¼ä²ÎÊý +#define NET_DVR_SET_RECORDCFG 109 //ÉèÖüÏñʱ¼ä²ÎÊý +#define NET_DVR_GET_DECODERCFG 110 //»ñÈ¡½âÂëÆ÷²ÎÊý +#define NET_DVR_SET_DECODERCFG 111 //ÉèÖýâÂëÆ÷²ÎÊý +#define NET_DVR_GET_RS232CFG 112 //»ñÈ¡232´®¿Ú²ÎÊý +#define NET_DVR_SET_RS232CFG 113 //ÉèÖÃ232´®¿Ú²ÎÊý +#define NET_DVR_GET_ALARMINCFG 114 //»ñÈ¡±¨¾¯ÊäÈë²ÎÊý +#define NET_DVR_SET_ALARMINCFG 115 //ÉèÖñ¨¾¯ÊäÈë²ÎÊý +#define NET_DVR_GET_ALARMOUTCFG 116 //»ñÈ¡±¨¾¯Êä³ö²ÎÊý +#define NET_DVR_SET_ALARMOUTCFG 117 //ÉèÖñ¨¾¯Êä³ö²ÎÊý +#define NET_DVR_GET_TIMECFG 118 //»ñÈ¡DVRʱ¼ä +#define NET_DVR_SET_TIMECFG 119 //ÉèÖÃDVRʱ¼ä +#define NET_DVR_GET_PREVIEWCFG 120 //»ñÈ¡Ô¤ÀÀ²ÎÊý +#define NET_DVR_SET_PREVIEWCFG 121 //ÉèÖÃÔ¤ÀÀ²ÎÊý +#define NET_DVR_GET_VIDEOOUTCFG 122 //»ñÈ¡ÊÓƵÊä³ö²ÎÊý +#define NET_DVR_SET_VIDEOOUTCFG 123 //ÉèÖÃÊÓƵÊä³ö²ÎÊý +#define NET_DVR_GET_USERCFG 124 //»ñÈ¡Óû§²ÎÊý +#define NET_DVR_SET_USERCFG 125 //ÉèÖÃÓû§²ÎÊý +#define NET_DVR_GET_EXCEPTIONCFG 126 //»ñÈ¡Òì³£²ÎÊý +#define NET_DVR_SET_EXCEPTIONCFG 127 //ÉèÖÃÒì³£²ÎÊý +#define NET_DVR_GET_ZONEANDDST 128 //»ñȡʱÇøºÍÏÄʱÖƲÎÊý +#define NET_DVR_SET_ZONEANDDST 129 //ÉèÖÃʱÇøºÍÏÄʱÖƲÎÊý + +//×¢£º¸ÃÃüÁîÖ»Ö§³Ö4ÌõOSDµÄÀàÐÍ£¬Í¨³£ÓÃÓÚV30ÒÔϵÄÉ豸°æ±¾¡£ +#define NET_DVR_GET_SHOWSTRING 130 //»ñÈ¡µþ¼Ó×Ö·û²ÎÊý +#define NET_DVR_SET_SHOWSTRING 131 //ÉèÖõþ¼Ó×Ö·û²ÎÊý + +#define NET_DVR_GET_EVENTCOMPCFG 132 //»ñȡʼþ´¥·¢Â¼Ïñ²ÎÊý +#define NET_DVR_SET_EVENTCOMPCFG 133 //ÉèÖÃʼþ´¥·¢Â¼Ïñ²ÎÊý +#define NET_DVR_GET_FTPCFG 134 //»ñȡץͼµÄFTP²ÎÊý(»ùÏß) +#define NET_DVR_SET_FTPCFG 135 //ÉèÖÃץͼµÄFTP²ÎÊý(»ùÏß) +#define NET_DVR_GET_AUXOUTCFG 140 //»ñÈ¡±¨¾¯´¥·¢¸¨ÖúÊä³öÉèÖÃ(HSÉ豸¸¨ÖúÊä³ö2006-02-28) +#define NET_DVR_SET_AUXOUTCFG 141 //ÉèÖñ¨¾¯´¥·¢¸¨ÖúÊä³öÉèÖÃ(HSÉ豸¸¨ÖúÊä³ö2006-02-28) +#define NET_DVR_GET_PREVIEWCFG_AUX 142 //»ñÈ¡-sϵÁÐË«Êä³öÔ¤ÀÀ²ÎÊý(-sϵÁÐË«Êä³ö2006-04-13) +#define NET_DVR_SET_PREVIEWCFG_AUX 143 //ÉèÖÃ-sϵÁÐË«Êä³öÔ¤ÀÀ²ÎÊý(-sϵÁÐË«Êä³ö2006-04-13) + +#define NET_DVR_GET_PASSWORD_MANAGE_CFG 144 //»ñÈ¡ÃÜÂë¹ÜÀíÅäÖà +#define NET_DVR_SET_PASSWORD_MANAGE_CFG 145 //ÉèÖÃÃÜÂë¹ÜÀíÅäÖà +#define NET_DVR_UNLOCK_USER 146 //Óû§½âËø +#define NET_DVR_GET_SECURITY_CFG 147 //»ñÈ¡°²È«ÈÏÖ¤ÅäÖà +#define NET_DVR_SET_SECURITY_CFG 148 //ÉèÖð²È«ÈÏÖ¤ÅäÖà +#define NET_DVR_GET_LOCKED_INFO_LIST 149 //»ñÈ¡ËùÓб»Ëø¶¨ÐÅÏ¢ + + +/*********************************ÖÇÄܲ¿·Ö½Ó¿Ú begin***************************************/ +//ÐÐΪ¶ÔÓ¦£¨NET_VCA_RULECFG£© +#define NET_DVR_SET_RULECFG 152 //ÉèÖÃÐÐΪ·ÖÎö¹æÔò +#define NET_DVR_GET_RULECFG 153 //»ñÈ¡ÐÐΪ·ÖÎö¹æÔò +//Çò»ú±ê¶¨²ÎÊý£¨NET_DVR_TRACK_CFG £© +#define NET_DVR_SET_TRACK_CFG 160//ÉèÖÃÇò»úµÄÅäÖòÎÊý +#define NET_DVR_GET_TRACK_CFG 161//»ñÈ¡Çò»úµÄÅäÖòÎÊý + +//ÖÇÄÜ·ÖÎöÒÇÈ¡Á÷ÅäÖýṹ +#define NET_DVR_SET_IVMS_STREAMCFG 162 //ÉèÖÃÖÇÄÜ·ÖÎöÒÇÈ¡Á÷²ÎÊý +#define NET_DVR_GET_IVMS_STREAMCFG 163 //»ñÈ¡ÖÇÄÜ·ÖÎöÒÇÈ¡Á÷²ÎÊý +//ÖÇÄÜ¿ØÖƲÎÊý½á¹¹ +#define NET_DVR_SET_VCA_CTRLCFG 164 //ÉèÖÃÖÇÄÜ¿ØÖƲÎÊý +#define NET_DVR_GET_VCA_CTRLCFG 165 //»ñÈ¡ÖÇÄÜ¿ØÖƲÎÊý +//ÆÁ±ÎÇøÓòNET_VCA_MASK_REGION_LIST +#define NET_DVR_SET_VCA_MASK_REGION 166 //ÉèÖÃÆÁ±ÎÇøÓò²ÎÊý +#define NET_DVR_GET_VCA_MASK_REGION 167 //»ñÈ¡ÆÁ±ÎÇøÓò²ÎÊý + +//ATM½øÈëÇøÓò NET_VCA_ENTER_REGION +#define NET_DVR_SET_VCA_ENTER_REGION 168 //ÉèÖýøÈëÇøÓò²ÎÊý +#define NET_DVR_GET_VCA_ENTER_REGION 169 //»ñÈ¡½øÈëÇøÓò²ÎÊý + +//±ê¶¨ÏßÅäÖÃNET_VCA_LINE_SEGMENT_LIST +#define NET_DVR_SET_VCA_LINE_SEGMENT 170 //ÉèÖñ궨Ïß +#define NET_DVR_GET_VCA_LINE_SEGMENT 171 //»ñÈ¡±ê¶¨Ïß + +// ivmsÆÁ±ÎÇøÓòNET_IVMS_MASK_REGION_LIST +#define NET_DVR_SET_IVMS_MASK_REGION 172 //ÉèÖÃIVMSÆÁ±ÎÇøÓò²ÎÊý +#define NET_DVR_GET_IVMS_MASK_REGION 173 //»ñÈ¡IVMSÆÁ±ÎÇøÓò²ÎÊý +// ivms½øÈë¼ì²âÇøÓòNET_IVMS_ENTER_REGION +#define NET_DVR_SET_IVMS_ENTER_REGION 174 //ÉèÖÃIVMS½øÈëÇøÓò²ÎÊý +#define NET_DVR_GET_IVMS_ENTER_REGION 175 //»ñÈ¡IVMS½øÈëÇøÓò²ÎÊý + +#define NET_DVR_SET_IVMS_BEHAVIORCFG 176 //ÉèÖÃÖÇÄÜ·ÖÎöÒÇÐÐΪ¹æÔò²ÎÊý +#define NET_DVR_GET_IVMS_BEHAVIORCFG 177 //»ñÈ¡ÖÇÄÜ·ÖÎöÒÇÐÐΪ¹æÔò²ÎÊý + +// IVMS »Ø·Å¼ìË÷ +#define NET_DVR_IVMS_SET_SEARCHCFG 178 //ÉèÖÃIVMS»Ø·Å¼ìË÷²ÎÊý +#define NET_DVR_IVMS_GET_SEARCHCFG 179 //»ñÈ¡IVMS»Ø·Å¼ìË÷²ÎÊý + +#define NET_DVR_SET_POSITION_TRACK 180 // ÉèÖó¡¾°¸ú×ÙÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_POSITION_TRACK 181 // »ñÈ¡³¡¾°¸ú×ÙÅäÖÃÐÅÏ¢ + +#define NET_DVR_SET_CALIBRATION 182 // ÉèÖñ궨ÐÅÏ¢ +#define NET_DVR_GET_CALIBRATION 183 // »ñÈ¡±ê¶¨ÐÅÏ¢ + +#define NET_DVR_SET_PDC_RULECFG 184 // ÉèÖÃÈËÁ÷Á¿Í³¼Æ¹æÔò +#define NET_DVR_GET_PDC_RULECFG 185 // »ñÈ¡ÈËÁ÷Á¿Í³¼Æ¹æÔò + +#define NET_DVR_SET_PU_STREAMCFG 186 // ÉèÖÃÇ°¶ÎÈ¡Á÷É豸ÐÅÏ¢ +#define NET_DVR_GET_PU_STREAMCFG 187 // »ñÈ¡Ç°¶ÎÈ¡Á÷É豸ÐÅÏ¢ + +#define NET_VCA_SET_IVMS_BEHAVIOR_CFG 192 // ÉèÖÃIVMSÐÐΪ¹æÔòÅäÖà ²»´øʱ¼ä¶Î +#define NET_VCA_GET_IVMS_BEHAVIOR_CFG 193 // »ñÈ¡IVMSÐÐΪ¹æÔòÅäÖà ²»´øʱ¼ä¶Î + +#define NET_VCA_SET_SIZE_FILTER 194 // ÉèÖÃÈ«¾Ö³ß´ç¹ýÂËÆ÷ +#define NET_VCA_GET_SIZE_FILTER 195 // »ñÈ¡È«¾Ö³ß´ç¹ýÂËÆ÷ + +#define NET_DVR_SET_TRACK_PARAMCFG 196 // ÉèÖÃÇò»ú±¾µØ²Ëµ¥¹æÔò +#define NET_DVR_GET_TRACK_PARAMCFG 197 // »ñÈ¡Çò»ú±¾µØ²Ëµ¥¹æÔò + +#define NET_DVR_SET_DOME_MOVEMENT_PARAM 198 // ÉèÖÃÇò»ú»úо²ÎÊý +#define NET_DVR_GET_DOME_MOVEMENT_PARAM 199 // »ñÈ¡Çò»ú»úо²ÎÊý + +#define NET_DVR_GET_PICCFG_EX 200 //»ñȡͼÏó²ÎÊý(SDK_V14À©Õ¹ÃüÁî) +#define NET_DVR_SET_PICCFG_EX 201 //ÉèÖÃͼÏó²ÎÊý(SDK_V14À©Õ¹ÃüÁî) +#define NET_DVR_GET_USERCFG_EX 202 //»ñÈ¡Óû§²ÎÊý(SDK_V15À©Õ¹ÃüÁî) +#define NET_DVR_SET_USERCFG_EX 203 //ÉèÖÃÓû§²ÎÊý(SDK_V15À©Õ¹ÃüÁî) +#define NET_DVR_GET_COMPRESSCFG_EX 204 //»ñȡѹËõ²ÎÊý(SDK_V15À©Õ¹ÃüÁî2006-05-15) +#define NET_DVR_SET_COMPRESSCFG_EX 205 //ÉèÖÃѹËõ²ÎÊý(SDK_V15À©Õ¹ÃüÁî2006-05-15) + + +#define NET_DVR_GET_NETAPPCFG 222 //»ñÈ¡ÍøÂçÓ¦ÓòÎÊý NTP/DDNS/EMAIL +#define NET_DVR_SET_NETAPPCFG 223 //ÉèÖÃÍøÂçÓ¦ÓòÎÊý NTP/DDNS/EMAIL +#define NET_DVR_GET_NTPCFG 224 //»ñÈ¡ÍøÂçÓ¦ÓòÎÊý NTP +#define NET_DVR_SET_NTPCFG 225 //ÉèÖÃÍøÂçÓ¦ÓòÎÊý NTP +#define NET_DVR_GET_DDNSCFG 226 //»ñÈ¡ÍøÂçÓ¦ÓòÎÊý DDNS +#define NET_DVR_SET_DDNSCFG 227 //ÉèÖÃÍøÂçÓ¦ÓòÎÊý DDNS +//¶ÔÓ¦NET_DVR_EMAILPARA +#define NET_DVR_GET_EMAILCFG 228 //»ñÈ¡ÍøÂçÓ¦ÓòÎÊý EMAIL +#define NET_DVR_SET_EMAILCFG 229 //ÉèÖÃÍøÂçÓ¦ÓòÎÊý EMAIL + +#define NET_DVR_GET_NFSCFG 230 /* NFS disk config */ +#define NET_DVR_SET_NFSCFG 231 /* NFS disk config */ + +/*×¢£º¸ÃÃüÁîΪ¶¨ÖÆ£¬Ö»Ö§³Ö8ÌõOSDµÄÀàÐÍ£¬²»»á¼æÈÝV30É豸°æ±¾Ö®Ç°µÄ +NET_DVR_GET_SHOWSTRING ¡¢NET_DVR_SET_SHOWSTRING ÃüÁî¡££¨²»½¨ÒéʹÓã©*/ +#define NET_DVR_GET_SHOWSTRING_EX 238 //»ñÈ¡µþ¼Ó×Ö·û²ÎÊýÀ©Õ¹(Ö§³Ö8Ìõ×Ö·û) +#define NET_DVR_SET_SHOWSTRING_EX 239 //ÉèÖõþ¼Ó×Ö·û²ÎÊýÀ©Õ¹(Ö§³Ö8Ìõ×Ö·û) +#define NET_DVR_GET_NETCFG_OTHER 244 //»ñÈ¡ÍøÂç²ÎÊý +#define NET_DVR_SET_NETCFG_OTHER 245 //ÉèÖÃÍøÂç²ÎÊý + +//¶ÔÓ¦NET_DVR_EMAILCFG½á¹¹ +#define NET_DVR_GET_EMAILPARACFG 250 //Get EMAIL parameters +#define NET_DVR_SET_EMAILPARACFG 251 //Setup EMAIL parameters + + +#define NET_DVR_GET_DDNSCFG_EX 274 //»ñÈ¡À©Õ¹DDNS²ÎÊý +#define NET_DVR_SET_DDNSCFG_EX 275 //ÉèÖÃÀ©Õ¹DDNS²ÎÊý + +#define NET_DVR_SET_PTZPOS 292 //ÔÆ̨ÉèÖÃPTZλÖà +#define NET_DVR_GET_PTZPOS 293 //ÔÆ̨»ñÈ¡PTZλÖà +#define NET_DVR_GET_PTZSCOPE 294 //ÔÆ̨»ñÈ¡PTZ·¶Î§ + +#define NET_DVR_GET_AP_INFO_LIST 305//»ñÈ¡ÎÞÏßÍøÂç×ÊÔ´²ÎÊý +#define NET_DVR_SET_WIFI_CFG 306 //ÉèÖÃIP¼à¿ØÉ豸ÎÞÏß²ÎÊý +#define NET_DVR_GET_WIFI_CFG 307 //»ñÈ¡IP¼à¿ØÉ豸ÎÞÏß²ÎÊý +#define NET_DVR_SET_WIFI_WORKMODE 308 //ÉèÖÃIP¼à¿ØÉ豸Íø¿Ú¹¤×÷ģʽ²ÎÊý +#define NET_DVR_GET_WIFI_WORKMODE 309 //»ñÈ¡IP¼à¿ØÉ豸Íø¿Ú¹¤×÷ģʽ²ÎÊý +#define NET_DVR_GET_WIFI_STATUS 310 //»ñÈ¡É豸µ±Ç°wifiÁ¬½Ó״̬ +/*********************************ÖÇÄܽ»Í¨Ê¼þbegin***************************************/ +#define NET_DVR_GET_REFERENCE_REGION 400 //»ñÈ¡²Î¿¼ÇøÓò +#define NET_DVR_SET_REFERENCE_REGION 401 //ÉèÖòο¼ÇøÓò + +#define NET_DVR_GET_TRAFFIC_MASK_REGION 402 //»ñÈ¡½»Í¨Ê¼þÆÁ±ÎÇøÓò +#define NET_DVR_SET_TRAFFIC_MASK_REGION 403 //ÉèÖý»Í¨Ê¼þÆÁ±ÎÇøÓò +#define NET_DVR_SET_AID_RULECFG 404 //ÉèÖý»Í¨Ê¼þ¹æÔò²ÎÊý +#define NET_DVR_GET_AID_RULECFG 405 //»ñÈ¡½»Í¨Ê¼þ¹æÔò²ÎÊý + +#define NET_DVR_SET_TPS_RULECFG 406 //ÉèÖý»Í¨Í³¼Æ¹æÔò²ÎÊý +#define NET_DVR_GET_TPS_RULECFG 407 //»ñÈ¡½»Í¨Í³¼Æ¹æÔò²ÎÊý + +#define NET_DVR_SET_LANECFG 408 //ÉèÖóµµÀ¹æÔò +#define NET_DVR_GET_LANECFG 409 //»ñÈ¡³µµÀ¹æÔò +#define NET_DVR_GET_VCA_RULE_COLOR_CFG 410 //»ñÈ¡ÖÇÄܹæÔò¹ØÁªµÄÑÕÉ«²ÎÊý +#define NET_DVR_SET_VCA_RULE_COLOR_CFG 411 //ÉèÖÃÖÇÄܹæÔò¹ØÁªµÄÑÕÉ«²ÎÊý +#define NET_DVR_GET_SWITCH_LAMP_CFG 412 //»ñÈ¡¿ª¹ØµÆ¼ì²â¹æÔòÅäÖòÎÊý +#define NET_DVR_SET_SWITCH_LAMP_CFG 413 //ÉèÖÿª¹ØµÆ¼ì²â¹æÔòÅäÖòÎÊý + + +/*********************************ÖÇÄܽ»Í¨Ê¼þend***************************************/ +#define NET_DVR_SET_FACEDETECT_RULECFG 420 // ÉèÖÃÈËÁ³¼ì²â¹æÔò +#define NET_DVR_GET_FACEDETECT_RULECFG 421 // »ñÈ¡ÈËÁ³¼ì²â¹æÔò + +#define NET_DVR_SET_VEHICLE_RECOG_TASK 422 //³µÁ¾¶þ´Îʶ±ðÈÎÎñÌá½» +#define NET_DVR_GET_VEHICLE_RECOG_TASK 423 //³µÁ¾¶þ´Îʶ±ðÈÎÎñ»ñÈ¡ + +#define NET_DVR_SET_TIMECORRECT 432 //УʱÅäÖã¨Ö»×öУʱ²Ù×÷£¬²»¼Ç¼УʱÅäÖà eg.NET_DVR_SET_TIMECFG »áÐÞ¸ÄÉ豸µÄУʱÅäÖã¨NTPУʱ£¬»á±»ÐÞ¸ÄΪÊÖ¶¯Ð£Ê±£©£© +#define NET_DVR_GET_CONNECT_LIST 433 //»ñÈ¡Á¬½ÓÉ豸ÁбíÐÅÏ¢ + +/***************************DS9000ÐÂÔöÃüÁî(_V30) begin *****************************/ +//ÍøÂç(NET_DVR_NETCFG_V30½á¹¹) +#define NET_DVR_GET_NETCFG_V30 1000 //»ñÈ¡ÍøÂç²ÎÊý +#define NET_DVR_SET_NETCFG_V30 1001 //ÉèÖÃÍøÂç²ÎÊý + +//ͼÏó(NET_DVR_PICCFG_V30½á¹¹) +#define NET_DVR_GET_PICCFG_V30 1002 //»ñȡͼÏó²ÎÊý +#define NET_DVR_SET_PICCFG_V30 1003 //ÉèÖÃͼÏó²ÎÊý + +//¼Ïñʱ¼ä(NET_DVR_RECORD_V30½á¹¹) +#define NET_DVR_GET_RECORDCFG_V30 1004 //»ñȡ¼Ïñ²ÎÊý +#define NET_DVR_SET_RECORDCFG_V30 1005 //ÉèÖüÏñ²ÎÊý + +//Óû§(NET_DVR_USER_V30½á¹¹) +#define NET_DVR_GET_USERCFG_V30 1006 //»ñÈ¡Óû§²ÎÊý +#define NET_DVR_SET_USERCFG_V30 1007 //ÉèÖÃÓû§²ÎÊý + +//¼Ïñʱ¼ä(NET_DVR_RECORD_V40½á¹¹) +#define NET_DVR_GET_RECORDCFG_V40 1008 //»ñȡ¼Ïñ²ÎÊý(À©Õ¹) +#define NET_DVR_SET_RECORDCFG_V40 1009 //ÉèÖüÏñ²ÎÊý(À©Õ¹) + +//9000DDNS²ÎÊýÅäÖÃ(NET_DVR_DDNSPARA_V30½á¹¹) +#define NET_DVR_GET_DDNSCFG_V30 1010 //»ñÈ¡DDNS(9000À©Õ¹) +#define NET_DVR_SET_DDNSCFG_V30 1011 //ÉèÖÃDDNS(9000À©Õ¹) + +//EMAIL¹¦ÄÜ(NET_DVR_EMAILCFG_V30½á¹¹) +#define NET_DVR_GET_EMAILCFG_V30 1012 //»ñÈ¡EMAIL²ÎÊý +#define NET_DVR_SET_EMAILCFG_V30 1013 //ÉèÖÃEMAIL²ÎÊý + +#define NET_DVR_GET_NETCFG_V50 1015 //»ñÈ¡ÍøÂç²ÎÊýÅäÖÃ(V50) +#define NET_DVR_SET_NETCFG_V50 1016 //ÉèÖÃÍøÂç²ÎÊýÅäÖÃ(V50) + +#define NET_GET_CRUISEPOINT_V40 1018 //»ñȡѲº½Â·¾¶ÅäÖà + +//Ѳº½²ÎÊý (NET_DVR_CRUISE_PARA½á¹¹) +#define NET_DVR_GET_CRUISE 1020 +#define NET_DVR_SET_CRUISE 1021 + + +//±¨¾¯ÊäÈë½á¹¹²ÎÊý (NET_DVR_ALARMINCFG_V30½á¹¹) +#define NET_DVR_GET_ALARMINCFG_V30 1024 +#define NET_DVR_SET_ALARMINCFG_V30 1025 + +//±¨¾¯Êä³ö½á¹¹²ÎÊý (NET_DVR_ALARMOUTCFG_V30½á¹¹) +#define NET_DVR_GET_ALARMOUTCFG_V30 1026 +#define NET_DVR_SET_ALARMOUTCFG_V30 1027 + +//ÊÓƵÊä³ö½á¹¹²ÎÊý (NET_DVR_VIDEOOUT_V30½á¹¹) +#define NET_DVR_GET_VIDEOOUTCFG_V30 1028 +#define NET_DVR_SET_VIDEOOUTCFG_V30 1029 + + +/*¸ÃÃüÁîÖ§³Ö8ÌõOSDµÄÀàÐÍ£¨¼´É豸°æ±¾ÎªV30ÒÔÉÏʱ£©£¬²¢»áͨ¹ýÉ豸°æ±¾µÄÆ¥Å䣬 +ͬʱ¼æÈÝ֮ǰµÄNET_DVR_GET_SHOWSTRING ¡¢NET_DVR_SET_SHOWSTRING ÃüÁî¡££¨½¨ÒéʹÓã©*/ +//µþ¼Ó×Ö·û½á¹¹²ÎÊý (NET_DVR_SHOWSTRING_V30½á¹¹) +#define NET_DVR_GET_SHOWSTRING_V30 1030 +#define NET_DVR_SET_SHOWSTRING_V30 1031 + +//Òì³£½á¹¹²ÎÊý (NET_DVR_EXCEPTION_V30½á¹¹) +#define NET_DVR_GET_EXCEPTIONCFG_V30 1034 +#define NET_DVR_SET_EXCEPTIONCFG_V30 1035 + +//´®¿Ú232½á¹¹²ÎÊý (NET_DVR_RS232CFG_V30½á¹¹) +#define NET_DVR_GET_RS232CFG_V30 1036 +#define NET_DVR_SET_RS232CFG_V30 1037 + +//ÍøÂçÓ²Å̽ÓÈë½á¹¹²ÎÊý (NET_DVR_NET_DISKCFG½á¹¹) +#define NET_DVR_GET_NET_DISKCFG 1038 //ÍøÂçÓ²Å̽ÓÈë»ñÈ¡ +#define NET_DVR_SET_NET_DISKCFG 1039 //ÍøÂçÓ²Å̽ÓÈëÉèÖà +//ѹËõ²ÎÊý (NET_DVR_COMPRESSIONCFG_V30½á¹¹) +#define NET_DVR_GET_COMPRESSCFG_V30 1040 +#define NET_DVR_SET_COMPRESSCFG_V30 1041 + +//»ñÈ¡485½âÂëÆ÷²ÎÊý (NET_DVR_DECODERCFG_V30½á¹¹) +#define NET_DVR_GET_DECODERCFG_V30 1042 //»ñÈ¡½âÂëÆ÷²ÎÊý +#define NET_DVR_SET_DECODERCFG_V30 1043 //ÉèÖýâÂëÆ÷²ÎÊý + +//»ñÈ¡Ô¤ÀÀ²ÎÊý (NET_DVR_PREVIEWCFG_V30½á¹¹) +#define NET_DVR_GET_PREVIEWCFG_V30 1044 //»ñÈ¡Ô¤ÀÀ²ÎÊý +#define NET_DVR_SET_PREVIEWCFG_V30 1045 //ÉèÖÃÔ¤ÀÀ²ÎÊý + +//¸¨ÖúÔ¤ÀÀ²ÎÊý (NET_DVR_PREVIEWCFG_AUX_V30½á¹¹) +#define NET_DVR_GET_PREVIEWCFG_AUX_V30 1046 //»ñÈ¡¸¨ÖúÔ¤ÀÀ²ÎÊý +#define NET_DVR_SET_PREVIEWCFG_AUX_V30 1047 //ÉèÖø¨ÖúÔ¤ÀÀ²ÎÊý + +//IP½ÓÈëÅäÖòÎÊý £¨NET_DVR_IPPARACFG½á¹¹£© +#define NET_DVR_GET_IPPARACFG 1048 //»ñÈ¡IP½ÓÈëÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_IPPARACFG 1049 //ÉèÖÃIP½ÓÈëÅäÖÃÐÅÏ¢ + +//IP±¨¾¯ÊäÈë½ÓÈëÅäÖòÎÊý £¨NET_DVR_IPALARMINCFG½á¹¹£© +#define NET_DVR_GET_IPALARMINCFG 1050 //»ñÈ¡IP±¨¾¯ÊäÈë½ÓÈëÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_IPALARMINCFG 1051 //ÉèÖÃIP±¨¾¯ÊäÈë½ÓÈëÅäÖÃÐÅÏ¢ + +//IP±¨¾¯Êä³ö½ÓÈëÅäÖòÎÊý £¨NET_DVR_IPALARMOUTCFG½á¹¹£© +#define NET_DVR_GET_IPALARMOUTCFG 1052 //»ñÈ¡IP±¨¾¯Êä³ö½ÓÈëÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_IPALARMOUTCFG 1053 //ÉèÖÃIP±¨¾¯Êä³ö½ÓÈëÅäÖÃÐÅÏ¢ + +//Ó²Å̹ÜÀíµÄ²ÎÊý»ñÈ¡ (NET_DVR_HDCFG½á¹¹) +#define NET_DVR_GET_HDCFG 1054 //»ñÈ¡Ó²Å̹ÜÀíÅäÖòÎÊý +#define NET_DVR_SET_HDCFG 1055 //ÉèÖÃÓ²Å̹ÜÀíÅäÖòÎÊý +//ÅÌ×é¹ÜÀíµÄ²ÎÊý»ñÈ¡ (NET_DVR_HDGROUP_CFG½á¹¹) +#define NET_DVR_GET_HDGROUP_CFG 1056 //»ñÈ¡ÅÌ×é¹ÜÀíÅäÖòÎÊý +#define NET_DVR_SET_HDGROUP_CFG 1057 //ÉèÖÃÅÌ×é¹ÜÀíÅäÖòÎÊý + +//É豸±àÂëÀàÐÍÅäÖÃ(NET_DVR_COMPRESSION_AUDIO½á¹¹) +#define NET_DVR_GET_COMPRESSCFG_AUD 1058 //»ñÈ¡É豸ÓïÒô¶Ô½²±àÂë²ÎÊý +#define NET_DVR_SET_COMPRESSCFG_AUD 1059 //ÉèÖÃÉ豸ÓïÒô¶Ô½²±àÂë²ÎÊý + +//IP½ÓÈëÅäÖòÎÊý £¨NET_DVR_IPPARACFG_V31½á¹¹£© +#define NET_DVR_GET_IPPARACFG_V31 1060 //»ñÈ¡IP½ÓÈëÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_IPPARACFG_V31 1061 //ÉèÖÃIP½ÓÈëÅäÖÃÐÅÏ¢ + +// ͨµÀ×ÊÔ´ÅäÖà (NET_DVR_IPPARACFG_V40½á¹¹) +#define NET_DVR_GET_IPPARACFG_V40 1062 // »ñÈ¡IP½ÓÈëÅäÖà +#define NET_DVR_SET_IPPARACFG_V40 1063 // ÉèÖÃIP½ÓÈëÅäÖà + +#define NET_DVR_GET_CCDPARAMCFG 1067 //IPC»ñÈ¡CCD²ÎÊýÅäÖà +#define NET_DVR_SET_CCDPARAMCFG 1068 //IPCÉèÖÃCCD²ÎÊýÅäÖà + +#define NET_DVR_GET_IOINCFG 1070 //»ñȡץÅÄ»úIOÊäÈë²ÎÊý +#define NET_DVR_SET_IOINCFG 1071 //ÉèÖÃ×¥ÅÄ»úIOÊäÈë²ÎÊý + +#define NET_DVR_GET_IOOUTCFG 1072 //»ñȡץÅÄ»úIOÊä³ö²ÎÊý +#define NET_DVR_SET_IOOUTCFG 1073 //ÉèÖÃ×¥ÅÄ»úIOÊä³ö²ÎÊý + +#define NET_DVR_GET_FLASHCFG 1074 //»ñÈ¡IOÉÁ¹âµÆÊä³ö²ÎÊý +#define NET_DVR_SET_FLASHCFG 1075 //ÉèÖÃIOÉÁ¹âµÆÊä³ö²ÎÊý + +#define NET_DVR_GET_LIGHTSNAPCFG 1076 //»ñȡץÅÄ»úºìÂ̵ƲÎÊý +#define NET_DVR_SET_LIGHTSNAPCFG 1077 //ÉèÖÃ×¥ÅÄ»úºìÂ̵ƲÎÊý + +#define NET_DVR_GET_MEASURESPEEDCFG 1078 //»ñȡץÅÄ»ú²âËÙ²ÎÊý +#define NET_DVR_SET_MEASURESPEEDCFG 1079 //ÉèÖÃ×¥ÅÄ»ú²âËÙ²ÎÊý + +#define NET_DVR_GET_IMAGEOVERLAYCFG 1080//»ñȡץÅÄ»úͼÏñµþ¼ÓÐÅÏ¢²ÎÊý +#define NET_DVR_SET_IMAGEOVERLAYCFG 1081//ÉèÖÃ×¥ÅÄ»úͼÏñµþ¼ÓÐÅÏ¢²ÎÊý + +#define NET_DVR_GET_SNAPCFG 1082//»ñÈ¡µ¥IO´¥·¢×¥ÅŦÄÜÅäÖà +#define NET_DVR_SET_SNAPCFG 1083//ÉèÖõ¥IO´¥·¢×¥ÅŦÄÜÅäÖà + +#define NET_DVR_GET_VTPPARAM 1084//»ñÈ¡ÐéÄâÏßȦ²ÎÊý +#define NET_DVR_SET_VTPPARAM 1085//ÉèÖÃÐéÄâÏßȦ²ÎÊý + +#define NET_DVR_GET_SNAPENABLECFG 1086//»ñȡץÅÄ»úʹÄܲÎÊý +#define NET_DVR_SET_SNAPENABLECFG 1087//ÉèÖÃ×¥ÅÄ»úʹÄܲÎÊý + +#define NET_DVR_GET_POSTEPOLICECFG 1088//»ñÈ¡¿¨¿Úµç¾¯²ÎÊý +#define NET_DVR_SET_POSTEPOLICECFG 1089//ÉèÖÿ¨¿Úµç¾¯²ÎÊý + +#define NET_DVR_GET_JPEGCFG_V30 1090//»ñȡץͼµÄJPEG²ÎÊý(»ùÏß) +#define NET_DVR_SET_JPEGCFG_V30 1091//ÉèÖÃץͼµÄJPEG²ÎÊý(»ùÏß) + +#define NET_DVR_GET_SPRCFG 1092//»ñÈ¡³µÅÆʶ±ð²ÎÊý +#define NET_DVR_SET_SPRCFG 1093//ÉèÖóµÅÆʶ±ð²ÎÊý +#define NET_DVR_GET_PLCCFG 1094//»ñÈ¡³µÅÆÁÁ¶È²¹³¥²ÎÊý +#define NET_DVR_SET_PLCCFG 1095//ÉèÖóµÅÆÁÁ¶È²¹³¥²ÎÊý + +#define NET_DVR_GET_DEVICESTATECFG 1096//»ñÈ¡É豸µ±Ç°×´Ì¬²ÎÊý +#define NET_DVR_SET_CALIBRATE_TIME 1097//ÉèÖÃÀ©Õ¹Ê±¼äУʱ +#define NET_DVR_GET_CALIBRATE_TIME 1098//»ñÈ¡À©Õ¹Ê±¼äУʱ + +#define NET_DVR_GET_DEVICECFG_V40 1100//»ñÈ¡À©Õ¹É豸²ÎÊý +#define NET_DVR_SET_DEVICECFG_V40 1101//ÉèÖÃÀ©Õ¹É豸²ÎÊý + +#define NET_DVR_GET_ZEROCHANCFG 1102 //»ñÈ¡ÁãͨµÀѹËõ²ÎÊý +#define NET_DVR_SET_ZEROCHANCFG 1103 //ÉèÖÃÁãͨµÀѹËõ²ÎÊý + +#define NET_DVR_GET_ZERO_PREVIEWCFG_V30 1104 // »ñÈ¡ÁãͨµÀÔ¤ÀÀ²ÎÊýÅäÖà +#define NET_DVR_SET_ZERO_PREVIEWCFG_V30 1105 // ÉèÖÃÁãͨµÀÔ¤ÀÀ²ÎÊýÅäÖà + +#define NET_DVR_SET_ZERO_ZOOM 1106 //ÉèÖÃÁãͨµÀµÄËõ·ÅÅäÖà +#define NET_DVR_GET_ZERO_ZOOM 1107 //»ñÈ¡ÁãͨµÀµÄËõ·ÅÅäÖà + +#define NET_DVR_NATASSOCIATECFG_GET 1110 //»ñÈ¡NAT¹¦ÄÜÏà¹ØÐÅÏ¢ +#define NET_DVR_NATASSOCIATECFG_SET 1111 //ÉèÖÃNAT¹¦ÄÜÏà¹ØÐÅÏ¢ + +#define NET_DVR_GET_SNMPCFG 1112 //»ñÈ¡SNMP²ÎÊý +#define NET_DVR_SET_SNMPCFG 1113 //ÉèÖÃSNMP²ÎÊý + +#define NET_DVR_GET_SNMPCFG_V30 1114 //»ñÈ¡SNMPv30²ÎÊý +#define NET_DVR_SET_SNMPCFG_V30 1115 //ÉèÖÃSNMPv30²ÎÊý + +#define NET_DVR_VIDEOPLATFORMALARMCFG_GET 1130 //»ñÈ¡ÊÓƵ×ÛºÏƽ̨±¨¾¯ÅäÖà +#define NET_DVR_VIDEOPLATFORMALARMCFG_SET 1131 //ÉèÖÃÊÓƵ×ÛºÏƽ̨±¨¾¯ÅäÖà + +#define NET_DVR_GET_RAID_ADAPTER_INFO 1134 // »ñÈ¡ÊÊÅäÆ÷ÐÅÏ¢ +#define NET_DVR_SET_RAID_ADAPTER_INFO 1135 // ÉèÖÃÊÊÅäÆ÷ÐÅÏ¢ + +#define NET_DVR_MATRIX_BIGSCREENCFG_GET 1140//»ñÈ¡´óÆÁÆ´½Ó²ÎÊý +#define NET_DVR_MATRIX_BIGSCREENCFG_SET 1141//ÉèÖôóÆÁÆ´½Ó²ÎÊý + +#define NET_DVR_GET_MB_PLATFORMPARA 1145 //»ñȡƽ̨µÇ¼²ÎÊý +#define NET_DVR_SET_MB_PLATFORMPARA 1146 //ÉèÖÃƽ̨µÇ¼²ÎÊý +#define NET_DVR_GET_MB_DEVSTATUS 1147 //»ñÈ¡Òƶ¯É豸״̬ + +#define NET_DVR_GET_DECODER_JOINT_CHAN 1151//»ñÈ¡½âÂë¹ØÁªÍ¨µÀ +#define NET_DVR_SET_DECODER_JOINT_CHAN 1152//ÉèÖýâÂë¹ØÁªÍ¨µÀ + +//¶àÍø¿¨ÅäÖà +#define NET_DVR_GET_NETCFG_MULTI 1161 //»ñÈ¡¶àÍø¿¨ÅäÖà +#define NET_DVR_SET_NETCFG_MULTI 1162 //ÉèÖöàÍø¿¨ÅäÖà +#define NET_DVR_GET_NETCFG_MULTI_V50 1163 //»ñÈ¡¶àÍø¿¨ÅäÖÃ(·Ö×é) +#define NET_DVR_SET_NETCFG_MULTI_V50 1164 //ÉèÖöàÍø¿¨ÅäÖÃ(·Ö×é) + +#define NET_DVR_GET_CMSPARA 1170//»ñȡƽ̨²ÎÊý +#define NET_DVR_SET_CMSPARA 1171//ÉèÖÃƽ̨²ÎÊý +#define NET_DVR_GET_DIALSTATUS 1172//»ñÈ¡²¦ºÅ״̬²ÎÊý +#define NET_DVR_GET_SMSRELATIVEPARA 1173//»ñÈ¡¶ÌÐÅÏà¹Ø²ÎÊý +#define NET_DVR_SET_SMSRELATIVEPARA 1174//ÉèÖöÌÐÅÏà¹Ø²ÎÊý +#define NET_DVR_GET_PINSTATUS 1175//»ñÈ¡Pin״̬ +#define NET_DVR_SET_PINCMD 1176//ÉèÖÃPINÃüÁî +#define NET_DVR_SET_SENSOR_CFG 1180//ÉèÖÃÄ£ÄâÁ¿²ÎÊý +#define NET_DVR_GET_SENSOR_CFG 1181//»ñÈ¡Ä£ÄâÁ¿²ÎÊý +#define NET_DVR_SET_ALARMIN_PARAM 1182//ÉèÖñ¨¾¯ÊäÈë²ÎÊý +#define NET_DVR_GET_ALARMIN_PARAM 1183//»ñÈ¡±¨¾¯ÊäÈë²ÎÊý +#define NET_DVR_SET_ALARMOUT_PARAM 1184//ÉèÖñ¨¾¯Êä³ö²ÎÊý +#define NET_DVR_GET_ALARMOUT_PARAM 1185//»ñÈ¡±¨¾¯Êä³ö²ÎÊý +#define NET_DVR_SET_SIREN_PARAM 1186//ÉèÖþ¯ºÅ²ÎÊý +#define NET_DVR_GET_SIREN_PARAM 1187//»ñÈ¡¾¯ºÅ²ÎÊý +#define NET_DVR_SET_ALARM_RS485CFG 1188//ÉèÖñ¨¾¯Ö÷»ú485²ÎÊý +#define NET_DVR_GET_ALARM_RS485CFG 1189//»ñÈ¡±¨¾¯Ö÷»ú485²ÎÊý +#define NET_DVR_GET_ALARMHOST_MAIN_STATUS 1190//»ñÈ¡±¨¾¯Ö÷»úÖ÷Ҫ״̬ +#define NET_DVR_GET_ALARMHOST_OTHER_STATUS 1191//»ñÈ¡±¨¾¯Ö÷»úÆäËû״̬ +#define NET_DVR_SET_ALARMHOST_ENABLECFG 1192//»ñÈ¡±¨¾¯Ö÷»úʹÄÜ״̬ +#define NET_DVR_GET_ALARMHOST_ENABLECFG 1193//ÉèÖñ¨¾¯Ö÷»úʹÄÜ״̬ +#define NET_DVR_SET_ALARM_CAMCFG 1194//ÉèÖÃÊÓƵ×ÛºÏƽ̨±¨¾¯´¥·¢CAM²Ù×÷ÅäÖà +#define NET_DVR_GET_ALARM_CAMCFG 1195//ÉèÖÃÊÓƵ×ÛºÏƽ̨±¨¾¯´¥·¢CAM²Ù×÷ÅäÖà +#define NET_DVR_GET_GATEWAY_CFG 1196//»ñÈ¡ÃŽû²ÎÊýÅäÖà +#define NET_DVR_SET_GATEWAY_CFG 1197//ÉèÖÃÃŽû²ÎÊýÅäÖà + +#define NET_DVR_GET_ALARMDIALMODECFG 1198//»ñÈ¡±¨¾¯Ö÷»ú²¦ºÅ²ÎÊý +#define NET_DVR_SET_ALARMDIALMODECFG 1199//ÉèÖñ¨¾¯Ö÷»ú²¦ºÅ²ÎÊý +#define NET_DVR_SET_ALARMIN_PARAM_V50 1200 // ÉèÖ÷ÀÇø²ÎÊýV50 +#define NET_DVR_GET_ALARMIN_PARAM_V50 1201 // »ñÈ¡·ÀÇø²ÎÊýV50 +#define NET_DVR_SET_WINCFG 1202//´°¿Ú²ÎÊýÉèÖà +#define NET_DVR_GET_ALARMHOSTDIALSETUPMODE 1204//»ñÈ¡±¨¾¯Ö÷»ú²¦ºÅÆôÓ÷½Ê½ +#define NET_DVR_SET_ALARMHOSTDIALSETUPMODE 1205//ÉèÖñ¨¾¯Ö÷»ú²¦ºÅÆôÓ÷½Ê½ + +//ÊÓƵ±¨¾¯Ö÷»úº£Íâ°æÃüÁî(ÊÓƵ±¨¾¯Ö÷»ú V1.3) +#define NET_DVR_SET_SUBSYSTEM_ALARM 1210 //ÉèÖÃ×Óϵͳ²¼/³··À +#define NET_DVR_GET_SUBSYSTEM_ALARM 1211 //»ñÈ¡×Óϵͳ²¼/³··À +#define NET_DVR_GET_ALLOWLIST_ALARM 1215 //»ñÈ¡ÔÊÐíÃûµ¥²ÎÊý +#define NET_DVR_SET_ALLOWLIST_ALARM 1216 //ÉèÖÃÔÊÐíÃûµ¥²ÎÊý +#define NET_DVR_GET_ALARMHOST_MODULE_LIST 1222 //»ñÈ¡ËùÓÐÄ£¿é +#define NET_DVR_SET_PRIOR_ALARM 1223 //ÉèÖÃ×Óϵͳ²¼/³··À +#define NET_DVR_GET_PRIOR_ALARM 1224 //»ñÈ¡×Óϵͳ²¼/³··À +#define NET_DVR_SET_TAMPER_ALARMIN_PARAM 1225 // ÉèÖ÷ÀÇø·À²ð²ÎÊý +#define NET_DVR_GET_TAMPER_ALARMIN_PARAM 1226 // »ñÈ¡·ÀÇø·À²ð²ÎÊý + +#define NET_DVR_GET_HOLIDAY_PARAM_CFG 1240// »ñÈ¡½Ú¼ÙÈÕ²ÎÊý +#define NET_DVR_SET_HOLIDAY_PARAM_CFG 1241// ÉèÖýڼÙÈÕ²ÎÊý + +#define NET_DVR_GET_MOTION_HOLIDAY_HANDLE 1242// »ñÈ¡Òƶ¯Õì²â¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_SET_MOTION_HOLIDAY_HANDLE 1243// »ñÈ¡Òƶ¯Õì²â¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ + +#define NET_DVR_GET_VILOST_HOLIDAY_HANDLE 1244// »ñÈ¡ÊÓƵÐźŶªÊ§¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_SET_VILOST_HOLIDAY_HANDLE 1245// »ñÈ¡ÊÓƵÐźŶªÊ§¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ + +#define NET_DVR_GET_HIDE_HOLIDAY_HANDLE 1246// »ñÈ¡ÕڸǼÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_SET_HIDE_HOLIDAY_HANDLE 1247// ÉèÖÃÕڸǼÙÈÕ±¨¾¯´¦Àí·½Ê½ + +#define NET_DVR_GET_ALARMIN_HOLIDAY_HANDLE 1248// »ñÈ¡±¨¾¯ÊäÈë¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_SET_ALARMIN_HOLIDAY_HANDLE 1249// ÉèÖñ¨¾¯ÊäÈë¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_GET_ALARMOUT_HOLIDAY_HANDLE 1250// »ñÈ¡±¨¾¯Êä³ö¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_SET_ALARMOUT_HOLIDAY_HANDLE 1251// ÉèÖñ¨¾¯Êä³ö¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +#define NET_DVR_GET_HOLIDAY_RECORD 1252// »ñÈ¡¼ÙÈÕ¼Ïñ²ÎÊý +#define NET_DVR_SET_HOLIDAY_RECORD 1253// ÉèÖüÙÈÕ¼Ïñ²ÎÊý +#define NET_DVR_GET_NETWORK_BONDING 1254// »ñÈ¡BONDINGÍøÂç²ÎÊý +#define NET_DVR_SET_NETWORK_BONDING 1255// ÉèÖÃBONDINGÍøÂç²ÎÊý +#define NET_DVR_GET_LINK_STATUS 1256// »ñȡͨµÀIP¹¤×÷״̬ +#define NET_DVR_GET_DISK_QUOTA_CFG 1278// »ñÈ¡´ÅÅÌÅä¶îÐÅÏ¢ +#define NET_DVR_SET_DISK_QUOTA_CFG 1279// ÉèÖôÅÅÌÅä¶îÐÅÏ¢ +#define NET_DVR_GET_JPEG_CAPTURE_CFG 1280// »ñÈ¡DVRץͼÅäÖà +#define NET_DVR_SET_JPEG_CAPTURE_CFG 1281// ÉèÖÃDVRץͼÅäÖà +#define NET_DVR_GET_SCHED_CAPTURECFG 1282// »ñȡץͼ¼Æ»® +#define NET_DVR_SET_SCHED_CAPTURECFG 1283// ÉèÖÃץͼ¼Æ»® +#define NET_DVR_GET_VGA_PREVIEWCFG 1284// »ñÈ¡VGAÔ¤ÀÀÅäÖà +#define NET_DVR_SET_VGA_PREVIEWCFG 1285// ÉèÖÃVGAÔ¤ÀÀÅäÖà +#define NET_DVR_GET_VIDEO_INPUT_EFFECT 1286// »ñȡͨµÀÊÓƵÊäÈëͼÏñ²ÎÊý +#define NET_DVR_SET_VIDEO_INPUT_EFFECT 1287// ÉèÖÃͨµÀÊÓƵÊäÈëͼÏñ²ÎÊý + +#define NET_DVR_GET_STORAGE_SERVER_SWITCH 1290//»ñÈ¡´æ´¢·þÎñÆ÷¿ª¹Ø״̬ +#define NET_DVR_SET_STORAGE_SERVER_SWITCH 1291//ÉèÖô洢·þÎñÆ÷¿ª¹Ø״̬ + +#define NET_DVR_GET_DISK_QUOTA_CFG_V60 1292//»ñÈ¡´ÅÅÌÅä¶îÐÅÏ¢V60 +#define NET_DVR_SET_DISK_QUOTA_CFG_V60 1293//ÉèÖôÅÅÌÅä¶îÐÅÏ¢V60 + +#define NET_DVR_GET_OPTICAL_CHANNEL 1300//»ñÈ¡¹â¶Ë×ÓϵͳͨµÀ¹ØÁªÐÅÏ¢ +#define NET_DVR_SET_OPTICAL_CHANNEL 1301//ÉèÖùâ¶Ë×ÓϵͳͨµÀ¹ØÁªÐÅÏ¢ +#define NET_DVR_GET_FIBER_CASCADE 1302//»ñÈ¡¹âÏ˼¶ÁªÄ£Ê½ +#define NET_DVR_SET_FIBER_CASCADE 1303//ÉèÖùâÏ˼¶ÁªÄ£Ê½ +#define NET_DVR_GET_SPARTAN_STATUS 1304//»ñÈ¡³©ÏÔ״̬ +#define NET_DVR_SET_SPARTAN_STATUS 1305//ÉèÖó©ÏÔ״̬ +#define NET_DVR_GET_ETHERNET_CHANNEL 1306//»ñÈ¡¶Ë¿Ú¾ÛºÏ²ÎÊý +#define NET_DVR_SET_ETHERMET_CHANNEL 1307//ÉèÖö˿ھۺϲÎÊý +#define NET_DVR_OPTICAL_REBOOT 1320//¹â¶Ë»úÖØÆô +#define NET_DVR_SET_AUDIOCHAN_CFG 1321//ÉèÖÃÒôƵÇл»²ÎÊý +#define NET_DVR_GET_AUDIOCHAN_CFG 1322//»ñÈ¡ÒôƵÇл»²ÎÊý +//SDI¾ØÕó1.0 +#define NET_DVR_SET_MATRIX_BASE_CFG 1332 //ÉèÖþØÕó»ù±¾²ÎÊý +#define NET_DVR_GET_MATRIX_BASE_CFG 1333 //»ñÈ¡¾ØÕó»ù±¾²ÎÊý +#define NET_DVR_SWITCH_MATRIX_IO 1334 //¾ØÕóÊäÈëÊä³öÇл» +#define NET_DVR_GET_MATRIX_IO_RELATION 1335 //»ñÈ¡¾ØÕóÊäÈëÊäÈë¹ØÁª¹Øϵ + +#define NET_DVR_V6PSUBSYSTEMARAM_GET 1501//»ñÈ¡V6×ÓϵͳÅäÖà +#define NET_DVR_V6PSUBSYSTEMARAM_SET 1502//ÉèÖÃV6×ÓϵͳÅäÖà +#define NET_DVR_GET_ALLWINCFG 1503 //´°¿Ú²ÎÊý»ñÈ¡ + +#define NET_DVR_BIGSCREENASSOCIATECFG_GET 1511 //»ñÈ¡´óÆÁ¹ØÁªÅäÖà +#define NET_DVR_BIGSCREENASSOCIATECFG_SET 1512 //ÉèÖôóÆÁ¹ØÁªÅäÖà + +//1200Æð +#define NET_DVR_GETSCREENINFO 1601 //»ñÈ¡´óÆÁÐÅÏ¢ÅäÖà +#define NET_DVR_SETSCREENINFO 1602 //ÉèÖôóÆÁÐÅÏ¢ÅäÖà +#define NET_DVR_GET_SCREEN_WINCFG 1603//µ¥¸ö´°¿Ú²ÎÊý»ñÈ¡ +#define NET_DVR_LAYOUTLIST_GET 1605//»ñÈ¡²¼¾ÖÁбí +#define NET_DVR_SET_LAYOUTCFG 1606 //²¼¾ÖÉèÖà +#define NET_DVR_LAYOUTCTRL 1607//²¼¾Ö¿ØÖÆ£¬1-open£¬2-close +#define NET_DVR_INPUTLIST_GET 1608 //»ñÈ¡ÊäÈëÐźÅÔ´Áбí +#define NET_DVR_SET_INPUTSTREAMCFG 1609 //ÊäÈëÐźÅÔ´ÉèÖà +#define NET_DVR_OUTPUT_SET 1610 //Êä³ö²ÎÊýÉèÖà +#define NET_DVR_OUTPUT_GET 1611 //Êä³ö²ÎÊý»ñÈ¡ +#define NET_DVR_SET_OSDCFG 1612 //OSD²ÎÊýÉèÖà +#define NET_DVR_GET_OSDCFG 1613 //OSD²ÎÊý»ñÈ¡ +#define NET_DVR_BIGSCREEN_GETSERIAL 1614//»ñÈ¡´óÆÁ´®¿ÚÐÅÏ¢ +#define NET_DVR_GET_PLANLIST 1615//»ñÈ¡Ô¤°¸Áбí +#define NET_DVR_SET_PLAN 1616//ÉèÖÃÔ¤°¸ +#define NET_DVR_CTRL_PLAN 1617//¿ØÖÆÔ¤°¸ +#define NET_DVR_GET_DEVICE_RUN_STATUS 1618//»ñÈ¡É豸ÔËÐÐ״̬ +#define NET_DVR_GET_EXTERNAL_MATRIX_CFG 1619//»ñÈ¡¾ØÕóÐÅÏ¢ +#define NET_DVR_SET_EXTERNAL_MATRIX_CFG 1620//ÉèÖþØÕóÐÅÏ¢ +#define NET_DVR_GET_OUTPUT_SCREEN_RELATION 1621//»ñÈ¡Êä³öºÍÆÁÄ»µÄ°ó¶¨¹Øϵ +#define NET_DVR_SET_OUTPUT_SCREEN_RELATION 1622//ÉèÖÃÊä³öºÍÆÁÄ»µÄ°ó¶¨¹Øϵ +#define NET_DVR_GET_VCS_USER_CFG 1623//»ñÈ¡Óû§ÐÅÏ¢ÅäÖà +#define NET_DVR_SET_VCS_USER_CFG 1624//ÉèÖÃÓû§ÐÅÏ¢ÅäÖà +#define NET_DVR_CONTROL_SCREEN 1625//ÆÁÄ»¿ØÖÆ +#define NET_DVR_GET_EXTERNAL_MATRIX_CFG_V50 1626 //»ñÈ¡¾ØÕóÐÅÏ¢ +#define NET_DVR_SET_EXTERNAL_MATRIX_CFG_V50 1627 //ÉèÖþØÕóÐÅÏ¢ + +#define NET_DVR_GET_DEV_BASEINFO 1650//»ñÈ¡µ¥¸öÉ豸ÐÅÏ¢ +#define NET_DVR_SET_DEV_BASEINFO 1651//ÉèÖõ¥¸öÉ豸ÐÅÏ¢ +#define NET_DVR_GET_DEV_NETINFO 1652//»ñÈ¡É豸µÄÍøÂçÐÅÏ¢ +#define NET_DVR_SET_DEV_NETINFO 1653//ÉèÖÃÉ豸µÄÍøÂçÐÅÏ¢ +#define NET_DVR_GET_SIGNAL_SOURCE_INFO 1654//»ñÈ¡ÐźÅÔ´ÐÅÏ¢ +#define NET_DVR_SET_SIGNAL_SOURCE_INFO 1655//ÉèÖÃÐźÅÔ´ÐÅÏ¢ +#define NET_DVR_ADJUST_PIC_V40 1656//ͼÏñ΢µ÷ +#define NET_DVR_RESTORE_V40 1657//»Ö¸´Ä¬ÈϲÎÊý +#define NET_DVR_SET_NET_SIGNAL 1658//ÉèÖÃÍøÂçÐźÅÔ´ +#define NET_DVR_REBOOT_V40 1659//ÖØÆô +#define NET_DVR_CONTROL_PICTURE_V41 1660//ͼƬ¿ØÖÆV41 + +#define NET_DVR_GET_AUTO_REBOOT_CFG 1710//»ñÈ¡×Ô¶¯ÖØÆô²ÎÊý +#define NET_DVR_SET_AUTO_REBOOT_CFG 1711//ÉèÖÃ×Ô¶¯ÖØÆô²ÎÊý +#define NET_DVR_GET_TRUNK_USE_STATE 1713//»ñÈ¡Ö¸¶¨¸ÉÏßʹÓÃ״̬ +#define NET_DVR_SET_PTZ_CTRL_INFO 1714//ÉèÖÃPTZ¿ØÖƲÎÊý +#define NET_DVR_GET_PTZ_CTRL_INFO 1715//»ñÈ¡PTZ¿ØÖƲÎÊý +#define NET_DVR_GET_PTZ_STATUS 1716//»ñÈ¡PTZ״̬ +#define NET_DVR_GET_DISP_ROUTE_LIST 1717//»ñÈ¡ÏÔʾ·¾¶Áбí + +#define NET_DVR_GET_DEC_RESOURCE_LIST 1720//»ñÈ¡¿ÉÓýâÂë×ÊÔ´Áбí +#define NET_DVR_SET_DEC_RESOURCE_LIST 1721//Ô¤·ÖÅä½âÂë×ÊÔ´ +#define NET_DVR_GET_DEC_YUV 1722//»ñÈ¡½âÂëͨµÀ¹ØÁªYUVÊä³ö²ÎÊý +#define NET_DVR_SET_DEC_YUV 1723//ÉèÖýâÂëͨµÀ¹ØÁªYUVÊä³ö²ÎÊý +#define NET_DVR_GET_DEC_RESOUCE 1724//ÏòÊÓƵ×ÛºÏƽ̨ÉêÇë½âÂë×ÊÔ´ +#define NET_DVR_FREE_DEC_RESOURCE 1725//ÊͷŽâÂë×ÊÔ´ + +#define NET_DVR_SET_VIDEOWALLDISPLAYMODE 1730//ÉèÖõçÊÓǽƴ½Óģʽ +#define NET_DVR_GET_VIDEOWALLDISPLAYMODE 1731//»ñÈ¡µçÊÓǽƴ½Óģʽ +#define NET_DVR_GET_VIDEOWALLDISPLAYNO 1732//»ñÈ¡É豸ÏÔʾÊä³öºÅ +#define NET_DVR_SET_VIDEOWALLDISPLAYPOSITION 1733//ÉèÖÃÏÔʾÊä³öλÖòÎÊý +#define NET_DVR_GET_VIDEOWALLDISPLAYPOSITION 1734//»ñÈ¡ÏÔʾÊä³öλÖòÎÊý +#define NET_DVR_GET_VIDEOWALLWINDOWPOSITION 1735//»ñÈ¡µçÊÓǽ´°¿Ú²ÎÊý +#define NET_DVR_SET_VIDEOWALLWINDOWPOSITION 1736//ÉèÖõçÊÓǽ´°¿Ú²ÎÊý +#define NET_DVR_VIDEOWALLWINDOW_CLOSEALL 1737//µçÊÓǽ¹Ø±ÕËùÓд°¿Ú +#define NET_DVR_SET_VIRTUALLED 1738//ÐéÄâLEDÉèÖà +#define NET_DVR_GET_VIRTUALLED 1739//ÐéÄâLED»ñÈ¡ +#define NET_DVR_GET_IMAGE_CUT_MODE 1740//»ñȡͼÏñÇиîģʽ +#define NET_DVR_SET_IMAGE_CUT_MODE 1741//ÉèÖÃͼÏñÇиîģʽ +#define NET_DVR_GET_USING_SERIALPORT 1742//»ñÈ¡µ±Ç°Ê¹Óô®¿Ú +#define NET_DVR_SET_USING_SERIALPORT 1743//ÉèÖõ±Ç°Ê¹Óô®¿Ú +#define NET_DVR_SCENE_CONTROL 1744//³¡¾°¿ØÖÆ +#define NET_DVR_GET_CURRENT_SCENE 1745//»ñÈ¡µ±Ç°³¡¾°ºÅ +#define NET_DVR_GET_VW_SCENE_PARAM 1746//»ñÈ¡µçÊÓǽ³¡¾°Ä£Ê½²ÎÊý +#define NET_DVR_SET_VW_SCENE_PARAM 1747//ÉèÖõçÊÓǽ³¡¾°Ä£Ê½²ÎÊý +#define NET_DVR_DISPLAY_CHANNO_CONTROL 1748//µçÊÓǽÏÔʾ±àºÅ¿ØÖÆ +#define NET_DVR_GET_WIN_DEC_INFO 1749//»ñÈ¡´°¿Ú½âÂëÐÅÏ¢£¨ÅúÁ¿£© +#define NET_DVR_RESET_VIDEOWALLDISPLAYPOSITION 1750 //½â³ýµçÊÓǽÊä³ö½Ó¿Ú°ó¶¨ +#define NET_DVR_SET_VW_AUDIO_CFG 1752 //ÉèÖÃÒôƵÇл»²ÎÊý +#define NET_DVR_GET_VW_AUDIO_CFG 1753 //»ñÈ¡ÒôƵÇл»²ÎÊý +#define NET_DVR_GET_GBT28181_DECCHANINFO_CFG 1754 //»ñÈ¡GBT28181ЭÒé½ÓÈëÉ豸µÄ½âÂëͨµÀÐÅÏ¢ +#define NET_DVR_SET_GBT28181_DECCHANINFO_CFG 1755 //ÉèÖÃGBT28181ЭÒé½ÓÈëÉ豸µÄ½âÂëͨµÀÐÅÏ¢ +#define NET_DVR_SET_MAINBOARD_SERIAL 1756 //ÉèÖÃÖ÷¿Ø°å´®¿Ú²ÎÊý +#define NET_DVR_GET_MAINBOARD_SERIAL 1757 //»ñÈ¡Ö÷¿Ø°å´®¿Ú²ÎÊý +#define NET_DVR_GET_SUBBOARD_INFO 1758 //»ñÈ¡×Ó°åÐÅÏ¢ +#define NET_DVR_GET_SUBBOARD_EXCEPTION 1759 //»ñÈ¡Òì³£×Ó°åÒì³£ÐÅÏ¢ + +#define NET_DVR_GET_CAMERACHAN_SERIALCFG 1760 //»ñÈ¡CameraͨµÀ°ó¶¨´®¿ÚÅäÖà +#define NET_DVR_SET_CAMERACHAN_SERIALCFG 1761 //ÉèÖÃCameraͨµÀ°ó¶¨´®¿ÚÅäÖà +#define NET_DVR_GET_MATRIX_STATUS 1762 //»ñÈ¡ÊÓƵ×ÛºÏƽ̨״̬ +#define NET_SET_MULTIFUNCTION_SERIALCFG 1763 //ÉèÖö๦ÄÜ´®¿ÚÅäÖà +#define NET_GET_MULTIFUNCTION_SERIALCFG 1764 //»ñÈ¡¶à¹¦ÄÜ´®¿ÚÅäÖà +#define NET_DVR_PTZ_3D_SPEED 1765 // 3ά´øËٶȵÄÔÆ̨¿ØÖÆ + +#define NET_DVR_GET_SIGNAL_JOINT 1766 //»ñÈ¡ÐźÅÔ´°ó¶¨ÅäÖà +#define NET_DVR_SET_SIGNAL_JOINT 1767 //ÉèÖÃÐźÅÔ´°ó¶¨ÅäÖà +#define NET_DVR_SIGNAL_CUT 1768 //ÐźÅÔ´²Ã¼ô +#define NET_DVR_DYNAMIC_DECODE_BATCH 1769 //ÅúÁ¿¶¯Ì¬½âÂë +#define NET_DVR_DECSWITCH_SET_BATCH 1770 //ÅúÁ¿ÉèÖýâÂëͨµÀ¿ª¹Ø +#define NET_DVR_DECSWITCH_GET_BATCH 1771 //ÅúÁ¿»ñÈ¡½âÂëͨµÀ¿ª¹Ø +#define NET_DVR_GET_ALL_SIGNAL_JOINT 1772 //»ñÈ¡ËùÓÐÐźÅÔ´°ó¶¨ÅäÖà +#define NET_DVR_GET_PLAYING_PLAN 1773 //»ñÈ¡ÕýÔÚÖ´ÐÐÔ¤°¸ +#define NET_DVR_WALL_RELATION_GET 1774 //»ñÈ¡É豸ǽÓëÎïÀíǽµÄ¹ØÁª +#define NET_DVR_WALL_RELATION_SET 1775 //ÉèÖÃÉ豸ǽÓëÎïÀíǽµÄ¹ØÁª +#define NET_DVR_SET_INPUTSTREAMCFG_V40 1776 //ÊäÈëÐźÅÔ´ÉèÖà +#define NET_DVR_PTZCFG_INPUTSTREAM_GET 1777 //»ñÈ¡ÊäÈëÔ´·´ÏòÔÆ̨¿ØÖÆÅäÖà +#define NET_DVR_PTZCFG_INPUTSTREAM_SET 1778 //ÉèÖÃÊäÈëÔ´·´ÏòÔÆ̨¿ØÖÆÅäÖà +#define NET_DVR_SIGNAL_CUTPARAM_GET 1779 //»ñÈ¡ÐźÅÔ´²Ã¼ô²ÎÊý + +#define NET_DVR_GET_SUBSYSTEM_NETCFG 1780 //»ñÈ¡×ÓϵͳÍø¿¨²ÎÊý +#define NET_DVR_SET_SUBSYSTEM_NETCFG 1781 //ÉèÖÃ×ÓϵͳÍø¿¨²ÎÊý +#define NET_DVR_DEL_SIGNAL_JOINT 1782 //ɾ³ýÆ´½ÓÐźÅÔ´ + +#define NET_DVR_GET_PICTURE_INFO 1783 //»ñȡͼƬÐÅÏ¢ +#define NET_DVR_SET_PICTURE_INFO 1784 //ÉèÖÃͼƬÐÅÏ¢ +#define NET_DVR_GET_VIDEO_INFO 1785 //»ñÈ¡ÊÓƵÐÅÏ¢ +#define NET_DVR_SET_VIDEO_INFO 1786 //ÉèÖÃÊÓƵÐÅÏ¢ +#define NET_DVR_SET_PLAYLIST 1787 //ÉèÖò¥·ÅÁбí +#define NET_DVR_GET_PLAYLIST 1788 //»ñÈ¡²¥·ÅÁбí +#define NET_DVR_GET_ALL_PLAYLIST 1789 //»ñÈ¡ËùÓв¥·ÅÁбí +#define NET_DVR_PLAYITEM_CONTROL 1790 //²¥·ÅÏî²Ù×÷ +#define NET_DVR_SET_PLAYPLAN_TEMPLATE 1791 //ÉèÖò¥·Å¼Æ»®Ä£°å +#define NET_DVR_GET_PLAYPLAN_TEMPLATE 1792 //»ñÈ¡²¥·Å¼Æ»® +#define NET_DVR_GET_ALL_PLAYPLAN_TEMPLATE 1793 //»ñÈ¡ËùÓв¥·Å¼Æ»® +#define NET_DVR_SET_WINDOW_PLAYPLAN 1794 //ÉèÖô°¿Ú²¥·Å¼Æ»® +#define NET_DVR_GET_WINDOW_PLAYPLAN 1795 //»ñÈ¡´°¿Ú²¥·Å¼Æ»® +#define NET_DVR_TOPLAY_ITEM 1796 //Ö¸¶¨²¥·Å +#define NET_DVR_DEVICE_PLAY_CONTROL 1797 //É豸²¥·Å¿ØÖÆ +#define NET_DVR_GET_PLAY_INFO 1798 //»ñÈ¡µ±Ç°²¥·ÅÐÅÏ¢ +#define NET_DVR_GET_ALL_PICTURE_INFO 1799 //»ñȡͼƬÐÅÏ¢ +#define NET_DVR_GET_ALL_VIDEO_INFO 1800 //»ñÈ¡ÊÓƵÐÅÏ¢ +#define NET_DVR_DELETE_VIDEO_FILE 1801 //ɾ³ýÊÓƵ + + +#define NET_DVR_GET_ALARMHOSTSUBSYSTEM_CFG 2001//±¨¾¯Ö÷»ú»ñÈ¡×Óϵͳ²ÎÊý +#define NET_DVR_SET_ALARMHOSTSUBSYSTEM_CFG 2002//±¨¾¯Ö÷»úÉèÖÃ×Óϵͳ²ÎÊý +#define NET_DVR_GETEXTENDALARMININFO 2003//»ñÈ¡·ÀÇø±àºÅÐÅÏ¢ +#define NET_DVR_MODIFYALARMINNO 2004//Ð޸ķÀÇø±àºÅÐÅÏ¢ +#define NET_DVR_GET_ALARMHOST_WIRELESS_NETWORK_CFG 2005//»ñÈ¡ÎÞÏßÍøÂç²ÎÊýÅäÖà +#define NET_DVR_SET_ALARMHOST_WIRELESS_NETWORK_CFG 2006//ÉèÖÃÎÞÏßÍøÂç²ÎÊýÅäÖà +#define NET_DVR_GET_ALARMHOST_NETCFG 2007//»ñÈ¡ÍøÂç²ÎÊýÅäÖà +#define NET_DVR_SET_ALARMHOST_NETCFG 2008//ÉèÖÃÍøÂç²ÎÊýÅäÖà +#define NET_DVR_GET_LED_SCREEN_CFG 2009// »ñÈ¡LEDÆÁÄ»²ÎÊý +#define NET_DVR_SET_LED_SCREEN_CFG 2010// ÉèÖÃLEDÆÁÄ»²ÎÊý +#define NET_DVR_GET_LED_CONTENT_CFG 2011// »ñÈ¡LEDÆÁÏÔÄÚÈÝ +#define NET_DVR_SET_LED_CONTENT_CFG 2012// ÉèÖÃLEDÆÁÏÔÄÚÈÝ +#define NET_DVR_TURNON_LED 2013// ´ò¿ªLEDÆÁ +#define NET_DVR_TURNOFF_LED 2014// ¹Ø±ÕLEDÆÁ +#define NET_DVR_GET_LED_TIMER_SWITCH 2015// »ñÈ¡LEDÆÁ¶¨Ê±¿ª¹Ø²ÎÊý +#define NET_DVR_SET_LED_TIMER_SWITCH 2016// ÉèÖÃLEDÆÁ¶¨Ê±¿ª¹Ø²ÎÊý +#define NET_DVR_SET_LED_BRIGHTNESS 2017// ÊÖ¶¯ÉèÖÃLEDÆÁÁÁ¶È +#define NET_DVR_GET_LED_TIMER_BRIGHTNESS 2018//ÉèÖ÷ÖʱLEDÆÁÁÁ¶È +#define NET_DVR_SET_LED_TIMER_BRIGHTNESS 2019//»ñÈ¡·ÖʱLEDÆÁÁÁ¶È +#define NET_DVR_LED_CHECKTIME 2020//LEDУʱ +#define NET_DVR_GET_ALARMHOST_AUDIO_ASSOCIATE_ALARM 2021//»ñÈ¡ÒôƵ¸úË汨¾¯Ê¼þ +#define NET_DVR_SET_ALARMHOST_AUDIO_ASSOCIATE_ALARM 2022//ÉèÖÃÒôƵ¸úË汨¾¯Ê¼þ +#define NET_DVR_GET_LED_STATUS 2023//»ñÈ¡LEDÆÁ״̬ +#define NET_DVR_CLOSE_SUBSYSTEM_FAULT_ALARM 2027//¹Ø±Õ×Óϵͳ¹ÊÕÏÌáʾÒô +#define NET_DVR_SET_SUBSYSTEM_BYPASS 2028//×ÓϵͳÅÔ· +#define NET_DVR_CANCEL_SUBSYSTEM_BYPASS 2029//×ÓϵͳÅÔ·»Ö¸´ + +#define NET_DVR_GET_ALARMHOST_SUBSYSTEM_CFG_EX 2030//»ñÈ¡×ÓϵͳÀ©Õ¹²ÎÊý +#define NET_DVR_SET_ALARMHOST_SUBSYSTEM_CFG_EX 2031//ÉèÖÃ×ÓϵͳÀ©Õ¹²ÎÊý +#define NET_DVR_GET_ALARMHOST_PRINTER_CFG 2032//»ñÈ¡´òÓ¡»ú´òӡʹÄÜ +#define NET_DVR_SET_ALARMHOST_PRINTER_CFG 2033//ÉèÖôòÓ¡»ú´òӡʹÄÜ +#define NET_DVR_GET_ALARMHOST_ZONE_LIST_IN_SUBSYSTEM 2034//»ñÈ¡Ö¸¶¨×ÓϵͳÄÚµÄËùÓзÀÇø +#define NET_DVR_GET_ALARMHOST_TRIGGER_LIST 2035//»ñÈ¡ËùÓд¥·¢Æ÷ +#define NET_DVR_ARM_ALARMHOST_SUBSYSTEM 2036//°´²¼·ÀÀàÐͶÔ×Óϵͳ²¼·À +#define NET_DVR_GET_ALARMHOST_EVENT_TRIG_ALARMOUT_CFG 2037// »ñȡʼþ´¥·¢±¨¾¯Êä³öÅäÖà +#define NET_DVR_SET_ALARMHOST_EVENT_TRIG_ALARMOUT_CFG 2038// ÉèÖÃʼþ´¥·¢±¨¾¯Êä³öÅäÖà +#define NET_DVR_GET_ALARMHOST_FAULT_CFG 2039// »ñÈ¡¹ÊÕÏ´¦ÀíÅäÖà +#define NET_DVR_SET_ALARMHOST_FAULT_CFG 2040// ÉèÖùÊÕÏ´¦ÀíÅäÖà +#define NET_DVR_SEARCH_ARMHOST_EXTERNAL_MODULE 2041//×Ô¶¯ËÑË÷ +#define NET_DVR_REGISTER_ALARMHOST_EXTERNAL_MODULE 2042//×Ô¶¯×¢²á +#define NET_DVR_CLOSE_ALARMHOST_OVERALL_FAULT_ALARM 2043//¹Ø±ÕÈ«¾Ö¹ÊÕÏÌáʾÒô + +#define NET_DVR_GET_SAFETYCABIN_WORK_MODE 2044 //»ñÈ¡·À»¤²Õ¹¤×÷ģʽ²ÎÊý +#define NET_DVR_SET_SAFETYCABIN_WORK_MODE 2045 //ÉèÖ÷À»¤²Õ¹¤×÷ģʽ²ÎÊý +#define NET_DVR_GET_SAFETYCABIN_PERSON_SIGNAL_CFG 2046 //»ñÈ¡·À»¤²ÕÈËÐźÅ̽²â²ÎÊý +#define NET_DVR_SET_SAFETYCABIN_PERSON_SIGNAL_CFG 2047 //ÉèÖ÷À»¤²ÕÈËÐźÅ̽²â²ÎÊý + +#define NET_DVR_GET_ALARMHOST_MODULE_CFG 2048//»ñÈ¡Ä£¿éÐÅÏ¢ +//#define NET_DVR_SET_ALARMHOST_MODULE_CFG 2049//ÉèÖÃÄ£¿éÐÅÏ¢(Ô¤Áô) + +#define NET_DVR_GET_ALARMHOST_EXTERNAL_DEVICE_STATE 2050//»ñÈ¡485Íâ½ÓÉ豸״̬ +#define NET_DVR_SET_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE 2051//ÉèÖÃÍâ½ÓÉ豸±¨¾¯ÏÞÖµ +#define NET_DVR_GET_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE 2052//»ñÈ¡Íâ½ÓÉ豸±¨¾¯ÏÞÖµ +#define NET_DVR_GET_ALARMHOST_SENSOR_JOINT_CFG 2053// »ñÈ¡Ä£ÄâÁ¿¹ØÁªÅäÖà +#define NET_DVR_SET_ALARMHOST_SENSOR_JOINT_CFG 2054// ÉèÖÃÄ£ÄâÁ¿¹ØÁªÅäÖà +#define NET_DVR_SET_ALARMHOST_RS485_SLOT_CFG 2055// ÉèÖñ¨¾¯Ö÷»ú485²Ûλ²ÎÊý +#define NET_DVR_GET_ALARMHOST_RS485_SLOT_CFG 2056// »ñÈ¡±¨¾¯Ö÷»ú485²Ûλ²ÎÊý + +#define NET_DVR_GET_ALL_VARIABLE_INFO 2057 // »ñÈ¡ËùÓбäÁ¿ÔªËØÐÅÏ¢ +#define NET_DVR_GET_ALARM_POINT_CFG 2058 // »ñÈ¡µãºÅÐÅÏ¢ +#define NET_DVR_SET_ALARM_POINT_CFG 2059 // ÉèÖõãºÅÐÅÏ¢ +#define NET_DVR_GET_HISTORY_VALUE 2060 // »ñÈ¡ÀúÊ·Êý¾Ý +#define NET_DVR_GET_ALARMHOST_ALARM_MODE 2061 // »ñÈ¡Êý¾ÝÉÏ´«·½Ê½ +#define NET_DVR_SET_ALARMHOST_ALARM_MODE 2062 // ÉèÖÃÊý¾ÝÉÏ´«·½Ê½ +#define NET_DVR_GET_ALARMHOST_SENSOR_VALUE 2063 // »ñÈ¡Ä£ÄâÁ¿ÊµÊ±Êý¾Ý + +#define NET_DVR_GET_ALARMHOST_REPORT_CENTER_V40 2064 // »ñÈ¡Êý¾ÝÉÏ´«·½Ê½ +#define NET_DVR_SET_ALARMHOST_REPORT_CENTER_V40 2065 // ÉèÖÃÊý¾ÝÉÏ´«·½Ê½ +#define NET_DVR_GET_OUTPUT_SCHEDULE_RULECFG 2068 // »ñȡʱ¿ØÊä³ö²ÎÊý +#define NET_DVR_SET_OUTPUT_SCHEDULE_RULECFG 2069 // ÉèÖÃʱ¿ØÊä³ö²ÎÊý +#define NET_DVR_GET_CMS_CFG 2070 +#define NET_DVR_SET_CMS_CFG 2071 + +#define NET_DVR_GET_PASSTHROUGH_CAP 2073 //»ñÈ¡É豸͸´«ÄÜÁ¦¼¯ + +#define NET_DVR_GET_ALARMHOST_MAIN_STATUS_V40 2072 // »ñÈ¡Ö÷Ҫ״̬V40 +#define NET_DVR_GET_ALARMHOST_MAIN_STATUS_V51 2083 // »ñÈ¡Ö÷Ҫ״̬V51 + +/*************************************ÊÓƵ±¨¾¯Ö÷»ú1.3 begin*************************************/ +#define NET_DVR_GET_ALARM_CAPTRUE_CFG 2074 //»ñÈ¡±¨¾¯×¥Í¼²ÎÊýÅäÖà +#define NET_DVR_SET_ALARM_CAPTRUE_CFG 2075 //ÉèÖñ¨¾¯×¥Í¼²ÎÊýÅäÖà +#define NET_DVR_GET_ONE_OUTPUT_SCH_RULECFG_V40 2078 // »ñÈ¡µ¥¸öʱ¿ØÊä³ö²ÎÊýV40 +#define NET_DVR_SET_ONE_OUTPUT_SCH_RULECFG_V40 2079 // ÉèÖõ¥¸öʱ¿ØÊä³ö²ÎÊýV40 +#define NET_DVR_GET_OUTPUT_SCHEDULE_RULECFG_V40 2080 // »ñȡʱ¿ØÊä³ö²ÎÊýV40 +#define NET_DVR_SET_OUTPUT_SCHEDULE_RULECFG_V40 2081 // ÉèÖÃʱ¿ØÊä³ö²ÎÊýV40 +#define NET_DVR_ALARMHOST_CLOSE_SUBSYSTEM 2082 //¶Ô×Óϵͳ³··À²Ù×÷ +/*************************************ÊÓƵ±¨¾¯Ö÷»ú1.3 end**************************************/ + + +#define NET_DVR_GET_WEEK_PLAN_CFG 2100 //»ñÈ¡ÃÅ״̬Öܼƻ®²ÎÊý +#define NET_DVR_SET_WEEK_PLAN_CFG 2101 //ÉèÖÃÃÅ״̬Öܼƻ®²ÎÊý +#define NET_DVR_GET_DOOR_STATUS_HOLIDAY_PLAN 2102 //»ñÈ¡ÃÅ״̬¼ÙÈռƻ®²ÎÊý +#define NET_DVR_SET_DOOR_STATUS_HOLIDAY_PLAN 2103 //ÉèÖÃÃÅ״̬¼ÙÈռƻ®²ÎÊý +#define NET_DVR_GET_DOOR_STATUS_HOLIDAY_GROUP 2104 //»ñÈ¡ÃÅ״̬¼ÙÈÕ×é²ÎÊý +#define NET_DVR_SET_DOOR_STATUS_HOLIDAY_GROUP 2105 //ÉèÖÃÃÅ״̬¼ÙÈÕ×é²ÎÊý +#define NET_DVR_GET_DOOR_STATUS_PLAN_TEMPLATE 2106 //»ñÈ¡ÃÅ״̬¼Æ»®Ä£°å²ÎÊý +#define NET_DVR_SET_DOOR_STATUS_PLAN_TEMPLATE 2107 //ÉèÖÃÃÅ״̬¼Æ»®Ä£°å²ÎÊý +#define NET_DVR_GET_DOOR_CFG 2108 //»ñÈ¡ÃŲÎÊý +#define NET_DVR_SET_DOOR_CFG 2109 //ÉèÖÃÃŲÎÊý +#define NET_DVR_GET_DOOR_STATUS_PLAN 2110 //»ñÈ¡ÃÅ״̬¼Æ»®²ÎÊý +#define NET_DVR_SET_DOOR_STATUS_PLAN 2111 //ÉèÖÃÃÅ״̬¼Æ»®²ÎÊý +#define NET_DVR_GET_GROUP_CFG 2112 //»ñȡȺ×é²ÎÊý +#define NET_DVR_SET_GROUP_CFG 2113 //ÉèÖÃȺ×é²ÎÊý +#define NET_DVR_GET_MULTI_CARD_CFG 2114 //»ñÈ¡¶àÖØ¿¨²ÎÊý +#define NET_DVR_SET_MULTI_CARD_CFG 2115 //ÉèÖöàÖØ¿¨²ÎÊý +#define NET_DVR_GET_CARD_CFG 2116 //»ñÈ¡¿¨²ÎÊý +#define NET_DVR_SET_CARD_CFG 2117 //ÉèÖÿ¨²ÎÊý +#define NET_DVR_CLEAR_ACS_PARAM 2118 //Çå¿ÕÃŽûÖ÷»ú²ÎÊý +#define NET_DVR_GET_SNEAK_CFG 2119 //»ñÈ¡·´Ç±»Ø²ÎÊý +#define NET_DVR_SET_SNEAK_CFG 2120 //ÉèÖ÷´Ç±»Ø²ÎÊý +#define NET_DVR_GET_MULTI_DOOR_INTERLOCK_CFG 2121 //»ñÈ¡¶àÃÅ»¥Ëø²ÎÊý +#define NET_DVR_SET_MULTI_DOOR_INTERLOCK_CFG 2122 //ÉèÖöàÃÅ»¥Ëø²ÎÊý +#define NET_DVR_GET_ACS_WORK_STATUS 2123 //»ñÈ¡ÃŽûÖ÷»ú¹¤×÷״̬ +#define NET_DVR_GET_VERIFY_WEEK_PLAN 2124 //»ñÈ¡¶Á¿¨Æ÷ÑéÖ¤·½Ê½Öܼƻ®²ÎÊý +#define NET_DVR_SET_VERIFY_WEEK_PLAN 2125 //ÉèÖöÁ¿¨Æ÷ÑéÖ¤·½Ê½Öܼƻ®²ÎÊý +#define NET_DVR_GET_CARD_RIGHT_WEEK_PLAN 2126 //»ñÈ¡¿¨È¨ÏÞÖܼƻ®²ÎÊý +#define NET_DVR_SET_CARD_RIGHT_WEEK_PLAN 2127 //ÉèÖÿ¨È¨ÏÞÖܼƻ®²ÎÊý +#define NET_DVR_GET_VERIFY_HOLIDAY_PLAN 2128 //»ñÈ¡¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼ÙÈռƻ®²ÎÊý +#define NET_DVR_SET_VERIFY_HOLIDAY_PLAN 2129 //ÉèÖöÁ¿¨Æ÷ÑéÖ¤·½Ê½¼ÙÈռƻ®²ÎÊý +#define NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN 2130 //»ñÈ¡¿¨È¨ÏÞ¼ÙÈռƻ®²ÎÊý +#define NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN 2131 //ÉèÖÿ¨È¨ÏÞ¼ÙÈռƻ®²ÎÊý +#define NET_DVR_GET_VERIFY_HOLIDAY_GROUP 2132 //»ñÈ¡¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼ÙÈÕ×é²ÎÊý +#define NET_DVR_SET_VERIFY_HOLIDAY_GROUP 2133 //ÉèÖöÁ¿¨Æ÷ÑéÖ¤·½Ê½¼ÙÈÕ×é²ÎÊý +#define NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP 2134 //»ñÈ¡¿¨È¨ÏÞ¼ÙÈÕ×é²ÎÊý +#define NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP 2135 //ÉèÖÿ¨È¨ÏÞ¼ÙÈÕ×é²ÎÊý +#define NET_DVR_GET_VERIFY_PLAN_TEMPLATE 2136 //»ñÈ¡¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼Æ»®Ä£°å²ÎÊý +#define NET_DVR_SET_VERIFY_PLAN_TEMPLATE 2137 //ÉèÖöÁ¿¨Æ÷ÑéÖ¤·½Ê½¼Æ»®Ä£°å²ÎÊý +#define NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE 2138 //»ñÈ¡¿¨È¨Ï޼ƻ®Ä£°å²ÎÊý +#define NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE 2139 //ÉèÖÿ¨È¨Ï޼ƻ®Ä£°å²ÎÊý +#define NET_DVR_GET_CARD_READER_CFG 2140 //»ñÈ¡¶Á¿¨Æ÷²ÎÊý +#define NET_DVR_SET_CARD_READER_CFG 2141 //ÉèÖöÁ¿¨Æ÷²ÎÊý +#define NET_DVR_GET_CARD_READER_PLAN 2142 //»ñÈ¡¶Á¿¨Æ÷ÑéÖ¤¼Æ»®²ÎÊý +#define NET_DVR_SET_CARD_READER_PLAN 2143 //ÉèÖöÁ¿¨Æ÷ÑéÖ¤¼Æ»®²ÎÊý +#define NET_DVR_GET_CASE_SENSOR_CFG 2144 //»ñȡʼþ´¥·¢Æ÷²ÎÊý +#define NET_DVR_SET_CASE_SENSOR_CFG 2145 //ÉèÖÃʼþ´¥·¢Æ÷²ÎÊý +#define NET_DVR_GET_CARD_READER_ANTI_SNEAK_CFG 2146 //»ñÈ¡¶Á¿¨Æ÷·´Ç±»Ø²ÎÊý +#define NET_DVR_SET_CARD_READER_ANTI_SNEAK_CFG 2147 //ÉèÖöÁ¿¨Æ÷·´Ç±»Ø²ÎÊý +#define NET_DVR_GET_PHONE_DOOR_RIGHT_CFG 2148 //»ñÈ¡ÊÖ»ú¹ØÁªÃÅȨÏÞ²ÎÊý +#define NET_DVR_SET_PHONE_DOOR_RIGHT_CFG 2149 //»ñÈ¡ÊÖ»ú¹ØÁªÃÅȨÏÞ²ÎÊý +#define NET_DVR_GET_FINGERPRINT_CFG 2150 //»ñÈ¡Ö¸ÎƲÎÊý +#define NET_DVR_SET_FINGERPRINT_CFG 2151 //ÉèÖÃÖ¸ÎƲÎÊý +#define NET_DVR_DEL_FINGERPRINT_CFG 2152 //ɾ³ýÖ¸ÎƲÎÊý +#define NET_DVR_GET_EVENT_CARD_LINKAGE_CFG 2153 //»ñȡʼþ¿¨ºÅÁª¶¯ÅäÖòÎÊý +#define NET_DVR_SET_EVENT_CARD_LINKAGE_CFG 2154 //ÉèÖÃʼþ¿¨ºÅÁª¶¯ÅäÖòÎÊý +#define NET_DVR_GET_ANTI_SNEAK_HOST_CFG 2155 //»ñÈ¡Ö÷»ú×鷴DZ»Ø²ÎÊý +#define NET_DVR_SET_ANTI_SNEAK_HOST_CFG 2156 //ÉèÖÃÖ÷»ú×鷴DZ»Ø²ÎÊý +#define NET_DVR_GET_READER_ANTI_SNEAK_HOST_CFG 2157 //»ñÈ¡Ö÷»ú×é¶Á¿¨Æ÷·´Ç±»Ø²ÎÊý +#define NET_DVR_SET_READER_ANTI_SNEAK_HOST_CFG 2158 //ÉèÖÃÖ÷»ú×é¶Á¿¨Æ÷·´Ç±»Ø²ÎÊý +#define NET_DVR_GET_ACS_CFG 2159 //»ñÈ¡ÃŽûÖ÷»ú²ÎÊý +#define NET_DVR_SET_ACS_CFG 2160 //ÉèÖÃÃŽûÖ÷»ú²ÎÊý +#define NET_DVR_GET_CARD_PASSWD_CFG 2161 //»ñÈ¡¿¨ÃÜÂ뿪ÃÅʹÄÜÅäÖà +#define NET_DVR_SET_CARD_PASSWD_CFG 2162 //ÉèÖÿ¨ÃÜÂ뿪ÃÅʹÄÜÅäÖà +#define NET_DVR_GET_CARD_USERINFO_CFG 2163 //»ñÈ¡¿¨ºÅ¹ØÁªÓû§ÐÅÏ¢²ÎÊý +#define NET_DVR_SET_CARD_USERINFO_CFG 2164 //ÉèÖÿ¨ºÅ¹ØÁªÓû§ÐÅÏ¢²ÎÊý + +#define NET_DVR_GET_ACS_EXTERNAL_DEV_CFG 2165 //»ñÈ¡ÃŽûÖ÷»ú´®¿ÚÍâÉè²ÎÊý +#define NET_DVR_SET_ACS_EXTERNAL_DEV_CFG 2166 //ÉèÖÃÃŽûÖ÷»ú´®¿ÚÍâÉè²ÎÊý +#define NET_DVR_GET_PERSONNEL_CHANNEL_CFG 2167 //»ñÈ¡ÈËԱͨµÀ²ÎÊý +#define NET_DVR_SET_PERSONNEL_CHANNEL_CFG 2168 //ÉèÖÃÈËԱͨµÀ²ÎÊý +#define NET_DVR_SET_PLATFORM_VERIFY_CFG 2169 //Ï·¢Æ½Ì¨ÈÏÖ¤½á¹û +#define NET_DVR_GET_PERSON_STATISTICS_CFG 2170 //»ñÈ¡ÈËÊýͳ¼Æ²ÎÊý +#define NET_DVR_SET_PERSON_STATISTICS_CFG 2171 //ÉèÖÃÈËÊýͳ¼Æ²ÎÊý +#define NET_DVR_GET_ACS_SCREEN_DISPLAY_CFG 2172 //»ñÈ¡ÆÁÄ»×Ö·û´®ÏÔʾ²ÎÊý +#define NET_DVR_SET_ACS_SCREEN_DISPLAY_CFG 2173 //ÉèÖÃÆÁÄ»×Ö·û´®ÏÔʾ²ÎÊý +#define NET_DVR_GET_GATE_TIME_CFG 2174 //»ñÈ¡ÈËԱͨµÀÕ¢ÃÅʱ¼ä²ÎÊý +#define NET_DVR_SET_GATE_TIME_CFG 2175 //ÉèÖÃÈËԱͨµÀÕ¢ÃÅʱ¼ä²ÎÊý +#define NET_DVR_GET_LOCAL_CONTROLLER_STATUS 2176 //»ñÈ¡¾ÍµØ¿ØÖÆÆ÷״̬ +#define NET_DVR_GET_ONLINE_LOCAL_CONTROLLER 2177 //ËÑË÷ÔÚÏ߾͵ؿØÖÆÆ÷ +#define NET_DVR_GET_CARD_CFG_V50 2178 //»ñȡп¨²ÎÊý(V50) +#define NET_DVR_SET_CARD_CFG_V50 2179 //ÉèÖÃп¨²ÎÊý(V50) +#define NET_DVR_GET_ACS_WORK_STATUS_V50 2180 //»ñÈ¡ÃŽûÖ÷»ú¹¤×÷״̬(V50) +#define NET_DVR_GET_EVENT_CARD_LINKAGE_CFG_V50 2181 //»ñȡʼþ¿¨ºÅÁª¶¯ÅäÖòÎÊý(V50) +#define NET_DVR_SET_EVENT_CARD_LINKAGE_CFG_V50 2182 //ÉèÖÃʼþ¿¨ºÅÁª¶¯ÅäÖòÎÊý(V50) +#define NET_DVR_GET_FINGERPRINT_CFG_V50 2183 //»ñÈ¡Ö¸ÎƲÎÊýV50 +#define NET_DVR_SET_FINGERPRINT_CFG_V50 2184 //ÉèÖÃÖ¸ÎƲÎÊýV50 + +#define NET_DVR_GET_SAFETYCABIN_STATE 2197 //»ñÈ¡·À»¤²Õ״̬ +#define NET_DVR_GET_RS485_CASCADE_CFG 2198 //»ñÈ¡Rs485¼¶ÁªÉ豸ÅäÖà +#define NET_DVR_SET_RS485_CASCADE_CFG 2199 //ÉèÖÃRs485¼¶ÁªÉ豸ÅäÖà + +/*************************************ÊÓƵ±¨¾¯Ö÷»ú2.0 begin*************************************/ +#define NET_DVR_GET_REMOTECONTROLLER_PERMISION_CFG 2200 //»ñÈ¡Ò£¿ØÆ÷ȨÏÞ²ÎÊý +#define NET_DVR_SET_REMOTECONTROLLER_PERMISION_CFG 2201 //ÉèÖÃÒ£¿ØÆ÷ȨÏÞ²ÎÊý +#define NET_DVR_GET_KEYBOARD_CFG 2202 //»ñÈ¡¼üÅ̲ÎÊýÅäÖà +#define NET_DVR_SET_KEYBOARD_CFG 2203 //ÉèÖüüÅ̲ÎÊýÅäÖà +#define NET_DVR_GET_ALARMHOST_WIRELESS_BUSINNESS_INFO 2204 //ÎÞÏßÒµÎñ²éѯ +#define NET_DVR_GET_ALL_REMOTECONTROLLER_LIST 2205 //»ñÈ¡ËùÓÐÒ£¿ØÆ÷ +#define NET_DVR_GET_PREVIEW_DELAY_CFG 2206 //»ñÈ¡ÑÓ³ÙÔ¤ÀÀ²ÎÊýÅäÖà +#define NET_DVR_SET_PREVIEW_DELAY_CFG 2207 //ÉèÖÃÑÓ³ÙÔ¤ÀÀ²ÎÊýÅäÖà +#define NET_DVR_GET_ZONE_CHANNEL_LINKAGE_CFG 2208 //»ñÈ¡·ÀÇøÁª¶¯ÊÓƵͨµÀÅäÖà +#define NET_DVR_SET_ZONE_CHANNEL_LINKAGE_CFG 2209 //ÉèÖ÷ÀÇøÁª¶¯ÊÓƵͨµÀÅäÖà +#define NET_DVR_GET_CENTER_SERVER_CFG 2210 //»ñÈ¡±¨¾¯ÖÐÐÄ·þÎñÆ÷ +#define NET_DVR_SET_CENTER_SERVER_CFG 2211 //ÉèÖñ¨¾¯ÖÐÐÄ·þÎñÆ÷ +/*************************************ÊÓƵ±¨¾¯Ö÷»ú2.0 end**************************************/ + +/********************************Ò»¼üʽ½ô¼±±¨¾¯²úÆ·V1.0.0 begin********************************/ +#define NET_DVR_GET_EMERGENCE_ALARM_PRODUCT_CAP 2212 //»ñÈ¡Ò»¼üʽ½ô¼±±¨¾¯²úÆ·ÄÜÁ¦ +#define NET_DVR_GET_CALL_WAITTING_CFG_CAP 2213 //»ñÈ¡ºô½ÐµÈ´ý²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_CALL_WAITTING_CFG 2214 //»ñÈ¡ºô½ÐµÈ´ý²ÎÊýÅäÖà +#define NET_DVR_SET_CALL_WAITTING_CFG 2215 //ÉèÖúô½ÐµÈ´ý²ÎÊýÅäÖà +#define NET_DVR_GET_ALARM_LAMP_CFG_CAP 2216 //»ñÈ¡¾¯µÆ²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_ALARM_LAMP_CFG 2217 //»ñÈ¡¾¯µÆ²ÎÊýÅäÖà +#define NET_DVR_SET_ALARM_LAMP_CFG 2218 //ÉèÖþ¯µÆ²ÎÊýÅäÖà +#define NET_DVR_GET_VOICE_PROMPTION_CFG_CAP 2219 //»ñÈ¡ÓïÒôÌáʾÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_VOICE_PROMPTION_CFG 2220 //»ñÈ¡ÓïÒôÌáʾÅäÖà +#define NET_DVR_SET_VOICE_PROMPTION_CFG 2221 //ÉèÖÃÓïÒôÌáʾÅäÖà +#define NET_DVR_GET_EMERGENCE_ALARM_RESPONSE_CAP 2222 //»ñÈ¡½ô¼±±¨¾¯´¦ÀíÄÜÁ¦ +#define NET_DVR_EMERGENCE_ALARM_RESPONSE_CTRL 2223 //½ô¼±±¨¾¯´¦Àí¿ØÖÆ +/********************************Ò»¼üʽ½ô¼±±¨¾¯²úÆ·V1.0.0 end**********************************/ + +//ÍøÂ籨¾¯Ö÷»ú V2.2 +#define NET_DVR_GET_ALARMHOST_NETCFG_V50 2224 //»ñÈ¡±¨¾¯Ö÷»úÍøÂç²ÎÊýÅäÖÃV50 +#define NET_DVR_SET_ALARMHOST_NETCFG_V50 2225 //ÉèÖñ¨¾¯Ö÷»úÍøÂç²ÎÊýÅäÖÃV50 +#define NET_DVR_REGISTER_ALARM_RS485 2226 //RS485ÖØÐÂ×¢²á +/**********************************¶¯»·±¨¾¯Ö÷»úV3.0****************************************/ + +#define NET_DVR_GET_ALARMIN_PARAM_LIST 2227 //»ñÈ¡·ÀÇø²ÎÊýÁбí +//ÎÞÏß±¨¾¯Ö÷»ú1.0.0 +#define NET_DVR_GET_ALARMHOST_OTHER_STATUS_V50 2228 //»ñÈ¡±¨¾¯Ö÷»úÆäËû״̬v50 +#define NET_DVR_GET_ALARMHOST_OTHER_STATUS_V51 2236 //»ñÈ¡±¨¾¯Ö÷»úÆäËû״̬V51 +#define NET_DVR_GET_ALARMIN_ASSOCIATED_CHAN_LIST 2229 //»ñÈ¡·ÀÇø·ÀÇøÁª¶¯ÊÓƵͨµÀ²ÎÊýÁбí +#define NET_DVR_GET_ALARMIN_TRIGGER 2230 //»ñÈ¡±¨¾¯Ö÷»ú·ÀÇøÁª¶¯ÅäÖà +#define NET_DVR_SET_ALARMIN_TRIGGER 2231 //ÉèÖñ¨¾¯Ö÷»ú·ÀÇøÁª¶¯ÅäÖà +#define NET_DVR_GET_EMERGENCY_CALL_HELP_TRIGGER 2232 //»ñÈ¡±¨¾¯Ö÷»ú½ô¼±ÇóÖúÁª¶¯ÅäÖà +#define NET_DVR_SET_EMERGENCY_CALL_HELP_TRIGGER 2233 //ÉèÖñ¨¾¯Ö÷»ú½ô¼±ÇóÖúÁª¶¯ÅäÖà +#define NET_DVR_GET_CONSULT_TRIGGER 2234 //»ñÈ¡±¨¾¯Ö÷»úÒµÎñ×ÉѯÁª¶¯ÅäÖà +#define NET_DVR_SET_CONSULT_TRIGGER 2235 //ÉèÖñ¨¾¯Ö÷»úÒµÎñ×ÉѯÁª¶¯ÅäÖà +#define NET_DVR_GET_ALARMIN_PARAM_LIST_V50 2237 //»ñÈ¡·ÀÇø²ÎÊýÁбíV50 + +#define NET_DVR_GET_CARD_RIGHT_WEEK_PLAN_V50 2304 //»ñÈ¡¿¨È¨ÏÞÖܼƻ®²ÎÊýV50 +#define NET_DVR_SET_CARD_RIGHT_WEEK_PLAN_V50 2305 //ÉèÖÿ¨È¨ÏÞÖܼƻ®²ÎÊýV50 + +#define NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN_V50 2310 //»ñÈ¡¿¨È¨ÏÞ¼ÙÈռƻ®²ÎÊýV50 +#define NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN_V50 2311 //ÉèÖÿ¨È¨ÏÞ¼ÙÈռƻ®²ÎÊýV50 + +#define NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP_V50 2316 //»ñ¿¨È¨ÏÞ¼ÙÈÕ×é²ÎÊýV50 +#define NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP_V50 2317 //ÉèÖÿ¨È¨ÏÞ¼ÙÈÕ×é²ÎÊýV50 + +#define NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE_V50 2322 //»ñÈ¡¿¨È¨Ï޼ƻ®Ä£°å²ÎÊýV50 +#define NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE_V50 2323//ÉèÖÿ¨È¨Ï޼ƻ®Ä£°å²ÎÊýV50 + +/**********************************¾­¼ÃÐÍÖ¸ÎÆÃŽû²úÆ·V1.0 É豸²»×ö****************************************/ +#define NET_DVR_GET_SCHEDULE_INFO 2500 //»ñÈ¡ÅÅ°àÐÅÏ¢ +#define NET_DVR_GET_ATTENDANCE_SUMMARY_INFO 2501 //»ñÈ¡¿¼ÇÚ»ã×ÜÐÅÏ¢ +#define NET_DVR_GET_ATTENDANCE_RECORD_INFO 2502 //»ñÈ¡¿¼ÇڼǼÐÅÏ¢ +#define NET_DVR_GET_ABNORMAL_INFO 2503 //»ñÈ¡Ò쳣ͳ¼ÆÐÅÏ¢ +/**********************************¾­¼ÃÐÍÖ¸ÎÆÃŽû²úÆ·V1.0****************************************/ + +/*************************************ÊÓƵÃŽûÒ»Ìå»ú1.0 begin**************************************/ +#define NET_DVR_CAPTURE_FINGERPRINT_INFO 2504 //²É¼¯Ö¸ÎÆÐÅÏ¢ +/*************************************ÊÓƵÃŽûÒ»Ìå»ú1.0 end**************************************/ + +/*************************************ǶÈëʽÖÇÄÜÖÕ¶Ë1.0 begin**************************************/ +#define NET_DVR_BULK_UPLOAD_BLOCKLIST_PICTURE 2520 //ÅúÁ¿ÉÏ´«½ûÖ¹Ãûµ¥Í¼Æ¬ +#define NET_DVR_BULK_UPLOAD_ID_BLOCKLIST 2521 //ÅúÁ¿ÉÏ´«Éí·ÝÖ¤½ûÖ¹Ãûµ¥ +#define NET_DVR_GET_FAILED_FACE_INFO 2522 //»ñÈ¡É豸Éý¼¶½¨Ä£Ê§°ÜµÄÈËÁ³¼Ç¼ +#define NET_DVR_GET_FACE_AND_TEMPLATE 2523 //»ñÈ¡ÈËÁ³¼°Ä£°åÊý¾Ý +#define NET_DVR_SET_FACE_AND_TEMPLATE 2524 //ÉèÖÃÈËÁ³¼°Ä£°åÊý¾Ý +/*************************************ǶÈëʽÖÇÄÜÖÕ¶Ë1.0 end**************************************/ + +/*************************************ÈËÁ³Ê¶±ðÃŽûÒ»Ìå»ú1.0 begin**************************************/ +#define NET_DVR_GET_CARD_READER_CFG_V50 2505 //»ñÈ¡¶Á¿¨Æ÷²ÎÊý(V50) +#define NET_DVR_SET_CARD_READER_CFG_V50 2506 //ÉèÖöÁ¿¨Æ÷²ÎÊý(V50) +#define NET_DVR_GET_FACE_PARAM_CFG 2507 //»ñÈ¡ÈËÁ³²ÎÊý +#define NET_DVR_SET_FACE_PARAM_CFG 2508 //ÉèÖÃÈËÁ³²ÎÊý +#define NET_DVR_DEL_FACE_PARAM_CFG 2509 //ɾ³ýÈËÁ³²ÎÊý +#define NET_DVR_CAPTURE_FACE_INFO 2510 //²É¼¯ÈËÁ³ÐÅÏ¢ +/*************************************ÈËÁ³Ê¶±ðÃŽûÒ»Ìå»ú1.0 end**************************************/ +#define NET_DVR_GET_REGISTER_INFO 2511 //µÇ¼ÇÐÅÏ¢»ñÈ¡ + +#define NET_DVR_GET_SMSRELATIVEPARA_V50 2512 //»ñÈ¡¶ÌÐÅÏà¹Ø²ÎÊý +#define NET_DVR_SET_SMSRELATIVEPARA_V50 2513 //ÉèÖöÌÐÅÏà¹Ø²ÎÊý +#define NET_DVR_GET_ACS_EVENT 2514 //É豸ʼþ»ñÈ¡ +#define NET_DVR_GET_MULTI_CARD_CFG_V50 2515 //»ñÈ¡¶àÖØ¿¨²ÎÊýV50 +#define NET_DVR_SET_MULTI_CARD_CFG_V50 2516 //ÉèÖöàÖØ¿¨²ÎÊýV50 +#define NET_DVR_DEL_FINGERPRINT_CFG_V50 2517 //ɾ³ýÖ¸ÎƲÎÊýV50 +#define NET_DVR_GET_EVENT_CARD_LINKAGE_CFG_V51 2518 //»ñȡʼþ¿¨ºÅÁª¶¯ÅäÖòÎÊý(V51) +#define NET_DVR_SET_EVENT_CARD_LINKAGE_CFG_V51 2519 //ÉèÖÃʼþ¿¨ºÅÁª¶¯ÅäÖòÎÊý(V51) + +#define NET_DVR_SET_EXAM_INFO 2530 //¿¼ÊÔÐÅϢϷ¢ +#define NET_DVR_SET_EXAMINEE_INFO 2531 //¿¼ÉúÐÅϢϷ¢ +#define NET_DVR_SEARCH_EXAM_COMPARE_RESULT 2532 //¿¼ÊԱȶԽá¹û²éѯ +#define NET_DVR_BULK_CHECK_FACE_PICTURE 2533 //ÅúÁ¿Ð£ÑéÈËÁ³Í¼Æ¬ +#define NET_DVR_JSON_CONFIG 2550 //JSON͸´«Êý¾Ý +#define NET_DVR_FACE_DATA_RECORD 2551 //Ìí¼ÓÈËÁ³Êý¾Ýµ½ÈËÁ³¿â +#define NET_DVR_FACE_DATA_SEARCH 2552 //²éѯÈËÁ³¿âÖеÄÈËÁ³Êý¾Ý +#define NET_DVR_FACE_DATA_MODIFY 2553 //ÐÞ¸ÄÈËÁ³¿âÖеÄÈËÁ³Êý¾Ý +#define NET_DVR_CAPTURE_DATA_SEARCH 2554 //²éѯÀëÏ߲ɼ¯Êý¾Ý¼¯ÖÐÊý¾Ý +#define NET_DVR_SET_FORM_DATA 2555 //³¤Á¬½ÓÉèÖÃ±íµ¥Êý¾Ý +#define NET_DVR_GET_FORM_DATA 2556 //³¤Á¬½Ó»ñÈ¡±íµ¥Êý¾Ý + +#define NET_DVR_GET_CARD 2560 +#define NET_DVR_SET_CARD 2561 +#define NET_DVR_DEL_CARD 2562 +#define NET_DVR_GET_FINGERPRINT 2563 +#define NET_DVR_SET_FINGERPRINT 2564 +#define NET_DVR_DEL_FINGERPRINT 2565 +#define NET_DVR_GET_FACE 2566 +#define NET_DVR_SET_FACE 2567 + +#define NET_DVR_GET_ALL_ALARM_RS485CFG 2705 // »ñÈ¡485²ÎÊý +#define NET_DVR_GET_ALL_ALARMHOST_RS485_SLOT_CFG 2706 // »ñÈ¡ËùÓб¨¾¯Ö÷»ú485²Ûλ²ÎÊý +#define NET_DVR_GET_DEVICE_SELF_CHECK_STATE 2707 //»ñÈ¡É豸×Լ칦ÄÜ +#define NET_DVR_GET_ALL_ALARM_POINT_CFG 2708 // »ñÈ¡ËùÓеãºÅ²ÎÊý +#define NET_DVR_GET_ALL_ALARM_SENSOR_CFG 2709 // »ñÈ¡ËùÓÐÄ£ÄâÁ¿²ÎÊý +#define NET_DVR_GET_ALL_ALARM_SENSOR_JOINT 2710 //»ñÈ¡ËùÓÐÄ£ÄâÁ¿Áª¶¯²ÎÊý +#define NET_DVR_GET_AIR_CONDITION_PARAM 2711 //»ñÈ¡¿Õµ÷²ÎÊý +#define NET_DVR_GET_OUT_SCALE_CFG 2712 //»ñÈ¡Ö÷¸¨¿ÚÊä³öÅäÖà +#define NET_DVR_SET_OUT_SCALE_CFG 2713 //ÉèÖÃÖ÷¸¨¿ÚÊä³öÅäÖà +#define NET_DVR_GET_ALARM_CHAN_ABLITITY 2714 //»ñÈ¡±¨¾¯Ïà¹ØͨµÀ²Î +/**********************************¶¯»·±¨¾¯Ö÷»úV3.0****************************************/ + +//¶¯»·±¨¾¯Ö÷»úD2000 V1.0 +#define NET_DVR_GET_ALARMCENTER_NETCFG 2715 //»ñÈ¡±¨¾¯ÖÐÐÄÍøÂç²ÎÊýÅäÖà +#define NET_DVR_SET_ALARMCENTER_NETCFG 2716 //»ñÈ¡±¨¾¯ÖÐÐÄÍøÂç²ÎÊýÅäÖà + + +#define NET_ITC_GET_TRIGGERCFG 3003 //»ñÈ¡´¥·¢²ÎÊý +#define NET_ITC_SET_TRIGGERCFG 3004 //ÉèÖô¥·¢²ÎÊý +#define NET_ITC_GET_IOOUT_PARAM_CFG 3005 //»ñÈ¡IOÊä³ö²ÎÊý£¨3.1º¬Ö®ºó°æ±¾£© +#define NET_ITC_SET_IOOUT_PARAM_CFG 3006 //ÉèÖÃIOÊä³ö²ÎÊý£¨3.1º¬Ö®ºó°æ±¾£© + +#define NET_DVR_GET_CAMERA_SETUPCFG 3007 //»ñÈ¡Ïà»ú¼ÜÉè²ÎÊý +#define NET_DVR_SET_CAMERA_SETUPCFG 3008 //ÉèÖÃÏà»ú¼ÜÉè²ÎÊý + +#define NET_ITC_GET_TRIGGER_DEFAULTCFG 3013 //»ñÈ¡´¥·¢Ä£Ê½ÍƼö²ÎÊý +#define NET_DVR_GET_STATUS_DETECTCFG 3015 //»ñȡ״̬¼ì²âʹÄܲÎÊý +#define NET_DVR_SET_STATUS_DETECTCFG 3016 //ÉèÖÃ״̬¼ì²âʹÄܲÎÊý +#define NET_ITC_GET_VIDEO_TRIGGERCFG 3017 //»ñÈ¡ÊÓƵµç¾¯´¥·¢²ÎÊý +#define NET_ITC_SET_VIDEO_TRIGGERCFG 3018 //ÉèÖÃÊÓƵµç¾¯´¥·¢²ÎÊý +#define NET_DVR_GET_TPS_ALARMCFG 3019 //»ñÈ¡½»Í¨Í³¼Æ±¨¾¯²ÎÊý +#define NET_DVR_SET_TPS_ALARMCFG 3020 //ÉèÖý»Í¨Í³¼Æ±¨¾¯²ÎÊý + + +#define NET_DVR_GET_REDAREACFG 3100 //»ñÈ¡ºìÂ̵ÆÇøÓò²ÎÊý +#define NET_DVR_SET_REDAREACFG 3101 //ÉèÖúìÂ̵ÆÇøÓò²ÎÊý +#define NET_DVR_GET_TEST_SPOT 3102 //»ñÈ¡SPOT¿Ú²âÊÔ×ܲ½ÊýºÍµ±Ç°µÚ¼¸²½ +#define NET_DVR_SET_TEST_SPOT 3103 //ÉèÖÃSPOT¿Ú²âÊÔ×ܲ½ÊýºÍµ±Ç°µÚ¼¸²½ +#define NET_DVR_GET_CABINETCFG 3104 //»ú¹ñ²ÎÊýÅäÖûñÈ¡ +#define NET_DVR_SET_CABINETCFG 3105 //»ú¹ñ²ÎÊýÅäÖÃÉèÖà +#define NET_DVR_VEHICLE_CHECK_START 3106 //½ûÖ¹Ãûµ¥»ü²éÊý¾Ý»Ø´« +#define NET_DVR_SET_CAPTUREPIC_CFG 3107 //³µÔØץͼÅäÖÃÉèÖÃÃüÁî +#define NET_DVR_GET_CAPTUREPIC_CFG 3108 //³µÔØץͼÅäÖûñÈ¡ÃüÁî +#define NET_DVR_SET_MOBILEPLATE_RECOG_CFG 3109 //³µÔسµÅÆʶ±ðÅäÖÃÉèÖÃÃüÁî +#define NET_DVR_GET_MOBILEPLATE_RECOG_CFG 3110 //³µÔسµÅÆʶ±ðÅäÖûñÈ¡ÃüÁî +#define NET_DVR_SET_MOBILE_RADAR_CFG 3111 //³µÔØÀ×´ïÅäÖÃÉèÖÃÃüÁî +#define NET_DVR_GET_MOBILE_RADAR_CFG 3112 //³µÔØÀ×´ïÅäÖûñÈ¡ÃüÁî +#define NET_DVR_SET_MOBILE_LOCALPLATECHK_CFG 3113 //³µÔؽûÖ¹Ãûµ¥±¾µØ¶Ô±ÈÅäÖÃÉèÖÃÃüÁî +#define NET_DVR_GET_MOBILE_LOCALPLATECHK_CFG 3114 //³µÔؽûÖ¹Ãûµ¥±¾µØ¶Ô±ÈÅäÖûñÈ¡ÃüÁî + +#define NET_ITC_GET_ICRCFG 3115 //»ñÈ¡ICRÅäÖÃÇл» +#define NET_ITC_SET_ICRCFG 3116 //ÉèÖÃICRÅäÖÃÇл» +#define NET_ITC_GET_RS485_ACCESSINFO 3117 //»ñÈ¡Rs485¹ØÁª½ÓÈëÉ豸µÄÐÅÏ¢ +#define NET_ITC_SET_RS485_ACCESSINFO 3118 //ÉèÖÃRs485¹ØÁª½ÓÈëÉ豸µÄÐÅÏ¢ +#define NET_ITC_GET_EXCEPTIONCFG 3119 //»ñÈ¡Òì³£²ÎÊý +#define NET_ITC_SET_EXCEPTIONCFG 3120 //ÉèÖÃÒì³£²ÎÊý +#define NET_ITC_GET_FTPCFG 3121 //»ñÈ¡ITC FTPÉèÖòÎÊý +#define NET_ITC_SET_FTPCFG 3122 //ÉèÖÃITC FTPÉèÖòÎÊý + +#define NET_DVR_VEHICLE_CONTROL_LIST_START 3123 //ÉèÖóµÁ¾½ûÖ¹ºÍÔÊÐíÃûµ¥ÐÅÏ¢ +#define NET_DVR_GET_ALL_VEHICLE_CONTROL_LIST 3124 //»ñÈ¡ËùÓгµÁ¾½ûÖ¹ºÍÔÊÐíÃûµ¥ÐÅÏ¢ +#define NET_DVR_VEHICLE_DELINFO_CTRL 3125 //ɾ³ýÉ豸ÄÚ½ûÖ¹Ãûµ¥Êý¾Ý¿âÐÅÏ¢ +#define NET_DVR_GET_ENTRANCE_PARAMCFG 3126 //»ñÈ¡³öÈë¿Ú¿ØÖƲÎÊý +#define NET_DVR_SET_ENTRANCE_PARAMCFG 3127 //ÉèÖóöÈë¿Ú¿ØÖƲÎÊý +#define NET_DVR_BARRIERGATE_CTRL 3128 //Ô¶³Ì¿ØÖƵÀÕ¢ +#define NET_DVR_GATELAMP_CTRL 3129 //³£ÁÁµÆ¹¦ÄÜ +#define NET_DVR_GET_CURTRIGGERMODE 3130 //»ñÈ¡É豸µ±Ç°´¥·¢Ä£Ê½ +#define NET_DVR_GET_GPSDATACFG 3131 //»ñÈ¡GPS²ÎÊý +#define NET_DVR_SET_GPSDATACFG 3132 //ÉèÖÃGPS²ÎÊý +#define NET_DVR_VEHICLELIST_CTRL_START 3133 //ÉèÖóµÁ¾½ûÖ¹ºÍÔÊÐíÃûµ¥ÐÅÏ¢ + +#define NET_DVR_GET_GUARDCFG 3134 //»ñÈ¡³µÅÆʶ±ð¼ì²â¼Æ»® +#define NET_DVR_SET_GUARDCFG 3135 //ÉèÖóµÅÆʶ±ð¼ì²â¼Æ»® +#define NET_DVR_GET_SNAPINFO_CFG 3136 //»ñȡץÅÄͼƬ²ÎÊý +#define NET_DVR_SET_SNAPINFO_CFG 3137 //ÉèÖÃ×¥ÅÄͼƬ²ÎÊý +#define NET_DVR_GET_SNAPINFO_CFG_V40 3138 //»ñȡץÅÄͼƬ²ÎÊýÀ©Õ¹ +#define NET_DVR_SET_SNAPINFO_CFG_V40 3139 //ÉèÖÃ×¥ÅÄͼƬ²ÎÊýÀ©Õ¹ +#define NET_DVR_SET_CURTRIGGERMODE 3140 //ÉèÖÃÉ豸µ±Ç°´¥·¢Ä£Ê½(½öIPC/DÖ§³Ö) +#define NET_DVR_GET_TRAFFIC_DATA 3141 //³¤Á¬½Ó»ñÈ¡½»Í¨Êý¾Ý +#define NET_DVR_GET_TRAFFIC_FLOW 3142 //³¤Á¬½Ó»ñÈ¡½»Í¨Á÷Á¿ +#define NET_DVR_PARKING_VEHICLE_SEND 3143 //Í£³µ³µÁ¾ÐÅϢϷ¢ +#define NET_DVR_PARKING_CARD_SEND 3144 //Í£³µ¿¨Ï·¢ +#define NET_DVR_PARKING_CARD_CTRL 3145 //Í£³µ³¡Í£³µ¿¨¿ØÖÆ½Ó¿Ú + +#define NET_DVR_GET_ALARMCTRL_CAPABILITIES 3146 //»ñÈ¡±¨¾¯¿ØÖÆÄÜÁ¦ +#define NET_DVR_SET_ALARMCTRL_CFG 3147 //ÉèÖñ¨¾¯¿ØÖÆ +#define NET_DVR_GET_ALARMCTRL_CFG 3148 //»ñÈ¡±¨¾¯¿ØÖÆ + +#define NET_DVR_GET_AUDIO_INPUT 3201 //»ñÈ¡ÒôƵÊäÈë²ÎÊý +#define NET_DVR_SET_AUDIO_INPUT 3202 //ÉèÖÃÒôƵÊäÈë²ÎÊý +#define NET_DVR_GET_CAMERA_DEHAZE_CFG 3203 //»ñȡ͸Îí²ÎÊýÅäÖà +#define NET_DVR_SET_CAMERA_DEHAZE_CFG 3204 //ÉèÖÃ͸Îí²ÎÊýÅäÖà +#define NET_DVR_REMOTECONTROL_ALARM 3205 //Ô¶³Ì¿ØÖÆÒ£¿ØÆ÷²¼·À +#define NET_DVR_REMOTECONTROL_DISALARM 3206 //Ô¶³Ì¿ØÖÆÒ£¿ØÆ÷³··À +#define NET_DVR_REMOTECONTROL_STUDY 3207 //Ô¶³Ì¿ØÖÆÒ£¿ØÆ÷ѧϰ +#define NET_DVR_WIRELESS_ALARM_STUDY 3208 //Ô¶³Ì¿ØÖÆÎÞÏß±¨¾¯Ñ§Ï° +#define NET_IPC_GET_AUX_ALARMCFG 3209 //»ñÈ¡¸¨Öú±¨¾¯²ÎÊýÅäÖà +#define NET_IPC_SET_AUX_ALARMCFG 3210 //ÉèÖø¨Öú±¨¾¯²ÎÊýÅäÖà +#define NET_DVR_GET_PREVIEW_DISPLAYCFG 3211 //»ñÈ¡Ô¤ÀÀÏÔʾ²ÎÊý +#define NET_DVR_SET_PREVIEW_DISPLAYCFG 3212 //ÉèÖÃÔ¤ÀÀÏÔʾ²ÎÊý +#define NET_DVR_REMOTECONTROL_PTZ 3213 //Ô¶³Ì¿ØÖÆPTZ +#define NET_DVR_REMOTECONTROL_PRESETPOINT 3214 //Ô¶³Ì¿ØÖÆÔ¤Öõã +#define NET_DVR_REMOTECONTROL_CRUISE 3215 //Ô¶³Ì¿ØÖÆѲº½ + +#define NET_DVR_GET_MULTI_STREAM_COMPRESSIONCFG 3216 //Ô¶³Ì»ñÈ¡¶àÂëÁ÷ѹËõ²ÎÊý +#define NET_DVR_SET_MULTI_STREAM_COMPRESSIONCFG 3217 //Ô¶³ÌÉèÖöàÂëÁ÷ѹËõ²ÎÊý + +#define NET_DVR_GET_WPSCFG 3218 //»ñÈ¡WPS²ÎÊý +#define NET_DVR_SET_WPSCFG 3219 //ÉèÖÃWPS²ÎÊý +#define NET_DVR_WPS_CONNECT 3220 //Ô¶³ÌÆôÓÃWPSÁ¬½Ó +#define NET_DVR_GET_DEVICE_PIN 3221 //»ñÈ¡É豸PINÂë +#define NET_DVR_UPDATE_PIN 3223 //¸üÐÂÉ豸PINÂë +#define NET_DVR_GET_PRESETCFG 3224 //»ñÈ¡Ô¤Öõã²ÎÊý +#define NET_DVR_GET_PTZCRUISECFG 3225 //»ñȡѲº½Â·¾¶²ÎÊý +#define NET_DVR_GET_PRESET_NUM 3226 //»ñÈ¡Ô¤Öõã¸öÊý +#define NET_DVR_GET_PTZCRUISE_NUM 3227 //»ñȡѲº½Â·¾¶¸öÊý + +#define NET_DVR_GET_MOTION_TRACK_CFG 3228 //»ñÈ¡¸ú×Ù²ÎÊý +#define NET_DVR_SET_MOTION_TRACK_CFG 3229 //ÉèÖøú×Ù²ÎÊý +#define NET_DVR_CLEAR_IPC_PARAM 3230 //Çå¿ÕÇ°¶Ë²ÎÊý +#define NET_DVR_GET_IPADDR_FILTERCFG 3232 //»ñÈ¡IPµØÖ·¹ýÂ˲ÎÊý +#define NET_DVR_SET_IPADDR_FILTERCFG 3233 //ÉèÖÃIPµØÖ·¹ýÂ˲ÎÊý + +#define NET_DVR_GET_LOGO_OVERLAYCFG 3234 //»ñÈ¡LOGOͼƬµþ¼Ó²ÎÊý +#define NET_DVR_SET_LOGO_OVERLAYCFG 3235 //ÉèÖÃLOGOͼƬµþ¼Ó²ÎÊý + +#define NET_DVR_GET_IPV6_LIST 3236 //»ñÈ¡Íø¿¨µÄÈ«²¿IPV6µØÖ·ÐÅÏ¢ +#define NET_DVR_GET_AUDIOOUT_VOLUME 3237 //»ñÈ¡Êä³öÒôƵ´óС +#define NET_DVR_SET_AUDIOOUT_VOLUME 3238 //ÉèÖÃÊä³öÒôƵ´óС +#define NET_DVR_GET_FUZZY_UPGRADE 3239 //»ñÈ¡Ä£ºýÉý¼¶Æ¥ÅäÐÅÏ¢ + +#define NET_DVR_GET_BV_CORRECT_PARAM 3240 //»ñÈ¡Ïà»úУÕý²ÎÊý +#define NET_DVR_SET_BV_CORRECT_PARAM 3241 //ÉèÖÃÏà»úУÕý²ÎÊý +#define NET_DVR_GET_OUTPUT_VIDEO_TYPE 3242 //»ñÈ¡Êä³öÊÓƵÀàÐÍ +#define NET_DVR_SET_OUTPUT_VIDEO_TYPE 3243 //ÉèÖÃÊä³öÊÓƵÀàÐÍ + +#define NET_DVR_FISHEYE_CFG 3244 //ÓãÑÛ³¤Á¬½ÓÅäÖà +#define NET_DVR_GET_PTZ_POINT 3245 //»ñÈ¡PTZµã×ø±ê +#define NET_DVR_SET_PTZ_POINT 3246 //ÉèÖÃPTZµã×ø±ê +#define NET_DVR_REMOTECONTROL_DEV_PARAM 3247 //ÉèÖÃÉ豸µÇ¼¿Í»§¶Ë²ÎÊý +#define NET_DVR_GET_FISHEYE_STREAM_STATUS 3248 //»ñÈ¡ÓãÑÛÂëÁ÷״̬ + +#define NET_DVR_GET_GBT28181_ACCESS_CFG 3249 //»ñÈ¡GBT28181ЭÒé½ÓÈëÅäÖà +#define NET_DVR_SET_GBT28181_ACCESS_CFG 3250 //ÉèÖÃGBT28181ЭÒé½ÓÈëÅäÖà +#define NET_DVR_GET_GBT28181_CHANINFO_CFG 3251 //»ñÈ¡GBT28181ЭÒé½ÓÈëÉ豸µÄͨµÀÐÅÏ¢ +#define NET_DVR_SET_GBT28181_CHANINFO_CFG 3252 //ÉèÖÃGBT28181ЭÒé½ÓÈëÉ豸µÄͨµÀÐÅÏ¢ +#define NET_DVR_GET_GBT28181_ALARMINCFG 3253 //»ñÈ¡GBT28181ЭÒé½ÓÈëÉ豸µÄ±¨¾¯ÐÅÏ¢ +#define NET_DVR_SET_GBT28181_ALARMINCFG 3254 //ÉèÖÃGBT28181ЭÒé½ÓÈëÉ豸µÄ±¨¾¯ÐÅÏ¢ +#define NET_DVR_GET_ISP_CAMERAPARAMCFG 3255 //»ñÈ¡ISPÇ°¶Ë²ÎÊýÅäÖà +#define NET_DVR_SET_ISP_CAMERAPARAMCFG 3256 //ÉèÖÃISPÇ°¶Ë²ÎÊýÅäÖà +#define NET_DVR_GET_DEVSERVER_CFG 3257 //»ñÈ¡Ä£¿é·þÎñÅäÖà +#define NET_DVR_SET_DEVSERVER_CFG 3258 //ÉèÖÃÄ£¿é·þÎñÅäÖà + +//2013-11-25 +#define NET_DVR_GET_WIPERINFO_CFG 3259 //ÓêË¢ÅäÖûñÈ¡ +#define NET_DVR_SET_WIPERINFO_CFG 3260 //ÓêË¢ÅäÖÃÉèÖà +#define NET_DVR_GET_TRACK_DEV_PARAM 3261 //»ñÈ¡¸ú×ÙÉ豸²ÎÊý +#define NET_DVR_SET_TRACK_DEV_PARAM 3262 //ÉèÖøú×ÙÉ豸²ÎÊý +#define NET_DVR_GET_PTZ_TRACK_PARAM 3263 //»ñÈ¡PTZ¸ú×Ù²ÎÊý +#define NET_DVR_SET_PTZ_TRACK_PARAM 3264 //ÉèÖÃPTZ¸ú×Ù²ÎÊý +#define NET_DVR_GET_CENTER_POINT_CFG 3265 //»ñÈ¡ÖÐÐĵã²ÎÊý +#define NET_DVR_SET_CENTER_POINT_CFG 3266 //ÉèÖÃÖÐÐĵã²ÎÊý +#define NET_DVR_GET_CENTER_POINT_CFG_CAPABILITIES 3267 //»ñÈ¡ÖÐÐĵã²ÎÊýÄÜÁ¦ +#define NET_DVR_GET_FISHEYE_CAPABILITIES 3268 //»ñÈ¡ÓãÑÛÄÜÁ¦ + +#define NET_DVR_GET_BASICPARAMCFG 3270 //»ñÈ¡PTZÅäÖûù±¾²ÎÊýÐÅÏ¢ +#define NET_DVR_SET_BASICPARAMCFG 3271 //ÉèÖÃPTZÅäÖûù±¾²ÎÊýÐÅÏ¢ +#define NET_DVR_GET_PTZOSDCFG 3272 //»ñÈ¡PTZ OSDÅäÖòÎÊýÐÅÏ¢ +#define NET_DVR_SET_PTZOSDCFG 3273 //ÉèÖÃPTZ OSDÅäÖòÎÊýÐÅÏ¢ +#define NET_DVR_GET_POWEROFFMEMCFG 3274 //»ñÈ¡µôµç¼ÇÒäģʽ²ÎÊýÐÅÏ¢ +#define NET_DVR_SET_POWEROFFMEMCFG 3275 //ÉèÖõôµç¼ÇÒäģʽ²ÎÊýÐÅÏ¢ +#define NET_DVR_GET_LIMITCFG 3276 //»ñÈ¡ÏÞλ²ÎÊýÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_LIMITCFG 3277 //ÉèÖÃÏÞλ²ÎÊýÅäÖÃÐÅÏ¢ +#define NET_DVR_PTZLIMIT_CTRL 3278 //Çå³ýÏÞλ²ÎÊý¿ØÖÆ + +#define NET_DVR_PTZ_CLEARCTRL 3279 //Çå³ýÅäÖÃÐÅÏ¢¿ØÖÆ½Ó¿Ú +#define NET_DVR_GET_PRIORITIZECFG 3281 //»ñÈ¡ÔÆ̨ÓÅÏÈÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_PRIORITIZECFG 3282 //ÉèÖÃÔÆ̨ÓÅÏÈÅäÖÃÐÅÏ¢ +#define NET_DVR_PTZ_INITIALPOSITIONCTRL 3283 //Á㷽λ½Ç¿ØÖÆ +#define NET_DVR_GET_PRIVACY_MASKSCFG 3285 //»ñÈ¡Òþ˽ÕڱβÎÊý +#define NET_DVR_SET_PRIVACY_MASKSCFG 3286 //ÉèÖÃÒþ˽ÕڱβÎÊý +#define NET_DVR_GET_PTZLOCKCFG 3287 //»ñÈ¡ÔÆ̨Ëø¶¨ÐÅÏ¢ +#define NET_DVR_SET_PTZLOCKCFG 3288 //ÉèÖÃÔÆ̨Ëø¶¨ÐÅÏ¢ +#define NET_DVR_PTZ_ZOOMRATIOCTRL 3289 //ÉèÖøú×Ù±¶ÂÊ +#define NET_DVR_GET_PTZLOCKINFO 3290 //»ñÈ¡ÔÆ̨Ëø¶¨Ê£ÓàÃëÊý +#define NET_DVR_GET_PRIVACY_MASKS_ENABLECFG 3291 //»ñÈ¡È«¾ÖʹÄÜ +#define NET_DVR_SET_PRIVACY_MASKS_ENABLECFG 3292 //ÉèÖÃÈ«¾ÖʹÄÜ +#define NET_DVR_GET_SMARTTRACKCFG 3293 //»ñÈ¡ÖÇÄÜÔ˶¯¸ú×ÙÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_SMARTTRACKCFG 3294 //ÉèÖÃÖÇÄÜÔ˶¯¸ú×ÙÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_EPTZ_CFG 3295 //»ñÈ¡EPTZ²ÎÊý +#define NET_DVR_SET_EPTZ_CFG 3296 //ÉèÖÃEPTZ²ÎÊý +#define NET_DVR_GET_EPTZ_CFG_CAPABILITIES 3297 //»ñÈ¡EPTZ²ÎÊýÄÜÁ¦ + +#define NET_DVR_GET_LOW_LIGHTCFG 3303//»ñÈ¡¿ìÇòµÍÕÕ¶ÈÉèÖÃÐÅÏ¢ +#define NET_DVR_SET_LOW_LIGHTCFG 3304//ÉèÖÿìÇòµÍÕÕ¶ÈÉèÖÃÐÅÏ¢ +#define NET_DVR_GET_FOCUSMODECFG 3305//»ñÈ¡¿ìÇò¾Û½¹Ä£Ê½ÐÅÏ¢ +#define NET_DVR_SET_FOCUSMODECFG 3306//ÉèÖÿìÇò¾Û½¹Ä£Ê½ÐÅÏ¢ +#define NET_DVR_GET_INFRARECFG 3307//»ñÈ¡¿ìÇòºìÍâÉèÖÃÐÅÏ¢ +#define NET_DVR_SET_INFRARECFG 3308//ÉèÖÿìÇòºìÍâÉèÖÃÐÅÏ¢ +#define NET_DVR_GET_AEMODECFG 3309//»ñÈ¡¿ìÇòÆäËûÉèÖÃÐÅÏ¢ +#define NET_DVR_SET_AEMODECFG 3310//ÉèÖÿìÇòÆäËûÉèÖÃÐÅÏ¢ +#define NET_DVR_CONTROL_RESTORE_SUPPORT 3311 //»Ö¸´Ç°¶ËĬÈϲÎÊý(²ÎÊýÄÜÁ¦ÖÐÓеÄÇ°¶Ë²ÎÊýÅäÖÃÏà¹ØµÄ¶¼»Ö¸´) +#define NET_DVR_CONTROL_RESTART_SUPPORT 3312 //¿ìÇò»úоÖØÆô +#define NET_DVR_CONTROL_PTZ_PATTERN 3313//ÔÆ̨»¨ÑùɨÃè +#define NET_DVR_GET_PTZ_PARKACTION_CFG 3314//»ñÈ¡ÔÆ̨ÊØÍû²ÎÊý +#define NET_DVR_SET_PTZ_PARKACTION_CFG 3315//ÉèÖÃÔÆ̨ÊØÍû²ÎÊý +#define NET_DVR_CONTROL_PTZ_MANUALTRACE 3316//ÊÖ¶¯¸ú×Ù¶¨Î» +#define NET_DVR_GET_ROI_DETECT_NUM 3349 //»ñÈ¡ROI¼ì²âÇøÓò±àºÅÊýÄ¿ +#define NET_DVR_GET_ROI_DETECT 3350 //»ñÈ¡ROI¼ì²âÇøÓòÅäÖà +#define NET_DVR_SET_ROI_DETECT 3351 //ÉèÖÃROI¼ì²âÇøÓòÅäÖà +#define NET_DVR_GET_FACE_DETECT 3352 //»ñÈ¡ÈËÁ³Õì²âÅäÖà +#define NET_DVR_SET_FACE_DETECT 3353 //ÉèÖÃÈËÁ³Õì²âÅäÖà +#define NET_DVR_GET_CORRIDOR_MODE 3354 //»ñÈ¡×ßÀÈģʽ¹¦ÄÜÅäÖà +#define NET_DVR_SET_CORRIDOR_MODE 3355 //ÉèÖÃ×ßÀÈģʽ¹¦ÄÜÅäÖà +#define NET_DVR_GET_SCENECHANGE_DETECTIONCFG 3356 //»ñÈ¡³¡¾°±ä¸ü±¨¾¯ÅäÖà +#define NET_DVR_SET_SCENECHANGE_DETECTIONCFG 3357 //ÉèÖó¡¾°±ä¸ü±¨¾¯ÅäÖà +#define NET_DVR_GET_TRAVERSE_PLANE_DETECTION 3360 +#define NET_DVR_SET_TRAVERSE_PLANE_DETECTION 3361 +#define NET_DVR_GET_FIELD_DETECTION 3362 //»ñÈ¡ÇøÓòÕì²âÅäÖà +#define NET_DVR_SET_FIELD_DETECTION 3363 //ÉèÖÃÇøÓòÕì²âÅäÖà +#define NET_DVR_GET_DEFOCUSPARAM 3364 //»ñÈ¡Ðé½¹Õì²â²ÎÊýÅäÖà +#define NET_DVR_SET_DEFOCUSPARAM 3365 //ÉèÖÃÐé½¹Õì²â²ÎÊýÅäÖà +#define NET_DVR_GET_AUDIOEXCEPTIONPARAM 3366 //»ñÈ¡ÒôƵÒì³£ÅäÖà +#define NET_DVR_SET_AUDIOEXCEPTIONPARAM 3367 //ÉèÖÃÒôƵÒì³£ÅäÖà +#define NET_DVR_GET_CCDPARAMCFG_EX 3368 //»ñÈ¡CCD²ÎÊýÅäÖà +#define NET_DVR_SET_CCDPARAMCFG_EX 3369 //ÉèÖÃCCD²ÎÊýÅäÖà +#define NET_DVR_START_GET_INPUTVOLUME 3370//¿ªÊ¼»ñÈ¡ÒôÁ¿ +#define NET_DVR_SET_SCH_TASK 3380 //ÉèÖÃÇò»ú¶¨Ê±ÈÎÎñ +#define NET_DVR_GET_SCH_TASK 3381 //»ñÈ¡Çò»ú¶¨Ê±ÈÎÎñ +#define NET_DVR_SET_PRESET_NAME 3382 //ÉèÖÃÔ¤ÖõãÃû³Æ +#define NET_DVR_GET_PRESET_NAME 3383 //»ñÈ¡Ô¤ÖõãÃû³Æ +#define NET_DVR_SET_AUDIO_NAME 3384 //ÉèÖÃÓïÒôÃû³Æ +#define NET_DVR_GET_AUDIO_NAME 3385 //»ñÈ¡ÓïÒôÃû³Æ +#define NET_DVR_RESUME_INITRACKPOS 3386 //»Ö¸´¸ú×Ù³õʼλ +#define NET_DVR_NTP_SERVER_TEST 3387 //NTP·þÎñÆ÷²âÊÔ +#define NET_DVR_NAS_SERVER_TEST 3388 //NAS·þÎñÆ÷²âÊÔ +#define NET_DVR_EMAIL_SERVER_TEST 3389 //Email·þÎñÆ÷²âÊÔ +#define NET_DVR_FTP_SERVER_TEST 3390 //FTP·þÎñÆ÷²âÊÔ +#define NET_DVR_IP_TEST 3391 //IP²âÊÔ +#define NET_DVR_GET_NET_DISKCFG_V40 3392 //ÍøÂçÓ²Å̽ÓÈë»ñÈ¡v40 +#define NET_DVR_SET_NET_DISKCFG_V40 3393 //ÍøÂçÓ²Å̽ÓÈëÉèÖÃv40 +#define NET_DVR_GET_IOOUT_CFG 3394//»ñÈ¡²¹¹âµÆ²ÎÊý +#define NET_DVR_SET_IOOUT_CFG 3395//ÉèÖò¹¹âµÆ²ÎÊý +#define NET_DVR_GET_SIGNAL_SYNC 3396//»ñÈ¡ÐźŵÆͬ²½ÅäÖòÎÊý +#define NET_DVR_SET_SIGNAL_SYNC 3397//ÉèÖÃÐźŵÆͬ²½ÅäÖòÎÊý + +#define NET_DVR_GET_EZVIZ_ACCESS_CFG 3398//»ñÈ¡EZVIZ½ÓÈë²ÎÊý +#define NET_DVR_SET_EZVIZ_ACCESS_CFG 3399//ÉèÖÃEZVIZ½ÓÈë²ÎÊý +#define NET_DVR_GET_SCHEDULE_AUTO_TRACK_CFG 3400//»ñÈ¡¶¨Ê±ÖÇÄܸú×Ù²ÎÊý +#define NET_DVR_SET_SCHEDULE_AUTO_TRACK_CFG 3401//ÉèÖö¨Ê±ÖÇÄܸú×Ù²ÎÊý +#define NET_DVR_MAKE_I_FRAME 3402//Ç¿ÖÆIÖ¡ +#define NET_DVR_GET_ALARM_RELATE 3403//»ñÈ¡±¨¾¯Áª¶¯Í¨µÀ¹¦ÄܲÎÊý +#define NET_DVR_SET_ALARM_RELATE 3404//ÉèÖñ¨¾¯Áª¶¯Í¨µÀ¹¦ÄܲÎÊý +#define NET_DVR_GET_PDC_RULECFG_V42 3405 //ÉèÖÃÈËÁ÷Á¿Í³¼Æ¹æÔò(À©Õ¹) +#define NET_DVR_SET_PDC_RULECFG_V42 3406 //»ñÈ¡ÈËÁ÷Á¿Í³¼Æ¹æÔò(À©Õ¹) +#define NET_DVR_GET_HEATMAP_CFG 3407 //ÉèÖÃÈȶÈͼ²ÎÊýÅäÖà +#define NET_DVR_SET_HEATMAP_CFG 3408 //»ñÈ¡ÈȶÈͼ²ÎÊýÅäÖà +#define NET_DVR_REMOTECONTROL_LINEARSCAN 3409 //ÉèÖÃ×óÓұ߽ç²ÎÊý 2014-03-15 +#define NET_DVR_DPC_CTRL 3410//»µµãУÕý¿ØÖÆ +#define NET_DVR_FFC_MANUAL_CTRL 3411//·Ç¾ùÔÈÐÔУÕý(FFC)ÊÖ¶¯Ä£Ê½ +#define NET_DVR_FFC_BACKCOMP_CTRL 3412//·Ç¾ùÔÈÐÔУÕý(FFC)±³¾°²¹³¥ +#define NET_DVR_GET_FOCUSING_POSITION_STATE 3413//»ñÈ¡¾Û½¹µ½Î»×´Ì¬²ÎÊý +#define NET_DVR_GET_PRIVATE_PROTOCOL_CFG 3414 //»ñÈ¡ ˽ÓйؼüÐÅÏ¢ÉÏ´«ÅäÖýӿÚÅäÖà +#define NET_DVR_SET_PRIVATE_PROTOCOL_CFG 3415 //ÉèÖà ˽ÓйؼüÐÅÏ¢ÉÏ´«ÅäÖýӿÚÅäÖà +#define NET_DVR_COMPLETE_RESTORE_CTRL 3420 //ÉèÖÃÍêÈ«»Ö¸´³ö³§Öµ + +#define NET_DVR_CLOUDSTORAGE_SERVER_TEST 3421 //ÔÆ´æ´¢·þÎñÆ÷²âÊÔ +#define NET_DVR_PHONE_NUM_TEST 3422 //µç»°ºÅÂë²âÊÔ +#define NET_DVR_GET_REMOTECONTROL_STATUS 3423 //»ñÈ¡ÎÞÏß²¼·À״̬ +#define NET_DVR_GET_MONITOR_LOCATION_INFO 3424 //»ñÈ¡¼à²âµãÐÅÏ¢ +#define NET_DVR_SET_MONITOR_LOCATION_INFO 3425 //ÉèÖüà²âµãÐÅÏ¢ + + +#define NET_DVR_GET_SMART_CAPABILITIES 3500 //»ñÈ¡SmartÄÜÁ¦ +#define NET_DVR_GET_EVENT_TRIGGERS_CAPABILITIES 3501 //»ñȡʼþ´¥·¢ÄÜÁ¦ +#define NET_DVR_GET_REGION_ENTRANCE_CAPABILITIES 3502 //»ñÈ¡½øÈëÇøÓòÕì²âÄÜÁ¦ +#define NET_DVR_GET_REGION_ENTR_DETECTION 3503 //»ñÈ¡½øÈëÇøÓòÅäÖà +#define NET_DVR_SET_REGION_ENTR_DETECTION 3504 //ÉèÖýøÈëÇøÓòÅäÖà +#define NET_DVR_GET_REGION_ENTR_REGION 3505 //»ñÈ¡½øÈëÇøÓòµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_REGION_ENTR_REGION 3506 //ÉèÖýøÈëÇøÓòµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_REGION_ENTR_TRIGGER 3507 //»ñÈ¡½øÈëÇøÓòÁª¶¯ÅäÖà +#define NET_DVR_SET_REGION_ENTR_TRIGGER 3508 //ÉèÖýøÈëÇøÓòÁª¶¯ÅäÖà +#define NET_DVR_GET_REGION_ENTR_SCHEDULE 3509 //»ñÈ¡½øÈëÇøÓò²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_REGION_ENTR_SCHEDULE 3510 //ÉèÖýøÈëÇøÓò²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_REGION_EXITINT_CAPABILITIES 3511 //»ñÈ¡À뿪ÇøÓòÕì²âÄÜÁ¦ +#define NET_DVR_GET_REGION_EXITING_DETECTION 3512 //»ñÈ¡À뿪ÇøÓòÅäÖà +#define NET_DVR_SET_REGION_EXITING_DETECTION 3513 //ÉèÖÃÀ뿪ÇøÓòÅäÖà +#define NET_DVR_GET_REGION_EXITING_REGION 3514 //»ñÈ¡À뿪ÇøÓòµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_REGION_EXITING_REGION 3515 //ÉèÖÃÀ뿪ÇøÓòµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_REGION_EXIT_TRIGGER 3516 //»ñÈ¡À뿪ÇøÓòÁª¶¯ÅäÖà +#define NET_DVR_SET_REGION_EXIT_TRIGGER 3517 //ÉèÖÃÀ뿪ÇøÓòÁª¶¯ÅäÖà +#define NET_DVR_GET_REGION_EXIT_SCHEDULE 3518 //»ñÈ¡À뿪ÇøÓò²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_REGION_EXIT_SCHEDULE 3519 //ÉèÖÃÀ뿪ÇøÓò²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_LOITERING_CAPABILITIES 3520 //»ñÈ¡ÅÇ»²Õì²âÄÜÁ¦ +#define NET_DVR_GET_LOITERING_DETECTION 3521 //»ñÈ¡ÅÇ»²Õì²âÅäÖà +#define NET_DVR_SET_LOITERING_DETECTION 3522 //ÉèÖÃÅÇ»²Õì²âÅäÖà +#define NET_DVR_GET_LOITERING_REGION 3523 //»ñÈ¡ÅÇ»²µÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_LOITERING_REGION 3524 //ÉèÖÃÅÇ»²µÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_LOITERING_TRIGGER 3525 //»ñÈ¡ÅÇ»²Áª¶¯ÅäÖà +#define NET_DVR_SET_LOITERING_TRIGGER 3526 //ÉèÖÃÅÇ»²Áª¶¯ÅäÖà +#define NET_DVR_GET_LOITERING_SCHEDULE 3527 //»ñÈ¡ÅÇ»²²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_LOITERING_SCHEDULE 3528 //ÉèÖÃÅÇ»²²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_GROUPDETECTION_CAPABILITIES 3529 //»ñÈ¡ÈËÔ±¾Û¼¯Õì²âÄÜÁ¦ +#define NET_DVR_GET_GROUP_DETECTION 3530 //»ñÈ¡ÈËÔ±¾Û¼¯Õì²âÅäÖà +#define NET_DVR_SET_GROUP_DETECTION 3531 //ÉèÖÃÈËÔ±¾Û¼¯Õì²âÅäÖà +#define NET_DVR_GET_GROUPDETECTION_REGION 3532 //»ñÈ¡ÈËÔ±¾Û¼¯µÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_GROUPDETECTION_REGION 3533 //ÉèÖÃÈËÔ±¾Û¼¯µÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_GROUPDETECTION_TRIGGER 3534 //»ñÈ¡ÈËÔ±¾Û¼¯Áª¶¯ÅäÖà +#define NET_DVR_SET_GROUPDETECTION_TRIGGER 3535 //ÉèÖÃÈËÔ±¾Û¼¯Áª¶¯ÅäÖà +#define NET_DVR_GET_GROUPDETECTION_SCHEDULE 3536 //»ñÈ¡ÈËÔ±¾Û¼¯²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_GROUPDETECTION_SCHEDULE 3537 //ÉèÖÃÈËÔ±¾Û¼¯²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_RAPIDMOVE_CAPABILITIES 3538 //»ñÈ¡¿ìËÙÔ˶¯Õì²âÄÜÁ¦ +#define NET_DVR_GET_RAPIDMOVE_DETECTION 3539 //»ñÈ¡¿ìËÙÔ˶¯Õì²âÅäÖà +#define NET_DVR_SET_RAPIDMOVE_DETECTION 3540 //ÉèÖÿìËÙÔ˶¯Õì²âÅäÖà +#define NET_DVR_GET_RAPIDMOVE_REGION 3541 //»ñÈ¡¿ìËÙÔ˶¯µÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_RAPIDMOVE_REGION 3542 //ÉèÖÿìËÙÔ˶¯µÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_RAPIDMOVE_TRIGGER 3543 //»ñÈ¡¿ìËÙÔ˶¯Áª¶¯ÅäÖà +#define NET_DVR_SET_RAPIDMOVE_TRIGGER 3544 //ÉèÖÿìËÙÔ˶¯Áª¶¯ÅäÖà +#define NET_DVR_GET_RAPIDMOVE_SCHEDULE 3545 //»ñÈ¡¿ìËÙÔ˶¯µÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_RAPIDMOVE_SCHEDULE 3546 //ÉèÖÿìËÙÔ˶¯µÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_PATKING_CAPABILITIES 3547 //»ñÈ¡Í£³µÕì²âÄÜÁ¦ +#define NET_DVR_GET_PARKING_DETECTION 3548 //»ñÈ¡Í£³µÕì²âÅäÖà +#define NET_DVR_SET_PARKING_DETECTION 3549 //ÉèÖÃÍ£³µÕì²âÅäÖà +#define NET_DVR_GET_PARKING_REGION 3550 //»ñÈ¡Í£³µÕì²âµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_PARKING_REGION 3551 //ÉèÖÃÍ£³µÕì²âµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_PARKING_TRIGGER 3552 //»ñÈ¡Í£³µÕì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_PARKING_TRIGGER 3553 //ÉèÖÃÍ£³µÕì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_PARKING_SCHEDULE 3554 //»ñÈ¡Í£³µÕì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_PARKING_SCHEDULE 3555 //ÉèÖÃÍ£³µÕì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_UNATTENDED_BAGGAGE_CAPABILITIES 3556 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²âÄÜÁ¦ +#define NET_DVR_GET_UNATTENDED_BAGGAGE_DETECTION 3557 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²âÅäÖà +#define NET_DVR_SET_UNATTENDED_BAGGAGE_DETECTION 3558 //ÉèÖÃÎïÆ·ÒÅÁôÕì²âÅäÖà +#define NET_DVR_GET_UNATTENDED_BAGGAGE_REGION 3559 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²âµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_UNATTENDED_BAGGAGE_REGION 3560 //ÉèÖÃÎïÆ·ÒÅÁôÕì²âµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_UNATTENDED_BAGGAGE_TRIGGER 3561 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_UNATTENDED_BAGGAGE_TRIGGER 3562 //ÉèÖÃÎïÆ·ÒÅÁôÕì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_UNATTENDED_BAGGAGE_SCHEDULE 3563 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_UNATTENDED_BAGGAGE_SCHEDULE 3564 //ÉèÖÃÎïÆ·ÒÅÁôÕì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_ATTENDEDBAGGAGE_CAPABILITIES 3565 //»ñÈ¡ÎïÆ·ÄÃÈ¡Õì²âÄÜÁ¦ +#define NET_DVR_GET_ATTENDEDBAGGAGE_DETECTION 3566 //»ñÈ¡ÎïÆ·ÄÃÈ¡Õì²âÅäÖà +#define NET_DVR_SET_ATTENDEDBAGGAGE_DETECTION 3567 //ÉèÖÃÎïÆ·ÄÃÈ¡Õì²âÅäÖà +#define NET_DVR_GET_ATTENDEDBAGGAGE_REGION 3568 //»ñÈ¡ÎïÆ·ÄÃÈ¡Õì²âµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_SET_ATTENDEDBAGGAGE_REGION 3569 //ÉèÖÃÎïÆ·ÄÃÈ¡Õì²âµÄµ¥¸öÇøÓòÅäÖà +#define NET_DVR_GET_ATTENDEDBAGGAGE_TRIGGER 3570 //»ñÈ¡ÎïÆ·ÄÃÈ¡Õì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_ATTENDEDBAGGAGE_TRIGGER 3571 //ÉèÖÃÎïÆ·ÄÃÈ¡Õì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_ATTENDEDBAGGAGE_SCHEDULE 3572 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_ATTENDEDBAGGAGE_SCHEDULE 3573 //ÉèÖÃÎïÆ·ÄÃÈ¡Õì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_REGIONCLIP_CAPABILITIES 3574 //»ñÈ¡ÇøÓò²Ã¼ôÄÜÁ¦ +#define NET_DVR_GET_REGION_CLIP 3575 //»ñÈ¡ÇøÓò²Ã¼ôÅäÖà +#define NET_DVR_SET_REGION_CLIP 3576 //ÉèÖÃÇøÓò²Ã¼ôÅäÖà +#define NET_DVR_GET_NETWORK_CAPABILITIES 3577 //»ñÈ¡ÍøÂçÄÜÁ¦ +#define NET_DVR_GET_WIRELESS_DIAL 3578 //»ñÈ¡ÎÞÏß²ÎÊýÅäÖà +#define NET_DVR_SET_WIRELESS_DIAL 3579 //ÉèÖÃÎÞÏß²ÎÊýÅäÖà +#define NET_DVR_GET_WIRELESSDIAL_CAPABILITIES 3580 //»ñÈ¡ÎÞÏß²¦ºÅ²ÎÊýÄÜÁ¦ +#define NET_DVR_GET_WIRELESSDIAL_SCHEDULE 3581 //»ñÈ¡²¦ºÅ¼Æ»®ÅäÖà +#define NET_DVR_SET_WIRELESSDIAL_SCHEDULE 3582 //ÉèÖò¦ºÅ¼Æ»®ÅäÖà +#define NET_DVR_GET_WIRELESSDIAL_STATUS 3583 //»ñÈ¡²¦ºÅ״̬ +#define NET_DVR_GET_REGION_ENTRANCE_SCHEDULE_CAPABILITIES 3584 //»ñÈ¡½øÈëÇøÓòÕì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_REGION_EXITING_SCHEDULE_CAPABILITIES 3585 //»ñÈ¡À뿪ÇøÓòÕì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_LOITERING_SCHEDULE_CAPABILITIES 3586 //»ñÈ¡ÅÇ»²Õì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_GROUP_SCHEDULE_CAPABILITIES 3587 //»ñÈ¡ÈËÔ±¾Û¼¯Õì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_RAPIDMOVE_SCHEDULE_CAPABILITIES 3588 //»ñÈ¡¿ìËÙÔ˶¯Õì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_PARKING_SCHEDULE_CAPABILITIES 3589 //»ñÈ¡Í£³µÕì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_UNATTENDEDBAGGAGE_SCHEDULE_CAPABILITIES 3590 //»ñÈ¡ÎïÆ·ÒÅÁôÕì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_ATTENDEDBAGGAGE_SCHEDULE_CAPABILITIES 3591 //»ñÈ¡ÎïÆ·ÄÃÈ¡Õì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_WIRELESSDIAL_SCHEDULE_CAPABILITIES 3592 //»ñÈ¡²¦ºÅ¼Æ»®ÄÜÁ¦ +#define NET_DVR_WIRELESSDIAL_CONNECT 3593 //¿ØÖÆÎÞÏßÍøÂçÁ¬Íø¶ÏÍø + +#define NET_DVR_GET_LITESTORAGE 3594 //»ñÈ¡Çá´æ´¢ÅäÖà +#define NET_DVR_SET_LITESTORAGE 3595 //ÉèÖÃÇá´æ´¢ÅäÖà +#define NET_DVR_GET_LITESTORAGE_CAPABILITIES 3596 //»ñÈ¡Çá´æ´¢ÄÜÁ¦ + +#define NET_DVR_GET_VEHICLE_CAPABILITIES 3597 //»ñÈ¡³µÁ©¼ì²â±ê¶¨ÄÜÁ¦ +#define NET_DVR_GET_VEHICLE_CALIBRATION 3598 //»ñÈ¡³µÁ¾¼ì²â±ê¶¨ + +#define NET_DVR_GET_SLAVECAMERA_CAPABILITIES 3599 //»ñÈ¡´ÓÉãÏñ»úIPÐÅÏ¢ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_SLAVECAMERA 3600 //»ñÈ¡´ÓÉãÏñ»úIPÐÅÏ¢ÅäÖà +#define NET_DVR_SET_SLAVECAMERA 3601 //ÉèÖôÓÉãÏñ»úIPÐÅÏ¢ÅäÖà +#define NET_DVR_GET_SLAVECAMERA_STATUS 3602 //»ñÈ¡´ÓÉãÏñ»úÁ¬½Ó״̬ +#define NET_DVR_GET_SLAVECAMERA_CALIB_CAPABILITIES 3603 //»ñÈ¡´ÓÉãÏñ»úÅäÖÃ&&±ê¶¨ÄÜÁ¦ +#define NET_DVR_GET_SLAVECAMERA_CALIB 3604 //»ñÈ¡´ÓÉãÏñ»ú±ê¶¨ÅäÖà +#define NET_DVR_SET_SLAVECAMERA_CALIB 3605 //ÉèÖôÓÉãÏñ»ú±ê¶¨ÅäÖà +#define NET_DVR_GET_PHY_RATIO 3606 //»ñÈ¡ÎïÀí±¶ÂÊ×ø±êÐÅÏ¢ +#define NET_DVR_SET_PHY_RATIO 3607 //ÉèÖÃÎïÀí±¶ÂÊ×ø±êÐÅÏ¢ +#define NET_DVR_GET_MASTERSLAVETRACKING_CAPABILITIES 3608 //»ñÈ¡Ö÷´Ó¸ú×ÙÄÜÁ¦ +#define NET_DVR_SET_TRACKINGRATIO 3610 //ÉèÖôÓÉãÏñ»ú¸ú×Ù±¶ÂÊ +#define NET_DVR_GET_TRACKING 3611 //»ñÈ¡Ö÷´Ó¸ú×Ù¹¦ÄÜÏà»ú¸ú×ÙÅäÖà +#define NET_DVR_SET_TRACKING 3612 //ÉèÖÃÖ÷´Ó¸ú×Ù¹¦ÄÜÏà»ú¸ú×ÙÅäÖà +#define NET_DVR_GET_TRACKING_CAPABILITIES 3613 //»ñÈ¡Ö÷´Ó¸ú×Ù¹¦ÄÜÏà»ú¸ú×ÙÅäÖÃÄÜÁ¦ + +#define NET_DVR_GET_SLAVECAMERA_CALIB_V50 3614 //»ñÈ¡´ÓÉãÏñ»ú±ê¶¨ÅäÖÃV50 +#define NET_DVR_SET_SLAVECAMERA_CALIB_V50 3615 //ÉèÖôÓÉãÏñ»ú±ê¶¨ÅäÖÃV50 +#define NET_DVR_SET_TRACKINGRATIO_MANUAL 3616 //ÉèÖôÓÉãÏñ»úÊÖ¶¯¸ú×Ù±¶ÂÊ +#define NET_DVR_GET_TRACKINGRATIO_MANUAL 3617 //»ñÈ¡´ÓÉãÏñ»úÊÖ¶¯¸ú×Ù±¶ÂÊ +#define NET_DVR_SET_TRACK_INITPOSTION 3618 //ÉèÖôÓÉãÏñ»ú³õʼ¸ú×ÙλÖà +#define NET_DVR_GET_PTZ_CAPABILITIES 3619 //»ñÈ¡ptzÇò»ú¿ØÖÆÄÜÁ¦ + +#define NET_DVR_GET_THERMOMETRY_BASICPARAM_CAPABILITIES 3620 //»ñÈ¡²âÎÂÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_THERMOMETRY_BASICPARAM 3621 //»ñÈ¡²âÎÂÅäÖòÎÊý +#define NET_DVR_SET_THERMOMETRY_BASICPARAM 3622 //ÉèÖòâÎÂÅäÖòÎÊý +#define NET_DVR_GET_THERMOMETRY_SCENE_CAPABILITIES 3623 //»ñÈ¡²âÎÂÔ¤Öõã¹ØÁªÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_THERMOMETRY_PRESETINFO 3624 //»ñÈ¡²âÎÂÔ¤Öõã¹ØÁªÅäÖòÎÊý +#define NET_DVR_SET_THERMOMETRY_PRESETINFO 3625 //ÉèÖòâÎÂÔ¤Öõã¹ØÁªÅäÖòÎÊý +#define NET_DVR_GET_THERMOMETRY_ALARMRULE_CAPABILITIES 3626//»ñÈ¡²âα¨¾¯·½Ê½ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_THERMOMETRY_ALARMRULE 3627 //»ñÈ¡²âÎÂÔ¤Öõ㱨¾¯¹æÔòÅäÖòÎÊý +#define NET_DVR_SET_THERMOMETRY_ALARMRULE 3628 //ÉèÖòâÎÂÔ¤Öõ㱨¾¯¹æÔòÅäÖòÎÊý +#define NET_DVR_GET_REALTIME_THERMOMETRY 3629 //ʵʱζȼì²â +#define NET_DVR_GET_THERMOMETRY_DIFFCOMPARISON 3630 //»ñÈ¡²âÎÂÔ¤Öõãβî¹æÔòÅäÖòÎÊý +#define NET_DVR_SET_THERMOMETRY_DIFFCOMPARISON 3631 //ÉèÖòâÎÂÔ¤Öõãβî¹æÔòÅäÖòÎÊý +#define NET_DVR_GET_THERMOMETRY_TRIGGER 3632 //»ñÈ¡²âÎÂÁª¶¯ÅäÖà +#define NET_DVR_SET_THERMOMETRY_TRIGGER 3633 //ÉèÖòâÎÂÁª¶¯ÅäÖà + +#define NET_DVR_GET_THERMAL_CAPABILITIES 3634 //»ñÈ¡ÈȳÉÏñ£¨Thermal£©ÄÜÁ¦ +#define NET_DVR_GET_FIREDETECTION_CAPABILITIES 3635 //»ñÈ¡»ðµã¼ì²âÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_FIREDETECTION 3636 //»ñÈ¡»ðµã¼ì²â²ÎÊý +#define NET_DVR_SET_FIREDETECTION 3637 //ÉèÖûðµã¼ì²â²ÎÊý +#define NET_DVR_GET_FIREDETECTION_TRIGGER 3638 //»ñÈ¡»ðµã¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_FIREDETECTION_TRIGGER 3639 //ÉèÖûðµã¼ì²âÁª¶¯ÅäÖà + +#define NET_DVR_GET_OIS_CAPABILITIES 3640 //»ñÈ¡¹âѧ·À¶¶²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_OIS_CFG 3641 //»ñÈ¡¹âѧ·À¶¶ÅäÖà +#define NET_DVR_SET_OIS_CFG 3642 //ÉèÖùâѧ·À¶¶ÅäÖà +#define NET_DVR_GET_MACFILTER_CAPABILITIES 3643 //»ñÈ¡MACµØÖ·¹ýÂËÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_MACFILTER_CFG 3644 //»ñÈ¡MACµØÖ·¹ýÂËÅäÖà +#define NET_DVR_SET_MACFILTER_CFG 3645 //ÉèÖÃMACµØÖ·¹ýÂËÅäÖà +#define NET_DVR_GET_EAGLEFOCUS_CALCFG_CAPABILITIES 3646 //Ó¥ÊÓ¾Û½¹±ê¶¨ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_EAGLEFOCUSING_CALCFG 3647 //»ñÈ¡Ó¥ÊÓ¾Û½¹±ê¶¨ÅäÖà +#define NET_DVR_SET_EAGLEFOCUSING_CALCFG 3648 //ÉèÖÃÓ¥ÊÓ¾Û½¹±ê¶¨ÅäÖà +#define NET_DVR_GET_EAGLEFOCUSING_CFG_CAPABILITIES 3649 //»ñÈ¡Ó¥ÊÓ¾Û½¹ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_EAGLEFOCUSING_CTRL 3650 //»ñÈ¡Ó¥ÊÓ¾Û½¹ÅäÖà +#define NET_DVR_SET_EAGLEFOCUSING_CTRL 3651 //ÉèÖÃÓ¥ÊÓ¾Û½¹ÅäÖà + +#define NET_DVR_GET_PXOFFLINE_CAPABILITIES 3652 //»ñÈ¡Í£³µ³¡Æ±ÏäÍÑ»úϲÎÊýÅäÖà ÄÜÁ¦ +#define NET_DVR_SET_PXOFFLINE_CFG 3653 //ÉèÖÃÍ£³µ³¡Æ±ÏäÍÑ»úϲÎÊýÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_PXOFFLINE_CFG 3654 //»ñÈ¡Í£³µ³¡Æ±ÏäÍÑ»úϲÎÊýÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_PAPERCHARGEINFO_CAPABILITIES 3655 //»ñÈ¡Í£³µ³¡³öÈë¿ÚֽƱÐÅϢϷ¢ ÄÜÁ¦ +#define NET_DVR_SET_PAPERCHARGEINFO 3656 //ÉèÖÃÍ£³µ³¡³öÈë¿ÚֽƱÐÅϢϷ¢ +#define NET_DVR_GET_PARKINGSAPCE_CAPABILITIES 3657 //»ñÈ¡Í£³µ³¡³öÈë¿ÚÍ£³µÎ»ÐÅϢϷ¢ ÄÜÁ¦ +#define NET_DVR_SET_PARKINGSAPCE_INFO 3658 //ÉèÖÃÍ£³µ³¡³öÈë¿ÚÍ£³µÎ»ÐÅϢϷ¢ +#define NET_DVR_GET_PXMULTICTRL_CAPABILITIES 3659 //»ñÈ¡Í£³µ³¡Æ±Ïä´ÓÊôÉ豸¶à½Ç¶È²ÎÊýÅäÖà ÄÜÁ¦ +#define NET_DVR_GET_CHARGEACCOUNT_CAPABILITIES 3661 //»ñÈ¡Í£³µ³¡Æ±Ïä²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_SET_CHARGE_ACCOUNTINFO 3662 //ÉèÖýɷѽð¶îÐÅÏ¢ +#define NET_DVR_SET_PXMULTICTRL_CFG 3663 //ÉèÖÃÍ£³µ³¡Æ±Ïä´ÓÊôÉ豸¶à½Ç¶È²ÎÊýÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_PXMULTICTRL_CFG 3664 //»ñÈ¡Í£³µ³¡Æ±Ïä´ÓÊôÉ豸¶à½Ç¶È²ÎÊýÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_TME_CHARGERULE 3665 //»ñÈ¡Í£³µ³¡³öÈë¿Ú³µ¿¨ÊշѹæÔò¹æÔò +#define NET_DVR_SET_TME_CHARGERULE 3666 //ÉèÖÃÍ£³µ³¡³öÈë¿Ú³µ¿¨ÊշѹæÔò¹æÔò +#define NET_DVR_GET_TME_CHARGERULE_CAPABILITIES 3667 //»ñÈ¡Í£³µ³¡³öÈë¿Ú ³µ¿¨ÊÕ·ÑÐÅÏ¢ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_ILLEGALCARDFILTERING_CAPABILITIES 3668 //»ñÈ¡Í£³µ³¡Æ±Ïä²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_ILLEGALCARDFILTERING_CFG 3669 //»ñÈ¡Í£³µ³¡Æ±Ïä²ÎÊýÅäÖà +#define NET_DVR_SET_ILLEGALCARDFILTERING_CFG 3670 //ÉèÖÃÍ£³µ³¡Æ±Ïä²ÎÊýÅäÖà +#define NET_DVR_GET_LEDDISPLAY_CAPABILITIES 3671 //»ñÈ¡LEDÆÁÄ»ÏÔʾ²ÎÊýÅäÖòÎÊýÄÜÁ¦ +#define NET_DVR_SET_LEDDISPLAY_CFG 3672 //ÉèÖÃLEDÆÁÄ»ÏÔʾ²ÎÊý +#define NET_DVR_GET_LEDDISPLAY_CFG 3673 //»ñÈ¡LEDÆÁÄ»ÏÔʾ²ÎÊý +#define NET_DVR_GET_VOICEBROADCAST_CAPABILITIES 3674 //»ñÈ¡ÓïÒô²¥±¨¿ØÖƲÎÊýÅäÖòÎÊýÄÜÁ¦ +#define NET_DVR_SET_VOICEBROADCAST_CFG 3675 //ÉèÖÃÓïÒô²¥±¨¿ØÖƲÎÊý +#define NET_DVR_GET_PAPERPRINTFORMAT_CAPABILITIES 3676//»ñȡֽƱ´òÓ¡¸ñʽÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_PAPERPRINTFORMAT_CFG 3677 //»ñȡֽƱ´òÓ¡¸ñʽ²ÎÊýÅäÖà +#define NET_DVR_SET_PAPERPRINTFORMAT_CFG 3678 //ÉèÖÃֽƱ´òÓ¡¸ñʽ²ÎÊýÅäÖà +#define NET_DVR_GET_LOCkGATE_CAPABILITIES 3679 //»ñÈ¡ÖÇÄÜËøÕ¢ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_LOCKGATE_CFG 3680 //»ñÈ¡ÖÇÄÜËøÕ¢²ÎÊýÅäÖà +#define NET_DVR_SET_LOCKGATE_CFG 3681 //ÉèÖÃÖÇÄÜËøÕ¢²ÎÊýÅäÖà +#define NET_DVR_GET_PARKING_DATASTATE 3682 //»ñÈ¡Êý¾Ýͬ²½×´Ì¬ +#define NET_DVR_SET_PARKING_DATASTATE 3683 //ÉèÖÃÊý¾Ýͬ²½×´Ì¬ +#define NET_DVR_GET_TME_CAPABILITIES 3684 //»ñÈ¡Í£³µ³¡³öÈë¿ÚÉ豸 ÄÜÁ¦ + +#define NET_DVR_GET_TMEVOICE_CAPABILITIES 3686 //»ñÈ¡ÓïÒôÅäÖÃÐÅÏ¢ÄÜÁ¦ +#define NET_DVR_SET_TMEVOICE_CFG 3687 //ÉèÖÃÓïÒô²ÎÊýÅäÖà +#define NET_DVR_GET_TMEVOICE_CFG 3688 //»ñÈ¡ÓïÒô²ÎÊýÅäÖà +#define NET_DVR_DEL_TMEVOICE_CFG 3689 //ɾ³ýÓïÒô²ÎÊýÅäÖà +#define NET_DVR_GET_POSITION 3698 // »ñÈ¡·½Î»½ÃÕýÅäÖòÎÊý +#define NET_DVR_SET_POSITION 3699 // ÉèÖ÷½Î»½ÃÕýÅäÖòÎÊý +#define NET_DVR_GET_CENTRALIZEDCTRL_CAPABILITIES 3700//»ñÈ¡¼¯Öв¼¿ØÄÜÁ¦ +#define NET_DVR_GET_CENTRALIZEDCTRL 3701//»ñÈ¡¼¯Öв¼¿Ø²ÎÊýÅäÖà +#define NET_DVR_SET_CENTRALIZEDCTRL 3702//ÉèÖü¯Öв¼¿Ø²ÎÊýÅäÖà +#define NET_DVR_GET_COMPASS_CAPABILITIES 3703//»ñÈ¡µç×ÓÂÞÅÌÄÜÁ¦ +#define NET_DVR_GET_VANDALPROOFALARM 3704//»ñÈ¡·ÀÆÆ»µ±¨¾¯²ÎÊýÅäÖà +#define NET_DVR_SET_VANDALPROOFALARM 3705//ÉèÖ÷ÀÆÆ»µ±¨¾¯²ÎÊýÅäÖà +#define NET_DVR_COMPASS_CALIBRATE_CTRL 3706//µç×ÓÂÞÅ̽ÃÕý¿ØÖÆ½Ó¿Ú +#define NET_DVR_COMPASS_NORTH_CTRL 3707//µç×ÓÂÞÅÌÖ¸ÏòÕý±±¿ØÖÆ½Ó¿Ú +#define NET_DVR_GET_AZIMUTHINFO 3708//»ñÈ¡·½Î»½Ç¶È²ÎÊýÅäÖà + + +#define NET_DVR_GET_SATELLITETIME 3709//»ñÈ¡ÎÀÐǶ¨Î»²ÎÊýÅäÖà +#define NET_DVR_SET_SATELLITETIME 3710//ÉèÖÃÎÀÐǶ¨Î»²ÎÊýÅäÖà +#define NET_DVR_GET_GISINFO 3711//»ñÈ¡µ±Ç°Çò»úµÄGISÐÅÏ¢Êý¾Ý +#define NET_DVR_GET_STREAMING_CAPABILITIES 3712//»ñÈ¡ÊÓƵÁ÷µÄÄÜÁ¦ +#define NET_DVR_GET_REFRESHFRAME_CAPABILITIES 3713//»ñÈ¡Ë¢ÐÂÖ¡µÄÄÜÁ¦ +#define NET_DVR_STREAMING_REFRESH_FRAME 3714//È¡Á÷Ô¤ÀÀµÄÇ¿ÖÆË¢ÐÂÖ¡ +#define NET_DVR_FACECAPTURE_STATISTICS 3715//³¤Á¬½ÓÈËԱͳ¼Æ +#define NET_DVR_GET_WIRELESSSERVER_CAPABILITIES 3716 //»ñÈ¡Èȵ㹦ÄÜÅäÖÃЭÒéµÄÄÜÁ¦ +#define NET_DVR_GET_WIRELESSSERVER 3717 //»ñÈ¡Èȵ㹦ÄÜÅäÖÃЭÒé +#define NET_DVR_SET_WIRELESSSERVER 3718 //ÉèÖÃÈȵ㹦ÄÜÅäÖÃЭÒé +#define NET_DVR_GET_CONNECT_LIST_CAPABILITIES 3719 //»ñÈ¡Á¬½ÓÉ豸ÁбíÐÅÏ¢µÄÄÜÁ¦ +#define NET_DVR_GET_THSCREEN_CAPABILITIES 3720 //»ñÈ¡ÎÂʪ¶ÈÅäÖÃЭÒéµÄÄÜÁ¦ +#define NET_DVR_GET_THSCREEN 3721 //»ñÈ¡ÎÂʪ¶ÈÅäÖÃЭÒé +#define NET_DVR_GET_EXTERNALDEVICE_CAPABILITIES 3722//»ñÈ¡ÍâÉèÅäÖÃЭÒéµÄÄÜÁ¦ +#define NET_DVR_GET_EXTERNALDEVICE 3723//»ñÈ¡ÍâÉèÅäÖÃЭÒé +#define NET_DVR_SET_EXTERNALDEVICE 3724//ÉèÖÃÍâÉèÅäÖÃЭÒé +#define NET_DVR_GET_LEDDISPLAYINFO_CAPABILITIES 3725 //»ñÈ¡LEDÏÔʾÐÅÏ¢µÄÄÜÁ¦ +#define NET_DVR_SET_LEDDISPLAYINFO 3726 //ÉèÖÃLEDÏÔʾÐÅÏ¢ +#define NET_DVR_GET_SUPPLEMENTLIGHT_CAPABILITIES 3727 //»ñÈ¡ÄÚÖò¹¹âµÆÅäÖÃЭÒéµÄÄÜÁ¦ (Çò»úÖ§³Ö£¬Èí¼þʵÏÖ£¬²¹¹âµÆÊÇÉè¼ÆÔÚÉ豸ÄÚ²¿µÄ) +#define NET_DVR_GET_SUPPLEMENTLIGHT 3728 //»ñÈ¡ÄÚÖò¹¹âµÆÅäÖÃЭÒé +#define NET_DVR_SET_SUPPLEMENTLIGHT 3729 //ÉèÖÃÄÚÖò¹¹âµÆÅäÖÃЭÒé +#define NET_DVR_SET_THSCREEN 3730 //ÉèÖÃÎÂʪ¶ÈÅäÖÃЭÒé +#define NET_DVR_GET_LOWPOWER_CAPABILITIES 3731 //»ñÈ¡µÍ¹¦ºÄÅäÖÃЭÒéµÄÄÜÁ¦ +#define NET_DVR_GET_LOWPOWER 3732 //»ñÈ¡µÍ¹¦ºÄÅäÖÃЭÒé +#define NET_DVR_SET_LOWPOWER 3733 //ÉèÖõ͹¦ºÄÅäÖÃЭÒé +#define NET_DVR_GET_ZOOMLINKAGE_CAPABILITIES 3734 //»ñÈ¡±ä±¶Áª¶¯ÅäÖÃЭÒéµÄÄÜÁ¦ +#define NET_DVR_GET_ZOOMLINKAGE 3735 //»ñÈ¡±ä±¶Áª¶¯ÅäÖÃЭÒé +#define NET_DVR_SET_ZOOMLINKAGE 3736 //ÉèÖñ䱶Áª¶¯ÅäÖÃЭÒé +#define NET_DVR_THSCREEN_TIMING 3737 //ÎÂʪ¶È +#define NET_DVR_GET_OSD_BATTERY_POWER_CFG 3741 //»ñÈ¡OSDµç³ØµçÁ¿ÏÔʾ²ÎÊý +#define NET_DVR_SET_OSD_BATTERY_POWER_CFG 3742 //ÉèÖÃOSDµç³ØµçÁ¿ÏÔʾ²ÎÊý +#define NET_DVR_GET_OSD_BATTERY_POWER_CFG_CAPABILITIES 3743//OSDµç³ØµçÁ¿ÏÔʾ²ÎÊýµÄÄÜÁ¦ +#define NET_DVR_GET_VANDALPROOFALARM_TRIGGER 3744 //»ñÈ¡·ÀÆÆ»µ±¨¾¯Áª¶¯ÅäÖà +#define NET_DVR_SET_VANDALPROOFALARM_TRIGGER 3745 //ÉèÖ÷ÀÆÆ»µ±¨¾¯Áª¶¯ÅäÖà +#define NET_DVR_GET_PANORAMAIMAGE_CAPABILITIES 3746 //»ñÈ¡È«¾°Í¼ÏñµÄÄÜÁ¦ +#define NET_DVR_GET_PANORAMAIMAGE 3747 //»ñÈ¡È«¾°Í¼Ïñ²ÎÊýµÄЭÒé +#define NET_DVR_SET_PANORAMAIMAGE 3748 //ÉèÖÃÈ«¾°Í¼Ïñ²ÎÊýµÄЭÒé +#define NET_DVR_GET_STREAMENCRYPTION 3749 //»ñÈ¡ÂëÁ÷¼ÓÃÜÅäÖà +#define NET_DVR_SET_STREAMENCRYPTION 3750 //ÉèÖÃÂëÁ÷¼ÓÃÜÅäÖà +#define NET_DVR_GET_STREAMENCRYPTION_CAPABILITIES 3751 //»ñÈ¡ÂëÁ÷¼ÓÃÜÄÜÁ¦ +#define NET_DVR_GET_REVISE_GPS_CAPABILITIES 3752 //»ñȡУ׼GPS¾­Î³¶ÈÄÜÁ¦ +#define NET_DVR_GET_REVISE_GPS 3753 //»ñȡУ׼GPS¾­Î³¶ÈÄÜÁ¦ +#define NET_DVR_SET_REVISE_GPS 3754 //ÉèÖÃУ׼GPS¾­Î³¶ÈÄÜÁ¦ +#define NET_DVR_GET_PDC_RECOMMEND 3755 //»ñÈ¡¿ÍÁ÷ͳ¼Æ±íʾÍƼöÖµ +#define NET_DVR_REMOVE_FLASHSTORAGE 3756 //¿ÍÁ÷Êý¾ÝÇå³ý²Ù×÷ +#define NET_DVR_GET_COUNTING_CAPABILITIES 3757 //»ñÈ¡¿ÍÁ÷Á¿Í³¼ÆÄÜÁ¦ +#define NET_DVR_SET_SENSOR_ADJUSTMENT 3758 //ÉèÖÃSensor µ÷½Ú²ÎÊýµÄЭÒé +#define NET_DVR_GET_SENSOR_ADJUSTMENT_CAPABILITIES 3759 //»ñÈ¡Sensor µ÷½Ú²ÎÊýµÄЭÒéµÄÄÜÁ¦ +#define NET_DVR_GET_WIRELESSSERVER_FULLVERSION_CFG 3760 //»ñÈ¡wifiÈȵã²ÎÊýÅäÖÃ(ÍêÕû°æ) +#define NET_DVR_SET_WIRELESSSERVER_FULLVERSION_CFG 3761 //ÉèÖÃwifiÈȵã²ÎÊýÅäÖÃ(ÍêÕû°æ) +#define NET_DVR_GET_ONLINEUSER_INFO 3762 //³¤Á¬½Ó»ñÈ¡Óû§ÔÚÏßÐÅÏ¢ +#define NET_DVR_GET_SENSOR_ADJUSTMENT_INFO 3763 //»ñÈ¡Ö¸¶¨sensorµ÷½Ú²ÎÊý +#define NET_DVR_SENSOR_RESET_CTRL 3764 //Sensor µ÷½Ú¸´Î» + +#define NET_DVR_GET_POSTRADAR_CAPABILITIES 3765 //»ñÈ¡À×´ï²âËÙÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_POSTRADARSPEED_CFG 3766 //»ñÈ¡À×´ï²âËÙÅäÖà +#define NET_DVR_SET_POSTRADARSPEED_CFG 3767 //ÉèÖÃÀ×´ï²âËÙÅäÖà +#define NET_DVR_GET_POSTRADARSPEED_RECOM_CFG 3768 //»ñÈ¡À×´ï²âËÙÍƼöÖµ +#define NET_DVR_GET_POSTRADARPARAM_CFG 3769 //»ñÈ¡À×´ï²ÎÊýÅäÖà +#define NET_DVR_SET_POSTRADARPARAM_CFG 3770 //ÉèÖÃÀ×´ï²ÎÊýÅäÖà +#define NET_DVR_GET_POSTRADARPARAM_RECOM_CFG 3771 //»ñÈ¡À×´ï²ÎÊýÍƼöÖµ + +#define NET_DVR_GET_ENCRYPT_DEVICE_INFO 3772 //»ñÈ¡¼ÓÃÜÉ豸ÐÅÏ¢ +#define NET_DVR_GET_ANR_ARMING_HOST 3773 //»ñÈ¡¶ÏÍøÐø´«µÄÖ÷»úÐÅÏ¢ +#define NET_DVR_GET_FIRMWARE_VERSION 3776 //GET firmware version +/********************************IPC»ùÏßFF³µÅÆ****************************/ +#define NET_DVR_GET_FTP_CAPABILITIES 3782 //»ñÈ¡ftpÄÜÁ¦ +#define NET_DVR_GET_FTPUPLOAD_CFG 3783 //»ñÈ¡ftpÉÏ´«ÐÅÏ¢¹æÕû²ÎÊý +#define NET_DVR_SET_FTPUPLOAD_CFG 3784 //ÉèÖÃftpÉÏ´«ÐÅÏ¢¹æÕû²ÎÊý +#define NET_DVR_GET_VEHICLE_INFORMATION 3785 //»ñÈ¡³µÁ¾ÐÅÏ¢ +#define NET_DVR_GET_DDNS_COUNTRY_ABILITY 3800//»ñÈ¡É豸֧³ÖµÄDDNS¹ú¼ÒÄÜÁ¦Áбí +#define NET_DVR_GET_DEVICECFG_V50 3801 //»ñÈ¡É豸²ÎÊý +#define NET_DVR_SET_DEVICECFG_V50 3802 //ÉèÖÃÉ豸²ÎÊý +#define NET_DVR_SET_VEHICLE_RECOG_TASK_V50 3851 //³µÁ¾¶þ´Îʶ±ðÈÎÎñÌá½»V50À©Õ¹ +#define NET_DVR_GET_SMARTCALIBRATION_CAPABILITIES 3900// SmartÐÐΪ±ê¶¨¹ýÂ˳ߴ繦ÄÜÄÜÁ¦ +#define NET_DVR_GET_TEMPERATURE_TRIGGER 3903 //»ñÈ¡²âβîÁª¶¯ÅäÖà +#define NET_DVR_SET_TEMPERATURE_TRIGGER 3904 //ÉèÖòâβîÁª¶¯ÅäÖà + +#define NET_DVR_GET_SMARTCALIBRATION_CFG 3910 //»ñÈ¡SmartÐÐΪ±ê¶¨¹ýÂ˳ߴ繦ÄÜ +#define NET_DVR_SET_SMARTCALIBRATION_CFG 3911 //ÉèÖÃSmartÐÐΪ±ê¶¨¹ýÂ˳ߴ繦ÄÜ +#define NET_DVR_POST_SETUP_CALIB 3912 //¼ÜÉè±ê¶¨ +#define NET_DVR_SET_POS_INFO_OVERLAY 3913//ÉèÖÃPosÐÅÏ¢ÂëÁ÷µþ¼Ó¿ØÖÆ +#define NET_DVR_GET_POS_INFO_OVERLAY 3914//»ñÈ¡PosÐÅÏ¢ÂëÁ÷µþ¼Ó¿ØÖÆ +#define NET_DVR_GET_CAMERA_WORK_MODE 3915 //ÉèÖÃÏà»ú¹¤×÷ģʽ²ÎÊý +#define NET_DVR_SET_CAMERA_WORK_MODE 3916 //»ñÈ¡Ïà»ú¹¤×÷ģʽ²ÎÊý +#define NET_DVR_GET_RESOLUTION_SWITCH_CAPABILITIES 3917 //»ñÈ¡·Ö±æÂÊģʽÇл»ÄÜÁ¦ +#define NET_DVR_GET_RESOLUTION_SWITCH 3918 //»ñÈ¡·Ö±æÂÊģʽÇл»ÅäÖà +#define NET_DVR_SET_RESOLUTION_SWITCH 3919 //ÉèÖ÷ֱæÂÊģʽÇл»ÅäÖà +#define NET_DVR_GET_CONFIRM_MECHANISM_CAPABILITIES 3920 //±¨¾¯ÉÏ´«È·ÈÏ»úÖÆ¿ØÖÆÄÜÁ¦ +#define NET_DVR_CONFIRM_MECHANISM_CTRL 3921 //±¨¾¯ÉÏ´«È·ÈÏ»úÖÆ¿ØÖÆ +#define NET_DVR_GET_VEHICLLE_RESULT_CAPABILITIES 3951 //»ñÈ¡»ñÈ¡³µÁ¾ÐÅÏ¢½á¹ûÄÜÁ¦ +#define NET_DVR_GET_CALIB_CAPABILITIES 3952//»ñÈ¡¼ÜÉè±ê¶¨ÄÜÁ¦ +#define NET_DVR_GET_POSINFO_OVERLAY_CAPABILITIES 3953//»ñÈ¡»ñÈ¡Posµþ¼ÓÄÜÁ¦ +#define NET_SDK_FINDMEDICALFILE 3954 //»ÛÓ°¿Æ¼¼ÖÇ»ÛÒ½ÁƲéÕÒ¼ÏñÎļþ +#define NET_SDK_FINDMEDICALPICTURE 3955 //»ÛÓ°¿Æ¼¼ÖÇ»ÛÒ½ÁƲéÕÒͼƬÎļþ +#define NET_DVR_SET_POSINFO_OVERLAY 3960//ÉèÖÃPosµþ¼Ó +#define NET_DVR_GET_POSINFO_OVERLAY 3961//»ñÈ¡Posµþ¼Ó +#define NET_DVR_GET_FACELIB_TRIGGER 3962 //»ñÈ¡ÈËÁ³±È¶Ô¿âµÄÁª¶¯ÅäÖà +#define NET_DVR_SET_FACELIB_TRIGGER 3963 //ÉèÖÃÈËÁ³±È¶Ô¿âµÄÁª¶¯ÅäÖà +#define NET_DVR_GET_FACECONTRAST_TRIGGER 3965//»ñÈ¡ÈËÁ³±È¶ÔÁª¶¯ÅäÖà +#define NET_DVR_SET_FACECONTRAST_TRIGGER 3966//ÉèÖÃÈËÁ³±È¶ÔÁª¶¯ÅäÖà +#define NET_DVR_GET_FACECONTRAST_SCHEDULE_CAPABILITIES 3967 //»ñÈ¡ÈËÁ³±È¶Ô²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_FACECONTRAST_SCHEDULE 3968//»ñÈ¡ÈËÁ³±È¶Ô²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_FACECONTRAST_SCHEDULE 3969//ÉèÖÃÈËÁ³±È¶Ô²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_FACELIB_SCHEDULE_CAPABILITIES 3970 //»ñÈ¡ÈËÁ³±È¶Ô¿âµÄ²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_VCA_VERSION_LIST 3973//»ñÈ¡Ëã·¨¿â°æ±¾ +#define NET_DVR_GET_SETUP_CALIB 3974//»ñÈ¡¼ÜÉè±ê¶¨ +#define NET_DVR_GET_PANORAMA_LINKAGE 3975//»ñÈ¡Áª¶¯×¥Í¼ÉÏ´«Ê¹ÄÜÅäÖà +#define NET_DVR_SET_PANORAMA_LINKAGE 3976//ÉèÖÃÁª¶¯×¥Í¼ÉÏ´«Ê¹ÄÜÅäÖà +#define NET_DVR_GET_FACELIB_SCHEDULE 3977 //»ñÈ¡ÈËÁ³±È¶Ô¿âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_FACELIB_SCHEDULE 3978 //ÉèÖÃÈËÁ³±È¶Ô¿âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_SOFTWARE_SERVICE_CAPABILITIES 3980//»ñÈ¡Èí¼þ·þÎñÄÜÁ¦ +#define NET_DVR_GET_SOFTWARE_SERVICE 3981//»ñÈ¡Èí¼þ·þÎñÅäÖà +#define NET_DVR_SET_SOFTWARE_SERVICE 3982//ÉèÖÃÈí¼þ·þÎñÅäÖà +#define NET_DVR_GET_PREVIEW_MODE_CAPABILITIES 3983//»ñÈ¡Ô¤ÀÀģʽÅäÖÃÄÜÁ¦ +#define NET_DVR_SET_EAGLE_FOCUS_GOTOSCENE 3984//ӥʽ¾Û½¹ÉèÖÃÉãÏñ»úתÏòÖ¸¶¨µÄ³¡¾°ID +#define NET_DVR_EAGLE_FOCUS_SCENE_DEL 3985//ɾ³ýӥʽ¾Û½¹±ê¶¨µÄ³¡¾° +#define NET_DVR_GET_SAFETY_HELMET_TRIGGER 3986 //»ñÈ¡°²È«Ã±¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_SAFETY_HELMET_TRIGGER 3987 //ÉèÖð²È«Ã±¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_SAFETY_HELMET_SCHEDULE_CAPABILITIES 3988 //»ñÈ¡°²È«Ã±¼ì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_SAFETY_HELMET_SCHEDULE 3989//»ñÈ¡°²È«Ã±¼ì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_SAFETY_HELMET_SCHEDULE 3990//ÉèÖð²È«Ã±¼ì²â²¼·Àʱ¼äÅäÖà + +#define NET_DVR_GET_SIGN_ABNORMAL_TRIGGER 4150 //»ñÈ¡ÌåÕ÷Òì³£Áª¶¯ÅäÖà +#define NET_DVR_SET_SIGN_ABNORMAL_TRIGGER 4151 //ÉèÖÃÌåÕ÷Òì³£Áª¶¯ÅäÖà + +#define NET_DVR_ONE_KEY_CONFIG_SAN_V50 4152 //Ò»¼üÅäÖÃSAN(V50) +#define NET_DVR_GET_HDCFG_V50 4153 //»ñÈ¡Ó²ÅÌÐÅÏ¢²ÎÊýV50 +#define NET_DVR_SET_HDCFG_V50 4154 //ÉèÖÃÓ²ÅÌÐÅÏ¢²ÎÊýV50 +#define NET_DVR_GET_HDVOLUME_CFG 4155 //»ñÈ¡Ó²Å̾íÐÅÏ¢ +#define NET_DVR_SET_HDVOLUME_CFG 4156 //ÉèÖÃÓ²Å̾íÐÅÏ¢ +#define NET_DVR_GET_POWER_SUPPLY_CABINET_TRIGGER 4157 //»ñÈ¡»ú¹ñ¹©µç¼ì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_SET_POWER_SUPPLY_CABINET_TRIGGER 4158 //ÉèÖûú¹ñ¹©µç¼ì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_GET_SENSOR_TRIGGER 4159 //»ñÈ¡´«¸ÐÆ÷¼ì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_SET_SENSOR_TRIGGER 4160 //ÉèÖô«¸ÐÆ÷¼ì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_GET_FACESNAP_TRIGGER 4161 //»ñÈ¡ÈËÁ³×¥ÅÄÁª¶¯ÅäÖà +#define NET_DVR_SET_FACESNAP_TRIGGER 4162 //ÉèÖÃÈËÁ³×¥ÅÄÁª¶¯ÅäÖà +#define NET_DVR_GET_FACESNAP_SCHEDULE_CAPABILITIES 4163 //»ñÈ¡ÈËÁ³×¥ÅIJ¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_FACESNAP_SCHEDULE 4164 //»ñÈ¡ÈËÁ³×¥ÅIJ¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_FACESNAP_SCHEDULE 4165 //ÉèÖÃÈËÁ³×¥ÅIJ¼·Àʱ¼äÅäÖà + +#define NET_DVR_SET_SCREEN_SWITCH 4171 //»­ÃæÇл»¿ØÖÆ +#define NET_DVR_GET_BV_CALIB_PIC 4172 //»ñÈ¡É豸ץȡͼƬºÍ¸½¼ÓÐÅÏ¢ +#define NET_DVR_GET_BV_CALIB_RESULT 4173 //»ñÈ¡Ë«Ä¿Íâ²Î±ê¶¨½á¹û +#define NET_DVR_GET_BV_HCORRECTION 4174 //»ñÈ¡Ë«Ä¿¸ß¶È½ÃÕýÊý¾Ý +#define NET_DVR_DEL_BV_CALIB_PIC 4175 //ɾ³ýÑù±¾Í¼Æ¬ +#define NET_DVR_GET_TV_SCREEN_CFG 4176 //»ñÈ¡µ¼²¥»­ÃæÍ£Áôʱ¼äÅäÖà +#define NET_DVR_SET_TV_SCREEN_CFG 4177 //ÉèÖõ¼²¥»­ÃæÍ£Áôʱ¼äÅäÖà +#define NET_DVR_ADJUST_BV_CALIB 4178 //Ë«Ä¿±ê¶¨Î¢µ÷ +#define NET_DVR_GET_HUMAN_CALIB 4179 //»ñÈ¡ÈËÌå×ø±ê±ê¶¨ÅäÖà +#define NET_DVR_SET_HUMAN_CALIB 4180 //ÉèÖÃÈËÌå×ø±ê±ê¶¨ÅäÖà +#define NET_DVR_GET_USERCFG_V51 4181 //»ñÈ¡Óû§²ÎÊý +#define NET_DVR_SET_USERCFG_V51 4182 //ÉèÖÃÓû§²ÎÊý +#define NET_DVR_GET_SOFTIO_TRIGGER 4183 //»ñÈ¡SoftIOÁª¶¯ÅäÖà +#define NET_DVR_SET_SOFTIO_TRIGGER 4184 //ÉèÖÃSoftIOÁª¶¯ÅäÖà +#define NET_DVR_GET_SOFTIO_SCHEDULE_CAPABILITIES 4185 //»ñÈ¡SoftIO²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_SOFTIO_SCHEDULE 4186 //»ñÈ¡SoftIO²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_SOFTIO_SCHEDULE 4187 //ÉèÖÃSoftIO²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_HFPD_TRIGGER 4188 //»ñÈ¡¸ßƵÈËÔ±Õì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_HFPD_TRIGGER 4189 //ÉèÖøßƵÈËÔ±Õì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_HFPD_SCHEDULE_CAPABILITIES 4190 //»ñÈ¡¸ßƵÈËÔ±Õì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_HFPD_SCHEDULE 4191 //»ñÈ¡¸ßƵÈËÔ±Õì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_HFPD_SCHEDULE 4192 //ÉèÖøßƵÈËÔ±Õì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_ALARM_INFO 4193 //»ñÈ¡±¨¾¯Ê¼þÐÅÏ¢ +#define NET_DVR_GET_USERCFG_V52 4194 //»ñÈ¡Óû§²ÎÊý +#define NET_DVR_SET_USERCFG_V52 4195 //ÉèÖÃÓû§²ÎÊý + +/********************************NVR_ºó¶Ë²úÆ·Ïß****************************/ +#define NET_DVR_GET_MUTEX_FUNCTION 4353 //»ñÈ¡¹¦ÄÜ»¥³âÐÅÏ¢ + +#define NET_DVR_GET_SINGLE_CHANNELINFO 4360 //»ñÈ¡µ¥¸öͨµÀÊôÐÔÊý¾Ý +#define NET_DVR_GET_CHANNELINFO 4361 //»ñȡͨµÀÊôÐÔÊý¾Ý +#define NET_DVR_CHECK_LOGIN_PASSWORDCFG 4362 //Óû§µÇ¼ÃÜÂëУÑé +#define NET_DVR_GET_SINGLE_SECURITY_QUESTION_CFG 4363 //»ñÈ¡µ¥¸öÉ豸°²È«ÎÊÌâ +#define NET_DVR_SET_SINGLE_SECURITY_QUESTION_CFG 4364 //ÉèÖõ¥¸öÉ豸°²È«ÎÊÌâ +#define NET_DVR_GET_SECURITY_QUESTION_CFG 4365 //»ñÈ¡É豸°²È«ÎÊÌâ +#define NET_DVR_SET_SECURITY_QUESTION_CFG 4366 //ÉèÖÃÉ豸°²È«ÎÊÌâ +#define NET_DVR_GET_ONLINEUSERLIST_SC 4367 //Ô¶³Ì»ñÈ¡µÇ½Óû§ÐÅÏ¢£¨¶ÌÁ¬½Ó£© + +#define NET_DVR_GET_BLOCKLIST_FACECONTRAST_TRIGGER 4368 //»ñÈ¡½ûÖ¹µ¥ÈËÁ³±È¶ÔÁª¶¯ÅäÖà +#define NET_DVR_SET_BLOCKLIST_FACECONTRAST_TRIGGER 4369 //ÉèÖýûÖ¹µ¥ÈËÁ³±È¶ÔÁª¶¯ÅäÖà +#define NET_DVR_GET_ALLOWLIST_FACECONTRAST_TRIGGER 4370 //»ñÈ¡ÔÊÐíÃûµ¥ÈËÁ³±È¶ÔÁª¶¯ÅäÖà +#define NET_DVR_SET_ALLOWLIST_FACECONTRAST_TRIGGER 4371 //ÉèÖÃÔÊÐíÃûµ¥ÈËÁ³±È¶ÔÁª¶¯ÅäÖà +#define NET_DVR_GET_BLOCKLIST_FACECONTRAST_SCHEDULE_CAPABILITIES 4372 //»ñÈ¡½ûÖ¹µ¥ÈËÁ³±È¶Ô²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_BLOCKLIST_FACECONTRAST_SCHEDULE 4373 //»ñÈ¡½ûÖ¹µ¥ÈËÁ³±È¶Ô²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_BLOCKLIST_FACECONTRAST_SCHEDULE 4374 //ÉèÖýûÖ¹µ¥ÈËÁ³±È¶Ô²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_ALLOWLIST_FACECONTRAST_SCHEDULE_CAPABILITIES 4375 //»ñÈ¡ÔÊÐíÃûµ¥ÈËÁ³±È¶Ô²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_ALLOWLIST_FACECONTRAST_SCHEDULE 4376 //»ñÈ¡ÔÊÐíÃûµ¥ÈËÁ³±È¶Ô²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_ALLOWLIST_FACECONTRAST_SCHEDULE 4377 //ÉèÖÃÔÊÐíÃûµ¥ÈËÁ³±È¶Ô²¼·Àʱ¼äÅäÖà + +#define NET_DVR_GET_HUMAN_RECOGNITION_SCHEDULE_CAPABILITIES 4378 //»ñÈ¡ÈËÌåʶ±ð²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_HUMAN_RECOGNITION_SCHEDULE 4379 //»ñÈ¡ÈËÌåʶ±ð²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_HUMAN_RECOGNITION_SCHEDULE 4380 //ÉèÖÃÈËÌåʶ±ð²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_HUMAN_RECOGNITION_TRIGGER 4381 //»ñÈ¡ÈËÌåʶ±ðÁª¶¯ÅäÖà +#define NET_DVR_SET_HUMAN_RECOGNITION_TRIGGER 4382 //ÉèÖÃÈËÌåʶ±ðÁª¶¯ÅäÖà +#define NET_DVR_GET_GBT28181_AUDIO_OUTPUT_CFG 4383 //»ñÈ¡GBT28181ЭÒé½ÓÈëÉ豸µÄÓïÒô¶Ô½²ÐÅÏ¢ +#define NET_DVR_SET_GBT28181_AUDIO_OUTPUT_CFG 4384 //ÉèÖÃGBT28181ЭÒé½ÓÈëÉ豸µÄÓïÒô¶Ô½²ÐÅÏ¢ + +#define NET_DVR_GET_STUDENTS_STOODUP_TRIGGER 4386 //»ñȡѧÉúÆðÁ¢¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_STUDENTS_STOODUP_TRIGGER 4387 //ÉèÖÃѧÉúÆðÁ¢¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_FRAMES_PEOPLE_COUNTING_SCHEDULE_CAPABILITIES 4388 //»ñÈ¡ÇøÓòÈËÊýͳ¼Æ²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_FRAMES_PEOPLE_COUNTING_SCHEDULE 4389 //»ñÈ¡ÇøÓòÈËÊýͳ¼Æ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_FRAMES_PEOPLE_COUNTING_SCHEDULE 4390 //ÉèÖÃÇøÓòÈËÊýͳ¼Æ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_FRAMES_PEOPLE_COUNTING_TRIGGER 4391 //»ñÈ¡ÇøÓòÈËÊýͳ¼ÆÁª¶¯ÅäÖà +#define NET_DVR_SET_FRAMES_PEOPLE_COUNTING_TRIGGER 4392 //ÉèÖÃÇøÓòÈËÊýͳ¼ÆÁª¶¯ÅäÖà + +#define NET_DVR_GET_PERSONDENSITY_TRIGGER 4393 //»ñÈ¡ÈËÔ±Ãܶȼì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_SET_PERSONDENSITY_TRIGGER 4394 //ÉèÖÃÈËÔ±Ãܶȼì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_GET_PERSONDENSITY_SCHEDULE_CAPABILITIES 4395 //»ñÈ¡ÈËÔ±Ãܶȼì²âµÄ²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_PERSONDENSITY_SCHEDULE 4396 //»ñÈ¡ÈËÔ±Ãܶȼì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_PERSONDENSITY_SCHEDULE 4397 //ÉèÖÃÈËÔ±Ãܶȼì²âµÄ²¼·Àʱ¼äÅäÖà + +#define NET_DVR_GET_STUDENTS_STOODUP_SCHEDULE_CAPABILITIES 4398 //»ñȡѧÉúÆðÁ¢¼ì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_STUDENTS_STOODUP_SCHEDULE 4399 //»ñȡѧÉúÆðÁ¢¼ì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_STUDENTS_STOODUP_SCHEDULE 4400 //ÉèÖÃѧÉúÆðÁ¢¼ì²â²¼·Àʱ¼äÅäÖà + +#define NET_DVR_SET_FACE_THERMOMETRY_TRIGGER 4401 //ÉèÖÃÈËÁ³²âÎÂÁª¶¯ÅäÖà +#define NET_DVR_GET_FACE_THERMOMETRY_SCHEDULE_CAPABILITIES 4402 //»ñÈ¡ÈËÁ³²âβ¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_FACE_THERMOMETRY_SCHEDULE 4403 //»ñÈ¡ÈËÁ³²âβ¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_FACE_THERMOMETRY_SCHEDULE 4404 //ÉèÖÃÈËÁ³²âβ¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_FACE_THERMOMETRY_TRIGGER 4405 //»ñÈ¡ÈËÁ³²âÎÂÁª¶¯ÅäÖà +#define NET_DVR_GET_PERSONQUEUE_TRIGGER 4406 //»ñÈ¡ÈËÔ±ÅŶӼì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_SET_PERSONQUEUE_TRIGGER 4407 //ÉèÖÃÈËÔ±ÅŶӼì²âµÄÁª¶¯ÅäÖà +#define NET_DVR_GET_PERSONQUEUE_SCHEDULE_CAPABILITIES 4408 //»ñÈ¡ÈËÔ±ÅŶӼì²âµÄ²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_PERSONQUEUE_SCHEDULE 4409 //»ñÈ¡ÈËÔ±ÅŶӼì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_PERSONQUEUE_SCHEDULE 4410 //ÉèÖÃÈËÔ±ÅŶӼì²âµÄ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_START_VIDEOAUDIO 4411 //ÉèÖÃNVR¿ªÆôÒôÊÓƵ¹¦ÄÜ(½ö¹©É豸×Բ⹦ÄÜ) + + +/********************************ÖÇÄÜÈËÁ³Ê¶±ð****************************/ +#define NET_DVR_GET_FACESNAPCFG 5001 //»ñÈ¡ÈËÁ³×¥ÅIJÎÊý +#define NET_DVR_SET_FACESNAPCFG 5002 //ÉèÖÃÈËÁ³×¥ÅIJÎÊý +#define NET_DVR_GET_DEVACCESS_CFG 5005 //»ñÈ¡½ÓÈëÉ豸²ÎÊý +#define NET_DVR_SET_DEVACCESS_CFG 5006 //ÉèÖýÓÈëÉ豸²ÎÊý +#define NET_DVR_GET_SAVE_PATH_CFG 5007 //»ñÈ¡´æ´¢ÐÅÏ¢²ÎÊý +#define NET_DVR_SET_SAVE_PATH_CFG 5008 //ÉèÖô洢ÐÅÏ¢²ÎÊý +#define NET_VCA_GET_RULECFG_V41 5011 //»ñÈ¡ÐÐΪ·ÖÎö²ÎÊý(À©Õ¹) +#define NET_VCA_SET_RULECFG_V41 5012 //ÉèÖÃÐÐΪ·ÖÎö²ÎÊý(À©Õ¹) +#define NET_DVR_GET_AID_RULECFG_V41 5013 //»ñÈ¡½»Í¨Ê¼þ¹æÔò²ÎÊý +#define NET_DVR_SET_AID_RULECFG_V41 5014 //ÉèÖý»Í¨Ê¼þ¹æÔò²ÎÊý +#define NET_DVR_GET_TPS_RULECFG_V41 5015 //»ñÈ¡½»Í¨Í³¼Æ¹æÔò²ÎÊý(À©Õ¹) +#define NET_DVR_SET_TPS_RULECFG_V41 5016 //ÉèÖý»Í¨Í³¼Æ¹æÔò²ÎÊý(À©Õ¹) +#define NET_VCA_GET_FACEDETECT_RULECFG_V41 5017 //»ñÈ¡ATMÈËÁ³¼ì²â¹æÔò(À©Õ¹) +#define NET_VCA_SET_FACEDETECT_RULECFG_V41 5018 //ÉèÖÃATMÈËÁ³¼ì²â¹æÔò(À©Õ¹) +#define NET_DVR_GET_PDC_RULECFG_V41 5019 //ÉèÖÃÈËÁ÷Á¿Í³¼Æ¹æÔò(À©Õ¹) +#define NET_DVR_SET_PDC_RULECFG_V41 5020 //»ñÈ¡ÈËÁ÷Á¿Í³¼Æ¹æÔò(À©Õ¹) +#define NET_DVR_GET_TRIAL_VERSION_CFG 5021 //»ñÈ¡ÊÔÓðæÐÅÏ¢ +#define NET_DVR_GET_VCA_CTRLINFO_CFG 5022 //ÅúÁ¿»ñÈ¡ÖÇÄÜ¿ØÖƲÎÊý +#define NET_DVR_SET_VCA_CTRLINFO_CFG 5023 //ÅúÁ¿ÉèÖÃÖÇÄÜ¿ØÖƲÎÊý +#define NET_DVR_SYN_CHANNEL_NAME 5024 //ͬ²½Í¨µÀÃû +#define NET_DVR_GET_RESET_COUNTER 5025 //»ñȡͳ¼ÆÊý¾ÝÇåÁã²ÎÊý£¨ÈËÁ÷Á¿¡¢½»Í¨Í³¼Æ£© +#define NET_DVR_SET_RESET_COUNTER 5026 //ÉèÖÃͳ¼ÆÊý¾ÝÇåÁã²ÎÊý£¨ÈËÁ÷Á¿¡¢½»Í¨Í³¼Æ£© +#define NET_DVR_GET_OBJECT_COLOR 5027 //»ñÈ¡ÎïÌåÑÕÉ«ÊôÐÔ +#define NET_DVR_SET_OBJECT_COLOR 5028 //ÉèÖÃÎïÌåÑÕÉ«ÊôÐÔ +#define NET_DVR_GET_AUX_AREA 5029 //»ñÈ¡¸¨ÖúÇøÓò +#define NET_DVR_SET_AUX_AREA 5030 //ÉèÖø¨ÖúÇøÓò +#define NET_DVR_GET_CHAN_WORKMODE 5031 //»ñȡͨµÀ¹¤×÷ģʽ +#define NET_DVR_SET_CHAN_WORKMODE 5032 //ÉèÖÃͨµÀ¹¤×÷ģʽ +#define NET_DVR_GET_SLAVE_CHANNEL 5033 //»ñÈ¡´ÓͨµÀ²ÎÊý +#define NET_DVR_SET_SLAVE_CHANNEL 5034 //ÉèÖôÓͨµÀ²ÎÊý +#define NET_DVR_GET_VQD_EVENT_RULE 5035 //»ñÈ¡ÊÓƵÖÊÁ¿Õï¶Ïʼþ¹æÔò +#define NET_DVR_SET_VQD_EVENT_RULE 5036 //ÉèÖÃÊÓƵÖÊÁ¿Õï¶Ïʼþ¹æÔò +#define NET_DVR_GET_BASELINE_SCENE 5037 //»ñÈ¡»ù×¼³¡¾°²ÎÊý +#define NET_DVR_SET_BASELINE_SCENE 5038 //ÉèÖûù×¼³¡¾°²ÎÊý +#define NET_DVR_CONTROL_BASELINE_SCENE 5039 //»ù×¼³¡¾°²Ù×÷ +#define NET_DVR_SET_VCA_DETION_CFG 5040 //ÉèÖÃÖÇÄÜÒƶ¯²ÎÊýÅäÖà +#define NET_DVR_GET_VCA_DETION_CFG 5041 //»ñÈ¡ÖÇÄÜÒƶ¯²ÎÊýÅäÖà +#define NET_DVR_GET_STREAM_ATTACHINFO_CFG 5042 //»ñÈ¡ÂëÁ÷¸½¼ÓÐÅÏ¢ÅäÖà +#define NET_DVR_SET_STREAM_ATTACHINFO_CFG 5043 //ÉèÖÃÂëÁ÷¸½¼ÓÐÅÏ¢ÅäÖà + +#define NET_DVR_GET_BV_CALIB_TYPE 5044 //»ñÈ¡Ë«Ä¿±ê¶¨ÀàÐÍ +#define NET_DVR_CONTROL_BV_SAMPLE_CALIB 5045 //Ë«Ä¿Ñù±¾±ê¶¨ +#define NET_DVR_GET_BV_SAMPLE_CALIB_CFG 5046 //»ñÈ¡Ë«Ä¿±ê¶¨²ÎÊý +#define NET_DVR_GET_RULECFG_V42 5049 //»ñÈ¡ÐÐΪ·ÖÎö²ÎÊý(Ö§³Ö16Ìõ¹æÔòÀ©Õ¹) +#define NET_DVR_SET_RULECFG_V42 5050 //ÉèÖÃÐÐΪ·ÖÎö²ÎÊý(Ö§³Ö16Ìõ¹æÔòÀ©Õ¹) +#define NET_DVR_SET_VCA_DETION_CFG_V40 5051 //ÉèÖÃÖÇÄÜÒƶ¯²ÎÊýÅäÖà +#define NET_DVR_GET_VCA_DETION_CFG_V40 5052 //»ñÈ¡ÖÇÄÜÒƶ¯²ÎÊýÅäÖà +#define NET_DVR_SET_FLASH_CFG 5110 //дÈëÊý¾Ýµ½Flash ²âÊÔʹÓà +/********************************ÖÇÄÜÈËÁ³Ê¶±ð end****************************/ + +//2014-12-03 +#define NET_DVR_GET_T1TEST_CFG 5053 //²úÏß²âÊÔÅäÖýӿڣ¨»ñÈ¡£© +#define NET_DVR_SET_T1TEST_CFG 5054 ////²úÏß²âÊÔÅäÖýӿڣ¨ÉèÖã© + +/********************************ITS****************************/ +#define NET_ITS_GET_OVERLAP_CFG_V50 5055 //»ñÈ¡×Ö·ûµþ¼Ó²ÎÊýÅäÖÃÀ©Õ¹ +#define NET_ITS_SET_OVERLAP_CFG_V50 5056 //ÉèÖÃ×Ö·ûµþ¼Ó²ÎÊýÅäÖÃÀ©Õ¹ + +#define NET_DVR_GET_PARKLAMP_STATE 5057 //»ñÈ¡Í£³µ³¡ÐźŵÆ״̬ÐÅÏ¢ +#define NET_DVR_GET_CLOUDSTORAGE_CFG 5058 //»ñÈ¡ÔÆ´æ´¢ÅäÖòÎÊý +#define NET_DVR_SET_CLOUDSTORAGE_CFG 5059 //ÉèÖÃÔÆ´æ´¢ÅäÖòÎÊý + +#define NET_ITS_GET_BASE_INFO 5060 //»ñÈ¡Öն˻ù±¾ÐÅÏ¢ +#define NET_DVR_GET_SENSOR_INFO 5061 //´«¸ÐÆ÷ÐÅÏ¢²éѯ +#define NET_DVR_SET_SENSOR_SWITCH 5062 //´«¸ÐÆ÷Ô¶³Ì¿ØÖÆ +#define NET_ITS_GET_IMGMERGE_CFG 5063 //»ñȡͼƬºÏ³ÉÅäÖòÎÊý +#define NET_ITS_SET_IMGMERGE_CFG 5064 //ÉèÖÃͼƬºÏ³ÉÅäÖòÎÊý +#define NET_ITS_GET_UPLOAD_CFG 5065 //»ñÈ¡Êý¾ÝÉÏ´«ÅäÖà +#define NET_ITS_SET_UPLOAD_CFG 5066 //ÉèÖÃÊý¾ÝÉÏ´«ÅäÖà +#define NET_DVR_GET_SENSOR_PORT_CAPABILITIES 5067 //»ñÈ¡´«¸ÐÆ÷ÄÜÁ¦ +#define NET_ITS_GET_WORKSTATE 5069 //»ñÈ¡Öն˹¤×÷״̬ +#define NET_ITS_GET_IPC_CHAN_CFG 5070 //»ñȡͨµÀIPCÐÅÏ¢ +#define NET_ITS_SET_IPC_CHAN_CFG 5071 //ÉèÖÃͨµÀIPCÐÅÏ¢ +#define NET_ITS_GET_OVERLAP_CFG 5072 //»ñÈ¡×Ö·ûµþ¼Ó²ÎÊýÅäÖà +#define NET_ITS_SET_OVERLAP_CFG 5073 //ÉèÖÃ×Ö·ûµþ¼Ó²ÎÊýÅäÖà +#define NET_DVR_GET_TRIGGEREX_CFG 5074 //»ñÈ¡ITCÀ©Õ¹ÅäÖà +#define NET_DVR_SET_TRIGGEREX_CFG 5075 //ÉèÖÃITCÀ©Õ¹ÅäÖà +#define NET_ITS_GET_ROAD_INFO 5076 //»ñȡ·¿ÚÐÅÏ¢ + +#define NET_ITS_REMOTE_DEVICE_CONTROL 5077//ÉèÖÃÔ¶³ÌÉ豸¿ØÖÆ +#define NET_ITS_GET_GATEIPC_CHAN_CFG 5078//»ñÈ¡³öÈë¿Ú²ÎÊý +#define NET_ITS_SET_GATEIPC_CHAN_CFG 5079//ÉèÖóöÈë¿Ú²ÎÊý +#define NET_ITS_TRANSCHAN_START 5080//ͬ²½Êý¾Ý·þÎñÆ÷½¨Á¢Á¬½Ó +#define NET_ITS_GET_ECTWORKSTATE 5081//»ñÈ¡³öÈë¿ÚÖն˹¤×÷״̬ +#define NET_ITS_GET_ECT_CHAN_INFO 5082//»ñÈ¡³öÈë¿ÚÖÕ¶ËͨµÀ״̬ +#define NET_DVR_GET_HEATMAP_RESULT 5083//ÈȶÈͼÊý¾Ý²éÕÒ +#define NET_DVR_SET_ITS_EXDEVCFG 5084 //ÉèÖÃITSÍâ½ÓÉ豸ÐÅÏ¢ +#define NET_DVR_GET_ITS_EXDEVCFG 5085 //»ñÈ¡ITSÍâ½ÓÉ豸ÐÅÏ¢ +#define NET_DVR_GET_ITS_EXDEVSTATUS 5086 //»ñÈ¡ITSËùÓÐÍâ½ÓÉ豸ÐÅÏ¢ +#define NET_DVR_SET_ITS_ENDEVCMD 5087 //ÉèÖÃITSÖն˳öÈë¿Ú¿ØÖÆÃüÁî +#define NET_DVR_SET_ENISSUED_DATADEL 5088 //ÉèÖÃITSÖն˳öÈë¿Ú¿ØÖÆÇå³ý +#define NET_DVR_GET_PDC_RESULT 5089//¿ÍÁ÷Á¿Êý¾Ý²éѯ 2014-03-21 +#define NET_ITS_GET_LAMP_CTRLCFG 5090 //»ñÈ¡ÄÚÍâÖõƲÎÊý +#define NET_ITS_SET_LAMP_CTRLCFG 5091 //ÉèÖÃÄÚÍâÖõƲÎÊý +#define NET_ITS_GET_PARKSPACE_ATTRIBUTE_CFG 5092 //»ñÈ¡ÌØÊ⳵λ²ÎÊý +#define NET_ITS_SET_PARKSPACE_ATTRIBUTE_CFG 5093 //ÉèÖÃÌØÊ⳵λ²ÎÊý +#define NET_ITS_SET_LAMP_EXTERNAL_CFG 5095 //ÉèÖÃÍâ¿ØÅäÖòÎÊý +#define NET_ITS_SET_COMPEL_CAPTURE 5096 //ÉèÖóµÎ»Ç¿ÖÆץͼ +#define NET_DVR_SET_TIMESIGN_CFG 5097 //ÉèÖÃÀ©Õ¹Ð£Ê±×Ô¶¨Òå±ê¼Ç +#define NET_DVR_GET_TIMESIGN_CFG 5098 //»ñÈ¡À©Õ¹Ð£Ê±×Ô¶¨Òå±ê¼Ç +#define NET_DVR_GET_SIGNALLAMP_STATUS 5099 //ÐźŵƼì²â +/********************************ITS end****************************/ + +#define NET_DVR_GET_MONITOR_PLAN_VQD 5100 //³¤Á¬½Ó»ñÈ¡Õï¶Ï·þÎñÆ÷¼Æ»® +#define NET_DVR_GET_MONITORID_VQD 5101 //³¤Á¬½Ó»ñÈ¡¶ÔÓ¦¼Æ»®Äڵļà¿ØµãÐÅÏ¢ +#define NET_DVR_SET_MONITOR_INFO 5102 //ÅúÁ¿ÉèÖüƻ®Äڵļà¿ØµãÐÅÏ¢ +#define NET_DVR_DEL_MONITOR_PLAN_VQD 5103 //ɾ³ý¼Æ»® +#define NET_DVR_GET_MONITOR_VQD_STATUS 5104 //ƽ̨²éѯÕï¶Ï·þÎñÆ÷µÄ״̬ +#define NET_DVR_GET_RECORD_INFO 5105 //»ñÈ¡×ÊԴͼƬ²éѯ +#define NET_DVR_GET_MONITOR_VQDCFG 5106 //»ñÈ¡·þÎñÆ÷µÄ¼à¿ØµãÐÅÏ¢ +#define NET_DVR_SET_MONITOR_VQDCFG 5107 //ÉèÖ÷þÎñÆ÷µÄ¼à¿ØµãÐÅÏ¢ +#define NET_DVR_SET_MONITOR_PLAN_VQDCFG 5108 //ÉèÖùÜÀí¼Æ»®(µ¥¶ÀµÄ¼Æ»®) + +#define NET_DVR_SCENE_CHANGE_UPDATE 5109 //³¡¾°±ä¸üÊý¾Ý¸üР+ +#define NET_DVR_GET_CALIBRATE_POINT 5153 //¹éÒ»»¯×ø±êת»»£¨Ç¹ÇòÁª¶¯É豸 Íⲿ½»»¥ÃüÁîÂë »ùÏß´úÂ벻ʵÏÖ£¬·ÀÖ¹³åÍ»£¬Ìá½»»ùÏߣ©/*************************ÖÇÄܶೡ¾°********************************/ +#define NET_DVR_GET_SCENE_CFG 5201 //»ñÈ¡³¡¾°ÐÅÏ¢ +#define NET_DVR_SET_SCENE_CFG 5202 //ÉèÖó¡¾°ÐÅÏ¢ +#define NET_DVR_GET_SCENE_REFERENCE_REGION 5203 //»ñÈ¡²Î¿¼ÇøÓò +#define NET_DVR_SET_SCENE_REFERENCE_REGION 5204 //ÉèÖòο¼ÇøÓò +#define NET_DVR_GET_SCENE_CALIBRATION 5205 //»ñÈ¡±ê¶¨ÐÅÏ¢ +#define NET_DVR_SET_SCENE_CALIBRATION 5206 //ÉèÖñ궨ÐÅÏ¢ +#define NET_DVR_GET_SCENE_MASK_REGION 5207 //»ñÈ¡ÆÁ±ÎÇøÓò +#define NET_DVR_SET_SCENE_MASK_REGION 5208 //ÉèÖÃÆÁ±ÎÇøÓò +#define NET_DVR_GET_SCENE_LANECFG 5209 //»ñÈ¡³µµÀ¹æÔò +#define NET_DVR_SET_SCENE_LANECFG 5210 //ÉèÖóµµÀ¹æÔò +#define NET_DVR_GET_SCENE_AID_RULECFG 5211 //»ñÈ¡½»Í¨Ê¼þ¹æÔò²ÎÊý +#define NET_DVR_SET_SCENE_AID_RULECFG 5212 //ÉèÖý»Í¨Ê¼þ¹æÔò²ÎÊý +#define NET_DVR_GET_SCENE_TPS_RULECFG 5213 //»ñÈ¡½»Í¨Í³¼Æ¹æÔò²ÎÊý +#define NET_DVR_SET_SCENE_TPS_RULECFG 5214 //ÉèÖý»Í¨Í³¼Æ¹æÔò²ÎÊý +#define NET_DVR_GET_SCENE_TIME_CFG 5215 //»ñȡͨµÀµÄ³¡¾°Ê±¼ä¶ÎÅäÖà +#define NET_DVR_SET_SCENE_TIME_CFG 5216 //ÉèÖÃͨµÀµÄ³¡¾°Ê±¼ä¶ÎÅäÖà +#define NET_DVR_GET_FORENSICS_MODE 5217 //»ñÈ¡È¡Ö¤·½Ê½²ÎÊý +#define NET_DVR_SET_FORENSICS_MODE 5218 //ÉèÖÃÈ¡Ö¤·½Ê½²ÎÊý +#define NET_DVR_FORCESTOP_FORENSICS_CTRL 5219 //Ç¿ÖÆֹͣȡ֤ +#define NET_DVR_GET_ALARM_PROCESS_CFG 5220 //»ñÈ¡±¨¾¯´¦Àí²ÎÊý +#define NET_DVR_SET_ALARM_PROCESS_CFG 5221 //ÉèÖñ¨¾¯´¦Àí²ÎÊý +#define NET_DVR_GET_BLOCKLIST_ALARM_INFO 5222 //»ñÈ¡Ãûµ¥±¨¾¯¹ì¼£ +#define NET_DVR_GET_STORAGE_RESOURCE_CFG 5225 //»ñÈ¡´æ´¢×ÊÔ´²ÎÊý +#define NET_DVR_SET_STORAGE_RESOURCE_CFG 5226 //ÉèÖô洢×ÊÔ´²ÎÊý +#define NET_DVR_DEL_BLOCKLIST_ALARM_RECORD 5227 //Ô¶³Ìɾ³ýÃûµ¥±¨¾¯¼Ç¼ +#define NET_DVR_SET_BLOCKLIST_GROUP_INFO 5229 //Ô¶³Ì·Ö×éÁбí²ÎÊýÅäÖà +#define NET_DVR_DEL_BLOCKLIST_GROUP_INFO 5230 //Ô¶³Ìɾ³ý·Ö×éÁбí +#define NET_DVR_GET_BLOCKLIST_GROUP_INFO 5231 //Ô¶³Ì»ñÈ¡È«²¿·Ö×éÁбí +#define NET_DVR_SET_BLOCKLIST_GROUP_RECORD_CFG 5232 //·Ö×é¼Ç¼²ÎÊýÅäÖà +#define NET_DVR_GET_BLOCKLIST_GROUP_RECORD_CFG 5234 //Ô¶³Ì»ñÈ¡·Ö×é¼Ç¼²ÎÊý +#define NET_DVR_DEL_BLOCKLIST_GROUP_RECORD_CFG 5235 //Ô¶³Ìɾ³ý·Ö×é¼Ç¼²ÎÊý +#define NET_DVR_GET_AREA_MONITOR_CFG 5236 //»ñÈ¡ÇøÓò¼à¿Øµã²ÎÊý +#define NET_DVR_SET_AREA_MONITOR_CFG 5237 //ÉèÖÃÇøÓò¼à¿Øµã²ÎÊý +#define NET_DVR_DEL_AREA_MONITOR_CFG 5238 //ɾ³ýÇøÓò¼à¿Øµã +#define NET_DVR_RETRIEVAL_SNAP_RECORD 5240 //×¥ÅÄ¿â¼ìË÷ +#define NET_DVR_GET_ALARMLIST 5241 //»ñÈ¡Ãûµ¥±¨¾¯Áбí +#define NET_DVR_DETECT_IMAGE 5242 //µ¥ÕÅͼƬ¼ì²â +#define NET_DVR_GET_SNAP_RECORD 5243 //»ñȡץÅļǼ +#define NET_DVR_DEL_SNAP_RECORD 5244 //ɾ³ý×¥ÅļǼ +#define NET_DVR_GET_FACE_RECORD 5245 //Ô¶³Ì»ñÈ¡ÈËÁ³¼Ç¼Áбí +#define NET_DVR_SET_FACE_RECORD 5246 //Ìí¼ÓÈËÁ³¼Ç¼ +#define NET_DVR_DEL_FACE_RECORD 5247 //ɾ³ýÈËÁ³¼Ç¼ +#define NET_DVR_GET_FACE_DATABASE 5248 //»ñÈ¡ÈËÁ³¿âÅäÖòÎÊý +#define NET_DVR_SET_FACE_DATABASE 5249 //ÉèÖÃÈËÁ³¿âÅäÖòÎÊý +#define NET_DVR_DEL_FACE_DATABASE 5250 //ɾ³ýÈËÁ³¿â +#define NET_DVR_RETRIEVAL_FACE_DATABASE 5251 //ÈËÁ³¿â¼ìË÷ +#define NET_DVR_SET_BLOCKLIST_REL_DEV_CFG 5252 //É豸¹ØÁªÃûµ¥·Ö×é¹ØÁª +#define NET_DVR_DEL_BLOCKLIST_REL_DEV 5253 //ɾ³ý É豸¹ØÁªÃûµ¥·Ö×éÐÅÏ¢ +/*************************ÖÇÄܶೡ¾°end*****************************/ + +#define NET_DVR_GET_DISK_RAID_INFO 6001 //»ñÈ¡´ÅÅÌRaidÐÅÏ¢ +#define NET_DVR_SET_DISK_RAID_INFO 6002 //ÉèÖôÅÅÌRaidÐÅÏ¢ + +#define NET_DVR_GET_DVR_SYNCHRONOUS_IPC 6005 //»ñÈ¡£ºÊÇ·ñΪǰ¶ËIPCͬ²½É豸²ÎÊý +#define NET_DVR_SET_DVR_SYNCHRONOUS_IPC 6006 //ÉèÖãºÊÇ·ñΪǰ¶ËIPCͬ²½É豸²ÎÊý + +#define NET_DVR_SET_DVR_IPC_PASSWD 6008 //ÉèÖãºIPCÓû§ÃûÃÜÂë +#define NET_DVR_GET_DEVICE_NET_USING_INFO 6009 //»ñÈ¡£ºµ±Ç°É豸ÍøÂç×ÊԴʹÓÃÇé¿ö + +#define NET_DVR_SET_DVR_IPC_NET 6012 //ÉèÖãºÉèÖÃÇ°¶ËIPCµÄÍøÂçµØÖ· + +#define NET_DVR_GET_RECORD_CHANNEL_INFO 6013 //»ñÈ¡£ºÂ¼ÏñͨµÀÐÅÏ¢ +#define NET_DVR_SET_RECORD_CHANNEL_INFO 6014 //ÉèÖãºÂ¼ÏñͨµÀÐÅÏ¢ + + +#define NET_DVR_MOUNT_DISK 6015 // ¼ÓÔØ´ÅÅÌ +#define NET_DVR_UNMOUNT_DISK 6016 // жÔØ´ÅÅÌ + +// CVR +#define NET_DVR_GET_STREAM_SRC_INFO 6017 //»ñÈ¡£ºÁ÷À´Ô´ÐÅÏ¢ +#define NET_DVR_SET_STREAM_SRC_INFO 6018 //ÉèÖãºÁ÷À´Ô´ÐÅÏ¢ +#define NET_DVR_GET_STREAM_RECORD_INFO 6019 //»ñÈ¡£ºÁ÷¼ÏñÐÅÏ¢ +#define NET_DVR_SET_STREAM_RECORD_INFO 6020 //ÉèÖãºÁ÷¼ÏñÐÅÏ¢ +#define NET_DVR_GET_STREAM_RECORD_STATUS 6021 //»ñÈ¡£ºÁ÷¼Ïñ״̬ +#define NET_DVR_SET_STREAM_RECORD_STATUS 6022 //ÉèÖãºÁ÷¼Ïñ״̬ +#define NET_DVR_GET_STREAM_INFO 6023 //»ñÈ¡ÒÑÌí¼ÓµÄÁ÷IDÐÅÏ¢ +#define NET_DVR_GET_STREAM_SRC_INFO_V40 6024 //»ñÈ¡£ºÁ÷À´Ô´ÐÅÏ¢ +#define NET_DVR_SET_STREAM_SRC_INFO_V40 6025 //ÉèÖãºÁ÷À´Ô´ÐÅÏ¢ +#define NET_DVR_GET_RELOCATE_INFO 6026 //»ñÈ¡N+0ģʽÏÂÖض¨ÏòÐÅÏ¢ +#define NET_DVR_START_GOP_INFO_PASSBACK 6032 //ÖÇÄÜÐÅÏ¢»ØÌî +#define NET_DVR_GET_CHANS_RECORD_STATUS_CFG 6035 //»ñȡͨµÀ¼Ïñ״̬ÐÅÏ¢ +#define NET_DVR_SET_CHANS_RECORD_STATUS_CFG 6036 //ÉèÖÃͨµÀ¼Ïñ״̬ÐÅÏ¢ +//NVR£º96xx +#define NET_DVR_GET_IP_ALARM_GROUP_NUM 6100 //»ñÈ¡£ºIPͨµÀ±¨¾¯ÊäÈëÊä³ö×éÊý +#define NET_DVR_GET_IP_ALARM_IN 6101 //»ñÈ¡£ºIPͨµÀ±¨¾¯ÊäÈëÐÅÏ¢ +#define NET_DVR_GET_IP_ALARM_OUT 6102 //»ñÈ¡£ºIPͨµÀ±¨¾¯Êä³öÐÅÏ¢ + +//9000 v2.2 +#define NET_DVR_GET_FTPCFG_SECOND 6103 //»ñȡͼƬÉÏ´«FTP²ÎÊý +#define NET_DVR_SET_FTPCFG_SECOND 6104 //ÉèÖÃͼƬÉÏ´«FTP²ÎÊý + +#define NET_DVR_GET_DEFAULT_VIDEO_EFFECT 6105 // »ñÈ¡ÊÓƵÊäÈëЧ¹û²ÎÊýĬÈÏÖµ +#define NET_DVR_SET_VIDEO_EFFECT 6106 // ÉèÖÃͨµÀÊÓƵÊäÈëͼÏñ²ÎÊý +#define NET_DVR_DEL_INVALID_DISK 6107 // ɾ³ýÎÞЧ´ÅÅÌ + +#define NET_DVR_GET_DRAWFRAME_DISK_QUOTA_CFG 6109 //»ñÈ¡³é֡ͨµÀ´ÅÅÌÅä¶î +#define NET_DVR_SET_DRAWFRAME_DISK_QUOTA_CFG 6110 //ÉèÖóé֡ͨµÀ´ÅÅÌÅä¶î + +#define NET_DVR_GET_NAT_CFG 6111 //»ñÈ¡NATÓ³Éä²ÎÊý +#define NET_DVR_SET_NAT_CFG 6112 //ÉèÖÃNATÓ³Éä²ÎÊý +#define NET_DVR_GET_AES_KEY 6113 //»ñÈ¡É豸AES¼ÓÃÜÃÜÔ¿ +#define NET_DVR_GET_POE_CFG 6114 //»ñÈ¡POE²ÎÊý +#define NET_DVR_SET_POE_CFG 6115 //ÉèÖÃPOE²ÎÊý +#define NET_DVR_GET_CUSTOM_PRO_CFG 6116 //»ñÈ¡×Ô¶¨ÒåЭÒé²ÎÊý +#define NET_DVR_SET_CUSTOM_PRO_CFG 6117 //ÉèÖÃ×Ô¶¨ÒåЭÒé²ÎÊý +#define NET_DVR_GET_STREAM_CABAC 6118 //»ñÈ¡ÂëÁ÷ѹËõÐÔÄÜÑ¡Ïî +#define NET_DVR_SET_STREAM_CABAC 6119 //ÉèÖÃÂëÁ÷ѹËõÐÔÄÜÑ¡Ïî +#define NET_DVR_GET_ESATA_MINISAS_USAGE_CFG 6120 //»ñÈ¡eSATAºÍminiSASÓÃ; +#define NET_DVR_SET_ESATA_MINISAS_USAGE_CFG 6121 //ÉèÖÃeSATAºÍminiSASÓÃ; + +#define NET_DVR_GET_HDCFG_V40 6122 //»ñÈ¡Ó²ÅÌÐÅÏ¢²ÎÊý +#define NET_DVR_SET_HDCFG_V40 6123 //ÉèÖÃÓ²ÅÌÐÅÏ¢²ÎÊý +#define NET_DVR_GET_POE_CHANNEL_ADD_MODE 6124 //»ñÈ¡POEͨµÀÌí¼Ó·½Ê½ +#define NET_DVR_SET_POE_CHANNEL_ADD_MODE 6125 //ÉèÖÃPOEͨµÀÌí¼Ó·½Ê½ +#define NET_DVR_GET_DIGITAL_CHANNEL_STATE 6126 //»ñÈ¡É豸Êý×ÖͨµÀ״̬ +#define NET_DVR_GET_BONJOUR_CFG 6127 // »ñÈ¡BonjourÐÅÏ¢ +#define NET_DVR_SET_BONJOUR_CFG 6128 // ÉèÖÃBonjourÐÅÏ¢ + + +#define NET_DVR_GET_SOCKS_CFG 6130//»ñÈ¡SOCKSÐÅÏ¢ +#define NET_DVR_SET_SOCKS_CFG 6131//ÉèÖÃSOCKSÐÅÏ¢ + +#define NET_DVR_GET_QOS_CFG 6132//»ñÈ¡QoSÐÅÏ¢ +#define NET_DVR_SET_QOS_CFG 6133//ÉèÖÃQoSÐÅÏ¢ + +#define NET_DVR_GET_HTTPS_CFG 6134//»ñÈ¡HTTPSÐÅÏ¢ +#define NET_DVR_SET_HTTPS_CFG 6135//ÉèÖÃHTTPSÐÅÏ¢ + +#define NET_DVR_GET_WD1_CFG 6136//Ô¶³Ì»ñÈ¡WD1ʹÄÜ¿ª¹Ø +#define NET_DVR_SET_WD1_CFG 6137//Ô¶³ÌÉèÖÃWD1ʹÄÜ¿ª¹Ø + +#define NET_DVR_CREATE_CERT 6138//´´½¨Ö¤Êé +#define NET_DVR_DELETE_CERT 6139//ɾ³ýÖ¤Êé + + +#define NET_DVR_GET_RECORD_LOCK_PERCENTAGE 6140 //»ñȡ¼Ïñ¶ÎËø¶¨±ÈÀý +#define NET_DVR_SET_RECORD_LOCK_PERCENTAGE 6141 //ÉèÖüÏñ¶ÎËø¶¨±ÈÀý + +#define NET_DVR_CMD_TRIGGER_PERIOD_RECORD 6144 //ÍⲿÃüÁî´¥·¢Ö¸¶¨Ê±¼ä¼Ïñ +#define NET_DVR_UPLOAD_CERT 6145 //ÉÏ´«Ö¤Êé +#define NET_DVR_DOWNLOAD_CERT 6146 //ÏÂÔØÖ¤Êé +#define NET_DVR_GET_CERT 6147 //»ñÈ¡Ö¤Êé + +#define NET_DVR_GET_POS_FILTER_CFG 6148 //»ñÈ¡POS¹ýÂ˹æÔò +#define NET_DVR_SET_POS_FILTER_CFG 6149 //ÉèÖÃPOS¹ýÂ˹æÔò +#define NET_DVR_GET_CONNECT_POS_CFG 6150 //»ñÈ¡DVRÓëPOSÁ¬½Ó·½Ê½ +#define NET_DVR_SET_CONNECT_POS_CFG 6151 //ÉèÖÃDVRÓëPOSÁ¬½Ó·½Ê½ +#define NET_DVR_GET_CHAN_FILTER_CFG 6152 //»ñÈ¡¹æÔòÓëͨµÀ¹ØÁªÐÅÏ¢ +#define NET_DVR_SET_CHAN_FILTER_CFG 6153 //ÉèÖùæÔòÓëͨµÀ¹ØÁªÐÅÏ¢ + + +#define NET_DVR_GET_FTPCFG_V40 6162 //»ñÈ¡FTPÐÅÏ¢ +#define NET_DVR_SET_FTPCFG_V40 6163 //ÉèÖÃFTPÐÅÏ¢ + +#define NET_DVR_GET_MONTHLY_RECORD_DISTRIBUTION 6164 //»ñÈ¡ÔÂÀú¼Ïñ·Ö²¼ +#define NET_DVR_GET_ACCESS_DEVICE_CHANNEL_INFO 6165 //»ñÈ¡´ý½ÓÈëÉ豸ͨµÀÐÅÏ¢ +#define NET_DVR_GET_PREVIEW_SWITCH_CFG 6166 //»ñÈ¡É豸±¾µØÔ¤ÀÀÇл»²ÎÊý +#define NET_DVR_SET_PREVIEW_SWITCH_CFG 6167 //ÉèÖÃÉ豸±¾µØÔ¤ÀÀÇл»²ÎÊý + +//Netra3.0.0 +#define NET_DVR_GET_N_PLUS_ONE_WORK_MODE 6168 //»ñÈ¡N+1¹¤×÷ģʽ +#define NET_DVR_SET_N_PLUS_ONE_WORK_MODE 6169 //ÉèÖÃN+1¹¤×÷ģʽ + +#define NET_DVR_GET_HD_STATUS 6170 //»ñÈ¡Ó²ÅÌ״̬ +#define NET_DVR_SET_HD_STATUS 6171 //ÉèÖÃÓ²ÅÌ״̬ + +#define NET_DVR_IMPORT_IPC_CFG_FILE 6172 //µ¼ÈëIPCÅäÖÃÎļþ +#define NET_DVR_EXPORT_IPC_CFG_FILE 6173 //µ¼³öIPCÅäÖÃÎļþ +#define NET_DVR_UPGRADE_IPC 6174 //Éý¼¶IPͨµÀ + +#define NET_DVR_GET_RAID_BACKGROUND_TASK_SPEED 6175 //»ñÈ¡RAIDºǫ́ÈÎÎñËÙ¶È +#define NET_DVR_SET_RAID_BACKGROUND_TASK_SPEED 6176 //ÉèÖÃRAIDºǫ́ÈÎÎñËÙ¶È + +//marvell 256·NVR +#define NET_DVR_GET_EXCEPTIONCFG_V40 6177 //»ñÈ¡Òì³£²ÎÊýÅäÖà +#define NET_DVR_SET_EXCEPTIONCFG_V40 6178 //ÉèÖÃÒì³£²ÎÊýÅäÖà +#define NET_DVR_GET_PICCFG_V40 6179 //»ñȡͼÏó²ÎÊý Ö§³Ö±ä³¤ NetSDK_ +#define NET_DVR_SET_PICCFG_V40 6180 //ÉèÖÃͼÏó²ÎÊý£¬ Ö§³Ö±ä³¤ +#define NET_DVR_GET_ALARMINCFG_V40 6181 //»ñÈ¡±¨¾¯ÊäÈë²ÎÊý£¬Ö§³Ö±ä³¤ +#define NET_DVR_SET_ALARMINCFG_V40 6182 //»ñÈ¡±¨¾¯ÊäÈë²ÎÊý£¬Ö§³Ö±ä³¤ +#define NET_DVR_GET_IPALARMINCFG_V40 6183 //»ñÈ¡IP±¨¾¯ÊäÈë½ÓÈëÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_IPALARMOUTCFG_V40 6185 //»ñÈ¡IP±¨¾¯Êä³ö½ÓÈëÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_USERCFG_V40 6187 //»ñÈ¡Óû§²ÎÊý +#define NET_DVR_SET_USERCFG_V40 6188 //ÉèÖÃÓû§²ÎÊý +#define NET_DVR_GET_WORK_STATUS 6189 //»ñÈ¡É豸¹¤×÷״̬ +#define NET_DVR_GET_JPEG_CAPTURE_CFG_V40 6190 //»ñÈ¡DVRץͼÅäÖà +#define NET_DVR_SET_JPEG_CAPTURE_CFG_V40 6191 //ÉèÖÃDVRץͼÅäÖà +#define NET_DVR_GET_HDGROUP_CFG_V40 6192 //»ñÈ¡ÅÌ×é¹ÜÀíÅäÖòÎÊý +#define NET_DVR_SET_HDGROUP_CFG_V40 6193 //ÉèÖÃÅÌ×é¹ÜÀíÅäÖòÎÊý +#define NET_DVR_GET_SMD_HOLIDAY_HANDLE 6194 //»ñÈ¡¼òÒ×ÖÇÄܼÙÈռƻ® +#define NET_DVR_SET_SMD_HOLIDAY_HANDLE 6195 //ÉèÖüòÒ×ÖÇÄܼÙÈռƻ® +#define NET_DVR_GET_PIC_MODEL_CFG 6196 //»ñȡͼƬ½¨Ä£ÅäÖòÎÊý +#define NET_DVR_SET_PIC_MODEL_CFG 6197 //ÉèÖÃͼƬ½¨Ä£ÅäÖòÎÊý +#define NET_DVR_START_LOCAL_MOUSE_EVENT 6198 //¿ªÆôÉ豸±¾µØÊó±êʼþ¼Ç¼ +#define NET_DVR_START_SIMULARE_MOUSE_EVENT 6199 //Ô¶³ÌÄ£ÄâÊó±êʼþ +#define NET_DVR_GET_WORK_STATUS_V50 6200 //»ñÈ¡É豸¹¤×÷״̬V50 + +//91ϵÁÐHD-SDI¸ßÇåDVR +#define NET_DVR_GET_ACCESS_CAMERA_INFO 6201 // »ñÈ¡Ç°¶ËÏà»úÐÅÏ¢ +#define NET_DVR_SET_ACCESS_CAMERA_INFO 6202 // ÉèÖÃÇ°¶ËÏà»úÐÅÏ¢ +#define NET_DVR_PULL_DISK 6203 // °²È«°ÎÅÌ +#define NET_DVR_SCAN_RAID 6204 // ɨÃèÕóÁÐ +// CVR 2.0.X +#define NET_DVR_GET_USER_RIGHT_CFG 6210 // »ñÈ¡Óû§È¨ÏÞ +#define NET_DVR_SET_USER_RIGHT_CFG 6211 // ÉèÖÃÓû§È¨ÏÞ + +#define NET_DVR_ONE_KEY_CONFIG 6212 // Ò»¼üÅäÖÃCVR +#define NET_DVR_RESTART_SERVICE 6213 // ÖØÆôCVR·þÎñ + +#define NET_DVR_GET_MAX_MACHINE_NUM_CFG 6214 // »ñÈ¡±¸»ú×î´ó¸öÊý +#define NET_DVR_SET_MAX_MACHINE_NUM_CFG 6215 // ÉèÖñ¸»ú×î´ó¸öÊý + +#define NET_DVR_ADD_DEVICE 6216 //N+1ģʽÌí¼ÓÉ豸 +#define NET_DVR_DEL_DEVICE 6217 //N+1ģʽɾ³ýÉ豸 + +#define NET_DVR_GET_DATA_CALLBACK_CFG 6218 // »ñÈ¡Êý¾Ý»ØǨ״̬ +#define NET_DVR_SET_DATA_CALLBACK_CFG 6219 // ÉèÖÃÊý¾Ý»ØǨ״̬ + +#define NET_DVR_CLONE_LUN 6220 //¿Ë¡LUN¾í +#define NET_DVR_EXPAND_LUN 6221 //À©Õ¹ºÍÖØÃüÃûLUN¾í + +#define NET_DVR_GET_N_PLUS_ONE_DEVICE_INFO 6222 //»ñÈ¡N+1É豸ÐÅÏ¢ +#define NET_DVR_MODIFY_DVR_NET_DISK 6223 //ÐÞ¸ÄDVRÍøÅÌ +//#define NET_DVR_DEL_DVR_NET_DISK 6224 //ɾ³ýDVRÍøÅÌ + +#define NET_DVR_CREATE_NAS 6225 //´´½¨NAS +#define NET_DVR_DELETE_NAS 6226 //ɾ³ýNAS + +#define NET_DVR_OPEN_ISCSI 6227 //¿ªÆôiSCSI +#define NET_DVR_CLOSE_ISCSI 6228 //¹Ø±ÕiSCSI + +#define NET_DVR_GET_FC 6229 //»ñÈ¡¹âÏËÐÅÏ¢ +#define NET_DVR_OPEN_FC 6230 //¿ªÆôFC +#define NET_DVR_CLOSE_FC 6231 //¹Ø±ÕFC +#define NET_DVR_ONE_KEY_CONFIG_SAN 6232 // Ò»¼üÅäÖÃSAN, ÓëÒ»¼üÅäÖÃCVRÂß¼­Ò»Ñù + +//CVR2.3.2 +#define NET_DVR_RECORD_CHECK 6233 //¼ÏñÍêÕûÐÔ¼ì²â +#define NET_DVR_ADD_RECORD_PASSBACK_TASK_MANUAL 6234 //ÊÖ¶¯Ìí¼Ó¼Ïñ»Ø´«ÈÎÎñ +#define NET_DVR_GET_ALL_RECORD_PASSBACK_TASK_MANUAL 6235 //»ñÈ¡ËùÓÐÊÖ¶¯Ìí¼Ó¼Ïñ»Ø´«ÈÎÎñ +#define NET_DVR_RECORD_PASSBACK_TASK_MANUAL_CTRL 6236 //¿ØÖÆÊÖ¶¯Â¼Ïñ»Ø´«ÈÎÎñ +#define NET_DVR_DEL_RECORD_PASSBACK_TASK_MANUAL 6237 //ɾ³ýÊÖ¶¯Â¼Ïñ»Ø´«ÈÎÎñ +#define NET_DVR_GET_RECORD_PASSBACK_PLAN_CFG 6238 //»ñȡ¼Ïñ»Ø´«¼Æ»®ÅäÖà +#define NET_DVR_SET_RECORD_PASSBACK_PLAN_CFG 6239 //ÉèÖüÏñ»Ø´«¼Æ»®ÅäÖà +#define NET_DVR_GET_DEV_STORAGE_CFG 6240 //»ñÈ¡É豸´æ´¢ÐÅÏ¢ +#define NET_DVR_GET_ONLINE_USER_CFG 6241 //»ñÈ¡ÔÚÏßÓû§²ÎÊý +#define NET_DVR_GET_RECORD_SEGMENT_CFG 6242 //»ñȡ¼Ïñ¶Î×ÜÁ¿ + +#define NET_DVR_GET_REC_PASSBACK_TASK_EXECUTABLE 6243 //²éѯÊÖ¶¯Â¼Ïñ»Ø´«ÈÎÎñ¿ÉÖ´ÐÐÐÔ +#define NET_DVR_GET_STREAM_MEDIA_CFG 6244 //»ñÈ¡Á÷ýÌå»Ø´«Â¼Ïñ²ÎÊýÅäÖã¨Á÷ID·½Ê½£© +#define NET_DVR_SET_STREAM_MEDIA_CFG 6245 //ÉèÖÃÁ÷ýÌå»Ø´«Â¼Ïñ²ÎÊýÅäÖã¨Á÷ID·½Ê½£© +#define NET_DVR_GET_USERCFG_V50 6246 //»ñÈ¡Óû§²ÎÊýV50 +#define NET_DVR_SET_USERCFG_V50 6247 //ÉèÖÃÓû§²ÎÊýV50 + +#define NET_DVR_GET_RECORD_PASSBACK_BASIC_CFG_CAP 6248 //»ñÈ¡CVR»Ø´«¹¦ÄÜ»ù´¡ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_RECORD_PASSBACK_BASIC_CFG 6249 //»ñÈ¡CVR»Ø´«¹¦ÄÜ»ù´¡ÅäÖà +#define NET_DVR_SET_RECORD_PASSBACK_BASIC_CFG 6250 //ÉèÖÃCVR»Ø´«¹¦ÄÜ»ù´¡ÅäÖà +#define NET_DVR_ONE_KEY_CONFIG_V50 6251 // Ò»¼üÅäÖÃCVR(V50) +#define NET_DVR_GET_RACM_CAP 6252 //»ñÈ¡´æ´¢×ÜÄÜÁ¦£¨RACMÄÜÁ¦£© +#define NET_DVR_GET_THUMBNAILS 6253 //»ñÈ¡ËõÂÔͼ£¨Ä¬ÈÏÊǼÏñµÄËõÂÔͼ£©(Ö§³ÖÁ÷ID) +#define NET_DVR_ADD_RECORD_PASSBACK_TASK_MANUAL_V50 6254 //ÊÖ¶¯Ìí¼Ó¼Ïñ»Ø´«ÈÎÎñV50£¨·µ»ØÈÎÎñID£© +#define NET_DVR_GET_RECORD_PASSBACK_HISTORY_PLAN_CFG_CAP 6255 //»ñÈ¡CVR»Ø´«Àúʷ¼Ïñ¼Æ»®ÄÜÁ¦ +#define NET_DVR_GET_RECORD_PASSBACK_HISTORY_PLAN_CFG 6256 //»ñÈ¡CVR»Ø´«Àúʷ¼Ïñ¼Æ»®ÅäÖà +#define NET_DVR_SET_RECORD_PASSBACK_HISTORY_PLAN_CFG 6257 //ÉèÖÃCVR»Ø´«Àúʷ¼Ïñ¼Æ»®ÅäÖà +#define NET_DVR_ONE_KEY_CONFIG_V51 6258 // Ò»¼üÅäÖÃCVR(V51) + + +#define NET_DVR_GET_RECORD_PACK 6301 //»ñȡ¼Ïñ´ò°ü²ÎÊý +#define NET_DVR_SET_RECORD_PACK 6302 //ÉèÖüÏñ´ò°ü²ÎÊý + +#define NET_DVR_GET_CLOUD_STORAGE_CFG 6303 //»ñÈ¡É豸µ±Ç°¹¤×÷ģʽ +#define NET_DVR_SET_CLOUD_STORAGE_CFG 6304 //ÉèÖÃÉ豸µ±Ç°¹¤×÷ģʽ +#define NET_DVR_GET_GOP_INFO 6305 //»ñÈ¡GOPÐÅÏ¢ +#define NET_DVR_GET_PHY_DISK_INFO 6306 //»ñÈ¡ÎïÀí´ÅÅÌÐÅÏ¢ +//¼²¥Ö÷»úÍⲿÃüÁî +#define NET_DVR_GET_RECORDING_AUTO_TRACK_CFG 6307 //»ñÈ¡SDI×Ô¶¯¸ú×ÙÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_RECORDING_AUTO_TRACK_CFG 6308 //ÉèÖÃSDI×Ô¶¯¸ú×ÙÅäÖÃÐÅÏ¢ + +#define NET_DVR_GET_RECORDING_PUBLISH_CFG 6309 //»ñÈ¡Ò»¼ü·¢²¼ÐÅÏ¢ +#define NET_DVR_SET_RECORDING_PUBLISH_CFG 6310 //ÉèÖÃÒ»¼ü·¢²¼ÐÅÏ¢ + + +#define NET_DVR_RECORDING_ONEKEY_CONTROL 6311 //¼²¥Ö÷»ú¿ØÖÆ + +#define NET_DVR_GET_RECORDING_END_TIME 6312 //»ñȡ¼²¥Ê£Óàʱ¼ä + +#define NET_DVR_RECORDING_PUBLISH 6313 //Ò»¼ü·¢²¼Â¼Ïñ + +#define NET_DVR_GET_CURRICULUM_CFG 6314 //»ñÈ¡¿Î±íÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_CURRICULUM_CFG 6315 //ÉèÖÿαíÅäÖÃÐÅÏ¢ + +#define NET_DVR_GET_COURSE_INDEX_CFG 6316 //»ñÈ¡¿Î³ÌÐÅÏ¢Ë÷Òý +#define NET_DVR_SET_COURSE_INDEX_CFG 6317 //ÉèÖÿγÌÐÅÏ¢Ë÷Òý + +#define NET_DVR_GET_PPT_CHANNEL 6318 //»ñÈ¡PPTÖ§³ÖͨµÀºÅ +#define NET_DVR_GET_PPT_DETECT_CFG 6319 //»ñÈ¡PPT¼ì²â²ÎÊý +#define NET_DVR_SET_PPT_DETECT_CFG 6320 //ÉèÖÃPPT¼ì²â²ÎÊý + +#define NET_DVR_GET_RECORDINGHOST_CFG 6321 //»ñȡ¼²¥Ö÷»úÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_RECORDINGHOST_CFG 6322 //ÉèÖü²¥Ö÷»úÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_BACKUP_RECORD_CFG 6323 //»ñÈ¡Ò»¼ü±¸·ÝÅäÖÃÐÅÏ¢ +#define NET_DVR_SET_BACKUP_RECORD_CFG 6324 //ÉèÖÃÒ»¼ü±¸·ÝÅäÖÃÐÅÏ¢ + +//Í¥ÉóÖ÷»ú +#define NET_DVR_GET_AUDIO_ACTIVATION_CFG 6326 //»ñÈ¡ÓïÒô¼¤ÀøÅäÖòÎÊý +#define NET_DVR_SET_AUDIO_ACTIVATION_CFG 6327 //ÉèÖÃÓïÒô¼¤ÀøÅäÖòÎÊý +#define NET_DVR_GET_DECODERCFG_V40 6328 //»ñÈ¡½âÂëÆ÷²ÎÊýÐÅÏ¢ +#define NET_DVR_SET_DECODERCFG_V40 6329 //ÉèÖýâÂëÆ÷²ÎÊýÐÅÏ¢ + +#define NET_DVR_INFRARED_OUTPUT_CONTROL 6330 //ºìÍâÊä³ö¿ØÖÆ +#define NET_DVR_GET_INFRARED_CMD_NAME_CFG 6331 //»ñÈ¡ºìÍâÃüÁîÃû³Æ²ÎÊýÅäÖà +#define NET_DVR_SET_INFRARED_CMD_NAME_CFG 6332 //ÉèÖúìÍâÃüÁîÃû³Æ²ÎÊýÅäÖà +#define NET_DVR_START_INFRARED_LEARN 6333 //Ô¶³ÌºìÍâѧÂë + +#define NET_DVR_GET_TRIAL_SYSTEM_CFG 6334 //»ñÈ¡Í¥ÉóÖ÷»úϵͳÐÅÏ¢ +#define NET_DVR_SET_CASE_INFO 6335 //°¸¼þÐÅϢ¼Èë +#define NET_DVR_GET_TRIAL_MICROPHONE_STATUS 6336 //»ñÈ¡Âó¿Ë·ç״̬ÐÅÏ¢ +#define NET_DVR_SET_TRIAL_MICROPHONE_STATUS 6337 //»ñÈ¡Âó¿Ë·ç״̬ÐÅÏ¢ +#define NET_DVR_GET_TRIAL_HOST_STATUS 6338 //»ñÈ¡Í¥ÉóÖ÷»ú״̬ÐÅÏ¢ +#define NET_DVR_GET_LAMP_OUT 6339 //»ñÈ¡LAMPÊä³ö¿ÚÐÅÏ¢ +#define NET_DVR_SET_LAMP_OUT 6340 //ÉèÖÃLAMPÊä³ö¿ÚÐÅÏ¢ +#define NET_DVR_LAMP_REMOTE_CONTROL 6341 // LAMP¿ØÖÆ +#define NET_DVR_REMOTE_CONTROL_PLAY 6342 //Ô¶³Ì¿ØÖƱ¾µØ»Ø·Å +#define NET_DVR_GET_LOCAL_INPUT_CFG 6343 //»ñÈ¡Í¥ÉóÖ÷»ú״̬ÐÅϢͥÉóÖ÷»ú±¾µØÊäÈëÐÅÏ¢ +#define NET_DVR_SET_LOCAL_INPUT_CFG 6344 //ÉèÖÃÍ¥ÉóÖ÷»ú±¾µØÊäÈëÐÅÏ¢ +#define NET_DVR_GET_CASE_INFO 6345 //»ñÈ¡µ±Ç°°¸¼þÐÅÏ¢ + +//ÉóѶ»úÍⲿÃüÁî +#define NET_DVR_INQUEST_GET_CDW_STATUS 6350 //»ñÈ¡ÉóѶ»ú¿Ì¼״̬-³¤Á¬½Ó +#define NET_DVR_GET_MIX_AUDIOIN_CFG 6351 //»ñÈ¡»ìÒôÊäÈë¿Ú²ÎÊýÅäÖà +#define NET_DVR_SET_MIX_AUDIOIN_CFG 6352 //ÉèÖûìÒôÊäÈë¿Ú²ÎÊýÅäÖà +#define NET_DVR_GET_MIX_AUDIOOUT_CFG 6353 //»ñÈ¡»ìÒôÊä³ö¿Ú²ÎÊýÅäÖà +#define NET_DVR_SET_MIX_AUDIOOUT_CFG 6354 //ÉèÖûìÒôÊä³ö¿Ú²ÎÊýÅäÖà +#define NET_DVR_GET_AUDIOIN_VOLUME_CFG 6355 //»ñÈ¡ÒôƵÊäÈë¿ÚÒôÁ¿µ÷½Ú²ÎÊýÅäÖà +#define NET_DVR_SET_AUDIOIN_VOLUME_CFG 6356 //ÉèÖÃÒôƵÊäÈë¿ÚÒôÁ¿µ÷½Ú²ÎÊýÅäÖà +#define NET_DVR_GET_AREA_MASK_CFG 6357 //»ñÈ¡ÂíÈü¿ËÇøÓòÅäÖà +#define NET_DVR_SET_AREA_MASK_CFG 6358 //ÉèÖÃÂíÈü¿ËÇøÓòÅäÖà +#define NET_DVR_GET_AUDIO_DIACRITICAL_CFG 6359 //»ñÈ¡ÒôƵ±äÒôÅäÖà +#define NET_DVR_SET_AUDIO_DIACRITICAL_CFG 6360 //ÉèÖÃÒôƵ±äÒôÅäÖà +#define NET_DVR_GET_WIFI_DHCP_ADDR_CFG 6361 //»ñWIFI DHCP µØÖ··¶Î§²ÎÊýÅäÖà +#define NET_DVR_SET_WIFI_DHCP_ADDR_CFG 6362 //ÉèWIFI DHCP µØÖ··¶Î§²ÎÊýÅäÖà +#define NET_DVR_GET_WIFI_CLIENT_LIST_INFO 6363 //»ñÈ¡wifiÈȵãÏÂÁ¬½ÓµÄÉ豸ÐÅÏ¢ +#define NET_DVR_REMOTECONTROL_POWER_ON 6364 //Ô¶³Ì¿ª»ú +#define NET_DVR_GET_MULTISTREAM_RELATION_CHAN_CFG 6365 //»ñÈ¡¶àÂëÁ÷¹ØÁªÍ¨µÀ²ÎÊýÅäÖà +#define NET_DVR_SET_MULTISTREAM_RELATION_CHAN_CFG 6366 //ÉèÖöàÂëÁ÷¹ØÁªÍ¨µÀ²ÎÊýÅäÖà +#define NET_DVR_GET_VIDEOOUT_RESOLUTION_CFG 6367 //»ñÈ¡É豸±¾µØÊÓƵÊä³ö¿Ú·Ö±æÂÊ +#define NET_DVR_SET_VIDEOOUT_RESOLUTION_CFG 6368 //ÉèÖÃÉ豸±¾µØÊÓƵÊä³ö¿Ú·Ö±æÂÊ +#define NET_DVR_GET_AUDIOOUT_VOLUME_CFG 6369 //»ñÈ¡ÒôƵÊä³ö¿ÚÒôÁ¿µ÷½Ú²ÎÊýÅäÖà +#define NET_DVR_SET_AUDIOOUT_VOLUME_CFG 6370 //ÉèÖÃÒôƵÊä³ö¿ÚÒôÁ¿µ÷½Ú²ÎÊýÅäÖà +#define NET_DVR_INQUEST_PAUSE_CDW 6371 //ÔÝÍ£¿Ì¼ +#define NET_DVR_INQUEST_RESUME_CDW 6372 //»Ö¸´¿Ì¼ +#define NET_DVR_GET_INPUT_CHAN_CFG 6373 //»ñÈ¡ÊäÈëͨµÀÅäÖà +#define NET_DVR_SET_INPUT_CHAN_CFG 6374 //ÉèÖÃÊäÈëͨµÀÅäÖà +#define NET_DVR_GET_INQUEST_MIX_AUDIOIN_CFG 6375 //»ñÈ¡ÉóѶ»úÒôƵÊäÈë»ìÒôÅäÖà +#define NET_DVR_SET_INQUEST_MIX_AUDIOIN_CFG 6376 //ÉèÖÃÉóѶ»úÒôƵÊäÈë»ìÒôÅäÖà +#define NET_DVR_CASE_INFO_CTRL 6377 //°¸¼þÐÅÏ¢ÏÔʾ¿ØÖÆ +#define NET_DVR_GET_INQUEST_USER_RIGHT 6378 //»ñÈ¡ÉóѶ»úÓû§È¨ÏÞ +#define NET_DVR_SET_INQUEST_USER_RIGHT 6379 //ÉèÖÃÉóѶ»úÓû§È¨ÏÞ +#define NET_DVR_GET_INQUEST_CASE_INFO 6380 //»ñÈ¡ÉóѶ°¸¼þÐÅÏ¢ÅäÖà +#define NET_DVR_SET_INQUEST_CASE_INFO 6381 //ÉèÖÃÉóѶ°¸¼þÐÅÏ¢ÅäÖà + +#define NET_DVR_GET_FILM_MODE_CFG 6387 //»ñÈ¡µçӰģʽ +#define NET_DVR_SET_FILM_MODE_CFG 6388 //ÉèÖõçӰģʽ +#define NET_DVR_GET_FILM_MODE_CFG_CAP 6389 //»ñÈ¡µçӰģʽÅäÖÃÄÜÁ¦ + +#define NET_DVR_GET_DIRECTED_STRATEGY_CFG 6390 //»ñÈ¡µ¼²¥²ßÂÔÀàÐÍ +#define NET_DVR_SET_DIRECTED_STRATEGY_CFG 6391 //ÉèÖõ¼²¥²ßÂÔÀàÐÍ +#define NET_DVR_GET_DIRECTED_STRATEGY_CFG_CAP 6392 //»ñÈ¡µçӰģʽÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_FRAME_CFG 6393 //»ñÈ¡»­Ãæ±ß¿ò +#define NET_DVR_SET_FRAME_CFG 6394 //ÉèÖû­Ãæ±ß¿ò +#define NET_DVR_GET_FRAME_CFG_CAP 6395 //»ñÈ¡»­Ãæ±ß¿òÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_AUDIO_EFFECTIVE_CFG 6396 //»ñÈ¡ÒôƵÓÅ»¯²ÎÊý +#define NET_DVR_SET_AUDIO_EFFECTIVE_CFG 6397 //ÉèÖÃÒôƵЧ¹û²ÎÊý +#define NET_DVR_GET_AUDIO_EFFECTIVE_CFG_CAP 6398 //»ñÈ¡ÒôƵЧ¹ûÓÅ»¯ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_RECORD_VIDEO_CFG 6399 //»ñȡ¼ÖÆÊÓƵ²ÎÊý +#define NET_DVR_SET_RECORD_VIDEO_CFG 6400 //ÉèÖüÖÆÊÓƵ²ÎÊý + + +#define NET_DVR_GET_OUTPUT_CFG 6401 //»ñÈ¡ÏÔʾÊä³ö²ÎÊý +#define NET_DVR_SET_OUTPUT_CFG 6402 //ÉèÖÃÏÔʾÊä³ö²ÎÊý +#define NET_DVR_CODER_DISPLAY_START 6403 //¿ªÊ¼Êä³ö +#define NET_DVR_CODER_DISPLAY_STOP 6404 //Í£Ö¹Êä³ö +#define NET_DVR_GET_WINDOW_STATUS 6405 //»ñÈ¡ÏÔʾ´°¿Ú״̬ + +//VQD¹¦ÄÜ½Ó¿Ú +#define NET_DVR_GET_VQD_LOOP_DIAGNOSE_CFG 6406 //»ñÈ¡VQDÑ­»·Õï¶ÏÅäÖòÎÊý +#define NET_DVR_SET_VQD_LOOP_DIAGNOSE_CFG 6407 //ÉèÖÃVQDÑ­»·Õï¶ÏÅäÖòÎÊý +#define NET_DVR_GET_VQD_DIAGNOSE_INFO 6408 //ÊÖ¶¯»ñÈ¡VQDÕï¶ÏÐÅÏ¢ + +#define NET_DVR_RECORDING_PUBLISH_FILE 6421 //Îļþ·¢²¼ +#define NET_DVR_GET_RECORDING_PUBLISH_FILE_CAP 6422 //»ñÈ¡Îļþ·¢²¼ÄÜÁ¦ +#define NET_DVR_GET_PUBLISH_PROGRESS 6423 //»ñÈ¡·¢²¼½ø¶È +#define NET_DVR_GET_RECORD_VIDEO_CFG_CAP 6424 //»ñȡ¼ÖÆÊÓƵÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_RTMP_CFG 6425 //»ñÈ¡RTMP²ÎÊý +#define NET_DVR_SET_RTMP_CFG 6426 //ÉèÖÃRTMP²ÎÊý +#define NET_DVR_GET_RTMP_CFG_CAP 6427 //»ñÈ¡RTMPÅäÖÃÄÜÁ¦ +#define NET_DVR_DEL_BACKGROUND_PIC 6428 //ɾ³ý±³¾°Í¼Æ¬Îļþ +#define NET_DVR_GET_BACKGROUND_PIC_CFG 6429 //²éѯ±³¾°Í¼Æ¬Îļþ +#define NET_DVR_GET_BACKGROUND_PIC_INFO 6430 //»ñÈ¡ÄÄÕÅͼƬ×÷Ϊ±³¾°Í¼Æ¬ +#define NET_DVR_SET_BACKGROUND_PIC_INFO 6431 //ÉèÖÃÄÄÕÅͼƬ×÷Ϊ±³¾°Í¼Æ¬ +#define NET_DVR_GET_BACKGROUND_PIC_INFO_CAP 6432 //»ñÈ¡ÄÄÕÅͼƬ×÷Ϊ±³¾°Í¼Æ¬ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_RECORD_HOST_CAP 6433 //»ñȡ¼²¥Ö÷»ú×ÜÄÜÁ¦ +#define NET_DVR_GET_COURSE_LIST 6434 //»ñÈ¡¿Î³ÌÁбí +#define NET_DVR_GET_RECORD_STATUS 6435 //²éѯ¼²¥Ö÷»úµ±Ç°×´Ì¬ +#define NET_DVR_MANUAL_CURRICULUM_CONTROL 6436 //ÊÖ¶¯¿Î±í¿ØÖÆ +#define NET_DVR_GET_IMAGE_DIFF_DETECTION_CFG 6437 //»ñȡͼÏñ²î·Ö¼ì²â²ÎÊý +#define NET_DVR_SET_IMAGE_DIFF_DETECTION_CFG 6438 //ÉèÖÃͼÏñ²î·Ö¼ì²â²ÎÊý +#define NET_DVR_GET_IMAGE_DIFF_DETECTION_CFG_CAP 6439 //»ñȡͼÏñ²î·Ö¼ì²âÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_RECORDING_PUBLISH_FILE_INFO 6440 //»ñÈ¡·¢²¼ÎļþÐÅÏ¢²ÎÊý +#define NET_DVR_SET_RECORDING_PUBLISH_FILE_INFO 6441 //ÉèÖ÷¢²¼ÎļþÐÅÏ¢²ÎÊý +#define NET_DVR_GET_RECORDING_PUBLISH_FILE_INFO_CAP 6442 //»ñÈ¡·¢²¼ÎļþÐÅÏ¢ÅäÖÃÄÜÁ¦ +#define NET_DVR_MANUAL_CURRICULUM_CONTROL_CAP 6443 //»ñÈ¡ÊÖ¶¯¿Î³Ì¼ÏñµÄÄÜÁ¦ +#define NET_DVR_GET_STATISTIC_DATA_LIST 6444 //»ñȡͳ¼ÆÊý¾ÝÁбí + +#define NET_DVR_GET_DEVICE_LAN_ENCODE 6501 //»ñÈ¡É豸µÄÓïÑÔ±àÂë +#define NET_DVR_GET_GBT28181_SERVICE_CFG 6503 //»ñÈ¡GB28181·þÎñÆ÷²ÎÊý +#define NET_DVR_SET_GBT28181_SERVICE_CFG 6504 //ÉèÖÃGB28181·þÎñÆ÷²ÎÊý +#define NET_DVR_GET_GBT28181_SERVICE_CAPABILITIES 6505 //»ñÈ¡GB28181·þÎñÆ÷ÄÜÁ¦ + +#define NET_DVR_GET_CLOUD_URL 6506 //»ñÈ¡ÔÆ´æ´¢URL +#define NET_DVR_GET_CLOUD_URL_CAP 6507 //»ñÈ¡ÔÆ´æ´¢URL-ÄÜÁ¦¼¯ +#define NET_DVR_GET_CLOUD_CFG 6508 //»ñÈ¡ÔÆ´æ´¢ÅäÖòÎÊý +#define NET_DVR_SET_CLOUD_CFG 6509 //ÉèÖÃÔÆ´æ´¢ÅäÖòÎÊý +#define NET_DVR_GET_CLOUD_CFG_CAP 6510 //»ñÈ¡ÔÆ´æ´¢ÅäÖÃ-ÄÜÁ¦¼¯ +#define NET_DVR_GET_CLOUD_UPLOADSTRATEGY 6511 //»ñÈ¡ÔÆ´æ´¢ÉÏ´«²ßÂÔ +#define NET_DVR_SET_CLOUD_UPLOADSTRATEGY 6512 //ÉèÖÃÔÆ´æ´¢ÉÏ´«²ßÂÔ +#define NET_DVR_GET_CLOUDSTORAGE_UPLOADSTRATEGY_CAP 6513 //ÔÆ´æ´¢ÉÏ´«²ßÂÔÅäÖÃ-ÄÜÁ¦¼¯ + +#define NET_DVR_GET_VIDEO_IMAGE_DB_CFG 6601 //»ñÈ¡ÊÓͼ¿âÐÅÏ¢ +#define NET_DVR_SET_VIDEO_IMAGE_DB_CFG 6602 //ÉèÖÃÊÓͼ¿âÐÅÏ¢ +#define NET_DVR_GET_VIDEO_IMAGE_DB_CFG_CAP 6603 //»ñÈ¡ÊÓͼ¿âÏà¹ØÄÜÁ¦ +#define NET_DVR_GET_FILE_INFO_BY_ID 6604 //¸ù¾ÝÎļþID»ñÈ¡ÊÓͼ¿âÖÐÎļþÐÅÏ¢ +#define NET_DVR_QUERY_FILE_INFO_CAP 6605 //¸ù¾ÝÎļþÃû²éѯÎļþÐÅÏ¢ÄÜÁ¦ +#define NET_DVR_DEL_FILE_FROM_DB 6606 //´ÓÊÓͼ¿âÖÐɾ³ýÎļþ +#define NET_DVR_GET_VIDEO_IMAGE_DB_CAP 6607 //»ñÈ¡ÊÓͼ¿â×ÜÄÜÁ¦ + +#define NET_DVR_GET_FIGURE 6610 //»ñÈ¡ËõÂÔͼ + +#define NET_DVR_SYNC_IPC_PASSWD 6621 //ͬ²½IPCÃÜÂëÓëNVRÒ»Ö +#define NET_DVR_GET_VEHICLE_BLOCKLIST_SCHEDULE 6622 //»ñÈ¡½ûÖ¹Ãûµ¥²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_VEHICLE_BLOCKLIST_SCHEDULE 6623 //ÉèÖýûÖ¹Ãûµ¥²¼·Àʱ¼äÅäÖà + +#define NET_DVR_GET_VEHICLE_ALLOWLIST_SCHEDULE 6624 //»ñÈ¡ÔÊÐíÃûµ¥²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_VEHICLE_ALLOWLIST_SCHEDULE 6625 //ÉèÖÃÔÊÐíÃûµ¥²¼·Àʱ¼äÅäÖà + +#define NET_DVR_GET_VEHICLE_BLOCKLIST_EVENT_TRIGGER 6626 //»ñÈ¡½ûÖ¹Ãûµ¥²¼·ÀÁª¶¯ÅäÖà +#define NET_DVR_SET_VEHICLE_BLOCKLIST_EVENT_TRIGGER 6627 //ÉèÖýûÖ¹Ãûµ¥²¼·ÀÁª¶¯ÅäÖà + +#define NET_DVR_GET_VEHICLE_ALLOWLIST_EVENT_TRIGGER 6628 //»ñÈ¡ÔÊÐíÃûµ¥²¼·ÀÁª¶¯ÅäÖà +#define NET_DVR_SET_VEHICLE_ALLOWLIST_EVENT_TRIGGER 6629 //ÉèÖÃÔÊÐíÃûµ¥²¼·ÀÁª¶¯ÅäÖà + +#define NET_DVR_GET_TRAFFIC_CAP 6630 //»ñȡץÅÄÏà¹ØÄÜÁ¦¼¯ +#define NET_DVR_GET_VEHICLE_ALLLIST_EVENT_TRIGGER 6631 //»ñÈ¡È«²¿³µÁ¾¼ì²â²¼·ÀÁª¶¯ÅäÖà +#define NET_DVR_SET_VEHICLE_ALLLIST_EVENT_TRIGGER 6632 //ÉèÖÃÈ«²¿³µÁ¾¼ì²â²¼·ÀÁª¶¯ÅäÖà +#define NET_DVR_GET_VEHICLE_OTHERLIST_EVENT_TRIGGER 6633 //»ñÈ¡ÆäËûµ¥²¼·ÀÁª¶¯ÅäÖà +#define NET_DVR_SET_VEHICLE_OTHERLIST_EVENT_TRIGGER 6634 //ÉèÖÃÆäËûµ¥²¼·ÀÁª¶¯ÅäÖà + +#define NET_DVR_GET_STORAGEDETECTION_EVENT_TRIGGER 6635 //»ñÈ¡´æ´¢½¡¿µ¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_STORAGEDETECTION_EVENT_TRIGGER 6636 //ÉèÖô洢½¡¿µ¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_STORAGEDETECTION_SCHEDULE_CAPABILITIES 6637 //»ñÈ¡´æ´¢½¡¿µ¼ì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_STORAGEDETECTION_SCHEDULE 6638 //»ñÈ¡´æ´¢½¡¿µ²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_STORAGEDETECTION_SCHEDULE 6639 //ÉèÖô洢½¡¿µ²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_STORAGEDETECTION_STATE 6640 //»ñÈ¡´æ´¢½¡¿µ×´Ì¬ + +#define NET_DVR_GET_STORAGEDETECTION_RWLOCK 6646 //»ñÈ¡´æ´¢Õì²âµÄ¶ÁдËøÅäÖà +#define NET_DVR_GET_STORAGEDETECTION_RWLOCK_CAPABILITIES 6647 //»ñÈ¡´æ´¢Õì²âµÄ¶ÁдËøÅäÖÃÄÜÁ¦ +#define NET_DVR_SET_STORAGEDETECTION_RWLOCK 6648 //ÉèÖô洢Õì²âµÄ¶ÁдËøÅäÖà +#define NET_DVR_GET_PTZTRACKSTATUS 6649 //»ñÈ¡Çò»úÁª¶¯¸ú×Ù״̬ + +#define NET_DVR_SET_STORAGEDETECTION_UNLOCK 6653 //ÉèÖô洢Õì²âµÄ½âËøÅäÖà +#define NET_DVR_GET_STORAGEDETECTION_UNLOCK_CAPABILITIES 6654 //»ñÈ¡´æ´¢Õì²âµÄ½âËøÅäÖÃÄÜÁ¦ + +#define NET_DVR_SET_SHIPSDETECTION_CFG 6655 //ÉèÖô¬Ö»¼ì²â²ÎÊýÅäÖà +#define NET_DVR_GET_SHIPSDETECTION_CFG 6656 //»ñÈ¡´¬Ö»¼ì²â²ÎÊýÅäÖà +#define NET_DVR_GET_SHIPSDETECTION_CAPABILITIES 6657 //»ñÈ¡´¬Ö»¼ì²â²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_SHIPSDETECTION_COUNT 6658 //»ñÈ¡´¬Ö»¼ÆÊýÐÅÏ¢ +#define NET_DVR_SHIPSCOUNT_DELETE_CTRL 6659 //Çå¿Õ´¬Ö»¼ÆÊýÐÅÏ¢ + +#define NET_DVR_GET_BAREDATAOVERLAY_CAPABILITIES 6660 //»ñÈ¡ÂãÊý¾Ýµþ¼ÓÄÜÁ¦ +#define NET_DVR_SET_BAREDATAOVERLAY_CFG 6661 //ÉèÖÃÂãÊý¾Ýµþ¼Ó +#define NET_DVR_GET_BAREDATAOVERLAY_CFG 6662 //»ñÈ¡ÂãÊý¾Ýµþ¼Ó +#define NET_DVR_GET_SHIPSDETECTION_SCHEDULE 6663 //»ñÈ¡´¬Ö»¼ì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_SHIPSDETECTION_SCHEDULE 6664 //ÉèÖô¬Ö»¼ì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_SHIPSDETECTION_EVENT_TRIGGER 6665 //»ñÈ¡´¬Ö»¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_SHIPSDETECTION_EVENT_TRIGGER 6666 //ÉèÖô¬Ö»¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_GET_SHIPSDETECTION_SCHEDULE_CAPABILITIES 6667 //»ñÈ¡´¬Ö»¼ì²â²¼·Àʱ¼äÄÜÁ¦ + +#define NET_DVR_FIRE_FOCUSZOOM_CTRL 6670 //»ðµã¿É¼û¹â¾µÍ·¾Û½¹±ä±¶ + +#define NET_DVR_GET_FIREDETECTION_SCHEDULE_CAPABILITIES 6671 //»ñÈ¡»ðµã¼ì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_FIREDETECTION_SCHEDULE 6672 //»ñÈ¡»ðµã¼ì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_FIREDETECTION_SCHEDULE 6673 //ÉèÖûðµã¼ì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_MANUALRANGING_CAPABILITIES 6675 //»ñÈ¡ÊÖ¶¯²â¾àÅäÖÃÄÜÁ¦ +#define NET_DVR_SET_MANUALRANGING 6677 //ÉèÖÃÊÖ¶¯²â¾à²ÎÊý +#define NET_DVR_GET_MANUALDEICING_CAPABILITIES 6678//»ñÈ¡ÊÖ¶¯³ý±ùÅäÖÃÄÜÁ¦ +#define NET_DVR_SET_MANUALDEICING 6679 //ÉèÖÃÊÖ¶¯³ý±ù +#define NET_DVR_GET_MANUALDEICING 6680 //»ñÈ¡ÊÖ¶¯³ý±ù + +#define NET_DVR_GET_THERMALPOWER_CAPABILITIES 6689 //»ñÈ¡Ïà»úµçÔ´ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_THERMALPOWER 6690 //»ñÈ¡Ïà»úµçÔ´ÅäÖòÎÊý +#define NET_DVR_SET_THERMALPOWER 6691 //ÉèÖÃÏà»úµçÔ´ÅäÖòÎÊý +#define NET_DVR_GET_PTZABSOLUTEEX_CAPABILITIES 6695 //»ñÈ¡¸ß¾«¶ÈPTZ¾ø¶ÔλÖÃÅäÖÃÀ©Õ¹ÄÜÁ¦ +#define NET_DVR_GET_PTZABSOLUTEEX 6696 //»ñÈ¡¸ß¾«¶ÈPTZ¾ø¶ÔλÖÃÅäÖÃÀ©Õ¹ +#define NET_DVR_SET_PTZABSOLUTEEX 6697 //ÉèÖø߾«¶ÈPTZ¾ø¶ÔλÖÃÅäÖÃÀ©Õ¹ + +#define NET_DVR_GET_CRUISE_CAPABILITIES 6698 //»ñÈ¡É豸Ѳº½Ä£Ê½ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_CRUISE_INFO 6699 //»ñÈ¡É豸Ѳº½Ä£Ê½ +#define NET_DVR_GET_TEMP_HUMI_CAPABILITIES 6700 //ÎÂʪ¶ÈʵʱÄÜÁ¦»ñÈ¡ +#define NET_DVR_GET_TEMP_HUMI_INFO 6701 //ÎÂʪ¶Èʵʱ»ñÈ¡ + +#define NET_DVR_GET_MANUALTHERM_INFO 6706 //ÊÖ¶¯²âÎÂʵʱ»ñÈ¡ +#define NET_DVR_GET_MANUALTHERM_CAPABILITIES 6707 //»ñÈ¡ÊÖ¶¯²âÎÂʵʱÊý¾ÝÄÜÁ¦ +#define NET_DVR_SET_MANUALTHERM 6708 //ÉèÖÃÊÖ¶¯²âÎÂÊý¾ÝÉèÖà + +//DVR96000 +#define NET_DVR_GET_ACCESSORY_CARD_INFO_CAPABILITIES 6709 //»ñÈ¡Åä¼þ°åÐÅÏ¢ÄÜÁ¦ +#define NET_DVR_GET_ACCESSORY_CARD_INFO 6710 //»ñÈ¡Åä¼þ°åÐÅÏ¢ + +#define NET_DVR_GET_THERMINTELL_CAPABILITIES 6711 //»ñÈ¡ÈȳÉÏñÖÇÄÜ»¥³âÄÜÁ¦ +#define NET_DVR_GET_THERMINTELL 6712 //»ñÈ¡ÈȳÉÏñÖÇÄÜ»¥³âÅäÖòÎÊý +#define NET_DVR_SET_THERMINTELL 6713 //ÉèÖÃÈȳÉÏñÖÇÄÜ»¥³âÅäÖòÎÊý +#define NET_GET_CRUISEPOINT_V50 6714 //»ñȡѲº½Â·¾¶ÅäÖÃÀ©Õ¹ +#define NET_DVR_GET_MANUALTHERM_BASIC_CAPABILITIES 6715 //»ñÈ¡ÊÖ¶¯²âλù±¾²ÎÊýÅäÖÃÄÜÁ¦ +#define NET_DVR_SET_MANUALTHERM_BASICPARAM 6716 //ÉèÖÃÊÖ¶¯²âλù±¾²ÎÊý +#define NET_DVR_GET_MANUALTHERM_BASICPARAM 6717 //»ñÈ¡ÊÖ¶¯²âλù±¾²ÎÊý + +#define NET_DVR_GET_FIRESHIELDMASK_CAPABILITIES 6718 //»ñÈ¡»ðµãÇøÓòÆÁ±ÎÄÜÁ¦ + +#define NET_DVR_GET_HIDDEN_INFORMATION_CAPABILITIES 6720 //Òþ²ØÐÅÏ¢ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_HIDDEN_INFORMATION 6721 //»ñÈ¡Òþ²ØÐÅÏ¢²ÎÊý +#define NET_DVR_SET_HIDDEN_INFORMATION 6722 //ÉèÖÃÒþ²ØÐÅÏ¢²ÎÊý + +#define NET_DVR_SET_FIRESHIELDMASK_CFG 6723 //ÉèÖûðµãÇøÓòÆÁ±Î²ÎÊý +#define NET_DVR_GET_FIRESHIELDMASK_CFG 6724 //»ñÈ¡»ðµãÇøÓòÆÁ±Î²ÎÊý + +#define NET_DVR_GET_SMOKESHIELDMASK_CAPABILITIES 6725 //»ñÈ¡ÑÌÎíÇøÓòÆÁ±ÎÄÜÁ¦ +#define NET_DVR_SET_SMOKESHIELDMASK_CFG 6726 //ÉèÖÃÑÌÎíÇøÓòÆÁ±Î²ÎÊý +#define NET_DVR_GET_SMOKESHIELDMASK_CFG 6727 //»ñÈ¡ÑÌÎíÇøÓòÆÁ±Î²ÎÊý + +#define NET_DVR_GET_AREASCAN_CAPABILITIES 6728 //»ñÈ¡ÇøÓòɨÃèÄÜÁ¦ +#define NET_DVR_GET_AREASCAN_CFG 6730 //»ñÈ¡ÇøÓòɨÃè²ÎÊý + +#define NET_DVR_DEL_AREASCAN_CFG 6731 //ɨÃèÇøÓòɾ³ý +#define NET_DVR_AREASCAN_INIT_CTRL 6732 //½øÈëÇøÓòɨÃèÉèÖà +#define NET_DVR_AREASCAN_CONFIRM_CTRL 6733 //±£´æÇøÓòɨÃèÉèÖà +#define NET_DVR_AREASCAN_STOP_CTRL 6734 //Í£Ö¹ÇøÓòɨÃèÉèÖà +#define NET_DVR_SAVE_SCANZOOM_CTRL 6735 //ÉèÖÃɨÃ豶ÂÊ£»±£´æµ±Ç°¹âѧ±¶ÂÊΪɨÃ豶ÂÊ +#define NET_DVR_GET_SCANZOOM_CTRL 6736 //»ñȡɨÃ豶ÂÊ£»½«Ô¤ÀÀ½çÃæÖеĹâѧ±¶ÂÊ·µ»Øµ½µ±Ç°É¨Ã豶ÂÊ¡£ +#define NET_DVR_DEL_FIRESHIELDMASK_CTRL 6737 //ɾ³ý»ðµãÆÁ±ÎÇøÓò +#define NET_DVR_DEL_SMOKESHIELDMASK_CTRL 6738 //ɾ³ýÑÌÎíÆÁ±ÎÇøÓò + +#define NET_DVR_GET_DENSEFOG_EVENT_TRIGGER 6740 //»ñÈ¡´óÎí¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_DENSEFOG_EVENT_TRIGGER 6741 //ÉèÖôóÎí¼ì²âÁª¶¯ÅäÖà +#define NET_DVR_SET_DENSEFOGDETECTION_CFG 6742 //ÉèÖôóÎí¼ì²â²ÎÊýÅäÖà +#define NET_DVR_GET_DENSEFOGDETECTION_CFG 6743 //»ñÈ¡´óÎí¼ì²â²ÎÊýÅäÖà +#define NET_DVR_GET_DENSEFOGDETECTION_CAPABILITIES 6744 //»ñÈ¡´óÎí¼ì²â²ÎÊýÅäÖÃÄÜÁ¦ + +#define NET_DVR_GET_THERMOMETRY_SCHEDULE_CAPABILITIES 6750 //»ñÈ¡²âμì²â²¼·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_THERMOMETRY_SCHEDULE 6751 //»ñÈ¡²âμì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_SET_THERMOMETRY_SCHEDULE 6752 //ÉèÖòâμì²â²¼·Àʱ¼äÅäÖà +#define NET_DVR_GET_TEMPERTURE_SCHEDULE_CAPABILITIES 6753 //»ñȡβ·Àʱ¼äÄÜÁ¦ +#define NET_DVR_GET_TEMPERTURE_SCHEDULE 6754 //»ñȡβ·Àʱ¼äÅäÖà +#define NET_DVR_SET_TEMPERTURE_SCHEDULE 6755 //ÉèÖÃβ·Àʱ¼äÅäÖà +#define NET_DVR_GET_SEARCH_LOG_CAPABILITIES 6756 //ÈÕÖ¾ÀàÐÍÖ§³ÖÄÜÁ¦ +#define NET_DVR_GET_VEHICLEFLOW 6758 //»ñÈ¡³µÁ÷Á¿Êý¾Ý +#define NET_DVR_GET_IPADDR_FILTERCFG_V50 6759 //»ñÈ¡IPµØÖ·¹ýÂ˲ÎÊýÀ©Õ¹ +#define NET_DVR_SET_IPADDR_FILTERCFG_V50 6760 //ÉèÖÃIPµØÖ·¹ýÂ˲ÎÊýÀ©Õ¹ +#define NET_DVR_GET_TEMPHUMSENSOR_CAPABILITIES 6761 //»ñÈ¡ÎÂʪ¶È´«¸ÐÆ÷µÄÄÜÁ¦ +#define NET_DVR_GET_TEMPHUMSENSOR 6762 //»ñÈ¡ÎÂʪ¶È´«¸ÐÆ÷ÅäÖÃЭÒé +#define NET_DVR_SET_TEMPHUMSENSOR 6763 //ÉèÖÃÎÂʪ¶È´«¸ÐÆ÷ÅäÖÃЭÒé + +#define NET_DVR_GET_THERMOMETRY_MODE_CAPABILITIES 6764 //»ñÈ¡²âÎÂģʽÄÜÁ¦ +#define NET_DVR_GET_THERMOMETRY_MODE 6765 //»ñÈ¡²âÎÂģʽ²ÎÊý +#define NET_DVR_SET_THERMOMETRY_MODE 6766 //ÉèÖòâÎÂģʽ²ÎÊý + +#define NET_DVR_GET_THERMAL_PIP_CAPABILITIES 6767 //»ñÈ¡ÈȳÉÏñ»­Öл­ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_THERMAL_PIP 6768 //»ñÈ¡ÈȳÉÏñ»­Öл­ÅäÖòÎÊý +#define NET_DVR_SET_THERMAL_PIP 6769 //ÉèÖÃÈȳÉÏñ»­Öл­ÅäÖòÎÊý +#define NET_DVR_GET_THERMAL_INTELRULEDISPLAY_CAPABILITIES 6770 //»ñÈ¡ÈȳÉÏñÖÇÄܹæÔòÏÔʾÄÜÁ¦ +#define NET_DVR_GET_THERMAL_INTELRULE_DISPLAY 6771 //»ñÈ¡ÈȳÉÏñÖÇÄܹæÔòÏÔʾ²ÎÊý +#define NET_DVR_SET_THERMAL_INTELRULE_DISPLAY 6772 //ÉèÖÃÈȳÉÏñÖÇÄܹæÔòÏÔʾ²ÎÊý +#define NET_DVR_GET_THERMAL_ALGVERSION 6773 //»ñÈ¡ÈȳÉÏñÏà¹ØËã·¨¿â°æ±¾ +#define NET_DVR_GET_CURRENT_LOCK_CAPABILITIES 6774 //»ñÈ¡µçÁ÷Ëø¶¨ÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_CURRENT_LOCK 6775 //»ñÈ¡µçÁ÷Ëø¶¨ÅäÖòÎÊý +#define NET_DVR_SET_CURRENT_LOCK 6776 //ÉèÖõçÁ÷Ëø¶¨ÅäÖòÎÊý + +#define NET_DVR_DEL_MANUALTHERM_RULE 6778 //ɾ³ýÊÖ¶¯²âιæÔò + +#define NET_DVR_GET_UPGRADE_INFO 6779 //»ñÈ¡Éý¼¶ÐÅÏ¢ + +#define NET_DVR_SWITCH_TRANSFER 7000 + +#define NET_DVR_GET_MB_POWERCTRLPARA 8000//»ñÈ¡Æô¶¯¿ØÖƲÎÊý +#define NET_DVR_SET_MB_POWERCTRLPARA 8001 //ÉèÖÃÆô¶¯¿ØÖƲÎÊý +#define NET_DVR_GET_AUTOBACKUPPARA 8002//»ñÈ¡×Ô¶¯±¸·Ý²ÎÊý +#define NET_DVR_SET_AUTOBACKUPPARA 8003 //ÉèÖÃ×Ô¶¯±¸·Ý²ÎÊý +#define NET_DVR_GET_MB_GPSPARA 8004//»ñÈ¡GPS²ÎÊý +#define NET_DVR_SET_MB_GPSPARA 8005 //ÉèÖÃGPS²ÎÊý +#define NET_DVR_GET_MB_SENSORINPARA 8006//»ñÈ¡SENSOR²ÎÊý +#define NET_DVR_SET_MB_SENSORINPARA 8007 //ÉèÖÃSENSOR²ÎÊý +#define NET_DVR_GET_GSENSORPARA 8008//»ñÈ¡GSENSOR²ÎÊý +#define NET_DVR_SET_GSENSORPARA 8009 //ÉèÖÃGSENSOR²ÎÊý +#define NET_DVR_GET_MB_DOWNLOADSVRPARA 8010//»ñÈ¡ÏÂÔØ·þÎñÆ÷²ÎÊý +#define NET_DVR_SET_MB_DOWNLOADSVRPARA 8011//ÉèÖÃÏÂÔØ·þÎñÆ÷²ÎÊý +#define NET_DVR_GET_PLATERECOG_PARA 8012//»ñÈ¡³µÅÆʶ±ð²ÎÊý +#define NET_DVR_SET_PLATERECOG_PARA 8013//ÉèÖóµÅÆʶ±ð²ÎÊý +#define NET_DVR_GET_ENFORCESYS_PARA 8014//»ñÈ¡³µÁ¾»ü²é²ÎÊý +#define NET_DVR_SET_ENFORCESYS_PARA 8015//ÉèÖóµÁ¾»ü²é²ÎÊý +#define NET_DVR_GET_GPS_DATA 8016 //»ñÈ¡GPSÊý¾Ý +#define NET_DVR_GET_ANALOG_ALARMINCFG 8017//»ñÈ¡Ä£Äⱨ¾¯ÊäÈë²ÎÊý +#define NET_DVR_SET_ANALOG_ALARMINCFG 8018//ÉèÖÃÄ£Äⱨ¾¯ÊäÈë²ÎÊý + +#define NET_DVR_GET_SYSTEM_CAPABILITIES 8100 //»ñÈ¡É豸µÄϵͳÄÜÁ¦ +#define NET_DVR_GET_EAGLEEYE_CAPABILITIES 8101 //»ñÈ¡É豸ӥÑÛÄÜÁ¦ +#define NET_DVR_GET_SLAVECAMERA_CALIB_V51 8102 //»ñÈ¡´ÓÉãÏñ»ú±ê¶¨ÅäÖÃV51 +#define NET_DVR_SET_SLAVECAMERA_CALIB_V51 8103 //ÉèÖôÓÉãÏñ»ú±ê¶¨ÅäÖÃV51 +#define NET_DVR_SET_GOTOSCENE 8105 //ÉèÖÃÖ÷ÉãÏñ»úתÏòÖ¸¶¨µÄ³¡¾°ID + +//I¡¢K¡¢EϵÁÐNVR²úÆ·Éý¼¶ +#define NET_DVR_GET_PTZ_NOTIFICATION 8201//»ñÈ¡¶àͨµÀʼþÁª¶¯PTZ +#define NET_DVR_SET_PTZ_NOTIFICATION 8202//ÉèÖöàͨµÀʼþÁª¶¯PTZ +/*****************************µçÊÓǽ start****************************/ +#define NET_DVR_MATRIX_WALL_SET 9001 //ÉèÖõçÊÓǽÖÐÆÁÄ»²ÎÊý +#define NET_DVR_MATRIX_WALL_GET 9002 //»ñÈ¡µçÊÓǽÖÐÆÁÄ»²ÎÊý +#define NET_DVR_WALLWIN_GET 9003 //µçÊÓǽÖлñÈ¡´°¿Ú²ÎÊý +#define NET_DVR_WALLWIN_SET 9004 //µçÊÓǽÖÐÉèÖô°¿Ú²ÎÊý +#define NET_DVR_WALLWINPARAM_SET 9005 //ÉèÖõçÊÓǽ´°¿ÚÏà¹Ø²ÎÊý +#define NET_DVR_WALLWINPARAM_GET 9006 //»ñÈ¡µçÊÓǽ´°¿ÚÏà¹Ø²ÎÊý +#define NET_DVR_WALLSCENEPARAM_GET 9007 //ÉèÖ󡾰ģʽ²ÎÊý +#define NET_DVR_WALLSCENEPARAM_SET 9008 //»ñÈ¡³¡¾°Ä£Ê½²ÎÊý +#define NET_DVR_MATRIX_GETWINSTATUS 9009 //»ñÈ¡´°¿Ú½âÂë״̬ +#define NET_DVR_GET_WINASSOCIATEDDEVINFO 9010 //µçÊÓǽÖлñÈ¡¶ÔÓ¦×ÊÔ´ÐÅÏ¢ +#define NET_DVR_WALLOUTPUT_GET 9011 //µçÊÓǽÖлñÈ¡ÏÔʾÊä³ö²ÎÊý +#define NET_DVR_WALLOUTPUT_SET 9012 //µçÊÓǽÖÐÉèÖÃÏÔʾÊä³ö²ÎÊý +#define NET_DVR_GET_UNITEDMATRIXSYSTEM 9013 //µçÊÓǽÖлñÈ¡¶ÔÓ¦×ÊÔ´ +#define NET_DVR_GET_WALL_CFG 9014 //»ñÈ¡µçÊÓǽȫ¾Ö²ÎÊý +#define NET_DVR_SET_WALL_CFG 9015 //ÉèÖõçÊÓǽȫ¾Ö²ÎÊý +#define NET_DVR_CLOSE_ALL_WND 9016 //¹Ø±ÕËùÓд°¿Ú +#define NET_DVR_SWITCH_WIN_TOP 9017 //´°¿ÚÖö¥ +#define NET_DVR_SWITCH_WIN_BOTTOM 9018 //´°¿ÚÖÃµ× + +#define NET_DVR_CLOSE_ALL_WND_V41 9019 //µçÊÓǽ¹Ø±ÕËùÓд°¿Úv41£¨Óжà¸öµçÊÓǽ£© +#define NET_DVR_GET_WALL_WINDOW_V41 9020 //»ñÈ¡µçÊÓǽÖеĴ°¿Úv41 +#define NET_DVR_SET_WALL_WINDOW_V41 9021 //ÉèÖõçÊÓǽÖеĴ°¿Úv41 +#define NET_DVR_GET_CURRENT_SCENE_V41 9022 //»ñÈ¡µ±Ç°µçÊÓǽÖÐÕýÔÚʹÓõij¡¾°v41 +#define NET_DVR_GET_WALL_SCENE_PARAM_V41 9023 //»ñÈ¡µ±Ç°µçÊÓǽÖÐÕýÔÚʹÓõij¡¾°v41 +#define NET_DVR_SET_WALL_SCENE_PARAM_V41 9024 //ÉèÖõ±Ç°µçÊÓǽÖÐÕýÔÚʹÓõij¡¾°v41 +#define NET_DVR_GET_MATRIX_LOGO_CFG 9025 //»ñÈ¡logo²ÎÊý +#define NET_DVR_SET_MATRIX_LOGO_CFG 9026 //ÉèÖÃlogo²ÎÊý +#define NET_DVR_GET_WIN_LOGO_CFG 9027 //»ñÈ¡´°¿Úlogo²ÎÊý +#define NET_DVR_SET_WIN_LOGO_CFG 9028 //ÉèÖô°¿Úlogo²ÎÊý +#define NET_DVR_DELETE_LOGO 9029 //ɾ³ýlogo +#define NET_DVR_SET_DISPLAY_EFFECT_CFG 9030 //ÉèÖÃÏÔʾÊä³öЧ¹û²ÎÊýv41 +#define NET_DVR_GET_DISPLAY_EFFECT_CFG 9031 //»ñÈ¡ÏÔʾÊä³öЧ¹û²ÎÊýv41 +#define NET_DVR_DEC_PLAY_REMOTE_FILE 9032 //½âÂë²¥·ÅÔ¶³ÌÎļþ +#define NET_DVR_DEC_PLAY_REMOTE_FILE_V50 9314 //½âÂë²¥·ÅÔ¶³ÌÎļþV50 +#define NET_DVR_GET_WIN_ZOOM_STATUS 9033 //»ñÈ¡´°¿Úµç×Ó·Å´ó״̬ +#define NET_DVR_GET_ALL_MATRIX_LOGOCFG 9034 //»ñÈ¡ËùÓÐlogo²ÎÊý + +/*****************************µçÊÓǽ end******************************/ + +/*******************************LCDÆ´½ÓÆÁ begin******************************************/ +#define NET_DVR_SIMULATE_REMOTE_CONTROL 9035 //Ä£ÄâÒ£¿Ø°´¼ü 2013-09-05 +#define NET_DVR_SET_SCREEN_SIGNAL_CFG 9036 //ÉèÖÃÆÁÄ»ÐźÅÔ´²ÎÊý +#define NET_DVR_GET_SCREEN_SIGNAL_CFG 9037 //»ñÈ¡ÆÁÄ»ÐźÅÔ´²ÎÊý +#define NET_DVR_SET_SCREEN_SPLICE_CFG 9038 //ÉèÖÃÆÁĻƴ½Ó +#define NET_DVR_GET_SCREEN_SPLICE_CFG 9039 //»ñÈ¡ÆÁĻƴ½Ó +#define NET_DVR_GET_SCREEN_FAN_WORK_MODE 9040 //»ñÈ¡·çÉȹ¤×÷·½Ê½ +#define NET_DVR_SET_SCREEN_FAN_WORK_MODE 9041 //ÉèÖ÷çÉȹ¤×÷·½Ê½ +#define NET_DVR_SHOW_SCREEN_WORK_STATUS 9044 //ÏÔʾÆÁĻ״̬ +#define NET_DVR_GET_VGA_CFG 9045 //»ñÈ¡VGAÐźÅÅäÖà +#define NET_DVR_SET_VGA_CFG 9046 //ÉèÖÃVGAÐźÅÅäÖà +#define NET_DVR_GET_SCREEN_MENU_CFG 9048 //»ñÈ¡ÆÁÄ»²Ëµ¥ÅäÖà +#define NET_DVR_SET_SCREEN_MENU_CFG 9049 //ÉèÖÃÆÁÄ»²Ëµ¥ÅäÖà +#define NET_DVR_SET_SCREEN_DISPLAY_CFG 9050 //ÉèÖÃÏÔʾ²ÎÊý 2013-08-28 +#define NET_DVR_GET_SCREEN_DISPLAY_CFG 9051 //»ñÈ¡ÏÔʾ²ÎÊý 2013-08-28 + +#define NET_DVR_SET_FUSION_CFG 9052 //ÉèÖÃͼÏñÈںϲÎÊý +#define NET_DVR_GET_FUSION_CFG 9053 //»ñȡͼÏñÈںϲÎÊý + +#define NET_DVR_SET_PIP_CFG 9060 //ÉèÖû­Öл­²ÎÊý +#define NET_DVR_GET_PIP_CFG 9061 //»ñÈ¡»­Öл­²ÎÊý +#define NET_DVR_SET_DEFOG_LCD 9073 //ÉèÖÃ͸Îí²ÎÊý +#define NET_DVR_GET_DEFOG_LCD 9074 //»ñȡ͸Îí²ÎÊý +#define NET_DVR_SHOW_IP 9075 //ÏÔʾIP +#define NET_DVR_SCREEN_MAINTENANCE_WALL 9076 //ÆÁĻάǽ +#define NET_DVR_SET_SCREEN_POS 9077 //ÉèÖÃÆÁĻλÖòÎÊý +#define NET_DVR_GET_SCREEN_POS 9078 //»ñÈ¡ÆÁĻλÖòÎÊý +/*******************************LCDÆ´½ÓÆÁ end******************************************/ + +/*******************************LCDÆ´½ÓÆÁV1.2 begin******************************************/ +#define NET_DVR_SCREEN_INDEX_SET 9079 //ÆÁÄ»Ë÷ÒýÏà¹Ø²ÎÊýÉèÖà +#define NET_DVR_SCREEN_INDEX_GET 9080 //ÆÁÄ»Ë÷ÒýÏà¹Ø²ÎÊý»ñÈ¡ +#define NET_DVR_SCREEN_SPLICE_SET 9081 //ÉèÖÃÆÁĻƴ½Ó²ÎÊý +#define NET_DVR_SCREEN_SPLICE_GET 9082 //»ñÈ¡ÆÁĻƴ½Ó²ÎÊý +#define NET_DVR_SET_SCREEN_PARAM 9083 //ÉèÖÃÆÁÄ»Ïà¹Ø²ÎÊý +#define NET_DVR_GET_SCREEN_PARAM 9084 //»ñÈ¡ÆÁÄ»Ïà¹Ø²ÎÊý +#define NET_DVR_SET_SWITCH_CFG 9085 //ÉèÖö¨Ê±¿ª¹Ø»ú²ÎÊý +#define NET_DVR_GET_SWITCH_CFG 9086 //»ñÈ¡¶¨Ê±¿ª¹Ø»ú²ÎÊý +#define NET_DVR_SET_POWERON_DELAY_CFG 9087 //ÉèÖÃÑÓʱ¿ª»ú²ÎÊý +#define NET_DVR_GET_POWERON_DELAY_CFG 9088 //»ñÈ¡ÑÓʱ¿ª»ú²ÎÊý +#define NET_DVR_SET_SCREEN_POSITION 9089 //ÉèÖÃÆÁĻλÖòÎÊý +#define NET_DVR_GET_SCREEN_POSITION 9090 //»ñÈ¡ÆÁĻλÖòÎÊý +#define NET_DVR_SCREEN_SCENE_CONTROL 9091 //ÆÁÄ»³¡¾°¿ØÖÆ +#define NET_DVR_GET_CURRENT_SCREEN_SCENE 9092 //»ñÈ¡µ±Ç°ÆÁÄ»³¡¾°ºÅ +#define NET_DVR_GET_SCREEN_SCENE_PARAM 9093 //»ñÈ¡ÆÁÄ»³¡¾°Ä£Ê½²ÎÊý +#define NET_DVR_SET_SCREEN_SCENE_PARAM 9094 //ÉèÖÃÆÁÄ»³¡¾°Ä£Ê½²ÎÊý +#define NET_DVR_GET_EXTERNAL_MATRIX_RELATION 9095 //»ñÈ¡Íâ½Ó¾ØÕóÊäÈëÊä³ö¹ØÁª¹Øϵ +#define NET_DVR_GET_LCD_AUDIO_CFG 9096 //»ñÈ¡LCDÆÁÄ»ÒôƵ²ÎÊý +#define NET_DVR_SET_LCD_AUDIO_CFG 9097 //ÉèÖÃLCDÆÁÄ»ÒôƵ²ÎÊý +#define NET_DVR_GET_LCD_WORK_STATE 9098 //»ñÈ¡LCDÆÁÄ»¹¤×÷״̬ +#define NET_DVR_GET_BOOT_LOGO_CFG 9099 //»ñÈ¡LCDÆÁÄ»¿ª»úlogoÏÔʾ²ÎÊý +#define NET_DVR_SET_BOOT_LOGO_CFG 9100 //ÉèÖÃLCDÆÁÄ»¿ª»úlogoÏÔʾ²ÎÊý + +/*******************************LCDÆ´½ÓÆÁV1.2 end ******************************************/ +#define NET_DVR_GET_STREAM_DST_COMPRESSIONINFO 9101 //»ñÈ¡Ä¿±êѹËõ²ÎÊý +#define NET_DVR_SET_STREAM_DST_COMPRESSIONINFO 9102 //ÉèÖÃÄ¿±êѹËõ²ÎÊý +#define NET_DVR_GET_STREAM_TRANS_STATUS 9103 //»ñÈ¡Á÷״̬ +#define NET_DVR_GET_DEVICE_TRANS_STATUS 9104 //»ñÈ¡É豸תÂë״̬ +#define NET_DVR_GET_ALLSTREAM_SRC_INFO 9105 //»ñÈ¡ËùÓÐÁ÷ÐÅÏ¢ +#define NET_DVR_GET_BIG_SCREEN_AUDIO 9106 //»ñÈ¡´óÆÁÒôƵÐÅÏ¢ +#define NET_DVR_SET_BIG_SCREEN_AUDIO 9107 //ÉèÖôóÆÁÒôƵÐÅÏ¢ +#define NET_DVR_GET_DEV_WORK_MODE 9108 //»ñȡתÂëÉ豸¹¤×÷ģʽ +#define NET_DVR_SET_DEV_WORK_MODE 9109 //ÉèÖÃתÂëÉ豸¹¤×÷ģʽ +#define NET_DVR_APPLY_TRANS_CHAN 9110 //°´Á÷IDÉêÇëתÂëͨµÀ +#define NET_DVR_GET_DISPCHAN_CFG 9111 //ÅúÁ¿»ñÈ¡ÏÔʾͨµÀ²ÎÊý +#define NET_DVR_SET_DISPCHAN_CFG 9112 //ÅúÁ¿ÉèÖÃÏÔʾͨµÀ²ÎÊý + +#define NET_DVR_GET_DEC_CHAN_STATUS 9113 //»ñÈ¡½âÂëͨµÀ½âÂë״̬ +#define NET_DVR_GET_DISP_CHAN_STATUS 9114 //»ñÈ¡ÏÔʾͨµÀ״̬ +#define NET_DVR_GET_ALARMIN_STATUS 9115 //»ñÈ¡±¨¾¯ÊäÈë״̬ +#define NET_DVR_GET_ALARMOUT_STATUS 9116 //»ñÈ¡±¨¾¯Êä³ö״̬ +#define NET_DVR_GET_AUDIO_CHAN_STATUS 9117 //»ñÈ¡ÓïÒô¶Ô½²×´Ì¬ + +#define NET_DVR_GET_VIDEO_AUDIOIN_CFG 9118 //»ñÈ¡ÊÓƵµÄÒôƵÊäÈë²ÎÊý +#define NET_DVR_SET_VIDEO_AUDIOIN_CFG 9119 //ÉèÖÃÊÓƵµÄÒôƵÊäÈë²ÎÊý + +#define NET_DVR_SET_BASEMAP_CFG 9120 //ÉèÖõ×ͼ²ÎÊý +#define NET_DVR_GET_BASEMAP_CFG 9121 //»ñÈ¡µ×ͼ²ÎÊý +#define NET_DVR_GET_VIRTUAL_SCREEN_CFG 9122 //»ñÈ¡³¬¸ßÇåÊäÈë×Óϵͳ²ÎÊý +#define NET_DVR_SET_VIRTUAL_SCREEN_CFG 9123 //ÉèÖó¬¸ßÇåÊäÈë×Óϵͳ²ÎÊý +#define NET_DVR_GET_BASEMAP_WIN_CFG 9124 //»ñÈ¡µ×ͼ´°¿Ú²ÎÊý +#define NET_DVR_SET_BASEMAP_WIN_CFG 9125 //ÉèÖõ×ͼ´°¿Ú²ÎÊý +#define NET_DVR_DELETE_PICTURE 9126 //ɾ³ýµ×ͼ +#define NET_DVR_GET_BASEMAP_PIC_INFO 9127 //»ñÈ¡µ×ͼͼƬÐÅÏ¢ +#define NET_DVR_SET_BASEMAP_WIN_CFG_V40 9128 //ÉèÖõ×ͼ´°¿Ú²ÎÊýV40 +#define NET_DVR_GET_BASEMAP_WIN_CFG_V40 9129 //»ñÈ¡µ×ͼ´°¿Ú²ÎÊýV40 + +#define NET_DVR_GET_DEC_VCA_CFG 9130 //»ñÈ¡½âÂëÆ÷ÖÇÄܱ¨¾¯²ÎÊý +#define NET_DVR_SET_DEC_VCA_CFG 9131 //ÉèÖýâÂëÆ÷ÖÇÄܱ¨¾¯²ÎÊý + +#define NET_DVR_SET_VS_INPUT_CHAN_INIT_ALL 9132 //³õʼ»¯ÐéÄâÆÁ×Ó°åµÄËùÓÐÊäÈëͨµÀ +#define NET_DVR_GET_VS_INPUT_CHAN_INIT_ALL 9133 //»ñÈ¡ÐéÄâÆÁ×Ó°åµÄËùÓÐÊäÈëͨµÀµÄ³õʼ»¯²ÎÊý +#define NET_DVR_GET_VS_INPUT_CHAN_INIT 9134 //»ñÈ¡ÐéÄâÆÁÊäÈëͨµÀµÄ³õʼ»¯²ÎÊý +#define NET_DVR_GET_VS_INPUT_CHAN_CFG 9135 //»ñÈ¡ÐéÄâÆÁÊäÈëͨµÀÅäÖòÎÊý + +#define NET_DVR_GET_TERMINAL_CONFERENCE_STATUS 9136 //»ñÈ¡Öն˻áÒé״̬ +#define NET_DVR_GET_TERMINAL_INPUT_CFG_CAP 9137 //»ñÈ¡ÖÕ¶ËÊäÈë²ÎÊýÄÜÁ¦ +#define NET_DVR_GET_TERMINAL_INPUT_CFG 9138 //»ñÈ¡ÖÕ¶ËÊÓƵ»áÒéÊäÈë²ÎÊý +#define NET_DVR_SET_TERMINAL_INPUT_CFG 9139 //ÉèÖÃÖÕ¶ËÊÓƵ»áÒéÊäÈë²ÎÊý + +#define NET_DVR_GET_CONFERENCE_REGION_CAP 9140 //»ñÈ¡Öն˻áÒéÇøÓòÄÜÁ¦ +#define NET_DVR_GET_CONFERENCE_REGION 9141 //»ñÈ¡Öն˻áÒéÇøÓò²ÎÊý +#define NET_DVR_SET_CONFERENCE_REGION 9142 //ÉèÖÃÖն˻áÒéÇøÓò²ÎÊý +#define NET_DVR_GET_TERMINAL_CALL_CFG_CAP 9143 //»ñÈ¡Öն˺ô½ÐÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_TERMINAL_CALL_CFG 9144 //»ñÈ¡Öն˺ô½Ð²ÎÊý +#define NET_DVR_SET_TERMINAL_CALL_CFG 9145 //ÉèÖÃÖն˺ô½Ð²ÎÊý +#define NET_DVR_GET_TERMINAL_CTRL_CAP 9146 //»ñÈ¡Öն˺ô½Ð¿ØÖÆÄÜÁ¦ +#define NET_DVR_TERMINAL_CTRL 9147 //Öն˺ô½Ð¿ØÖÆ +#define NET_DVR_GET_CALL_QUERY_CAP 9148 //»ñÈ¡»áÒé²éÕÒÄÜÁ¦ +#define NET_DVR_GET_CALLINFO_BY_COND 9149 //°´Ìõ¼þ²éѯºô½Ð¼Ç¼ + +#define NET_DVR_SET_FUSION_SCALE 9150 //ÉèÖÃͼÏñÈںϹæÄ£ +#define NET_DVR_GET_FUSION_SCALE 9151 //»ñȡͼÏñÈںϹæÄ£ + +#define NET_DVR_GET_VCS_CAP 9152 //»ñÈ¡MCUÄÜÁ¦¼¯ + + +#define NET_DVR_GET_TERMINAL_GK_CFG_CAP 9153 //»ñÈ¡ÖÕ¶Ë×¢²áGKÄÜÁ¦ +#define NET_DVR_GET_TERMINAL_GK_CFG 9154 //»ñÈ¡ÖÕ¶Ë×¢²áGK²ÎÊý +#define NET_DVR_SET_TERMINAL_GK_CFG 9155 //ÉèÖÃÖÕ¶Ë×¢²áGK²ÎÊý +#define NET_DVR_GET_MCU_CONFERENCESEARCH_CAP 9156 //»ñÈ¡MCUÉ豸µÄÄÜÁ¦ +#define NET_DVR_SET_VS_INPUT_CHAN_CFG 9157 //ÉèÖÃÐéÄâÆÁÊäÈëͨµÀÅäÖòÎÊý +#define NET_DVR_GET_VS_NETSRC_CFG 9158 //ÉèÖÃÐéÄâÆÁÍøÂçÔ´²ÎÊý +#define NET_DVR_SET_VS_NETSRC_CFG 9159 //ÉèÖÃÐéÄâÆÁÍøÂçÔ´²ÎÊý + +#define NET_DVR_GET_LLDP_CFG 9160 //»ñÈ¡LLDP²ÎÊý +#define NET_DVR_SET_LLDP_CFG 9161 //ÉèÖÃLLDP²ÎÊý +#define NET_DVR_GET_LLDP_CAP 9162 //»ñÈ¡LLDPÄÜÁ¦¼¯ +#define NET_DVR_GET_FIBER_CONVERT_BASIC_INFO 9163 //»ñÈ¡¹âÏËÊÕ·¢Æ÷»ù±¾ÐÅÏ¢ +#define NET_DVR_GET_FIBER_CONVERT_WORK_STATE 9164 //»ñÈ¡¹âÏËÊÕ·¢Æ÷¹¤×÷×´ +#define NET_DVR_GET_FIBER_CONVERT_TOPOLOGY 9165 //»ñÈ¡¹âÏËÊÕ·¢Æ÷ÍØÆËÐÅÏ¢ +#define NET_DVR_GET_FC_PORT_REMARKS 9166 //»ñÈ¡¹âÏËÊÕ·¢Æ÷¶Ë¿Ú×¢ÊͲÎÊý +#define NET_DVR_SET_FC_PORT_REMARKS 9167 //ÉèÖùâÏËÊÕ·¢Æ÷¶Ë¿Ú×¢ÊͲÎÊý +#define NET_DVR_GET_PORT_REMARKS_CAP 9168 //»ñÈ¡¹âÏËÊÕ·¢Æ÷¶Ë¿Ú×¢ÊÍÄÜÁ¦¼¯ + +#define NET_DVR_GET_MCU_CONFERENCECONTROL_CAP 9169 //»ñÈ¡»áÒé¿ØÖÆÄÜÁ¦ +#define NET_DVR_GET_MCU_TERMINALCONTROL_CAP 9170 //»ñÈ¡Öն˿ØÖÆÄÜÁ¦ +#define NET_DVR_GET_MCU_TERIMINALGROUP_CAP 9171 //»ñÈ¡Öն˷Ö×éÄÜÁ¦ +#define NET_DVR_GET_MCU_TERMINAL_CAP 9174 //»ñÈ¡Öն˹ÜÀíÄÜÁ¦ +#define NET_DVR_GET_MCU_CONFERENCE_CAP 9175 //»ñÈ¡»áÒéÄÜÁ¦ +#define NET_DVR_GET_MCU_GK_CFG_CAP 9176 //»ñÈ¡MCUGKÅäÖÃÄÜÁ¦ +#define NET_DVR_GET_MCU_GK_SERVER_CAP 9177 //»ñÈ¡MCUGK·þÎñÄÜÁ¦ + +#define NET_DVR_GET_EDID_CFG_FILE_INFO 9178 //»ñÈ¡EDIDÅäÖÃÎļþÐÅÏ¢ +#define NET_DVR_GET_EDID_CFG_FILE_INFO_LIST 9179 //»ñÈ¡ËùÓÐEDIDÅäÖÃÎļþÐÅÏ¢ +#define NET_DVR_SET_EDID_CFG_FILE_INFO 9180 //ÉèÖÃEDIDÅäÖÃÎļþÐÅÏ¢ +#define NET_DVR_DEL_EDID_CFG_FILE_INFO 9181 //ɾ³ýEDIDÅäÖÃÎļþÐÅÏ¢£¨°üÀ¨Îļþ£© +#define NET_DVR_GET_EDID_CFG_FILE_INFO_CAP 9182 //EDIDÅäÖÃÎļþÐÅÏ¢ÄÜÁ¦¼¯ + +#define NET_DVR_GET_SUBWND_DECODE_OSD 9183 //»ñÈ¡×Ó´°¿Ú½âÂëOSDÐÅÏ¢ +#define NET_DVR_GET_SUBWND_DECODE_OSD_ALL 9184 //»ñÈ¡ËùÓÐ×Ó´°¿Ú½âÂëOSDÐÅÏ¢ +#define NET_DVR_SET_SUBWND_DECODE_OSD 9185 //ÉèÖÃ×Ó´°¿Ú½âÂëOSDÐÅÏ¢ +#define NET_DVR_GET_SUBWND_DECODE_OSD_CAP 9186 //»ñÈ¡×Ó´°¿Ú½âÂëOSDÐÅÏ¢ÄÜÁ¦¼¯ +#define NET_DVR_GET_DECODE_CHANNEL_OSD 9187 //»ñÈ¡½âÂëͨµÀOSDÐÅÏ¢ +#define NET_DVR_SET_DECODE_CHANNEL_OSD 9188 //ÉèÖýâÂëͨµÀOSDÐÅÏ¢ + + +#define NET_DVR_GET_OUTPUT_PIC_INFO 9200 //»ñÈ¡Êä³ö¿ÚͼƬ²ÎÊý +#define NET_DVR_SET_OUTPUT_PIC_INFO 9201 //ÉèÖÃÊä³ö¿ÚͼƬ²ÎÊý +#define NET_DVR_GET_OUTPUT_PIC_WIN_CFG 9202 //»ñÈ¡Êä³ö¿ÚͼƬ´°¿Ú²ÎÊý +#define NET_DVR_SET_OUTPUT_PIC_WIN_CFG 9203 //ÉèÖÃÊä³ö¿ÚͼƬ´°¿Ú²ÎÊý +#define NET_DVR_GET_OUTPUT_ALL_PIC_WIN_CFG 9204 //»ñÈ¡Êä³ö¿ÚËùÓÐͼƬ´°¿Ú²ÎÊý +#define NET_DVR_DELETE_OUPUT_PIC 9205 //ɾ³ýÊä³ö¿ÚͼƬ +#define NET_DVR_GET_OUTPUT_OSD_CFG 9206 //»ñÈ¡Êä³ö¿ÚOSD²ÎÊý +#define NET_DVR_SET_OUTPUT_OSD_CFG 9207 //ÉèÖÃÊä³ö¿ÚOSD²ÎÊý +#define NET_DVR_GET_OUTPUT_ALL_OSD_CFG 9208 //»ñÈ¡Êä³ö¿ÚËùÓÐOSD²ÎÊý +#define NET_DVR_GET_CHAN_RELATION 9209 //»ñÈ¡±àÂëͨµÀ¹ØÁª×ÊÔ´²ÎÊý +#define NET_DVR_SET_CHAN_RELATION 9210 //ÉèÖñàÂëͨµÀ¹ØÁª×ÊÔ´²ÎÊý +#define NET_DVR_GET_ALL_CHAN_RELATION 9211 //»ñÈ¡ËùÓбàÂëͨµÀ¹ØÁª×ÊÔ´²ÎÊý +#define NET_DVR_GET_NS_RING_CFG 9212 //»ñÈ¡¹âÏË°å»·ÍøÅäÖà +#define NET_DVR_SET_NS_RING_CFG 9213 //ÉèÖùâÏË°å»·ÍøÅäÖà +#define NET_DVR_GET_NS_RING_STATUS 9214 //»ñÈ¡¹âÏË°å»·Íø״̬ +#define NET_DVR_GET_OPTICAL_PORT_INFO 9220 //»ñÈ¡¹â¿ÚÐÅÏ¢ +#define NET_DVR_SET_OPTICAL_PORT_INFO 9221 //ÉèÖùâ¿ÚÐÅÏ¢ +#define NET_DVR_GET_OPTICAL_CHAN_RELATE_CFG 9222 //»ñÈ¡±àÂëͨµÀ¹ØÁª¹â¿ÚÊäÈëÔ´²ÎÊý +#define NET_DVR_SET_OPTICAL_CHAN_RELATE_CFG 9223 //ÉèÖñàÂëͨµÀ¹ØÁª¹â¿ÚÊäÈëÔ´²ÎÊý +#define NET_DVR_GET_WIN_ROAM_SWITCH_CFG 9224 //»ñÈ¡½âÂëÆ÷´°¿ÚÂþÓοª¹Ø²ÎÊý +#define NET_DVR_SET_WIN_ROAM_SWITCH_CFG 9225 //ÉèÖýâÂëÆ÷´°¿ÚÂþÓοª¹Ø²ÎÊý +#define NET_DVR_START_SCREEN_CRTL 9226 //¿ªÊ¼ÆÁÄ»¿ØÖÆ +#define NET_DVR_GET_SCREEN_FLIE_LIST 9227 //»ñÈ¡ÆÁÄ»ÎļþÁбí +#define NET_DVR_GET_SCREEN_FILEINFO 9228 //»ñÈ¡ÆÁÄ»ÎļþÐÅÏ¢²ÎÊý +#define NET_DVR_SET_SCREEN_FILEINFO 9229 //ÉèÖÃÆÁÄ»ÎļþÐÅÏ¢²ÎÊý + +/*******************************С¼ä¾àLEDÏÔʾÆÁ begin***************************************/ +#define NET_DVR_GET_LED_OUTPUT_CFG 9230 //»ñÈ¡·¢ËÍ¿¨Êä³ö²ÎÊý +#define NET_DVR_SET_LED_OUTPUT_CFG 9231 //ÉèÖ÷¢ËÍ¿¨Êä³ö²ÎÊý +#define NET_DVR_GET_LED_OUTPUT_PORT_CFG 9232 //»ñÈ¡LED·¢ËÍ¿¨Êä³ö¶Ë¿Ú²ÎÊý +#define NET_DVR_SET_LED_OUTPUT_PORT_CFG 9233 //ÉèÖÃLED·¢ËÍ¿¨Êä³ö¶Ë¿Ú²ÎÊý +#define NET_DVR_GET_LED_DISPLAY_AREA_CFG 9234 //»ñÈ¡LED·¢ËÍ¿¨ÏÔʾÇøÓò +#define NET_DVR_SET_LED_DISPLAY_AREA_CFG 9235 //ÉèÖÃLED·¢ËÍ¿¨ÏÔʾÇøÓò +#define NET_DVR_GET_LED_PORT_CFG 9236 //»ñÈ¡LED·¢ËÍ¿¨¶Ë¿Ú²ÎÊý +#define NET_DVR_SET_LED_PORT_CFG 9237 //ÉèÖÃLED·¢ËÍ¿¨¶Ë¿Ú²ÎÊý +#define NET_DVR_GET_LED_DISPLAY_CFG 9238 //»ñÈ¡LED·¢ËÍ¿¨ÏÔʾ²ÎÊý +#define NET_DVR_SET_LED_DISPLAY_CFG 9239 //ÉèÖÃLED·¢ËÍ¿¨ÏÔʾ²ÎÊý +#define NET_DVR_GET_ALL_LED_PORT_CFG 9240 //»ñÈ¡LED·¢ËÍ¿¨Ä³¸öÊä³ö¶ÔÓ¦ +#define NET_DVR_SAVE_LED_CONFIGURATION 9241 //²ÎÊý¹Ì»¯ +#define NET_DVR_GET_LED_TEST_SIGNAL_CFG 9242 //»ñÈ¡LEDÆÁ²âÊÔÐźŲÎÊý +#define NET_DVR_SET_LED_TEST_SIGNAL_CFG 9243 //ÉèÖÃLEDÆÁ²âÊÔÐźŲÎÊý +#define NET_DVR_GET_LED_NOSIGNAL_CFG 9244 //»ñÈ¡LEDÆÁÎÞÐźÅÏÔʾģʽ²ÎÊý +#define NET_DVR_SET_LED_NOSIGNAL_CFG 9245 //ÉèÖÃLEDÆÁÎÞÐźÅÏÔʾģʽ²ÎÊý +#define NET_DVR_GET_LED_INPUT_CFG 9246 //»ñÈ¡LED·¢ËÍ¿¨ÊäÈë²ÎÊý +#define NET_DVR_SET_LED_INPUT_CFG 9247 //ÉèÖÃLED·¢ËÍ¿¨ÊäÈë²ÎÊý +#define NET_DVR_GET_LED_RECV_GAMMA_CFG 9248 //»ñÈ¡½ÓÊÕ¿¨GAMMA±í²ÎÊý +#define NET_DVR_SET_LED_RECV_GAMMA_CFG 9249 //ÉèÖýÓÊÕ¿¨GAMMA±í²ÎÊý +#define NET_DVR_GET_LED_RECV_CFG 9250 //»ñÈ¡½ÓÊÕ¿¨»ù±¾²ÎÊý +#define NET_DVR_SET_LED_RECV_CFG 9251 //ÉèÖýÓÊÕ¿¨»ù±¾²ÎÊý +#define NET_DVR_GET_LED_RECV_ADVANCED_CFG 9252 //»ñÈ¡½ÓÊÕ¿¨¸ß¼¶²ÎÊý +#define NET_DVR_SET_LED_RECV_ADVANCED_CFG 9253 //ÉèÖýÓÊÕ¿¨¸ß¼¶²ÎÊý +#define NET_DVR_GET_LED_SCREEN_DISPLAY_CFG 9254 //»ñÈ¡LEDÆÁÏÔʾ²ÎÊý +#define NET_DVR_SET_LED_SCREEN_DISPLAY_CFG 9255 //ÉèÖÃLEDÆÁÏÔʾ²ÎÊý +/*******************************С¼ä¾àLEDÏÔʾÆÁ end*****************************************/ + +#define NET_DVR_GET_INSERTPLAY_PROGRESS 9273 //»ñÈ¡²å²¥½ø¶È + +#define NET_DVR_GET_SCREEN_CONFIG 9260 //»ñÈ¡ÆÁÄ»·þÎñÆ÷²ÎÊý +#define NET_DVR_SET_SCREEN_CONFIG 9261 //ÉèÖÃÆÁÄ»·þÎñÆ÷²ÎÊý +#define NET_DVR_GET_SCREEN_CONFIG_CAP 9262 //»ñÈ¡ÆÁÄ»·þÎñÆ÷²ÎÊýÄÜÁ¦¼¯ + +#define NET_DVR_GET_SCHEDULE_PUBLISH_PROGRESS 9271 //»ñÈ¡Èճ̷¢²¼½ø¶È +#define NET_DVR_GET_PUBLISH_UPGRADE_PROGRESS 9272 //»ñÈ¡ÐÅÏ¢·¢²¼ÖÕ¶ËÉý¼¶½ø¶È + +#define NET_DVR_GET_INPUT_BOARD_CFG 9281 //»ñÈ¡ÊäÈë°åÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_INPUT_BOARD_CFG_LIST 9282 //»ñÈ¡ÊäÈë°åÅäÖÃÐÅÏ¢Áбí +#define NET_DVR_SET_INPUT_BOARD_CFG 9283 //ÉèÖÃÊäÈë°åÅäÖÃÐÅÏ¢ + +#define NET_DVR_GET_INPUT_SOURCE_TEXT_CAP 9284 //»ñÈ¡ÊäÈëÔ´×Ö·ûµþ¼ÓÄÜÁ¦ +#define NET_DVR_GET_INPUT_SOURCE_TEXT_CFG 9285 //»ñÈ¡ÊäÈëÔ´×Ö·ûµþ¼Ó²ÎÊý +#define NET_DVR_GET_INPUT_SOURCE_TEXT_CFG_LSIT 9286 //»ñÈ¡ÊäÈëÔ´×Ö·ûµþ¼Ó²ÎÊýÁбí +#define NET_DVR_SET_INPUT_SOURCE_TEXT_CFG 9287 //ÉèÖÃÊäÈëÔ´×Ö·ûµþ¼Ó²ÎÊý +#define NET_DVR_SET_INPUT_SOURCE_TEXT_CFG_LIST 9288 //ÉèÖÃÊäÈëÔ´×Ö·ûµþ¼Ó²ÎÊýÁбí +#define NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CAP 9289 //»ñÈ¡ÊäÈëÔ´×Ô¶¨Òå·Ö±æÂÊÄÜÁ¦ +#define NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CFG 9290 //»ñÈ¡ÊäÈëÔ´×Ô¶¨Òå·Ö±æÂʲÎÊý +#define NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CFG_LIST 9291 //»ñÈ¡ÊäÈëÔ´×Ô¶¨Òå·Ö±æÂÊÁбí +#define NET_DVR_SET_INPUT_SOURCE_RESOLUTION_CFG 9292 //ÉèÖÃÊäÈëÔ´×Ô¶¨Òå·Ö±æÂʲÎÊý +#define NET_DVR_SET_INPUT_SOURCE_RESOLUTION_CFG_LIST 9293 //ÉèÖÃÊäÈëÔ´×Ô¶¨Òå·Ö±æÂʲÎÊý +#define NET_DVR_GET_LED_AREA_INFO_LIST 9295 //»ñÈ¡LEDÇøÓòÁбí + +#define NET_DVR_GET_DISPINPUT_CFG 9296 //»ñÈ¡ÏÔʾÊäÈë²ÎÊý +#define NET_DVR_GET_DISPINPUT_CFG_LIST 9297 //»ñÈ¡ËùÓÐÏÔʾÊäÈë²ÎÊý +#define NET_DVR_SET_DISPINPUT_CFG 9298 //ÉèÖÃÏÔʾÊäÈë²ÎÊý +#define NET_DVR_GET_DISPINPUT_CFG_CAP 9299 //»ñÈ¡ÏÔʾÊäÈë²ÎÊýÄÜÁ¦¼¯ +#define NET_DVR_GET_CURRENT_VALID_PORT 9300 //»ñÈ¡µ±Ç°ÓÐЧµÄ,¿ÉÒÔÁ¬½ÓµÄ¶Ë¿Ú + +#define NET_DVR_SET_ONLINE_UPGRADE 9301 //ÔÊÐíÔÚÏßÉý¼¶ +#define NET_DVR_GET_ONLINEUPGRADE_PROGRESS 9302 //»ñÈ¡ÔÚÏßÉý¼¶½ø¶È +#define NET_DVR_GET_FIRMWARECODE 9303 //»ñȡʶ±ðÂë +#define NET_DVR_GET_ONLINEUPGRADE_SERVER 9304 //»ñÈ¡Éý¼¶·þÎñÆ÷״̬ +#define NET_DVR_GET_ONLINEUPGRADE_VERSION 9305 //»ñȡа汾ÐÅÏ¢ +#define NET_DVR_GET_RECOMMEN_VERSION 9306 //¼ì²âÊÇ·ñÍƼöÉý¼¶µ½´Ë°æ±¾ +#define NET_DVR_GET_ONLINEUPGRADE_ABILITY 9309 //»ñÈ¡ÔÚÏßÉý¼¶ÄÜÁ¦¼¯ + +#define NET_DVR_GET_FIBER_CONVERT_BASIC_INFO_V50 9310 //»ñÈ¡Ô¶¶ËÍø¹ÜÊÕ·¢Æ÷»ù±¾ÐÅÏ¢V50 +#define NET_DVR_GET_FIBER_CONVERT_WORK_STATE_V50 9311 //»ñÈ¡Ô¶¶ËÍø¹ÜÊÕ·¢Æ÷¹¤×÷״̬ + +#define NET_SDK_LED_SCREEN_CHECK 9312 //LEDÆÁĻУÕý +#define NET_SDK_GENERATE_OUTPUT_CONTROL 9315 //ͨÓÃÀ©Õ¹Êä³ö¿ÚÄ£¿é¿ØÖÆ +#define NET_SDK_GET_MATRIX_STATUS_V51 9313 /*»ñÈ¡ÊÓƵ×ÛºÏƽ̨״̬*/ + +//DS-19D2000-S V2.0Éý¼¶ ±¨¾¯Áª¶¯ÅäÖòÎÊýÃüÁîÂë +#define NET_DVR_GET_ALARM_LINKAGE_CFG 9316 //»ñÈ¡¶¯»·±¨¾¯Áª¶¯ÅäÖòÎÊý +#define NET_DVR_SET_ALARM_LINKAGE_CFG 9317 //ÉèÖö¯»·±¨¾¯Áª¶¯ÅäÖòÎÊý + + +#define NET_DVR_GET_RS485_WORK_MODE 10001 //»ñÈ¡RS485´®¿Ú¹¤×÷ģʽ +#define NET_DVR_SET_RS485_WORK_MODE 10002 //ÉèÖÃRS485´®¿Ú¹¤×÷ģʽ +#define NET_DVR_GET_SPLITTER_TRANS_CHAN_CFG 10003 //»ñÈ¡Âë·ÖÆ÷͸Ã÷ͨµÀ²ÎÊý +#define NET_DVR_SET_SPLITTER_TRANS_CHAN_CFG 10004 //ÉèÖÃÂë·ÖÆ÷͸Ã÷ͨµÀ²ÎÊý + +#define NET_DVR_GET_RS485_PROTOCOL_VERSION 10301 //»ñÈ¡RS485ЭÒé¿â°æ±¾ÐÅÏ¢ +#define NET_DVR_ALARMHOST_REGISTER_DETECTOR 10302 //×Ô¶¯×¢²á̽²âÆ÷ + +#define NET_DVR_GET_SIP_CFG 11001 //IP¿ÉÊÓ»¯»ú»ñÈ¡SIP²ÎÊý +#define NET_DVR_SET_SIP_CFG 11002 //IP¿ÉÊÓ»¯»úÉèÖÃSIP²ÎÊý +#define NET_DVR_GET_IP_VIEW_DEVCFG 11003 //»ñÈ¡IP¶Ô½²·Ö»úÅäÖà +#define NET_DVR_SET_IP_VIEW_DEVCFG 11004 //ÉèÖÃIP¶Ô½²·Ö»úÅäÖà +#define NET_DVR_GET_IP_VIEW_AUDIO_CFG 11005 //»ñÈ¡IP¶Ô½²·Ö»úÒôƵ²ÎÊý +#define NET_DVR_SET_IP_VIEW_AUDIO_CFG 11006 //ÉèÖÃIP¶Ô½²·Ö»úÒôƵ²ÎÊý +#define NET_DVR_GET_IP_VIEW_CALL_CFG 11007 //»ñÈ¡IP¶Ô½²·Ö»úºô½Ð²ÎÊý +#define NET_DVR_SET_IP_VIEW_CALL_CFG 11008 //ÉèÖÃIP¶Ô½²·Ö»úºô½Ð²ÎÊý +#define NET_DVR_GET_AUDIO_LIMIT_ALARM_CFG 11009 //»ñÈ¡ÉùÒô³¬ÏÞÅäÖòÎÊý +#define NET_DVR_SET_AUDIO_LIMIT_ALARM_CFG 11010 //ÉèÖÃÉùÒô³¬ÏÞÅäÖòÎÊý +#define NET_DVR_GET_BUTTON_DOWN_ALARM_CFG 11011 //»ñÈ¡°´Å¥°´Ï¸澯ÅäÖòÎÊý +#define NET_DVR_SET_BUTTON_DOWN_ALARM_CFG 11012 //ÉèÖð´Å¥°´Ï¸澯ÅäÖòÎÊý + +#define NET_DVR_GET_ISCSI_CFG 11070 // »ñÈ¡ISCSI´æ´¢ÅäÖÃЭÒé +#define NET_DVR_SET_ISCSI_CFG 11071 // »ñÈ¡ISCSI´æ´¢ÅäÖÃЭÒé + +#define NET_DVR_GET_SECURITYMODE 12004 //»ñÈ¡µ±Ç°°²È«Ä£Ê½ +//2013-11-21 »ñÈ¡É豸µ±Ç°µÄζȺÍʪ¶È +#define NET_DVR_GET_TEMP_HUMI 12005 + +//2014-02-15 ÃñÓÃIPC×Ô¶¯»¯²âÊÔÏîÄ¿ +#define NET_DVR_SET_ALARMSOUNDMODE 12006 //ÉèÖñ¨¾¯ÉùÒôģʽ +#define NET_DVR_GET_ALARMSOUNDMODE 12007 //»ñÈ¡±¨¾¯ÉùÒôģʽ + +#define NET_DVR_SET_IPDEVICE_ACTIVATED 13000//ͨ¹ýNVR¼¤»îÇ°¶ËÉ豸 +#define NET_DVR_GET_DIGITAL_CHAN_SECURITY_STATUS 13001 //»ñÈ¡Êý×ÖͨµÀ¶ÔÓ¦É豸°²È«×´Ì¬ +#define NET_DVR_GET_ACTIVATE_IPC_ABILITY 13003 //»ñÈ¡NVR¼¤»îIPCÄÜÁ¦¼¯ + + +/*******************************Â¥Óî¿ÉÊÓ¶Ô½²»ú start***********************************/ +#define NET_DVR_GET_VIDEO_INTERCOM_DEVICEID_CFG 16001 //»ñÈ¡¿ÉÊÓ¶Ô½²É豸±àºÅ +#define NET_DVR_SET_VIDEO_INTERCOM_DEVICEID_CFG 16002 //ÉèÖÿÉÊÓ¶Ô½²É豸±àºÅ +#define NET_DVR_SET_PRIVILEGE_PASSWORD 16003 //ÉèÖÃȨÏÞÃÜÂëÅäÖÃÐÅÏ¢ +#define NET_DVR_GET_OPERATION_TIME_CFG 16004 //»ñÈ¡²Ù×÷ʱ¼äÅäÖà +#define NET_DVR_SET_OPERATION_TIME_CFG 16005 //ÉèÖòÙ×÷ʱ¼äÅäÖà +#define NET_DVR_GET_VIDEO_INTERCOM_RELATEDEV_CFG 16006 //»ñÈ¡¹ØÁªÍøÂçÉ豸²ÎÊý +#define NET_DVR_SET_VIDEO_INTERCOM_RELATEDEV_CFG 16007 //ÉèÖùØÁªÍøÂçÉ豸²ÎÊý +#define NET_DVR_REMOTECONTROL_NOTICE_DATA 16008 //¹«¸æÐÅϢϷ¢ +#define NET_DVR_REMOTECONTROL_GATEWAY 16009 //Ô¶³Ì¿ªËø +#define NET_DVR_REMOTECONTROL_OPERATION_AUTH 16010 //²Ù×÷ȨÏÞÑéÖ¤ + +#define NET_DVR_GET_VIDEO_INTERCOM_IOIN_CFG 16016 //»ñÈ¡IOÊäÈë²ÎÊý +#define NET_DVR_SET_VIDEO_INTERCOM_IOIN_CFG 16017 //ÉèÖÃIOÊäÈë²ÎÊý +#define NET_DVR_GET_VIDEO_INTERCOM_IOOUT_CFG 16018 //»ñÈ¡IOÊä³ö²ÎÊý +#define NET_DVR_SET_VIDEO_INTERCOM_IOOUT_CFG 16019 //ÉèÖÃIOÊä³ö²ÎÊý +#define NET_DVR_GET_ELEVATORCONTROL_CFG 16020 //»ñÈ¡ÌÝ¿ØÆ÷²ÎÊý +#define NET_DVR_SET_ELEVATORCONTROL_CFG 16021 //ÉèÖÃÌÝ¿ØÆ÷²ÎÊý +#define NET_DVR_GET_VIDEOINTERCOM_STREAM 16022 //»ñÈ¡¿ÉÊÓ¶Ô½²Á÷ͨµÀ²ÎÊý +#define NET_DVR_SET_VIDEOINTERCOM_STREAM 16023 //ÉèÖÿÉÊÓ¶Ô½²Á÷ͨµÀ²ÎÊý +#define NET_DVR_GET_WDR_CFG 16024 //»ñÈ¡¿í¶¯Ì¬²ÎÊýÅäÖà +#define NET_DVR_SET_WDR_CFG 16025 //ÉèÖÃ¿í¶¯Ì¬²ÎÊýÅäÖà +#define NET_DVR_GET_VIS_DEVINFO 16026 //»ñÈ¡¿ÉÉ豸±àºÅÐÅÏ¢ +#define NET_DVR_GET_VIS_REGISTER_INFO 16027 //»ñÈ¡¿ÉÉ豸ע²áµÄÉ豸ÐÅÏ¢ +#define NET_DVR_GET_ELEVATORCONTROL_CFG_V40 16028 //»ñÈ¡ÌÝ¿ØÆ÷²ÎÊý-À©Õ¹ +#define NET_DVR_SET_ELEVATORCONTROL_CFG_V40 16029 //ÉèÖÃÌÝ¿ØÆ÷²ÎÊý-À©Õ¹ +#define NET_DVR_GET_CALL_ROOM_CFG 16030 //»ñÈ¡°´¼üºô½Ðס»§ÅäÖà +#define NET_DVR_SET_CALL_ROOM_CFG 16031 //ÉèÖð´¼üºô½Ðס»§ÅäÖà +#define NET_DVR_VIDEO_CALL_SIGNAL_PROCESS 16032 //¿ÉÊÓ»°¶Ô½²ÐÅÁî´¦Àí +#define NET_DVR_GET_CALLER_INFO 16033 //»ñÈ¡Ö÷½Ð³¤ºÅÐÅÏ¢ +#define NET_DVR_GET_CALL_STATUS 16034 //»ñȡͨ»°×´Ì¬ +#define NET_DVR_GET_SERVER_DEVICE_INFO 16035 //»ñÈ¡É豸Áбí +#define NET_DVR_SET_CALL_SIGNAL 16036 //¿ÉÊÓ¶Ô½²ÊÖ»ú¶Ë·¢ËÍÐÅÁî +#define NET_DVR_GET_VIDEO_INTERCOM_ALARM_CFG 16037 //»ñÈ¡¿ÉÊÓ¶Ô½²±¨¾¯Ê¼þ²ÎÊý +#define NET_DVR_SET_VIDEO_INTERCOM_ALARM_CFG 16038 //ÉèÖÿÉÊÓ¶Ô½²±¨¾¯Ê¼þ²ÎÊý +#define NET_DVR_GET_RING_LIST 16039 //²éѯÁåÒô²ÎÊýÁбí + +#define NET_DVR_GET_ROOM_CUSTOM_CFG 16040 //·¿¼ä×Ô¶¨Òå»ñÈ¡ +#define NET_DVR_SET_ROOM_CUSTOM_CFG 16041 //·¿¼ä×Ô¶¨ÒåÉèÖà +#define NET_DVR_GET_ELEVATORCONTROL_CFG_V50 16042 //»ñÈ¡ÌÝ¿ØÆ÷²ÎÊýV50 +#define NET_DVR_SET_ELEVATORCONTROL_CFG_V50 16043 //ÉèÖÃÌÝ¿ØÆ÷²ÎÊýV50 +#define NET_DVR_GET_SIP_CFG_V50 16044 //»ñÈ¡SIP²ÎÊýV50 +#define NET_DVR_SET_SIP_CFG_V50 16045 //ÉèÖÃSIP²ÎÊýV50 +#define NET_DVR_GET_NOTICE_VIDEO_DATA 16050 //¹«¸æÊÓƵ»ñÈ¡ + +/*******************************Â¥Óî¿ÉÊÓ¶Ô½²»ú end***********************************/ + +#define NET_DVR_DEBUGINFO_START 18000 //Íø´«É豸µ÷ÊÔÐÅÏ¢Æô¶¯ÃüÁî +#define NET_DVR_AUTO_TEST_START 18001 //×Ô¶¯²âÊÔ³¤Á¬½Ó»ñÈ¡ + +#define NET_DVR_GET_SELFCHECK_RESULT 20000 //»ñÈ¡É豸×Ô¼ì½á¹û +#define NET_DVR_SET_TEST_COMMAND 20001 //ÉèÖòâÊÔ¿ØÖÆÃüÁî +#define NET_DVR_SET_TEST_DEVMODULE 20002 //ÉèÖòâÊÔÓ²¼þÄ£¿é¿ØÖÆÃüÁî +#define NET_DVR_GET_TEST_DEVMODULE 20003 //»ñÈ¡²âÊÔÓ²¼þÄ£¿é¿ØÖÆÃüÁî + +#define NET_DVR_SET_AUTOFOCUS_TEST 20004 //±£´æ×Ô¶¯¶Ô½¹²ÎÊý 2013-10-26 +#define NET_DVR_CHECK_USER_STATUS 20005 //¼ì²âÓû§ÊÇ·ñÔÚÏß +#define NET_DVR_GET_TEST_COMMAND 20010 //»ñÈ¡²âÊÔ¿ØÖÆÃüÁî +#define NET_DVR_GET_DIAL_SWITCH_CFG 20200 //»ñÈ¡²¦Â뿪¹ØÐÅÏ¢ +#define NET_DVR_SET_AGING_TRICK_SCAN 20201 //ÉèÖÃÀÏ»¯Ç°ºó¹¤¾ß²ÎÊý +#define NET_DVR_GET_ECCENTRIC_CORRECT_STATE 20202 //»ñÈ¡»ñÈ¡Æ«ÐÄУÕý״̬ + +#define NET_DVR_GET_THERMOMETRYRULE_TEMPERATURE_INFO 23001 //ÊÖ¶¯»ñÈ¡²âιæÔòζÈÐÅÏ¢ + +#define NET_DVR_T1_TEST_CMD 131073 //µ±²âÊÔÃüÁîÀ´Óã¬Í¨¹ýÊý¾ÝÇøÓòµÄÎı¾ÄÚÈÝÇø·Ö¾ßÌå×öʲô.Êý¾Ý³¤¶È²»µÃ´óÓÚ1024 +//Êý¾ÝÇø¸ñʽΪ£º//»Ö¸´É豸ĬÈϲÎÊý²¢¹Ø»ú¡£ + +// ÃÀ·Ö¶¨ÖƲ˵¥Êä³öģʽÍⲿÃüÁî +#define NET_DVR_GET_MEMU_OUTPUT_MODE 155649 // »ñÈ¡²Ëµ¥Êä³öģʽ +#define NET_DVR_SET_MEMU_OUTPUT_MODE 155650 // ÉèÖò˵¥Êä³öģʽ + +/***************************DS9000ÐÂÔöÃüÁî(_V30) end *****************************/ + +#define NET_DVR_GET_DEV_LOGIN_RET_INFO 16777200 //É豸µÇ½·µ»Ø²ÎÊý + + +#define NET_DVR_GET_TEST_VERSION_HEAD 268435441 //»ñÈ¡²âÊ԰汾ͷ +#define NET_DVR_SET_TEST_VERSION_HEAD 268435442 //ÉèÖòâÊ԰汾ͷ +#define NET_DVR_GET_TEST_VERSION_HEAD_V1 268435443 //»ñÈ¡²âÊ԰汾ͷ-µÚ¶þ°æ +#define NET_DVR_SET_TEST_VERSION_HEAD_V1 268435444 //ÉèÖòâÊ԰汾ͷ-µÚ¶þ°æ +#define NET_DVR_GET_TEST_VERSION_HEAD_V2 268435445 //»ñÈ¡²âÊ԰汾ͷ-µÚÈý°æ +#define NET_DVR_SET_TEST_VERSION_HEAD_V2 268435446 //ÉèÖòâÊ԰汾ͷ-µÚÈý°æ + +#define NET_DVR_GET_TEST_VERSION_HEAD_ONLY_0 268435447 //»ñÈ¡²âÊ԰汾ͷ,µ±Ç°½öÓÐÒ»¸ö°æ±¾ +#define NET_DVR_SET_TEST_VERSION_HEAD_ONLY_0 268435448 //ÉèÖòâÊ԰汾ͷ,µ±Ç°½öÓÐÒ»¸ö°æ±¾ + + +#define MAX_LOCAL_ADDR_LEN 96 //SOCKS×î´ó±¾µØÍø¶Î¸öÊý +#define MAX_COUNTRY_NAME_LEN 4 //¹ú¼Ò¼òдÃû³Æ³¤¶È + +/************************DVRÈÕÖ¾ begin***************************/ + +/* ±¨¾¯ */ +//Ö÷ÀàÐÍ +#define MAJOR_ALARM 0x1 +//´ÎÀàÐÍ +#define MINOR_ALARM_IN 0x1 /* ±¨¾¯ÊäÈë */ +#define MINOR_ALARM_OUT 0x2 /* ±¨¾¯Êä³ö */ +#define MINOR_MOTDET_START 0x3 /* Òƶ¯Õì²â±¨¾¯¿ªÊ¼ */ +#define MINOR_MOTDET_STOP 0x4 /* Òƶ¯Õì²â±¨¾¯½áÊø */ +#define MINOR_HIDE_ALARM_START 0x5 /* ÕÚµ²±¨¾¯¿ªÊ¼ */ +#define MINOR_HIDE_ALARM_STOP 0x6 /* ÕÚµ²±¨¾¯½áÊø */ +#define MINOR_VCA_ALARM_START 0x7 /*ÖÇÄܱ¨¾¯¿ªÊ¼*/ +#define MINOR_VCA_ALARM_STOP 0x8 /*ÖÇÄܱ¨¾¯Í£Ö¹*/ +#define MINOR_ITS_ALARM_START 0x09 // ½»Í¨Ê¼þ±¨¾¯¿ªÊ¼ +#define MINOR_ITS_ALARM_STOP 0x0A // ½»Í¨Ê¼þ±¨¾¯½áÊø +//2010-11-10 ÍøÂ籨¾¯ÈÕÖ¾ +#define MINOR_NETALARM_START 0x0b /*ÍøÂ籨¾¯¿ªÊ¼*/ +#define MINOR_NETALARM_STOP 0x0c /*ÍøÂ籨¾¯½áÊø*/ +//2010-12-16 ±¨¾¯°åÈÕÖ¾£¬Óë"MINOR_ALARM_IN"Åä¶ÔʹÓà +#define MINOR_NETALARM_RESUME 0x0d /*ÍøÂ籨¾¯»Ö¸´*/ +//2012-4-5 IPC PIR¡¢ÎÞÏß¡¢ºô¾È±¨¾¯ +#define MINOR_WIRELESS_ALARM_START 0x0e /* ÎÞÏß±¨¾¯¿ªÊ¼ */ +#define MINOR_WIRELESS_ALARM_STOP 0x0f /* ÎÞÏß±¨¾¯½áÊø */ +#define MINOR_PIR_ALARM_START 0x10 /* ÈËÌå¸ÐÓ¦±¨¾¯¿ªÊ¼ */ +#define MINOR_PIR_ALARM_STOP 0x11 /* ÈËÌå¸ÐÓ¦±¨¾¯½áÊø */ +#define MINOR_CALLHELP_ALARM_START 0x12 /* ºô¾È±¨¾¯¿ªÊ¼ */ +#define MINOR_CALLHELP_ALARM_STOP 0x13 /* ºô¾È±¨¾¯½áÊø */ +#define MINOR_IPCHANNEL_ALARMIN_START 0x14 //Êý×ÖͨµÀ±¨¾¯ÊäÈ뿪ʼ£ºPCNVRÔÚ½ÓÊÕµ½Êý×ÖͨµÀµÄMINOR_ALARM_IN²úÉú¡°Êý×ÖͨµÀ±¨¾¯ÊäÈ뿪ʼ¡±£¬10s£¬ÔÙÊÕ²»µ½MINOR_ALARM_IN£¬²úÉú¡°Êý×ÖͨµÀ±¨¾¯ÊäÈë½áÊø¡± +#define MINOR_IPCHANNEL_ALARMIN_STOP 0x15 //Êý×ÖͨµÀ±¨¾¯ÊäÈ뿪ʼ£ºÍ¬ÉÏ +#define MINOR_DETECTFACE_ALARM_START 0x16 /* ÈËÁ³Õì²â±¨¾¯¿ªÊ¼ */ +#define MINOR_DETECTFACE_ALARM_STOP 0x17 /* ÈËÁ³Õì²â±¨¾¯½áÊø */ +#define MINOR_VQD_ALARM_START 0x18 //VQD±¨¾¯ +#define MINOR_VQD_ALARM_STOP 0x19 //VQD±¨¾¯½áÊø +#define MINOR_VCA_SECNECHANGE_DETECTION 0x1a //³¡¾°Õì²â±¨¾¯ 2013-07-16 + +#define MINOR_SMART_REGION_EXITING_BEGIN 0x1b //À뿪ÇøÓòÕì²â¿ªÊ¼ +#define MINOR_SMART_REGION_EXITING_END 0x1c //À뿪ÇøÓòÕì²â½áÊø +#define MINOR_SMART_LOITERING_BEGIN 0x1d //ÅÇ»²Õì²â¿ªÊ¼ +#define MINOR_SMART_LOITERING_END 0x1e //ÅÇ»²Õì²â½áÊø + +#define MINOR_VCA_ALARM_LINE_DETECTION_BEGIN 0x20 +#define MINOR_VCA_ALARM_LINE_DETECTION_END 0x21 +#define MINOR_VCA_ALARM_INTRUDE_BEGIN 0x22 //ÇøÓòÕì²â¿ªÊ¼ +#define MINOR_VCA_ALARM_INTRUDE_END 0x23 //ÇøÓòÕì²â½áÊø +#define MINOR_VCA_ALARM_AUDIOINPUT 0x24 //ÒôƵÒì³£ÊäÈë +#define MINOR_VCA_ALARM_AUDIOABNORMAL 0x25 //ÉùÇ¿Í»±ä +#define MINOR_VCA_DEFOCUS_DETECTION_BEGIN 0x26 //Ðé½¹Õì²â¿ªÊ¼ +#define MINOR_VCA_DEFOCUS_DETECTION_END 0x27 //Ðé½¹Õì²â½áÊø + +//ÃñÓÃNVR +#define MINOR_EXT_ALARM 0x28/*IPCÍⲿ±¨¾¯*/ +#define MINOR_VCA_FACE_ALARM_BEGIN 0x29 /*ÈËÁ³Õì²â¿ªÊ¼*/ +#define MINOR_SMART_REGION_ENTRANCE_BEGIN 0x2a //½øÈëÇøÓòÕì²â¿ªÊ¼ +#define MINOR_SMART_REGION_ENTRANCE_END 0x2b //½øÈëÇøÓòÕì²â½áÊø +#define MINOR_SMART_PEOPLE_GATHERING_BEGIN 0x2c //ÈËÔ±¾Û¼¯Õì²â¿ªÊ¼ +#define MINOR_SMART_PEOPLE_GATHERING_END 0x2d //ÈËÔ±¾Û¼¯Õì²â½áÊø +#define MINOR_SMART_FAST_MOVING_BEGIN 0x2e //¿ìËÙÔ˶¯Õì²â¿ªÊ¼ +#define MINOR_SMART_FAST_MOVING_END 0x2f //¿ìËÙÔ˶¯Õì²â½áÊø + +#define MINOR_VCA_FACE_ALARM_END 0x30 /*ÈËÁ³Õì²â½áÊø*/ +#define MINOR_VCA_SCENE_CHANGE_ALARM_BEGIN 0x31 /*³¡¾°±ä¸üÕì²â¿ªÊ¼*/ +#define MINOR_VCA_SCENE_CHANGE_ALARM_END 0x32 /*³¡¾°±ä¸üÕì²â½áÊø*/ +#define MINOR_VCA_ALARM_AUDIOINPUT_BEGIN 0x33 /*ÒôƵÒì³£ÊäÈ뿪ʼ*/ +#define MINOR_VCA_ALARM_AUDIOINPUT_END 0x34 /*ÒôƵÒì³£ÊäÈë½áÊø*/ +#define MINOR_VCA_ALARM_AUDIOABNORMAL_BEGIN 0x35 /*ÉùÇ¿Í»±äÕì²â¿ªÊ¼*/ +#define MINOR_VCA_ALARM_AUDIOABNORMAL_END 0x36 /*ÉùÇ¿Í»±äÕì²â½áÊø*/ + +#define MINOR_VCA_LECTURE_DETECTION_BEGIN 0x37 //ÊÚ¿ÎÕì²â¿ªÊ¼±¨¾¯ +#define MINOR_VCA_LECTURE_DETECTION_END 0x38 //ÊÚ¿ÎÕì²â½áÊø±¨¾¯ +#define MINOR_VCA_ALARM_AUDIOSTEEPDROP 0x39 //ÉùÇ¿¶¸½µ 2014-03-21 +#define MINOR_VCA_ANSWER_DETECTION_BEGIN 0x3a //»Ø´ðÎÊÌâÕì²â¿ªÊ¼±¨¾¯ +#define MINOR_VCA_ANSWER_DETECTION_END 0x3b //»Ø´ðÎÊÌâÕì²â½áÊø±¨¾¯ + +#define MINOR_SMART_PARKING_BEGIN 0x3c //Í£³µÕì²â¿ªÊ¼ +#define MINOR_SMART_PARKING_END 0x3d //Í£³µÕì²â½áÊø +#define MINOR_SMART_UNATTENDED_BAGGAGE_BEGIN 0x3e //ÎïÆ·ÒÅÁôÕì²â¿ªÊ¼ +#define MINOR_SMART_UNATTENDED_BAGGAGE_END 0x3f //ÎïÆ·ÒÅÁôÕì²â½áÊø +#define MINOR_SMART_OBJECT_REMOVAL_BEGIN 0x40 //ÎïÆ·ÄÃÈ¡Õì²â¿ªÊ¼ +#define MINOR_SMART_OBJECT_REMOVAL_END 0x41 //ÎïÆ·ÄÃÈ¡Õì²â½áÊø +#define MINOR_SMART_VEHICLE_ALARM_START 0x46 //³µÅƼì²â¿ªÊ¼ +#define MINOR_SMART_VEHICLE_ALARM_STOP 0x47 //³µÅƼì²â½áÊø +#define MINOR_THERMAL_FIREDETECTION 0x48 //ÈȳÉÏñ»ðµã¼ì²âÕì²â¿ªÊ¼ +#define MINOR_THERMAL_FIREDETECTION_END 0x49 //ÈȳÉÏñ»ðµã¼ì²âÕì²â½áÊø +#define MINOR_SMART_VANDALPROOF_BEGIN 0x50 //·ÀÆÆ»µ¼ì²â¿ªÊ¼ +#define MINOR_SMART_VANDALPROOF_END 0x51 //·ÀÆÆ»µ¼ì²â½áÊø + +#define MINOR_FACESNAP_MATCH_ALARM_START 0x55 /*ÈËÁ³±È¶Ô±¨¾¯¿ªÊ¼*/ +#define MINOR_FACESNAP_MATCH_ALARM_STOP 0x56 /*ÈËÁ³±È¶Ô±¨¾¯½áÊø*/ +#define MINOR_ALLOWLIST_FACESNAP_MATCH_ALARM_START 0x57 /*ÔÊÐíÃûµ¥ÈËÁ³±È¶Ô£¨Ä°ÉúÈË£©±¨¾¯¿ªÊ¼*/ +#define MINOR_ALLOWLIST_FACESNAP_MATCH_ALARM_STOP 0x58 /*ÔÊÐíÃûµ¥ÈËÁ³±È¶Ô£¨Ä°ÉúÈË£©±¨¾¯½áÊø*/ + +#define MINOR_THERMAL_SHIPSDETECTION 0x5a //ÈȳÉÏñ´¬Ö»¼ì²âÕì²â +#define MINOR_THERMAL_THERMOMETRY_EARLYWARNING_BEGIN 0x5b //ÈȳÉÏñ²âÎÂÔ¤¾¯¿ªÊ¼ +#define MINOR_THERMAL_THERMOMETRY_EARLYWARNING_END 0x5c //ÈȳÉÏñ²âÎÂÔ¤¾¯½áÊø +#define MINOR_THERMAL_THERMOMETRY_ALARM_BEGIN 0x5d //ÈȳÉÏñ²âα¨¾¯¿ªÊ¼ +#define MINOR_THERMAL_THERMOMETRY_ALARM_END 0x5e //ÈȳÉÏñ²âα¨¾¯½áÊø +#define MINOR_THERMAL_THERMOMETRY_DIFF_ALARM_BEGIN 0x5f //ÈȳÉÏñβ¾¯¿ªÊ¼ +#define MINOR_THERMAL_THERMOMETRY_DIFF_ALARM_END 0x60 //ÈȳÉÏñβ¾¯½áÊø +#define MINOR_FACE_THERMOMETRY_ALARM 0x63 //ÈËÁ³²âα¨¾¯ +#define MINOR_SMART_DENSEFOGDETECTION_BEGIN 0x6e //´óÎíÕì²â¿ªÊ¼ +#define MINOR_SMART_DENSEFOGDETECTION_END 0x6f //´óÎíÕì²â½áÊø +#define MINOR_RUNNING_ALARM 0x70 //±¼Åܼì²â +#define MINOR_RETENTION_ALARM 0x71 //ÖÍÁô¼ì²â +#define MINOR_SAFETY_HELMET_ALARM_START 0x72 /*δÅå´÷°²È«Ã±¼ì²â±¨¾¯¿ªÊ¼*/ +#define MINOR_SAFETY_HELMET_ALARM_STOP 0x73 /*δÅå´÷°²È«Ã±¼ì²â±¨¾¯½áÊø*/ +#define MINOR_HFPD_ALARM_START 0x74 /*¸ßƵÈËÔ±¼ì²â±¨¾¯¿ªÊ¼*/ +#define MINOR_HFPD_ALARM_STOP 0x75 /*¸ßƵÈËÔ±¼ì²â±¨¾¯½áÊø*/ +#define MINOR_MIXED_TARGET_ALARM_START 0x76 /*»ìºÏÄ¿±ê¼ì²â±¨¾¯¿ªÊ¼*/ +#define MINOR_MIXED_TARGET_ALARM_STOP 0x77 /*»ìºÏÄ¿±ê¼ì²â±¨¾¯½áÊø*/ +#define MINOR_VCA_PLAY_CELLPHONE_ALARM_BEGIN 0x78 //ÍæÊÖ»ú¼ì²â±¨¾¯¿ªÊ¼ +#define MINOR_VCA_PLAY_CELLPHONE_ALARM_END 0x79 //ÍæÊÖ»ú¼ì²â±¨¾¯½áÊø +#define MINOR_VCA_GET_UP_ALARM_BEGIN 0x80 //Æð´²¼ì²â±¨¾¯¿ªÊ¼ +#define MINOR_VCA_GET_UP_ALARM_END 0x81 //Æð´²¼ì²â±¨¾¯½áÊø +#define MINOR_VCA_ADV_REACH_HEIGHT_ALARM_BEGIN 0x82 //ÕÛÏßÅʸ߱¨¾¯¿ªÊ¼ +#define MINOR_VCA_ADV_REACH_HEIGHT_ALARM_END 0x83 //ÕÛÏßÅʸ߱¨¾¯½áÊø +#define MINOR_VCA_TOILET_TARRY_ALARM_BEGIN 0x84 //Èç²Þ³¬Ê±±¨¾¯¿ªÊ¼ +#define MINOR_VCA_TOILET_TARRY_ALARM_END 0x85 //Èç²Þ³¬Ê±±¨¾¯½áÊø +#define MINOR_HUMAN_RECOGNITION_ALARM_BEGIN 0x86 //ÈËÌåʶ±ð±¨¾¯¿ªÊ¼ +#define MINOR_HUMAN_RECOGNITION_ALARM_END 0x87 //ÈËÌåʶ±ð±¨¾¯½áÊø +#define MINOR_STUDENTS_STOODUP_ALARM_BEGIN 0x88 //ѧÉúÆðÁ¢±¨¾¯¿ªÊ¼ +#define MINOR_STUDENTS_STOODUP_ALARM_END 0x89 //ѧÉúÆðÁ¢±¨¾¯½áÊø +#define MINOR_FRAMES_PEOPLE_COUNTING_ALARM 0x8a //ÇøÓòÈËÊýͳ¼Æ±¨¾¯ +#define MINOR_FACE_SNAP_ALARM_BEGIN 0x8b //ÈËÁ³×¥Åı¨¾¯¿ªÊ¼ +#define MINOR_FACE_SNAP_ALARM_END 0x8c //ÈËÁ³×¥Åı¨¾¯½áÊø +#define MINOR_TEACHER_BEHAVIOR_DETECT_ALARM_BEGIN 0x8d //½ÌʦÐÐΪ¼ì²â±¨¾¯¿ªÊ¼ +#define MINOR_TEACHER_BEHAVIOR_DETECT_ALARM_END 0x8e //½ÌʦÐÐΪ¼ì²â±¨¾¯½áÊø +#define MINOR_PERIMETER_CAPTURE_ALARM_BEGIN 0x8f //Öܽç×¥Åı¨¾¯¿ªÊ¼ +#define MINOR_PERIMETER_CAPTURE_ALARM_END 0x90 //Öܽç×¥Åı¨¾¯½áÊø +#define MINOR_UNREGISTERED_STREET_VENDOR_ALARM 0x91 //·Ç·¨°Ú̯±¨¾¯ + +#define MINOR_PERSON_QUEUE_TIME_ALARM_BEGIN 0x92 //ÅŶÓʱ³¤¼ì²â±¨¾¯¿ªÊ¼ +#define MINOR_PERSON_QUEUE_TIME_ALARM_END 0x93 //ÅŶÓʱ³¤¼ì²â±¨¾¯½áÊø +#define MINOR_PERSON_QUEUE_COUNTING_ALARM_BEGIN 0x94 //ÅŶÓÈËÊý¼ì²â±¨¾¯¿ªÊ¼ +#define MINOR_PERSON_QUEUE_COUNTING_ALARM_END 0x95 //ÅŶÓÈËÊý¼ì²â±¨¾¯½áÊø +#define MINOR_FACE_SNAP_MATCH_FAILURE_ALARM_START 0x96 //ÈËÁ³±È¶Ôʧ°Ü±¨¾¯¿ªÊ¼ +#define MINOR_FACE_SNAP_MATCH_FAILURE_ALARM_END 0x97 //ÈËÁ³±È¶Ôʧ°Ü±¨¾¯½áÊø + + +#define MINOR_ACCESS_CONTROLLER_EVENT 0x100 //ÃŽûÖ÷»úʼþ +#define MINOR_VIDEO_INTERCOM_EVENT 0x101 //¿ÉÊÓ¶Ô½²É豸ʼþ +#define MINOR_GJD_EVENT 0x102 //GJD±¨¾¯Ö÷»úʼþ +#define MINOR_LUMINITE_EVENT 0x103 // LUMINITE±¨¾¯Ö÷»úʼþ +#define MINOR_OPTEX_EVENT 0x104 // OPTEX±¨¾¯Ö÷»úʼþ +#define MINOR_CAMERA_DETECTOR_EVENT 0x105 // ´«¸ÐÆ÷ʼþ +#define MINOR_SECURITY_CONTROL_PANEL_EVENT 0x106 //˽Óб¨¾¯Ö÷»úʼþ + +#define MINOR_VCA_SPACE_CHANGE_START 0x10c //¼ä¾àÒì³£¼ì²â¿ªÊ¼ +#define MINOR_VCA_SPACE_CHANGE_STOP 0x10d //¼ä¾àÒì³£¼ì²â½áÊø +#define MINOR_MANUAL_ALARM 0x10e //ÊÖ¶¯±¨¾¯ +#define MINOR_DETECTOR_ALARM 0x10f //̽²âÆ÷±¨¾¯ +#define MINOR_LINKAGE_ALARM 0x110 //Áª¶¯±¨¾¯ +#define MINOR_VCA_SITUATION_ANALYSIS_START 0x111 //̬ÊÆ·ÖÎö¼ì²â¿ªÊ¼ +#define MINOR_VCA_SITUATION_ANALYSIS_STOP 0x112 //̬ÊÆ·ÖÎö¼ì²â½áÊø +#define MINOR_FIRE_ALARM 0x113 //»ð¾¯±¨¾¯ +#define MINOR_SUPERVISE_ALARM 0x114 //¼à¹Ü±¨¾¯ +#define MINOR_SHIELD_ALARM 0x115 //ÆÁ±Î±¨¾¯ +#define MINOR_ABNORMAL_ALARM 0x116 //¹ÊÕϱ¨¾¯ +#define MINOR_RESIDUAL_CURRENT_ALARM 0x117 //Ê£ÓàµçÁ÷±¨¾¯ +#define MINOR_TEMPERATURE_ALARM 0x118 //ζȱ¨¾¯ +#define MINOR_ARC_ALARM 0x119 //µç»¡±¨¾¯ + +#define MINOR_VCA_YARD_TARRY_ALARM_BEGIN 0x11a //·Å·ç³¡ÖÍÁô±¨¾¯¿ªÊ¼ +#define MINOR_VCA_YARD_TARRY_ALARM_END 0x11b //·Å·ç³¡ÖÍÁô±¨¾¯½áÊø +#define MINOR_VCA_KEY_PERSON_GET_UP_ALARM_BEGIN 0x11c //ÖصãÈËÔ±ÆðÉí±¨¾¯¿ªÊ¼ +#define MINOR_VCA_KEY_PERSON_GET_UP_ALARM_END 0x11d //ÖصãÈËÔ±ÆðÉí±¨¾¯½áÊø +#define MINOR_VCA_SIT_QUIETLY_ALARM_BEGIN 0x11e //¾²×ø±¨¾¯¿ªÊ¼ +#define MINOR_VCA_SIT_QUIETLY_ALARM_END 0x11f //¾²×ø±¨¾¯½áÊø +#define MINOR_VCA_STAND_UP_ALARM_BEGIN 0x120 //Õ¾Á¢±¨¾¯¿ªÊ¼ +#define MINOR_VCA_STAND_UP_ALARM_END 0x121 //Õ¾Á¢±¨¾¯½áÊø +#define MINOR_VCA_REACH_HIGHT_ALARM_BEGIN 0x122 //Åʸ߱¨¾¯¿ªÊ¼ +#define MINOR_VCA_REACH_HIGHT_ALARM_END 0x123 //Åʸ߱¨¾¯½áÊø + +#define MINOR_LFPD_ALARM_START 0x124 /*µÍƵÈËÔ±¼ì²â±¨¾¯¿ªÊ¼*/ +#define MINOR_LFPD_ALARM_STOP 0x125 /*µÍƵÈËÔ±¼ì²â±¨¾¯½áÊø*/ + +#define MINOR_DREDGERDETECTION_ALARM 0x126// ÍÚɳ´¬¼ì²â±¨¾¯ +#define MINOR_STUDENT_BEHAVIOR_ALARM_BEGIN 0x127 //¿ÎÌÃѧÉúÐÐΪ±¨¾¯¿ªÊ¼ +#define MINOR_STUDENT_BEHAVIOR_ALARM_END 0x128 //¿ÎÌÃѧÉúÐÐΪ±¨¾¯½áÊø +#define MINOR_VCA_ALARM_VEHICLEMONITOR 0x129 //³µÁ¾²¼¿Ø±¨¾¯(ÓÃÓÚ³µÁ¾²¼¿ØµÚÒ»´ÎÉÏÀ´³µÁ¾¼ì²â£¨´ø³µÁ¾²¼¿ØÐÅÏ¢£©µÄÈÕÖ¾) +#define MINOR_WASTEGASDETECTION_ALARM 0x130// ·ÏÆøÅŷżà²âʼþÉϱ¨ +#define MINOR_GREYSCALE_ALARM 0x131// »Ò¶È±¨¾¯ +#define MINOR_VIBRATION_DETECTION_ALARM_BEGIN 0x132 //Õñ¶¯Õì²â±¨¾¯¿ªÊ¼ +#define MINOR_VIBRATION_DETECTION_ALARM_END 0x133 //Õñ¶¯Õì²â±¨¾¯½áÊø +#define MINOR_SMOKE_DETECT_ALARM_BEGIN 0x134 //³éÑ̼ì²â±¨¾¯¿ªÊ¼ +#define MINOR_SMOKE_DETECT_ALARM_END 0x135 //³éÑ̼ì²â±¨¾¯½áÊø +#define MINOR_METHANE_CONCENTRATION_ALARM 0x136 //¼×ÍéŨ¶ÈÒ쳣ʼþ +#define MINOR_METHANE_LIGHTINTENSITY_ALARM 0x137 //¼×Íé¹âÇ¿Ò쳣ʼþ +#define MINOR_SMOG_BEGIN 0x138 //ÑÌÎí±¨¾¯¿ªÊ¼ +#define MINOR_SMOG_END 0x139 //ÑÌÎí±¨¾¯½áÊø +#define MINOR_VOCS_ALARM 0x140 //VOCsÆøÌ屨¾¯ + +//0x400-0x1000 ÃŽû±¨¾¯ +#define MINOR_ALARMIN_SHORT_CIRCUIT 0x400 //·ÀÇø¶Ì·±¨¾¯ +#define MINOR_ALARMIN_BROKEN_CIRCUIT 0x401 //·ÀÇø¶Ï·±¨¾¯ +#define MINOR_ALARMIN_EXCEPTION 0x402 //·ÀÇøÒì³£±¨¾¯ +#define MINOR_ALARMIN_RESUME 0x403 //·ÀÇø±¨¾¯»Ö¸´ +#define MINOR_HOST_DESMANTLE_ALARM 0x404 //É豸·À²ð±¨¾¯ +#define MINOR_HOST_DESMANTLE_RESUME 0x405 //É豸·À²ð»Ö¸´ +#define MINOR_CARD_READER_DESMANTLE_ALARM 0x406 //¶Á¿¨Æ÷·À²ð±¨¾¯ +#define MINOR_CARD_READER_DESMANTLE_RESUME 0x407 //¶Á¿¨Æ÷·À²ð»Ö¸´ +#define MINOR_CASE_SENSOR_ALARM 0x408 //ʼþÊäÈ뱨¾¯ +#define MINOR_CASE_SENSOR_RESUME 0x409 //ʼþÊäÈë»Ö¸´ +#define MINOR_STRESS_ALARM 0x40a //вÆȱ¨¾¯ +#define MINOR_OFFLINE_ECENT_NEARLY_FULL 0x40b //ÀëÏßʼþÂú90%±¨¾¯ +#define MINOR_CARD_MAX_AUTHENTICATE_FAIL 0x40c //¿¨ºÅÈÏ֤ʧ°Ü³¬´Î±¨¾¯ +#define MINOR_SD_CARD_FULL 0x40d //SD¿¨´æ´¢Âú±¨¾¯ +#define MINOR_LINKAGE_CAPTURE_PIC 0x40e //Áª¶¯×¥ÅÄʼþ±¨¾¯ +#define MINOR_SECURITY_MODULE_DESMANTLE_ALARM 0x40f //ÃÅ¿Ø°²È«Ä£¿é·À²ð±¨¾¯ +#define MINOR_SECURITY_MODULE_DESMANTLE_RESUME 0x410 //ÃÅ¿Ø°²È«Ä£¿é·À²ð»Ö¸´ + +#define MINOR_POS_START_ALARM 0x411 //POS¿ªÆô +#define MINOR_POS_END_ALARM 0x412 //POS½áÊø +#define MINOR_FACE_IMAGE_QUALITY_LOW 0x413 //ÈËÁ³Í¼Ïñ»­ÖÊµÍ +#define MINOR_FINGE_RPRINT_QUALITY_LOW 0x414 //Ö¸ÎÆͼÏñ»­ÖÊµÍ +#define MINOR_FIRE_IMPORT_SHORT_CIRCUIT 0x415 //Ïû·ÀÊäÈë¶Ì·±¨¾¯ +#define MINOR_FIRE_IMPORT_BROKEN_CIRCUIT 0x416 //Ïû·ÀÊäÈë¶Ï·±¨¾¯ +#define MINOR_FIRE_IMPORT_RESUME 0x417 //Ïû·ÀÊäÈë»Ö¸´ +#define MINOR_FIRE_BUTTON_TRIGGER 0x418 //Ïû·À°´Å¥´¥·¢ +#define MINOR_FIRE_BUTTON_RESUME 0x419 //Ïû·À°´Å¥»Ö¸´ +#define MINOR_MAINTENANCE_BUTTON_TRIGGER 0x41a //ά»¤°´Å¥´¥·¢ +#define MINOR_MAINTENANCE_BUTTON_RESUME 0x41b //ά»¤°´Å¥»Ö¸´ +#define MINOR_EMERGENCY_BUTTON_TRIGGER 0x41c //½ô¼±°´Å¥´¥·¢ +#define MINOR_EMERGENCY_BUTTON_RESUME 0x41d //½ô¼±°´Å¥»Ö¸´ +#define MINOR_DISTRACT_CONTROLLER_ALARM 0x41e //·Ö¿ØÆ÷·À²ð±¨¾¯ +#define MINOR_DISTRACT_CONTROLLER_RESUME 0x41f //·Ö¿ØÆ÷·À²ð±¨¾¯»Ö¸´ + +#define MINOR_PERSON_DENSITY_DETECTION_START 0x420 //ÈËÔ±Ãܶȳ¬ãÐÖµ±¨¾¯¿ªÊ¼ +#define MINOR_PERSON_DENSITY_DETECTION_END 0x421 //ÈËÔ±Ãܶȳ¬ãÐÖµ±¨¾¯½áÊø + +#define MINOR_CHANNEL_CONTROLLER_DESMANTLE_ALARM 0x422 //ͨµÀ¿ØÖÆÆ÷·À²ð±¨¾¯ +#define MINOR_CHANNEL_CONTROLLER_DESMANTLE_RESUME 0x423 //ͨµÀ¿ØÖÆÆ÷·À²ð±¨¾¯»Ö¸´ +#define MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM 0x424 //ͨµÀ¿ØÖÆÆ÷Ïû·ÀÊäÈ뱨¾¯ +#define MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME 0x425 //ͨµÀ¿ØÖÆÆ÷Ïû·ÀÊäÈ뱨¾¯»Ö¸´ + +#define MINOR_HEART_RATE_ABNORMAL_BEGIN 0x426 //ÐÄÂÊÒì³£±¨¾¯¿ªÊ¼ +#define MINOR_HEART_RATE_ABNORMAL_END 0x427 //ÐÄÂÊÒì³£±¨¾¯½áÊø +#define MINOR_BLOOD_OXYGEN_ABNORMAL_BEGIN 0x428 //ѪÑõÒì³£±¨¾¯¿ªÊ¼ +#define MINOR_BLOOD_OXYGEN_ABNORMAL_END 0x429 //ѪÑõÒì³£±¨¾¯½áÊø +#define MINOR_SYSTOLIC_BLOOD_PRESSURE_ABNORMAL_BEGIN 0x42a //ѪѹÊÕËõѹÒì³£±¨¾¯¿ªÊ¼ +#define MINOR_SYSTOLIC_BLOOD_PRESSURE_ABNORMAL_END 0x42b //ѪѹÊÕËõѹÒì³£±¨¾¯½áÊø +#define MINOR_DIASTOLIC_BLOOD_PRESSURE_ABNORMAL_BEGIN 0x42c //ѪѹÊæÕÅѹÒì³£±¨¾¯¿ªÊ¼ +#define MINOR_DIASTOLIC_BLOOD_PRESSURE_ABNORMAL_END 0x42d //ѪѹÊæÕÅѹÒì³£±¨¾¯½áÊø +#define MINOR_VCA_LEAVE_POSITION_START 0x42e//Àë¸Ú¼ì²â¿ªÊ¼ +#define MINOR_VCA_LEAVE_POSITION_STOP 0x42f//Àë¸Ú¼ì²â½áÊø +#define MINOR_VCA_STOOODUP_START 0x430//ÆðÁ¢¼ì²â¿ªÊ¼ +#define MINOR_VCA_STOOODUP_STOP 0x431//ÆðÁ¢¼ì²â½áÊø +#define MINOR_VCA_PEOPLENUM_CHANGE_START 0x434//ÈËÊý±ä»¯¿ªÊ¼ +#define MINOR_VCA_PEOPLENUM_CHANGE_STOP 0x435//ÈËÊý±ä»¯½áÊø +#define MINOR_VCA_RUNNING_START 0x438//ÈËÔ±±¼ÅÜ¿ªÊ¼ +#define MINOR_VCA_RUNNING_STOP 0x439//ÈËÔ±±¼ÅܽáÊø +#define MINOR_VCA_VIOLENT_MOTION_START 0x43a//¾çÁÒÔ˶¯¿ªÊ¼ +#define MINOR_VCA_VIOLENT_MOTION_STOP 0x43b//¾çÁÒÔ˶¯½áÊø +#define MINOR_VCA_FAIL_DOWN_START 0x43c//ÈËÔ±µ¹µØ¿ªÊ¼ +#define MINOR_VCA_FAIL_DOWN_STOP 0x43d//ÈËÔ±µ¹µØ½áÊø +#define MINOR_VCA_RETENTION_START 0x43e//ÈËÔ±ÖÍÁô¿ªÊ¼ +#define MINOR_VCA_RETENTION_STOP 0x43f//ÈËÔ±ÖÍÁô½áÊø + +#define MINOR_PRINTER_OUT_OF_PAPER 0x440 //´òÓ¡»úȱֽ±¨¾¯ +#define MINOR_LEGAL_EVENT_NEARLY_FULL 0x442 //ÀëÏߺϷ¨Ê¼þÂú90%±¨¾¯ +#define MINOR_FIRE_IMPORT_ALARM 0x443 //Ïû·ÀÊäÈ뱨¾¯ +#define MINOR_TRANSACTION_RECORD_NEARLY_FULL 0x444 //½»Ò׼ǼÂú90%±¨¾¯ + +#define MINOR_ALARM_CUSTOM1 0x900 //ÃŽû×Ô¶¨Ò屨¾¯1 +#define MINOR_ALARM_CUSTOM2 0x901 //ÃŽû×Ô¶¨Ò屨¾¯2 +#define MINOR_ALARM_CUSTOM3 0x902 //ÃŽû×Ô¶¨Ò屨¾¯3 +#define MINOR_ALARM_CUSTOM4 0x903 //ÃŽû×Ô¶¨Ò屨¾¯4 +#define MINOR_ALARM_CUSTOM5 0x904 //ÃŽû×Ô¶¨Ò屨¾¯5 +#define MINOR_ALARM_CUSTOM6 0x905 //ÃŽû×Ô¶¨Ò屨¾¯6 +#define MINOR_ALARM_CUSTOM7 0x906 //ÃŽû×Ô¶¨Ò屨¾¯7 +#define MINOR_ALARM_CUSTOM8 0x907 //ÃŽû×Ô¶¨Ò屨¾¯8 +#define MINOR_ALARM_CUSTOM9 0x908 //ÃŽû×Ô¶¨Ò屨¾¯9 +#define MINOR_ALARM_CUSTOM10 0x909 //ÃŽû×Ô¶¨Ò屨¾¯10 +#define MINOR_ALARM_CUSTOM11 0x90a //ÃŽû×Ô¶¨Ò屨¾¯11 +#define MINOR_ALARM_CUSTOM12 0x90b //ÃŽû×Ô¶¨Ò屨¾¯12 +#define MINOR_ALARM_CUSTOM13 0x90c //ÃŽû×Ô¶¨Ò屨¾¯13 +#define MINOR_ALARM_CUSTOM14 0x90d //ÃŽû×Ô¶¨Ò屨¾¯14 +#define MINOR_ALARM_CUSTOM15 0x90e //ÃŽû×Ô¶¨Ò屨¾¯15 +#define MINOR_ALARM_CUSTOM16 0x90f //ÃŽû×Ô¶¨Ò屨¾¯16 +#define MINOR_ALARM_CUSTOM17 0x910 //ÃŽû×Ô¶¨Ò屨¾¯17 +#define MINOR_ALARM_CUSTOM18 0x911 //ÃŽû×Ô¶¨Ò屨¾¯18 +#define MINOR_ALARM_CUSTOM19 0x912 //ÃŽû×Ô¶¨Ò屨¾¯19 +#define MINOR_ALARM_CUSTOM20 0x913 //ÃŽû×Ô¶¨Ò屨¾¯20 +#define MINOR_ALARM_CUSTOM21 0x914 //ÃŽû×Ô¶¨Ò屨¾¯21 +#define MINOR_ALARM_CUSTOM22 0x915 //ÃŽû×Ô¶¨Ò屨¾¯22 +#define MINOR_ALARM_CUSTOM23 0x916 //ÃŽû×Ô¶¨Ò屨¾¯23 +#define MINOR_ALARM_CUSTOM24 0x917 //ÃŽû×Ô¶¨Ò屨¾¯24 +#define MINOR_ALARM_CUSTOM25 0x918 //ÃŽû×Ô¶¨Ò屨¾¯25 +#define MINOR_ALARM_CUSTOM26 0x919 //ÃŽû×Ô¶¨Ò屨¾¯26 +#define MINOR_ALARM_CUSTOM27 0x91a //ÃŽû×Ô¶¨Ò屨¾¯27 +#define MINOR_ALARM_CUSTOM28 0x91b //ÃŽû×Ô¶¨Ò屨¾¯28 +#define MINOR_ALARM_CUSTOM29 0x91c //ÃŽû×Ô¶¨Ò屨¾¯29 +#define MINOR_ALARM_CUSTOM30 0x91d //ÃŽû×Ô¶¨Ò屨¾¯30 +#define MINOR_ALARM_CUSTOM31 0x91e //ÃŽû×Ô¶¨Ò屨¾¯31 +#define MINOR_ALARM_CUSTOM32 0x91f //ÃŽû×Ô¶¨Ò屨¾¯32 +#define MINOR_ALARM_CUSTOM33 0x920 //ÃŽû×Ô¶¨Ò屨¾¯33 +#define MINOR_ALARM_CUSTOM34 0x921 //ÃŽû×Ô¶¨Ò屨¾¯34 +#define MINOR_ALARM_CUSTOM35 0x922 //ÃŽû×Ô¶¨Ò屨¾¯35 +#define MINOR_ALARM_CUSTOM36 0x923 //ÃŽû×Ô¶¨Ò屨¾¯36 +#define MINOR_ALARM_CUSTOM37 0x924 //ÃŽû×Ô¶¨Ò屨¾¯37 +#define MINOR_ALARM_CUSTOM38 0x925 //ÃŽû×Ô¶¨Ò屨¾¯38 +#define MINOR_ALARM_CUSTOM39 0x926 //ÃŽû×Ô¶¨Ò屨¾¯39 +#define MINOR_ALARM_CUSTOM40 0x927 //ÃŽû×Ô¶¨Ò屨¾¯40 +#define MINOR_ALARM_CUSTOM41 0x928 //ÃŽû×Ô¶¨Ò屨¾¯41 +#define MINOR_ALARM_CUSTOM42 0x929 //ÃŽû×Ô¶¨Ò屨¾¯42 +#define MINOR_ALARM_CUSTOM43 0x92a //ÃŽû×Ô¶¨Ò屨¾¯43 +#define MINOR_ALARM_CUSTOM44 0x92b //ÃŽû×Ô¶¨Ò屨¾¯44 +#define MINOR_ALARM_CUSTOM45 0x92c //ÃŽû×Ô¶¨Ò屨¾¯45 +#define MINOR_ALARM_CUSTOM46 0x92d //ÃŽû×Ô¶¨Ò屨¾¯46 +#define MINOR_ALARM_CUSTOM47 0x92e //ÃŽû×Ô¶¨Ò屨¾¯47 +#define MINOR_ALARM_CUSTOM48 0x92f //ÃŽû×Ô¶¨Ò屨¾¯48 +#define MINOR_ALARM_CUSTOM49 0x930 //ÃŽû×Ô¶¨Ò屨¾¯49 +#define MINOR_ALARM_CUSTOM50 0x931 //ÃŽû×Ô¶¨Ò屨¾¯50 +#define MINOR_ALARM_CUSTOM51 0x932 //ÃŽû×Ô¶¨Ò屨¾¯51 +#define MINOR_ALARM_CUSTOM52 0x933 //ÃŽû×Ô¶¨Ò屨¾¯52 +#define MINOR_ALARM_CUSTOM53 0x934 //ÃŽû×Ô¶¨Ò屨¾¯53 +#define MINOR_ALARM_CUSTOM54 0x935 //ÃŽû×Ô¶¨Ò屨¾¯54 +#define MINOR_ALARM_CUSTOM55 0x936 //ÃŽû×Ô¶¨Ò屨¾¯55 +#define MINOR_ALARM_CUSTOM56 0x937 //ÃŽû×Ô¶¨Ò屨¾¯56 +#define MINOR_ALARM_CUSTOM57 0x938 //ÃŽû×Ô¶¨Ò屨¾¯57 +#define MINOR_ALARM_CUSTOM58 0x939 //ÃŽû×Ô¶¨Ò屨¾¯58 +#define MINOR_ALARM_CUSTOM59 0x93a //ÃŽû×Ô¶¨Ò屨¾¯59 +#define MINOR_ALARM_CUSTOM60 0x93b //ÃŽû×Ô¶¨Ò屨¾¯60 +#define MINOR_ALARM_CUSTOM61 0x93c //ÃŽû×Ô¶¨Ò屨¾¯61 +#define MINOR_ALARM_CUSTOM62 0x93d //ÃŽû×Ô¶¨Ò屨¾¯62 +#define MINOR_ALARM_CUSTOM63 0x93e //ÃŽû×Ô¶¨Ò屨¾¯63 +#define MINOR_ALARM_CUSTOM64 0x93f //ÃŽû×Ô¶¨Ò屨¾¯64 +#define MINOR_LOCK_HIJIACK_FINGER_ALARM 0x950 //ÖÇÄÜËø·À½Ù³ÖÖ¸ÎƱ¨¾¯ +#define MINOR_LOCK_HIJIACK_PASSWORD_ALARM 0x951 //ÖÇÄÜËø·À½Ù³ÖÃÜÂ뱨¾¯ +#define MINOR_LOCK_PRY_DOOR_ALARM 0x952 //ÖÇÄÜËøÇËÃű¨¾¯ +#define MINOR_LOCK_LOCKED_ALARM 0x953 //ÖÇÄÜËøËø¶¨±¨¾¯ +#define MINOR_LOCK_BATTERLOW_ALARM 0x954 //ÖÇÄÜËøµÍµçѹ±¨¾¯ +#define MINOR_LOCK_BLOCKLIST_DOOR_ALARM 0x955 //ÖÇÄÜËø½ûÖ¹Ãûµ¥±¨¾¯ +#define MINOR_LOCK_OFFLINE_ALARM 0x956 //ÖÇÄÜËøÀëÏß±¨¾¯ +#define MINOR_LOCK_UNCLOSED_ALARM 0x957 //ÖÇÄÜËøÐéÑÚ±¨¾¯ +#define MINOR_LOCK_NO_HOME_ALARM 0x958 //ÖÇÄÜËøÓû§Î´»Ø¼Ò±¨¾¯ +#define MINOR_LOCK_MAGNETOMETER_ALARM 0x959 //ÃÅ´Å̽²âÆ÷±¨¾¯ +#define MINOR_LOCK_IR_DETECTOR_ALARM 0x95a //ºìÍâ̽²âÆ÷±¨¾¯ +#define MINOR_LOCK_FP_LOCKED_ALARM 0x95b //Ö¸ÎÆËø¶¨±¨¾¯ +#define MINOR_LOCK_PASSWORD_LOCKED_ALARM 0x95c //ÃÜÂëËø¶¨±¨¾¯ +#define MINOR_LOCK_HIJIACK_ALARM 0x95d //ÖÇÄÜËø·À½Ù³Ö±¨¾¯ + +//2018-04-23 ͨÓÃÎïÁªÍø¹Ø±¨¾¯ÈÕÖ¾ÀàÐÍ +#define MINOR_ALARMHOST_SHORT_CIRCUIT 0x1001 //¶Ì·±¨¾¯ +#define MINOR_ALARMHOST_BROKEN_CIRCUIT 0x1002 //¶Ï·±¨¾¯ +#define MINOR_ALARMHOST_ALARM_RESET 0x1003 //±¨¾¯¸´Î» +#define MINOR_ALARMHOST_ALARM_NORMAL 0x1004 //±¨¾¯»Ö¸´Õý³£ +#define MINOR_ALARMHOST_PASSWORD_ERROR 0x1005 //ÃÜÂë´íÎó£¨Á¬Ðø3´ÎÊäÈëÃÜÂë´íÎó£© +#define MINOR_ALARMHOST_ID_CARD_ILLEGALLY 0x1006 //·Ç·¨¸ÐÓ¦¿¨ID +#define MINOR_ALARMHOST_KEYPAD_REMOVE 0x1007 //¼üÅÌ·À²ð +#define MINOR_ALARMHOST_KEYPAD_REMOVE_RESTORE 0x1008 //¼üÅÌ·À²ð¸´Î» + +#define MINOR_ALARMHOST_BELOW_ALARM_LIMIT1 0x1011 //Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ1 +#define MINOR_ALARMHOST_BELOW_ALARM_LIMIT2 0x1012 //Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ2 +#define MINOR_ALARMHOST_BELOW_ALARM_LIMIT3 0x1013 //Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ3 +#define MINOR_ALARMHOST_BELOW_ALARM_LIMIT4 0x1014 //Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ4 +#define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT1 0x1015 //Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ1 +#define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT2 0x1016 //Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ2 +#define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT3 0x1017 //Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ3 +#define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT4 0x1018 //Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ4 + +#define MINOR_ALARMHOST_VIRTUAL_DEFENCE_BANDIT 0x1021 //Èí·ÀÇø·Ë¾¯ +#define MINOR_ALARMHOST_VIRTUAL_DEFENCE_FIRE 0x1022 //Èí·ÀÇø»ð¾¯ +#define MINOR_ALARMHOST_VIRTUAL_DEFENCE_URGENT 0x1023 //Èí·ÀÇø½ô¼± + +#define MINOR_UPS_ALARM 0x1028 //UPS±¨¾¯ +#define MINOR_ELECTRICITY_METER_ALARM 0x1029 //ÖÇÄܵç±í±¨¾¯ +#define MINOR_SWITCH_POWER_ALARM 0x1030 //¿ª¹ØµçÔ´±¨¾¯ +#define MINOR_GAS_DETECT_SYS_ALARM 0x1031 //ÆøÌå¼ì²âϵͳ±¨¾¯ +#define MINOR_TRANSFORMER_TEMPRATURE_ALARM 0x1032 //±äµçÆ÷ÎÂÏÔ±í±¨¾¯ +#define MINOR_TEMP_HUMI_ALARM 0x1033 //ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯ +#define MINOR_UPS_ALARM_RESTORE 0x1034 //UPS±¨¾¯»Ö¸´ +#define MINOR_ELECTRICITY_METER_ALARM_RESTORE 0x1035 //ÖÇÄܵç±í±¨¾¯»Ö¸´ +#define MINOR_SWITCH_POWER_ALARM_RESTORE 0x1036 //¿ª¹ØµçÔ´±¨¾¯»Ö¸´ +#define MINOR_GAS_DETECT_SYS_ALARM_RESTORE 0x1037 //ÆøÌå¼ì²âϵͳ±¨¾¯»Ö¸´ +#define MINOR_TRANSFORMER_TEMPRATURE_ALARM_RESTORE 0x1038 //±äµçÆ÷ÎÂÏÔ±í±¨¾¯»Ö¸´ +#define MINOR_TEMP_HUMI_ALARM_RESTORE 0x1039 //ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯»Ö¸´ +#define MINOR_WATER_LEVEL_SENSOR_ALARM 0x1040 //ˮλ´«¸ÐÆ÷±¨¾¯ +#define MINOR_WATER_LEVEL_SENSOR_ALARM_RESTORE 0x1041 //ˮλ´«¸ÐÆ÷±¨¾¯»Ö¸´ +#define MINOR_DUST_NOISE_ALARM 0x1042 //Ñï³¾ÔëÉù´«¸ÐÆ÷±¨¾¯ +#define MINOR_DUST_NOISE_ALARM_RESTORE 0x1043 //Ñï³¾ÔëÉù´«¸ÐÆ÷±¨¾¯»Ö¸´ +#define MINOR_ENVIRONMENTAL_LOGGER_ALARM 0x1044 //»·¾³²É¼¯ÒDZ¨¾¯ +#define MINOR_ENVIRONMENTAL_LOGGER_ALARM_RESTORE 0x1045 //»·¾³²É¼¯ÒDZ¨¾¯»Ö¸´ + +#define MINOR_TRIGGER_TAMPER 0x1046 //̽²âÆ÷·À²ð +#define MINOR_TRIGGER_TAMPER_RESTORE 0x1047 //̽²âÆ÷·À²ð»Ö¸´ +#define MINOR_EMERGENCY_CALL_HELP_ALARM 0x1048 //½ô¼±ºô½ÐÇóÖú±¨¾¯ +#define MINOR_EMERGENCY_CALL_HELP_ALARM_RESTORE 0x1049 //½ô¼±ºô½ÐÇóÖú±¨¾¯»Ö¸´ +#define MINOR_CONSULTING_ALARM 0x1050 //ÒµÎñ×Éѯ±¨¾¯ +#define MINOR_CONSULTING_ALARM_RESTORE 0x1051 //ÒµÎñ×Éѯ±¨¾¯»Ö¸´ +#define MINOR_ALARMHOST_ZONE_MODULE_REMOVE 0x1052 //·ÀÇøÄ£¿é·À²ð +#define MINOR_ALARMHOST_ZONE_MODULE_RESET 0x1053 //·ÀÇøÄ£¿é·À²ð¸´Î» + +#define MINOR_ALARMHOST_ALARM_WIND_SPEED_ALARM 0x1054 //·çËÙ´«¸ÐÆ÷¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_WIND_SPEED_ALARM_RESTORE 0x1055 //·çËÙ´«¸ÐÆ÷¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_GENERATE_OUTPUT_ALARM 0x1056 //ͨÓÃÀ©Õ¹Êä³öÄ£¿é¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_GENERATE_OUTPUT_RESTORE 0x1057 //ͨÓÃÀ©Õ¹Êä³öÄ£¿é¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_SOAK_ALARM 0x1058 //Ë®½þ´«¸ÐÆ÷¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_SOAK_ALARM_RESTORE 0x1059 //Ë®½þ´«¸ÐÆ÷¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_SOLAR_POWER_ALARM 0x1060 //Ì«ÑôÄÜ´«¸ÐÆ÷¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_SOLAR_POWER_ALARM_RESTORE 0x1061 //Ì«ÑôÄÜ´«¸ÐÆ÷¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_SF6_ALARM 0x1062 //SF6±¨¾¯Ö÷»ú¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_SF6_ALARM_RESTORE 0x1063 //SF6±¨¾¯Ö÷»ú¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_WEIGHT_ALARM 0x1064 //³ÆÖØÒǸ澯 +#define MINOR_ALARMHOST_ALARM_WEIGHT_ALARM_RESTORE 0x1065 //³ÆÖØÒǸ澯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_WEATHER_ALARM 0x1066 //ÆøÏó²É¼¯ÏµÍ³¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_WEATHER_ALARM_RESTORE 0x1067 //ÆøÏó²É¼¯ÏµÍ³¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_ALARM_FUEL_GAS_ALARM 0x1068 //ȼÆø¼à²âϵͳ¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_FUEL_GAS_ALARM_RESTORE 0x1069 //ȼÆø¼à²âϵͳ¸æ¾¯»Ö +#define MINOR_ALARMHOST_ALARM_FIRE_ALARM 0x1070 //»ðÔÖ±¨¾¯ÏµÍ³¸æ¾¯ +#define MINOR_ALARMHOST_ALARM_FIRE_ALARM_RESTORE 0x1071 //»ðÔÖ±¨¾¯ÏµÍ³¸æ¾¯»Ö¸´ +#define MINOR_ALARMHOST_WIRELESS_OUTPUT_MODULE_REMOVE 0x1072 //ÎÞÏßÊä³öÄ£¿é·À²ð +#define MINOR_ALARMHOST_WIRELESS_OUTPUT_MODULE_RESET 0x1073 //ÎÞÏßÊä³öÄ£¿é·À²ð¸´Î» +#define MINOR_ALARMHOST_WIRELESS_REPEATER_MODULE_REMOVE 0x1074 //ÎÞÏßÖмÌÆ÷·À²ð + +#define MINOR_ALARMHOST_WIRELESS_SIREN_MODULE_REMOVE 0x1075 //ÎÞÏß¾¯ºÅ·À²ð +#define MINOR_ALARMHOST_WIRELESS_SIREN_MODULE_RESET 0x1076 //ÎÞÏß¾¯ºÅ·À²ð¸´Î» + +#define MINOR_RS485_DEV_ALARM 0x1077 //RS485Íâ½ÓÉ豸±¨¾¯£¨Õë¶ÔÉ豸ÀàÐÍδ֪µÄÉ豸£© +#define MINOR_RS485_DEV_RESTORE 0x1078 //RS485Íâ½ÓÉ豸±¨¾¯»Ö¸´£¨Õë¶ÔÉ豸ÀàÐÍδ֪µÄÉ豸£© +#define MINOR_ALARMHOST_ALARM_HOST_ALARM 0x1079 //Ïû·ÀÖ÷»ú±¨¾¯ +#define MINOR_ALARMHOST_ALARM_HOST_RESTORE 0x107a //Ïû·ÀÖ÷»ú±¨¾¯»Ö¸´ + +#define MINOR_AIR_CONDITION_DEV_ALARM 0x107b //¿Õµ÷¿ØÖÆÆ÷±¨¾¯ +#define MINOR_AIR_CONDITION_DEV_RESTORE 0x107c //¿Õµ÷¿ØÖÆÆ÷±¨¾¯»Ö¸´ + +#define MINOR_ALARMHOST_WIRELESS_REPEATER_MODULE_RESET 0x107d //ÎÞÏßÖмÌÆ÷·À²ð¸´Î» + +#define MINOR_ALARM_ELEVATOR_BREAKDOWN 0x107e//µçÌݹÊÕÏ +#define MINOR_WATER_PRESSURE_SENSOR_ALARM 0x107f //ˮѹ´«¸ÐÆ÷±¨¾¯ +#define MINOR_FLOW_SENSOR_ALARM 0x1080 //Á÷Á¿´«¸ÐÆ÷±¨¾¯ +#define MINOR_SENSOR_LINKAGE_ALARM 0x1081 //´«¸ÐÆ÷Áª¶¯±¨¾¯ +#define MINOR_SENSOR_LINKAGE_ALARM_RESTORE 0x1082 //´«¸ÐÆ÷Áª¶¯±¨¾¯»Ö¸´ +#define MINOR_SHELF_ABNORMAL_ALARM 0x1083 //»õ¼ÜÒì³£±¨¾¯ + +//LED±¨¾¯´ÎÀàÐÍ 0x1201 ~ 0x1300 +#define MINOR_SYSTEM_CHECK_ALARM 0x1201 //ϵͳ¼ì²â±¨¾¯ + +/* Òì³£ */ +//Ö÷ÀàÐÍ +#define MAJOR_EXCEPTION 0x2 +//´ÎÀàÐÍ +#define MINOR_SUBSYSTEM_ERROR 0x0a /* ×ÓϵͳÒì³£ */ +#define MINOR_RAID_ERROR 0x20 /* ÕóÁÐÒì³£ */ +#define MINOR_VI_LOST 0x21 /* ÊÓƵÐźŶªÊ§ */ +#define MINOR_ILLEGAL_ACCESS 0x22 /* ·Ç·¨·ÃÎÊ */ +#define MINOR_HD_FULL 0x23 /* Ó²ÅÌÂú */ +#define MINOR_HD_ERROR 0x24 /* Ó²ÅÌ´íÎó */ +#define MINOR_DCD_LOST 0x25 /* MODEM µôÏß(±£Áô²»Ê¹ÓÃ) */ +#define MINOR_IP_CONFLICT 0x26 /* IPµØÖ·³åÍ» */ +#define MINOR_NET_BROKEN 0x27 /* ÍøÂç¶Ï¿ª*/ +#define MINOR_REC_ERROR 0x28 /* ¼Ïñ³ö´í */ +#define MINOR_IPC_NO_LINK 0x29 /* IPCÁ¬½ÓÒì³£ */ +#define MINOR_VI_EXCEPTION 0x2a /* ÊÓƵÊäÈëÒì³£(Ö»Õë¶ÔÄ£ÄâͨµÀ) */ +#define MINOR_IPC_IP_CONFLICT 0x2b /*ipc ip µØÖ· ³åÍ»*/ +#define MINOR_SENCE_EXCEPTION 0x2c // ³¡¾°Òì³£ + +#define MINOR_PIC_REC_ERROR 0x2d /* ץͼ³ö´í--»ñȡͼƬÎļþʧ°Ü*/ +#define MINOR_VI_MISMATCH 0x2e /* ÊÓƵÖÆʽ²»Æ¥Åä*/ +#define MINOR_RESOLUTION_MISMATCH 0x2f /*Ç°¶Ë/¼Ïñ·Ö±æÂʲ»Æ¥Åä */ + +//2009-12-16 Ôö¼ÓÊÓƵ×ÛºÏƽ̨ÈÕÖ¾ÀàÐÍ +#define MINOR_FANABNORMAL 0x31 /* ÊÓƵ×ÛºÏƽ̨£º·çÉÈ״̬Òì³£ */ +#define MINOR_FANRESUME 0x32 /* ÊÓƵ×ÛºÏƽ̨£º·çÉÈ״̬»Ö¸´Õý³£ */ +#define MINOR_SUBSYSTEM_ABNORMALREBOOT 0x33 /* ÊÓƵ×ÛºÏƽ̨£º6467Òì³£ÖØÆô */ +#define MINOR_MATRIX_STARTBUZZER 0x34 /* ÊÓƵ×ÛºÏƽ̨£ºdm6467Òì³££¬Æô¶¯·äÃùÆ÷ */ + +//2010-01-22 Ôö¼ÓÊÓƵ×ÛºÏƽ̨Òì³£ÈÕÖ¾´ÎÀàÐÍ +#define MINOR_NET_ABNORMAL 0x35 /*ÍøÂç״̬Òì³£*/ +#define MINOR_MEM_ABNORMAL 0x36 /*ÄÚ´æ״̬Òì³£*/ +#define MINOR_FILE_ABNORMAL 0x37 /*Îļþ״̬Òì³£*/ +#define MINOR_PANEL_ABNORMAL 0x38 /*Ç°Ãæ°åÁ¬½ÓÒì³£*/ +#define MINOR_PANEL_RESUME 0x39 /*Ç°Ãæ°å»Ö¸´Õý³£*/ +#define MINOR_RS485_DEVICE_ABNORMAL 0x3a /*RS485Á¬½Ó״̬Òì³£*/ +#define MINOR_RS485_DEVICE_REVERT 0x3b /*RS485Á¬½Ó״̬Òì³£»Ö¸´*/ + +//2012-2-18 Ôö¼Ó´óÆÁ¿ØÖÆÆ÷Òì³£ÈÕÖ¾´ÎÀàÐÍ +#define MINOR_SCREEN_SUBSYSTEM_ABNORMALREBOOT 0x3c //×Ó°åÒì³£Æô¶¯ +#define MINOR_SCREEN_SUBSYSTEM_ABNORMALINSERT 0x3d //×Ó°å²åÈë +#define MINOR_SCREEN_SUBSYSTEM_ABNORMALPULLOUT 0x3e //×Ó°å°Î³ö +#define MINOR_SCREEN_ABNARMALTEMPERATURE 0x3f //ζÈÒì³£ +//2012-07-26 ÊÓƵ×ÛºÏƽ̨v2.1 +#define MINOR_HIGH_TEMPERATURE_PROTECT 0x40 //×Ó°å¹ýÈȱ£»¤ + +//Netra 2.2.2 +#define MINOR_RECORD_OVERFLOW 0x41 /*»º³åÇøÒç³ö*/ +#define MINOR_DSP_ABNORMAL 0x42 //DSPÒì³£ + +//Netra 3.0.0 +#define MINOR_ANR_RECORD_FAIED 0x43 /*ANR¼Ïñʧ°Ü*/ +#define MINOR_SPARE_WORK_DEVICE_EXCEPT 0x44 /*Èȱ¸É豸¹¤×÷»úÒì³£*/ +#define MINOR_START_IPC_MAS_FAILED 0x45 /*¿ªÆôIPC MASʧ°Ü*/ +//¸ßÐÔÄÜ 256·NVR +#define MINOR_IPCM_CRASH 0x46 /*IPCMÒì³£ÖØÆô*/ +#define MINOR_POE_POWER_EXCEPTION 0x47 /*POE ¹©µçÒì³£*/ +#define MINOR_UPLOAD_DATA_CS_EXCEPTION 0x48 //ÔÆ´æ´¢Êý¾ÝÉÏ´«Ê§°Ü/ +#define MINOR_DIAL_EXCEPTION 0x49 /*²¦ºÅÒì³£*/ +#define MINOR_DEV_EXCEPTION_OFFLINE 0x50 //É豸Òì³£ÏÂÏß +#define MINOR_UPGRADEFAIL 0x51 //Ô¶³ÌÉý¼¶É豸ʧ°Ü +#define MINOR_AI_LOST 0x52 /* ÒôƵÐźŶªÊ§ */ +#define MINOR_SYNC_IPC_PASSWD 0x53 /* ͬ²½IPCÃÜÂëÒì³£ */ +#define MINOR_EZVIZ_OFFLINE 0x54 /* өʯÏÂÏßÒì³£*/ +#define MINOR_VQD_ABNORMAL 0x55 //VQDÒì³£ +#define MINOR_ACCESSORIES_PLATE 0x57 //Åä¼þ°åÒì³£ +#define MINOR_KMS_EXPAMSION_DISK_LOST 0x58 // KMSÀ©ÈÝÅ̶ªÊ§ +#define MINOR_ABNORMAL_PORT 0x59 // ¶Ë¿ÚÒì³£ +#define MINOR_CAMERA_ANGLE_ANOMALY 0x60// Ïà»úÊÓ½ÇÒì³£ +#define MINOR_DATA_DISK_ERROE 0x61// Êý¾ÝÅÌ´íÎó +#define MINOR_INTELLIGENT_SYSTEM_RUNNING_ERROR 0x62// ÖÇÄÜϵͳÔËÐÐÒì³£ +#define MINOR_FACESNAP_RESOLUTION_OVERFLOW 0x63// ÈËÁ³×¥ÅÄÂëÁ÷·Ö±æÂʳ¬ÏÞ +#define MINOR_SMD_RESOLUTION_OVERFLOW 0x64// SMDÂëÁ÷·Ö±æÂʳ¬ÏÞ +#define MINOR_AUDIO_LOSS_EXCEPTION 0x65// ÒôƵ¶ªÊ§Òì³£ +#define MINOR_SAFETY_HELMET_EXCEPTION 0x66 //δÅå´÷°²È«Ã±¼ì²âÒì³£ +#define MINOR_VCA_PIC_LENGTH_OVERFLOW 0x67 // VCAͼƬ³¤¶È¹ý³¤£¨ÀýÈ糬¹ý2M´óСµÄͼƬ£© +#define MINOR_FACE_MODEL_EXCEPTION 0x68// ÈËÁ³¿âÄ£ÐÍͬ²½Òì³£ +#define MINOR_SSD_EXCEPTION 0x69 // SSDÒì³£ +//NVR¼¯Èº +#define MINOR_CLUSTER_DEVICE_OFFLINE 0x70 // ¼¯ÈºÄÚÉ豸ÏÂÏß +#define MINOR_CLUSTER_CONFIG_FAILED 0x71 // ¼¯ÈºÄÚÉ豸ÅäÖÃʧ°Ü +#define MINOR_CLUSTER_DISASTER_TOLERANCE_EXCEPT 0x72 // ¼¯ÈºÈÝÔÖÒì³£:¼¯ÈºCMÑ¡¾Ùʧ°Ü,¼¯Èº´æ´¢ÖÜÆÚ²»×ã,¼¯Èº´ø¿í²»×ã,¼¯ÈºÍ¨µÀ×ÊÔ´²»×ã,¼¯ÈºÉ豸²»×ãµÈ +#define MINOR_CLUSTER_STORFULL_EXCEPTION 0x73 //¼¯ÈºÓ²ÅÌÂú +#define MINOR_CLUSTER_VERSION_EXCEPTION 0x74 //¼¯Èº°æ±¾Òì³£ +#define MINOR_CLUSTER_OFFLINENODE_EXCEPTION 0x75 //¼¯ÈºµôÏßÊý³¬ÏÞ +#define MINOR_CLUSTER_RECORDCYCLE_EXCEPTION 0x76 //¼¯ÈºÂ¼ÏñÖÜÆÚ²»×ã +#define MINOR_CLUSTER_IPCTRANSFER_EXCEPTION 0x77 //¼¯ÈºIPCǨÒÆʧ°Ü +#define MINOR_CLUSTER_IPCONFLICT_EXCEPTION 0x78 // ¼¯ÈºIP³åÍ»£¬¼Ç¼CMµÄIPµØÖ· + +#define MINOR_GET_SUB_STREAM_FAILURE 0x79//×ÓÂëÁ÷È¡Á÷ʧ°Ü +#define MINOR_HDD_SHM_DETECT_EXCEPTION 0x7a//Ó²ÅÌSHM¼ì²âÒì³£ +#define MINOR_DEVICE_FORTIFY_FAILURE 0x7b//Ç°¶ËÉ豸±¨¾¯²¼·Àʧ°Ü +#define MINOR_EVENT_UPLOAD_EXCEPTION 0x7c //ʼþ·¢ËÍÒì³££¨É豸ÉÏ´«Ê¼þʧ°Ü»òÕ߶ªÆúÁË£© + +#define MINOR_LORA_EXCEPTION 0x7d//LoRaÒì³£ +#define MINOR_AK_OR_SK_IS_EMPTY 0x7e//ÔÆ´æ´¢ÃÜÂë»ò¼ÓÃÜÃÜÂëΪ¿Õ + +#define MINOR_HIGH_HD_TEMPERATURE 0x80 /*Ó²ÅÌζȹý¸ß*/ +#define MINOR_LOW_HD_TEMPERATURE 0x81 /*Ó²ÅÌζȹýµÍ*/ +#define MINOR_HD_IMPACT 0x82 /*Ó²ÅÌÊܵ½³å»÷*/ +#define MINOR_HD_BAD_BLOCK 0x83 /*Ó²Å̳öÏÖ»µ¿é*/ +#define MINOR_SEVERE_HD_FAILURE 0x84 /*Ó²ÅÌÑÏÖعÊÕÏ*/ +#define MINOR_RELEASE_FAILED 0x85 //ÐÅÏ¢·¢²¼Ê§°Ü +#define MINOR_PORT_CONFLICT 0x86 //¶Ë¿Ú³åÍ» +#define MINOR_MODULE_STARTUP_FAILED 0x87 //Ä£¿éÆô¶¯Ê§°Ü +#define MINIOR_VCA_RUNNING_EXCEPTION 0x88 //ÖÇÄÜ°åÔËÐÐÒì³£ + +//0x400-0x1000 ÃŽûÒì³£ÀàÐÍ +#define MINOR_DEV_POWER_ON 0x400 //É豸ÉϵçÆô¶¯ +#define MINOR_DEV_POWER_OFF 0x401 //É豸µôµç¹Ø±Õ +#define MINOR_WATCH_DOG_RESET 0x402 //¿´ÃŹ·¸´Î» +#define MINOR_LOW_BATTERY 0x403 //Ðîµç³ØµçѹµÍ +#define MINOR_BATTERY_RESUME 0x404 //Ðîµç³Øµçѹ»Ö¸´Õý³£ +#define MINOR_AC_OFF 0x405 //½»Á÷µç¶Ïµç +#define MINOR_AC_RESUME 0x406 //½»Á÷µç»Ö¸´ +#define MINOR_NET_RESUME 0x407 //ÍøÂç»Ö¸´ +#define MINOR_FLASH_ABNORMAL 0x408 //FLASH¶ÁдÒì³£ +#define MINOR_CARD_READER_OFFLINE 0x409 //¶Á¿¨Æ÷µôÏß +#define MINOR_CARD_READER_RESUME 0x40a //¶Á¿¨Æ÷µôÏ߻ָ´ +#define MINOR_INDICATOR_LIGHT_OFF 0x40b //ָʾµÆ¹Ø±Õ +#define MINOR_INDICATOR_LIGHT_RESUME 0x40c //ָʾµÆ»Ö¸´ +#define MINOR_CHANNEL_CONTROLLER_OFF 0x40d //ͨµÀ¿ØÖÆÆ÷µôÏß +#define MINOR_CHANNEL_CONTROLLER_RESUME 0x40e //ͨµÀ¿ØÖÆÆ÷»Ö¸´ +#define MINOR_SECURITY_MODULE_OFF 0x40f //ÃÅ¿Ø°²È«Ä£¿éµôÏß +#define MINOR_SECURITY_MODULE_RESUME 0x410 //ÃÅ¿Ø°²È«Ä£¿éÔÚÏß +#define MINOR_BATTERY_ELECTRIC_LOW 0x411 //µç³ØµçѹµÍ(½öÈËÁ³É豸ʹÓÃ) +#define MINOR_BATTERY_ELECTRIC_RESUME 0x412 //µç³Øµçѹ»Ö¸´Õý³£(½öÈËÁ³É豸ʹÓÃ) +#define MINOR_LOCAL_CONTROL_NET_BROKEN 0x413 //¾ÍµØ¿ØÖÆÆ÷ÍøÂç¶Ï¿ª +#define MINOR_LOCAL_CONTROL_NET_RSUME 0x414 //¾ÍµØ¿ØÖÆÆ÷ÍøÂç»Ö¸´ +#define MINOR_MASTER_RS485_LOOPNODE_BROKEN 0x415 //Ö÷¿ØRS485»·Â·½Úµã¶Ï¿ª +#define MINOR_MASTER_RS485_LOOPNODE_RESUME 0x416 //Ö÷¿ØRS485»·Â·½Úµã»Ö¸´ +#define MINOR_LOCAL_CONTROL_OFFLINE 0x417 //¾ÍµØ¿ØÖÆÆ÷µôÏß +#define MINOR_LOCAL_CONTROL_RESUME 0x418 //¾ÍµØ¿ØÖÆÆ÷µôÏ߻ָ´ +#define MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN 0x419 //¾ÍµØÏÂÐÐRS485»·Â·¶Ï¿ª +#define MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME 0x41a //¾ÍµØÏÂÐÐRS485»·Â·»Ö¸´ +#define MINOR_DISTRACT_CONTROLLER_ONLINE 0x41b //·Ö¿ØÆ÷ÔÚÏß +#define MINOR_DISTRACT_CONTROLLER_OFFLINE 0x41c //·Ö¿ØÆ÷ÀëÏß +#define MINOR_ID_CARD_READER_NOT_CONNECT 0x41d //Éí·ÝÖ¤ÔĶÁÆ÷δÁ¬½Ó£¨ÖÇÄÜרÓã© +#define MINOR_ID_CARD_READER_RESUME 0x41e //Éí·ÝÖ¤ÔĶÁÆ÷Á¬½Ó»Ö¸´£¨ÖÇÄÜרÓã© +#define MINOR_FINGER_PRINT_MODULE_NOT_CONNECT 0x41f //Ö¸ÎÆÄ£×éδÁ¬½Ó£¨ÖÇÄÜרÓã© +#define MINOR_FINGER_PRINT_MODULE_RESUME 0x420 //Ö¸ÎÆÄ£×éÁ¬½Ó»Ö¸´£¨ÖÇÄÜרÓã© +#define MINOR_CAMERA_NOT_CONNECT 0x421 //ÉãÏñͷδÁ¬½Ó +#define MINOR_CAMERA_RESUME 0x422 //ÉãÏñÍ·Á¬½Ó»Ö¸´ +#define MINOR_COM_NOT_CONNECT 0x423 //COM¿ÚδÁ¬½Ó +#define MINOR_COM_RESUME 0x424 //COM¿ÚÁ¬½Ó»Ö¸´ +#define MINOR_DEVICE_NOT_AUTHORIZE 0x425 //É豸δÊÚȨ +#define MINOR_PEOPLE_AND_ID_CARD_DEVICE_ONLINE 0x426 //ÈËÖ¤É豸ÔÚÏß +#define MINOR_PEOPLE_AND_ID_CARD_DEVICE_OFFLINE 0x427 //ÈËÖ¤É豸ÀëÏß +#define MINOR_LOCAL_LOGIN_LOCK 0x428 //±¾µØµÇ¼Ëø¶¨ +#define MINOR_LOCAL_LOGIN_UNLOCK 0x429 //±¾µØµÇ¼½âËø +#define MINOR_SUBMARINEBACK_COMM_BREAK 0x42a //Ó뷴DZ»Ø·þÎñÆ÷ͨÐŶϿª +#define MINOR_SUBMARINEBACK_COMM_RESUME 0x42b //Ó뷴DZ»Ø·þÎñÆ÷ͨÐŻָ´ +#define MINOR_MOTOR_SENSOR_EXCEPTION 0x42c //µç»ú»ò´«¸ÐÆ÷Òì³£ +#define MINOR_CAN_BUS_EXCEPTION 0x42d //CAN×ÜÏßÒì³£ +#define MINOR_CAN_BUS_RESUME 0x42e //CAN×ÜÏ߻ָ´ +#define MINOR_GATE_TEMPERATURE_OVERRUN 0x42f //Õ¢»úÇ»Ìåζȳ¬ÏÞ +#define MINOR_IR_EMITTER_EXCEPTION 0x430 //ºìÍâ¶ÔÉäÒì³£ +#define MINOR_IR_EMITTER_RESUME 0x431 //ºìÍâ¶ÔÉä»Ö¸´ +#define MINOR_LAMP_BOARD_COMM_EXCEPTION 0x432 //µÆ°åͨÐÅÒì³£ +#define MINOR_LAMP_BOARD_COMM_RESUME 0x433 //µÆ°åͨÐŻָ´ +#define MINOR_IR_ADAPTOR_COMM_EXCEPTION 0x434 //ºìÍâת½Ó°åͨÐÅÒì³£ +#define MINOR_IR_ADAPTOR_COMM_RESUME 0x435 //ºìÍâת½Ó°åͨÐŻָ´ +#define MINOR_PRINTER_ONLINE 0x436 //´òÓ¡»úÔÚÏß +#define MINOR_PRINTER_OFFLINE 0x437 //´òÓ¡»úÀëÏß +#define MINOR_4G_MOUDLE_ONLINE 0x438 //4GÄ£¿éÔÚÏß +#define MINOR_4G_MOUDLE_OFFLINE 0x439 //4GÄ£¿éÀëÏß +#define MINOR_DSP_START_FAILED 0x43a //DSPÆô¶¯Ê§°Ü +#define MINOR_SMART_REGULATION_NOT_ALLOWED 0x43b //ÖÇÄܹæÔò²»Ö§³Ö +#define MINOR_AUXILIARY_BOARD_OFFLINE 0x43c //¸¨Öú°åµôÏß +#define MINOR_AUXILIARY_BOARD_RESUME 0x43d //¸¨Öú°åµôÏ߻ָ´ +#define MINOR_IDCARD_SECURITY_MOUDLE_EXCEPTION 0x43e //Éí·ÝÖ¤°²È«Ä£¿éÒì³£ +#define MINOR_IDCARD_SECURITY_MOUDLE_RESUME 0x43f //Éí·ÝÖ¤°²È«Ä£¿é»Ö¸´ +#define MINOR_FP_PERIPHERAL_EXCEPTION 0x440 //Ö¸ÎƲɼ¯ÍâÉèÒì³£ +#define MINOR_FP_PERIPHERAL_RESUME 0x441 //Ö¸ÎƲɼ¯ÍâÉè»Ö¸´ +#define MINOR_REPLAY_ATTACK 0x442 //Öظ´¹¥»÷ +#define MINOR_TLS_ABNORMAL 0x443 //TLSͨÐÅÒì³£ +#define MINOR_SMART_PLATE_OFFLINE 0x444 //ÖÇÅÌÀëÏß +#define MINOR_SMART_PLATE_ONLINE 0x445 //ÖÇÅÌÉÏÏß +#define MINOR_REFUND_LOCKED 0x446 //¾À´íËø¶¨ +#define MINOR_CODER_ONLINE 0x447 //±àÂëÅÌÔÚÏß +#define MINOR_CODER_OFFLINE 0x448 //±àÂëÅÌÀëÏß +#define MINOR_KEYBOARD_OFFLINE 0x449 //С¼üÅÌÀëÏß +#define MINOR_KEYBOARD_ONLINE 0x44a //С¼üÅÌÉÏÏß +#define MINOR_5G_MOUDLE_ONLINE 0x44b //5GÄ£¿éÔÚÏß +#define MINOR_5G_MOUDLE_OFFLINE 0x44c //5GÄ£¿éÀëÏß +#define MINOR_EXTEND_MODULE_ONLINE 0x44d //À©Õ¹Ä£¿éÔÚÏߣ¨ÍØչģ¿é£ºÖ÷ÒªÊÇÒÔusbÐÎʽÍâ½ÓÉí·ÝÖ¤¶Á¿¨Æ÷¡¢Ö¸ÎÆ´«¸ÐÆ÷¡¢À¶ÑÀ¡¢¶þάÂëµÈÄ£¿é£¬Ö§³ÖÈȲå°Î£© +#define MINOR_EXTEND_MODULE_OFFLINE 0x44e //À©Õ¹Ä£¿éÀëÏߣ¨ÍØչģ¿é£ºÖ÷ÒªÊÇÒÔusbÐÎʽÍâ½ÓÉí·ÝÖ¤¶Á¿¨Æ÷¡¢Ö¸ÎÆ´«¸ÐÆ÷¡¢À¶ÑÀ¡¢¶þάÂëµÈÄ£¿é£¬Ö§³ÖÈȲå°Î£© +#define MINOR_INTERLOCK_SERVER_DISCONNECTED 0x44f //Óë¶àÃÅ»¥Ëø·þÎñÆ÷ͨÐŶϿª +#define MINOR_INTERLOCK_SERVER_CONNECTED 0x450 //Óë¶àÃÅ»¥Ëø·þÎñÆ÷ͨÐŻָ´ +#define MINOR_QRCODE_READER_OFFLINE 0x451 //¶þάÂëÔĶÁÆ÷ÀëÏß +#define MINOR_QRCODE_READER_ONLINE 0x452 //¶þάÂëÔĶÁÆ÷ÔÚÏß +#define MINOR_HEALTH_INFO_ABNORMAL_LOCK 0x453 //½¡¿µÐÅÏ¢Òì³£Ëø¶¨ +#define MINOR_HEALTH_INFO_ABNORMAL_UNLOCK 0x454 //½¡¿µÐÅÏ¢Òì³£½âËø + +#define MINOR_EXCEPTION_CUSTOM1 0x900 //ÃŽû×Ô¶¨ÒåÒì³£1 +#define MINOR_EXCEPTION_CUSTOM2 0x901 //ÃŽû×Ô¶¨ÒåÒì³£2 +#define MINOR_EXCEPTION_CUSTOM3 0x902 //ÃŽû×Ô¶¨ÒåÒì³£3 +#define MINOR_EXCEPTION_CUSTOM4 0x903 //ÃŽû×Ô¶¨ÒåÒì³£4 +#define MINOR_EXCEPTION_CUSTOM5 0x904 //ÃŽû×Ô¶¨ÒåÒì³£5 +#define MINOR_EXCEPTION_CUSTOM6 0x905 //ÃŽû×Ô¶¨ÒåÒì³£6 +#define MINOR_EXCEPTION_CUSTOM7 0x906 //ÃŽû×Ô¶¨ÒåÒì³£7 +#define MINOR_EXCEPTION_CUSTOM8 0x907 //ÃŽû×Ô¶¨ÒåÒì³£8 +#define MINOR_EXCEPTION_CUSTOM9 0x908 //ÃŽû×Ô¶¨ÒåÒì³£9 +#define MINOR_EXCEPTION_CUSTOM10 0x909 //ÃŽû×Ô¶¨ÒåÒì³£10 +#define MINOR_EXCEPTION_CUSTOM11 0x90a //ÃŽû×Ô¶¨ÒåÒì³£11 +#define MINOR_EXCEPTION_CUSTOM12 0x90b //ÃŽû×Ô¶¨ÒåÒì³£12 +#define MINOR_EXCEPTION_CUSTOM13 0x90c //ÃŽû×Ô¶¨ÒåÒì³£13 +#define MINOR_EXCEPTION_CUSTOM14 0x90d //ÃŽû×Ô¶¨ÒåÒì³£14 +#define MINOR_EXCEPTION_CUSTOM15 0x90e //ÃŽû×Ô¶¨ÒåÒì³£15 +#define MINOR_EXCEPTION_CUSTOM16 0x90f //ÃŽû×Ô¶¨ÒåÒì³£16 +#define MINOR_EXCEPTION_CUSTOM17 0x910 //ÃŽû×Ô¶¨ÒåÒì³£17 +#define MINOR_EXCEPTION_CUSTOM18 0x911 //ÃŽû×Ô¶¨ÒåÒì³£18 +#define MINOR_EXCEPTION_CUSTOM19 0x912 //ÃŽû×Ô¶¨ÒåÒì³£19 +#define MINOR_EXCEPTION_CUSTOM20 0x913 //ÃŽû×Ô¶¨ÒåÒì³£20 +#define MINOR_EXCEPTION_CUSTOM21 0x914 //ÃŽû×Ô¶¨ÒåÒì³£21 +#define MINOR_EXCEPTION_CUSTOM22 0x915 //ÃŽû×Ô¶¨ÒåÒì³£22 +#define MINOR_EXCEPTION_CUSTOM23 0x916 //ÃŽû×Ô¶¨ÒåÒì³£23 +#define MINOR_EXCEPTION_CUSTOM24 0x917 //ÃŽû×Ô¶¨ÒåÒì³£24 +#define MINOR_EXCEPTION_CUSTOM25 0x918 //ÃŽû×Ô¶¨ÒåÒì³£25 +#define MINOR_EXCEPTION_CUSTOM26 0x919 //ÃŽû×Ô¶¨ÒåÒì³£26 +#define MINOR_EXCEPTION_CUSTOM27 0x91a //ÃŽû×Ô¶¨ÒåÒì³£27 +#define MINOR_EXCEPTION_CUSTOM28 0x91b //ÃŽû×Ô¶¨ÒåÒì³£28 +#define MINOR_EXCEPTION_CUSTOM29 0x91c //ÃŽû×Ô¶¨ÒåÒì³£29 +#define MINOR_EXCEPTION_CUSTOM30 0x91d //ÃŽû×Ô¶¨ÒåÒì³£30 +#define MINOR_EXCEPTION_CUSTOM31 0x91e //ÃŽû×Ô¶¨ÒåÒì³£31 +#define MINOR_EXCEPTION_CUSTOM32 0x91f //ÃŽû×Ô¶¨ÒåÒì³£32 +#define MINOR_EXCEPTION_CUSTOM33 0x920 //ÃŽû×Ô¶¨ÒåÒì³£33 +#define MINOR_EXCEPTION_CUSTOM34 0x921 //ÃŽû×Ô¶¨ÒåÒì³£34 +#define MINOR_EXCEPTION_CUSTOM35 0x922 //ÃŽû×Ô¶¨ÒåÒì³£35 +#define MINOR_EXCEPTION_CUSTOM36 0x923 //ÃŽû×Ô¶¨ÒåÒì³£36 +#define MINOR_EXCEPTION_CUSTOM37 0x924 //ÃŽû×Ô¶¨ÒåÒì³£37 +#define MINOR_EXCEPTION_CUSTOM38 0x925 //ÃŽû×Ô¶¨ÒåÒì³£38 +#define MINOR_EXCEPTION_CUSTOM39 0x926 //ÃŽû×Ô¶¨ÒåÒì³£39 +#define MINOR_EXCEPTION_CUSTOM40 0x927 //ÃŽû×Ô¶¨ÒåÒì³£40 +#define MINOR_EXCEPTION_CUSTOM41 0x928 //ÃŽû×Ô¶¨ÒåÒì³£41 +#define MINOR_EXCEPTION_CUSTOM42 0x929 //ÃŽû×Ô¶¨ÒåÒì³£42 +#define MINOR_EXCEPTION_CUSTOM43 0x92a //ÃŽû×Ô¶¨ÒåÒì³£43 +#define MINOR_EXCEPTION_CUSTOM44 0x92b //ÃŽû×Ô¶¨ÒåÒì³£44 +#define MINOR_EXCEPTION_CUSTOM45 0x92c //ÃŽû×Ô¶¨ÒåÒì³£45 +#define MINOR_EXCEPTION_CUSTOM46 0x92d //ÃŽû×Ô¶¨ÒåÒì³£46 +#define MINOR_EXCEPTION_CUSTOM47 0x92e //ÃŽû×Ô¶¨ÒåÒì³£47 +#define MINOR_EXCEPTION_CUSTOM48 0x92f //ÃŽû×Ô¶¨ÒåÒì³£48 +#define MINOR_EXCEPTION_CUSTOM49 0x930 //ÃŽû×Ô¶¨ÒåÒì³£49 +#define MINOR_EXCEPTION_CUSTOM50 0x931 //ÃŽû×Ô¶¨ÒåÒì³£50 +#define MINOR_EXCEPTION_CUSTOM51 0x932 //ÃŽû×Ô¶¨ÒåÒì³£51 +#define MINOR_EXCEPTION_CUSTOM52 0x933 //ÃŽû×Ô¶¨ÒåÒì³£52 +#define MINOR_EXCEPTION_CUSTOM53 0x934 //ÃŽû×Ô¶¨ÒåÒì³£53 +#define MINOR_EXCEPTION_CUSTOM54 0x935 //ÃŽû×Ô¶¨ÒåÒì³£54 +#define MINOR_EXCEPTION_CUSTOM55 0x936 //ÃŽû×Ô¶¨ÒåÒì³£55 +#define MINOR_EXCEPTION_CUSTOM56 0x937 //ÃŽû×Ô¶¨ÒåÒì³£56 +#define MINOR_EXCEPTION_CUSTOM57 0x938 //ÃŽû×Ô¶¨ÒåÒì³£57 +#define MINOR_EXCEPTION_CUSTOM58 0x939 //ÃŽû×Ô¶¨ÒåÒì³£58 +#define MINOR_EXCEPTION_CUSTOM59 0x93a //ÃŽû×Ô¶¨ÒåÒì³£59 +#define MINOR_EXCEPTION_CUSTOM60 0x93b //ÃŽû×Ô¶¨ÒåÒì³£60 +#define MINOR_EXCEPTION_CUSTOM61 0x93c //ÃŽû×Ô¶¨ÒåÒì³£61 +#define MINOR_EXCEPTION_CUSTOM62 0x93d //ÃŽû×Ô¶¨ÒåÒì³£62 +#define MINOR_EXCEPTION_CUSTOM63 0x93e //ÃŽû×Ô¶¨ÒåÒì³£63 +#define MINOR_EXCEPTION_CUSTOM64 0x93f //ÃŽû×Ô¶¨ÒåÒì³£64 +#define MINOR_SWITCH_WIRED_NETWORK 0x950 //Çл»ÓÐÏßÍøÂç +#define MINOR_SWITCH_WIRELESS_NETWORK 0x951 //Çл»ÎÞÏßÍøÂç +#define MINOR_LOCK_ONLINE_RESUME 0x952 //ÖÇÄÜËø»Ö¸´ÉÏÏß + + + +//2018-04-23 ͨÓÃÎïÁªÍø¹ØÒì³£ÈÕÖ¾ÀàÐÍ +#define MINOR_ALARMHOST_WDT_RESET 0x1003 //WDT ¸´Î» +#define MINOR_ALARMHOST_RTC_EXCEPTION 0x1007 //RTCʵʱʱÖÓÒì³£ + +#define MINOR_ALARMHOST_TEL_LINE_CONNECT_FAILURE 0x100a //µç»°ÏßÁ¬½Ó¶Ï +#define MINOR_ALARMHOST_TEL_LINE_CONNECT_RESTORE 0x100b //µç»°ÏßÁ¬½Ó»Ö¸´ +#define MINOR_ALARMHOST_EXPANDER_BUS_LOSS 0x100c //À©Õ¹×ÜÏßÄ£¿éµôÏß +#define MINOR_ALARMHOST_EXPANDER_BUS_RESTORE 0x100d //À©Õ¹×ÜÏßÄ£¿éµôÏ߻ָ´ +#define MINOR_ALARMHOST_KEYPAD_BUS_LOSS 0x100e //¼üÅÌ×ÜÏßÄ£¿éµôÏß +#define MINOR_ALARMHOST_KEYPAD_BUS_RESTORE 0x100f //¼üÅÌ×ÜÏßÄ£¿éµôÏ߻ָ´ +#define MINOR_ALARMHOST_SENSOR_FAILURE 0x1010 //Ä£ÄâÁ¿´«¸ÐÆ÷¹ÊÕÏ +#define MINOR_ALARMHOST_SENSOR_RESTORE 0x1011 //Ä£ÄâÁ¿´«¸ÐÆ÷»Ö¸´ +#define MINOR_ALARMHOST_RS485_CONNECT_FAILURE 0x1012 //RS485ͨµÀÁ¬½Ó¶Ï +#define MINOR_ALARMHOST_RS485_CONNECT_RESTORE 0x1013 //RS485ͨµÀÁ¬½Ó¶Ï»Ö¸´ + +//¡°ÓÐÏßÍøÂçÒì³£¡±ºÍ¡°ÓÐÏßÍøÂçÒì³£»Ö¸´¡±ÕâÁ½¸öÈÕÖ¾¸ú¡°ÍøÂçÁ¬½Ó¶Ï¡±¡°ÍøÂçÁ¬½Ó»Ö¸´¡±ÕâÁ½¸öÈÕ־ʱһÑùµÄ£¬ÇÒûÓÐÉ豸֧³Ö¡°ÓÐÏßÍøÂçÒì³£¡±ºÍ¡°ÓÐÏßÍøÂçÒì³£»Ö¸´¡±ÕâÁ½ÖÖÀàÐÍ¡£ +#define MINOR_ALARMHOST_WIRED_NETWORK_ABNORMAL 0x1015 //ÓÐÏßÍøÂçÒì³£ +#define MINOR_ALARMHOST_WIRED_NETWORK_RESTORE 0x1016 //ÓÐÏßÍøÂç»Ö¸´Õý³£ +#define MINOR_ALARMHOST_GPRS_ABNORMAL 0x1017 //GPRSͨÐÅÒì³£ +#define MINOR_ALARMHOST_GPRS_RESTORE 0x1018 //GPRS»Ö¸´Õý³£ +#define MINOR_ALARMHOST_3G_ABNORMAL 0x1019 //3GͨÐÅÒì³£ +#define MINOR_ALARMHOST_3G_RESTORE 0x101a //3G»Ö¸´Õý³£ +#define MINOR_ALARMHOST_SIM_CARD_ABNORMAL 0x101b //SIM¿¨Òì³£ +#define MINOR_ALARMHOST_SIM_CARD_RESTORE 0x101c //SIM¿¨»Ö¸´Õý³£ + +#define MINOR_FORMAT_HDD_ERROR 0x1026 //Ô¶³Ì¸ñʽ»¯Ó²ÅÌʧ°Ü +#define MINOR_USB_ERROR 0x1027 //USBͨÐŹÊÕÏ +#define MINOR_USB_RESTORE 0x1028 //USBͨÐŹÊÕϻָ´ +#define MINOR_PRINT_ERROR 0x1029 //´òÓ¡»ú¹ÊÕÏ +#define MINOR_PRINT_RESTORE 0x1030 //´òÓ¡»ú¹ÊÕϻָ´ +#define MINOR_ALARMHOST_SUBSYSTEM_COMMUNICATION_ERROR 0x1031 //×Ó°åͨѶ´íÎó + +#define MINOR_MCU_RESTART 0x1035 //MCUÖØÆô +#define MINOR_GPRS_MODULE_FAULT 0x1036 //GPRSÄ£¿é¹ÊÕÏ +#define MINOR_TELEPHONE_MODULE_FAULT 0x1037 //µç»°Ä£¿é¹ÊÕÏ +#define MINOR_WIFI_ABNORMAL 0x1038 //WIFIͨÐÅÒì³£ +#define MINOR_WIFI_RESTORE 0x1039 //WIFI»Ö¸´Õý³£ +#define MINOR_RF_ABNORMAL 0x103a //RFÐźÅÒì³£ +#define MINOR_RF_RESTORE 0x103b //RFÐźŻָ´Õý³£ +#define MINOR_DETECTOR_ONLINE 0x103c //̽²âÆ÷ÔÚÏß +#define MINOR_DETECTOR_OFFLINE 0x103d //̽²âÆ÷ÀëÏß +#define MINOR_DETECTOR_BATTERY_NORMAL 0x103e //̽²âÆ÷µçÁ¿Õý³£ +#define MINOR_DETECTOR_BATTERY_LOW 0x103f //̽²âÆ÷µçÁ¿Ç·Ñ¹ +#define MINOR_DATA_TRAFFIC_OVERFLOW 0x1040 //Á÷Á¿³¬¶î +#define MINOR_ALARMHOST_ZONE_MODULE_LOSS 0x1041 //·ÀÇøÄ£¿éµôÏß +#define MINOR_ALARMHOST_ZONE_MODULE_RESTORE 0x1042 //·ÀÇøÄ£¿éµôÏ߻ָ´ +#define MINOR_WIRELESS_OUTPUT_LOSS 0x1043 //ÎÞÏßÊä³öÄ£¿éÀëÏß +#define MINOR_WIRELESS_OUTPUT_RESTORE 0x1044 //ÎÞÏßÊä³öÄ£¿é»Ö¸´ÔÚÏß +#define MINOR_WIRELESS_REPEATER_LOSS 0x1045 //ÎÞÏßÖмÌÆ÷ÀëÏß +#define MINOR_WIRELESS_REPEATER_RESTORE 0x1046 //ÎÞÏßÖмÌÆ÷»Ö¸´ÔÚÏß +#define MINOR_ALARMHOST_TRIGGER_MODULE_LOSS 0x1047 //´¥·¢Æ÷Ä£¿éµôÏß +#define MINOR_ALARMHOST_TRIGGER_MODULE_RESTORE 0x1048 //´¥·¢Æ÷Ä£¿éµôÏ߻ָ´ +#define MINOR_ALARMHOST_WIRELESS_SIREN_LOSS 0x1049 //ÎÞÏß¾¯ºÅÀëÏß +#define MINOR_ALARMHOST_WIRELESS_SIREN_RESTORE 0x104a //ÎÞÏß¾¯ºÅ»Ö¸´ÔÚÏß +#define MINOR_TX1_SUB_SYSTEM_EXCEPTION 0x1050 /*TX1×ÓϵͳÒì³£*/ +#define MINOR_TX1_REBOOT_EXCEPTION 0x1051 /*TX1ϵͳÒì³£ÖØÆô*/ +#define MINOR_TX1_SUB_SYSTEM_LOSS 0x1052 /*ÖÇÄÜ×ÓϵͳÒì³£ÀëÏß*/ +#define MINOR_TX1_SUB_SYSTEM_RESTORE 0x1053 /*ÖÇÄÜ×ÓϵͳÀëÏ߻ָ´*/ +#define MINOR_WIRELESS_SPEED_EXCEPTION 0x1054 //ÎÞÏß´«ÊäËÙÂÊÒì³£ +#define MINOR_SUB_BOARD_HEARTBEAT_EXCEPTION 0x1055 //×Ó°åÐÄÌøÒì³£ +#define MINOR_HOTSTANDBY__EXCEPTION 0x1056 //Èȱ¸Òì³£ +#define MINOR_PRODUCTIONDATA_EXCEPTION 0x1057 //Éú²úÊý¾ÝÒì³£ + + +//LED Òì³£´ÎÀàÐÍ 0x1201~0x1300 +#define MINOR_LED_SYSTEM_EXCEPTION 0x1201 //LEDϵͳÒì³£ +#define MINOR_FLASH_NOTENOUGH_EXCEPTION 0x1202 //FLASH¿Õ¼ä²»×ã + +#define MINOR_LOG_EXCEPTION 0x1301 //ÈÕÖ¾ÅÌÒì³£ + +//[add]by silujie 2013-3-22 14:16 +//0x2000~0x3fff ΪÉ豸±¨¾¯ÈÕÖ¾ +//0x4000~0x5000 ΪÉ豸Òì³£ÈÕÖ¾ +#define MINOR_SUBSYSTEM_IP_CONFLICT 0x4000 //×Ó°åIP³åÍ» +#define MINOR_SUBSYSTEM_NET_BROKEN 0x4001 //×Ó°å¶ÏÍø +#define MINOR_FAN_ABNORMAL 0x4002 //·çÉÈÒì³£ +#define MINOR_BACKPANEL_TEMPERATURE_ABNORMAL 0x4003 //±³°åζÈÒì³£ + +#define MINOR_SDCARD_ABNORMAL 0x4004 //SD¿¨²»½¡¿µ +#define MINOR_SDCARD_DAMAGE 0x4005 //SD¿¨Ë𻵠+#define MINOR_POC_ABNORMAL 0x4006 //É豸POCÄ£¿éÒì³£ +#define MINOR_MAIN_POWER_FAULT 0x4007 //Ö÷µç¹ÊÕÏ +#define MINOR_BACK_UP_POWER_FAULT 0x4008 //±¸µç¹ÊÕÏ +#define MINOR_TAMPER_FAULT 0x4009 //·À²ð¹ÊÕÏ +#define MINOR_RS232_FAULT 0x400a //232×ÜÏß¹ÊÕÏ +#define MINOR_RS485_FAULT 0x400b //485×ÜÏß¹ÊÕÏ +#define MINOR_LAN_STATUS_FAULT 0x400c //LANÍøÏß½ÓÈë״̬¹ÊÕÏ +#define MINOR_LAN_LINK1_FAULT 0x400d //LANÁ´Â·1¹ÊÕÏ +#define MINOR_LAN_LINK2_FAULT 0x400e //LANÁ´Â·2¹ÊÕÏ +#define MINOR_SIM_CARD_STATUS_FAULT 0x400f //4G-SIM¿¨×´Ì¬¹ÊÕÏ +#define MINOR_4G_LINK1_FAULT 0x4010 //4GÁ´Â·1¹ÊÕÏ +#define MINOR_4G_LINK2_FAULT 0x4011 //4GÁ´Â·2¹ÊÕÏ +#define MINOR_OTHER_FAULT 0x4012 //ÆäËû¹ÊÕÏ +#define MINOR_FIRE_CONTROL_CONNECT_FAULT 0x4013 //ÓëÏû¿ØÖ÷»úÁ¬½Ó¹ÊÕÏ +#define MINOR_SENSOR_SHORT_CIRCUIT 0x4014 //´«¸ÐÆ÷¶Ì· +#define MINOR_SENSOR_OPEN_CIRCUIT 0x4015 //´«¸ÐÆ÷¶Ï· +#define MINOR_SENSOR_MIS_CONNECT 0x4016 //´«¸ÐÆ÷´í½Ó +#define MINOR_SENSOR_FAULT_RESTORE 0x4017 //´«¸ÐÆ÷¹ÊÕϻָ´ +#define MINOR_DEVICE_FAULT 0x4018 //É豸¹ÊÕÏ +#define MINOR_OVERVOLTAGE 0X4019 //µçÔ´µçѹ¹ý¸ß +#define MINOR_UNDERVOLTAGE 0X401a //µçÔ´µçѹ¹ýµÍ +#define MINOR_PANLOCKING 0x401b //ÔÆ̨ˮƽ¶Âת +#define MINOR_TILTLOCKING 0x401c //ÔÆ̨´¹Ö±¶Âת +#define MINOR_SUBBOARD_TEMPERATURE_ABNORMAL 0x401d //×Ó°åζÈÒì³£ +#define MINOR_EZVIZ_UPGRADE_EXCEPTION 0x401e //өʯÉý¼¶Òì³£ + +//өʯÏà¹Ø²Ù×÷Òì³£ÈÕÖ¾ +#define MINOR_EZVIZ_OPERATION_ABNORMAL 0x4020 //өʯ²Ù×÷Òì³£ + +#define MINOR_IFRAME_IS_TOO_LARGE 0x4030 //Ô¤ÀÀ/»Ø·ÅʱIÖ¡¹ý´ó + +/* ²Ù×÷ */ +//Ö÷ÀàÐÍ +#define MAJOR_OPERATION 0x3 + +//´ÎÀàÐÍ +#define MINOR_VCA_MOTIONEXCEPTION 0x29 //ÖÇÄÜÕì²âÒì³£ +#define MINOR_START_DVR 0x41 /* ¿ª»ú */ +#define MINOR_STOP_DVR 0x42 /* ¹Ø»ú */ +#define MINOR_STOP_ABNORMAL 0x43 /* Òì³£¹Ø»ú */ +#define MINOR_REBOOT_DVR 0x44 /*±¾µØÖØÆôÉ豸*/ + +#define MINOR_LOCAL_LOGIN 0x50 /* ±¾µØµÇ½ */ +#define MINOR_LOCAL_LOGOUT 0x51 /* ±¾µØ×¢ÏúµÇ½ */ +#define MINOR_LOCAL_CFG_PARM 0x52 /* ±¾µØÅäÖòÎÊý */ +#define MINOR_LOCAL_PLAYBYFILE 0x53 /* ±¾µØ°´Îļþ»Ø·Å»òÏÂÔØ */ +#define MINOR_LOCAL_PLAYBYTIME 0x54 /* ±¾µØ°´Ê±¼ä»Ø·Å»òÏÂÔØ*/ +#define MINOR_LOCAL_START_REC 0x55 /* ±¾µØ¿ªÊ¼Â¼Ïñ */ +#define MINOR_LOCAL_STOP_REC 0x56 /* ±¾µØֹͣ¼Ïñ */ +#define MINOR_LOCAL_PTZCTRL 0x57 /* ±¾µØÔÆ̨¿ØÖÆ */ +#define MINOR_LOCAL_PREVIEW 0x58 /* ±¾µØÔ¤ÀÀ (±£Áô²»Ê¹ÓÃ)*/ +#define MINOR_LOCAL_MODIFY_TIME 0x59 /* ±¾µØÐÞ¸Äʱ¼ä(±£Áô²»Ê¹ÓÃ) */ +#define MINOR_LOCAL_UPGRADE 0x5a /* ±¾µØÉý¼¶ */ +#define MINOR_LOCAL_RECFILE_OUTPUT 0x5b /* ±¾µØ±¸·Ý¼ÏóÎļþ */ +#define MINOR_LOCAL_FORMAT_HDD 0x5c /* ±¾µØ³õʼ»¯Ó²ÅÌ */ +#define MINOR_LOCAL_CFGFILE_OUTPUT 0x5d /* µ¼³ö±¾µØÅäÖÃÎļþ */ +#define MINOR_LOCAL_CFGFILE_INPUT 0x5e /* µ¼Èë±¾µØÅäÖÃÎļþ */ +#define MINOR_LOCAL_COPYFILE 0x5f /* ±¾µØ±¸·ÝÎļþ */ +#define MINOR_LOCAL_LOCKFILE 0x60 /* ±¾µØËø¶¨Â¼ÏñÎļþ */ +#define MINOR_LOCAL_UNLOCKFILE 0x61 /* ±¾µØ½âËø¼ÏñÎļþ */ +#define MINOR_LOCAL_DVR_ALARM 0x62 /* ±¾µØÊÖ¶¯Çå³ýºÍ´¥·¢±¨¾¯*/ +#define MINOR_IPC_ADD 0x63 /* ±¾µØÌí¼ÓIPC */ +#define MINOR_IPC_DEL 0x64 /* ±¾µØɾ³ýIPC */ +#define MINOR_IPC_SET 0x65 /* ±¾µØÉèÖÃIPC */ +#define MINOR_LOCAL_START_BACKUP 0x66 /* ±¾µØ¿ªÊ¼±¸·Ý */ +#define MINOR_LOCAL_STOP_BACKUP 0x67 /* ±¾µØÍ£Ö¹±¸·Ý*/ +#define MINOR_LOCAL_COPYFILE_START_TIME 0x68 /* ±¾µØ±¸·Ý¿ªÊ¼Ê±¼ä*/ +#define MINOR_LOCAL_COPYFILE_END_TIME 0x69 /* ±¾µØ±¸·Ý½áÊøʱ¼ä*/ +#define MINOR_LOCAL_ADD_NAS 0x6a /*±¾µØÌí¼ÓÍøÂçÓ²ÅÌ £¨nfs¡¢iscsi£©*/ +#define MINOR_LOCAL_DEL_NAS 0x6b /* ±¾µØɾ³ýnasÅÌ £¨nfs¡¢iscsi£©*/ +#define MINOR_LOCAL_SET_NAS 0x6c /* ±¾µØÉèÖÃnasÅÌ £¨nfs¡¢iscsi£©*/ +#define MINOR_LOCAL_RESET_PASSWD 0x6d /* ±¾µØ»Ö¸´¹ÜÀíԱĬÈÏÃÜÂë*/ + +#define MINOR_REMOTE_LOGIN 0x70 /* Ô¶³ÌµÇ¼ */ +#define MINOR_REMOTE_LOGOUT 0x71 /* Ô¶³Ì×¢ÏúµÇ½ */ +#define MINOR_REMOTE_START_REC 0x72 /* Ô¶³Ì¿ªÊ¼Â¼Ïñ */ +#define MINOR_REMOTE_STOP_REC 0x73 /* Ô¶³Ìֹͣ¼Ïñ */ +#define MINOR_START_TRANS_CHAN 0x74 /* ¿ªÊ¼Í¸Ã÷´«Êä */ +#define MINOR_STOP_TRANS_CHAN 0x75 /* ֹͣ͸Ã÷´«Êä */ +#define MINOR_REMOTE_GET_PARM 0x76 /* Ô¶³Ì»ñÈ¡²ÎÊý */ +#define MINOR_REMOTE_CFG_PARM 0x77 /* Ô¶³ÌÅäÖòÎÊý */ +#define MINOR_REMOTE_GET_STATUS 0x78 /* Ô¶³Ì»ñȡ״̬ */ +#define MINOR_REMOTE_ARM 0x79 /* Ô¶³Ì²¼·À */ +#define MINOR_REMOTE_DISARM 0x7a /* Ô¶³Ì³··À */ +#define MINOR_REMOTE_REBOOT 0x7b /* Ô¶³ÌÖØÆô */ +#define MINOR_START_VT 0x7c /* ¿ªÊ¼ÓïÒô¶Ô½² */ +#define MINOR_STOP_VT 0x7d /* Í£Ö¹ÓïÒô¶Ô½² */ +#define MINOR_REMOTE_UPGRADE 0x7e /* Ô¶³ÌÉý¼¶ */ +#define MINOR_REMOTE_PLAYBYFILE 0x7f /* Ô¶³Ì°´Îļþ»Ø·Å»òÏÂÔØ */ +#define MINOR_REMOTE_PLAYBYTIME 0x80 /* Ô¶³Ì°´Ê±¼ä»Ø·Å»òÏÂÔØ */ +#define MINOR_REMOTE_PTZCTRL 0x81 /* Ô¶³ÌÔÆ̨¿ØÖÆ */ +#define MINOR_REMOTE_FORMAT_HDD 0x82 /* Ô¶³Ì¸ñʽ»¯Ó²ÅÌ */ +#define MINOR_REMOTE_STOP 0x83 /* Ô¶³Ì¹Ø»ú */ +#define MINOR_REMOTE_LOCKFILE 0x84 /* Ô¶³ÌËø¶¨Îļþ */ +#define MINOR_REMOTE_UNLOCKFILE 0x85 /* Ô¶³Ì½âËøÎļþ */ +#define MINOR_REMOTE_CFGFILE_OUTPUT 0x86 /* Ô¶³Ìµ¼³öÅäÖÃÎļþ */ +#define MINOR_REMOTE_CFGFILE_INTPUT 0x87 /* Ô¶³Ìµ¼ÈëÅäÖÃÎļþ */ +#define MINOR_REMOTE_RECFILE_OUTPUT 0x88 /* Ô¶³Ìµ¼³ö¼ÏóÎļþ */ +#define MINOR_REMOTE_DVR_ALARM 0x89 /* Ô¶³ÌÊÖ¶¯Çå³ýºÍ´¥·¢±¨¾¯*/ +#define MINOR_REMOTE_IPC_ADD 0x8a /* Ô¶³ÌÌí¼ÓIPC */ +#define MINOR_REMOTE_IPC_DEL 0x8b /* Ô¶³Ìɾ³ýIPC */ +#define MINOR_REMOTE_IPC_SET 0x8c /* Ô¶³ÌÉèÖÃIPC */ +#define MINOR_REBOOT_VCA_LIB 0x8d /*ÖØÆôÖÇÄÜ¿â*/ +#define MINOR_REMOTE_ADD_NAS 0x8e /* Ô¶³ÌÌí¼ÓnasÅÌ £¨nfs¡¢iscsi£©*/ +#define MINOR_REMOTE_DEL_NAS 0x8f /* Ô¶³Ìɾ³ýnasÅÌ £¨nfs¡¢iscsi£©*/ +#define MINOR_REMOTE_SET_NAS 0x90 /* Ô¶³ÌÉèÖÃnasÅÌ £¨nfs¡¢iscsi£©*/ +#define MINOR_LOCAL_OPERATE_LOCK 0x9d /* ±¾µØ²Ù×÷Ëø¶¨ */ +#define MINOR_LOCAL_OPERATE_UNLOCK 0x9e /* ±¾µØ²Ù×÷½â³ýËø¶¨ */ +#define MINOR_REMOTE_DELETE_HDISK 0x9a /* Ô¶³Ìɾ³ýÒì³£²»´æÔÚµÄÓ²ÅÌ */ +#define MINOR_REMOTE_LOAD_HDISK 0x9b /* Ô¶³Ì¼ÓÔØÓ²ÅÌ */ +#define MINOR_REMOTE_UNLOAD_HDISK 0x9c /* Ô¶³ÌжÔØÓ²ÅÌ */ +#define MINOR_SCHEDULE_ANGLECALIBRATION 0x139 /*¶¨ÆÚÇã½ÇУ׼*/ +#define MINOR_OTHER_OPERATE 0x200 /* ÆäËû²Ù×÷ */ + +//2010-05-26 Ôö¼ÓÉóѶDVRÈÕÖ¾ÀàÐÍ +#define MINOR_LOCAL_START_REC_CDRW 0x91 /* ±¾µØ¿ªÊ¼Ñ¶ÎÊ */ +#define MINOR_LOCAL_STOP_REC_CDRW 0x92 /* ±¾µØֹͣѶÎÊ */ +#define MINOR_REMOTE_START_REC_CDRW 0x93 /* Ô¶³Ì¿ªÊ¼Ñ¶ÎÊ */ +#define MINOR_REMOTE_STOP_REC_CDRW 0x94 /* Ô¶³ÌֹͣѶÎÊ */ + +#define MINOR_LOCAL_PIC_OUTPUT 0x95 /* ±¾µØ±¸·ÝͼƬÎļþ */ +#define MINOR_REMOTE_PIC_OUTPUT 0x96 /* Ô¶³Ì±¸·ÝͼƬÎļþ */ + +//2011-07-26 Ôö¼Ó81ÉóѶDVRÈÕÖ¾ÀàÐÍ +#define MINOR_LOCAL_INQUEST_RESUME 0x97 /* ±¾µØ»Ö¸´ÉóѶʼþ*/ +#define MINOR_REMOTE_INQUEST_RESUME 0x98 /* Ô¶³Ì»Ö¸´ÉóѶʼþ*/ + +//2013-01-23 Ôö¼Ó86¸ßÇåÉóѶNVR²Ù×÷ÈÕÖ¾ +#define MINOR_LOCAL_ADD_FILE 0x99 /*±¾µØµ¼ÈëÎļþ*/ +#define MINOR_LOCAL_DEL_FILE 0x9f /*±¾µØɾ³ýÉóѶ*/ +#define MINOR_REMOTE_INQUEST_ADD_FILE 0x100 /*Ô¶³Ìµ¼ÈëÎļþ*/ + +//2009-12-16 Ôö¼ÓÊÓƵ×ÛºÏƽ̨ÈÕÖ¾ÀàÐÍ +#define MINOR_SUBSYSTEMREBOOT 0xa0 /*ÊÓƵ×ÛºÏƽ̨£ºdm6467 Õý³£ÖØÆô*/ +#define MINOR_MATRIX_STARTTRANSFERVIDEO 0xa1 /*ÊÓƵ×ÛºÏƽ̨£º¾ØÕóÇл»¿ªÊ¼´«ÊäͼÏñ*/ +#define MINOR_MATRIX_STOPTRANSFERVIDEO 0xa2 /*ÊÓƵ×ÛºÏƽ̨£º¾ØÕóÇл»Í£Ö¹´«ÊäͼÏñ*/ +#define MINOR_REMOTE_SET_ALLSUBSYSTEM 0xa3 /*ÊÓƵ×ÛºÏƽ̨£ºÉèÖÃËùÓÐ6467×ÓϵͳÐÅÏ¢*/ +#define MINOR_REMOTE_GET_ALLSUBSYSTEM 0xa4 /*ÊÓƵ×ÛºÏƽ̨£º»ñÈ¡ËùÓÐ6467×ÓϵͳÐÅÏ¢*/ +#define MINOR_REMOTE_SET_PLANARRAY 0xa5 /*ÊÓƵ×ÛºÏƽ̨£ºÉèÖüƻ®ÂÖѲ×é*/ +#define MINOR_REMOTE_GET_PLANARRAY 0xa6 /*ÊÓƵ×ÛºÏƽ̨£º»ñÈ¡¼Æ»®ÂÖѲ×é*/ +#define MINOR_MATRIX_STARTTRANSFERAUDIO 0xa7 /*ÊÓƵ×ÛºÏƽ̨£º¾ØÕóÇл»¿ªÊ¼´«ÊäÒôƵ*/ +#define MINOR_MATRIX_STOPRANSFERAUDIO 0xa8 /*ÊÓƵ×ÛºÏƽ̨£º¾ØÕóÇл»Í£Ö¹´«ÊäÒôƵ*/ +#define MINOR_LOGON_CODESPITTER 0xa9 /*ÊÓƵ×ÛºÏƽ̨£ºµÇ½Âë·ÖÆ÷*/ +#define MINOR_LOGOFF_CODESPITTER 0xaa /*ÊÓƵ×ÛºÏƽ̨£ºÍ˳öÂë·ÖÆ÷*/ + +//2010-01-22 Ôö¼ÓÊÓƵ×ÛºÏƽ̨ÖнâÂëÆ÷²Ù×÷ÈÕÖ¾ +#define MINOR_START_DYNAMIC_DECODE 0xb0 /*¿ªÊ¼¶¯Ì¬½âÂë*/ +#define MINOR_STOP_DYNAMIC_DECODE 0xb1 /*Í£Ö¹¶¯Ì¬½âÂë*/ +#define MINOR_GET_CYC_CFG 0xb2 /*»ñÈ¡½âÂëÆ÷ͨµÀÂÖѲÅäÖÃ*/ +#define MINOR_SET_CYC_CFG 0xb3 /*ÉèÖýâÂëͨµÀÂÖѲÅäÖÃ*/ +#define MINOR_START_CYC_DECODE 0xb4 /*¿ªÊ¼ÂÖѲ½âÂë*/ +#define MINOR_STOP_CYC_DECODE 0xb5 /*Í£Ö¹ÂÖѲ½âÂë*/ +#define MINOR_GET_DECCHAN_STATUS 0xb6 /*»ñÈ¡½âÂëͨµÀ״̬*/ +#define MINOR_GET_DECCHAN_INFO 0xb7 /*»ñÈ¡½âÂëͨµÀµ±Ç°ÐÅÏ¢*/ +#define MINOR_START_PASSIVE_DEC 0xb8 /*¿ªÊ¼±»¶¯½âÂë*/ +#define MINOR_STOP_PASSIVE_DEC 0xb9 /*Í£Ö¹±»¶¯½âÂë*/ +#define MINOR_CTRL_PASSIVE_DEC 0xba /*¿ØÖƱ»¶¯½âÂë*/ +#define MINOR_RECON_PASSIVE_DEC 0xbb /*±»¶¯½âÂëÖØÁ¬*/ +#define MINOR_GET_DEC_CHAN_SW 0xbc /*»ñÈ¡½âÂëͨµÀ×Ü¿ª¹Ø*/ +#define MINOR_SET_DEC_CHAN_SW 0xbd /*ÉèÖýâÂëͨµÀ×Ü¿ª¹Ø*/ +#define MINOR_CTRL_DEC_CHAN_SCALE 0xbe /*½âÂëͨµÀËõ·Å¿ØÖÆ*/ +#define MINOR_SET_REMOTE_REPLAY 0xbf /*ÉèÖÃÔ¶³Ì»Ø·Å*/ +#define MINOR_GET_REMOTE_REPLAY 0xc0 /*»ñÈ¡Ô¶³Ì»Ø·Å״̬*/ +#define MINOR_CTRL_REMOTE_REPLAY 0xc1 /*Ô¶³Ì»Ø·Å¿ØÖÆ*/ +#define MINOR_SET_DISP_CFG 0xc2 /*ÉèÖÃÏÔʾͨµÀ*/ +#define MINOR_GET_DISP_CFG 0xc3 /*»ñÈ¡ÏÔʾͨµÀÉèÖÃ*/ +#define MINOR_SET_PLANTABLE 0xc4 /*ÉèÖüƻ®ÂÖѲ±í*/ +#define MINOR_GET_PLANTABLE 0xc5 /*»ñÈ¡¼Æ»®ÂÖѲ±í*/ +#define MINOR_START_PPPPOE 0xc6 /*¿ªÊ¼PPPoEÁ¬½Ó*/ +#define MINOR_STOP_PPPPOE 0xc7 /*½áÊøPPPoEÁ¬½Ó*/ +#define MINOR_UPLOAD_LOGO 0xc8 /*ÉÏ´«LOGO*/ +//ÍÆģʽ²Ù×÷ÈÕÖ¾ +#define MINOR_LOCAL_PIN 0xc9 /* ±¾µØPIN¹¦ÄܲÙ×÷ */ +#define MINOR_LOCAL_DIAL 0xca /* ±¾µØÊÖ¶¯Æô¶¯¶Ï¿ª²¦ºÅ */ +#define MINOR_SMS_CONTROL 0xcb /* ¶ÌÐÅ¿ØÖÆÉÏÏÂÏß */ +#define MINOR_CALL_ONLINE 0xcc /* ºô½Ð¿ØÖÆÉÏÏß */ +#define MINOR_REMOTE_PIN 0xcd /* Ô¶³ÌPIN¹¦ÄܲÙ×÷ */ + +//2010-12-16 ±¨¾¯°åÈÕÖ¾ +#define MINOR_REMOTE_BYPASS 0xd0 /* Ô¶³ÌÅÔ·*/ +#define MINOR_REMOTE_UNBYPASS 0xd1 /* Ô¶³ÌÅÔ·»Ö¸´*/ +#define MINOR_REMOTE_SET_ALARMIN_CFG 0xd2 /* Ô¶³ÌÉèÖñ¨¾¯ÊäÈë²ÎÊý*/ +#define MINOR_REMOTE_GET_ALARMIN_CFG 0xd3 /* Ô¶³Ì»ñÈ¡±¨¾¯ÊäÈë²ÎÊý*/ +#define MINOR_REMOTE_SET_ALARMOUT_CFG 0xd4 /* Ô¶³ÌÉèÖñ¨¾¯Êä³ö²ÎÊý*/ +#define MINOR_REMOTE_GET_ALARMOUT_CFG 0xd5 /* Ô¶³Ì»ñÈ¡±¨¾¯Êä³ö²ÎÊý*/ +#define MINOR_REMOTE_ALARMOUT_OPEN_MAN 0xd6 /* Ô¶³ÌÊÖ¶¯¿ªÆô±¨¾¯Êä³ö*/ +#define MINOR_REMOTE_ALARMOUT_CLOSE_MAN 0xd7 /* Ô¶³ÌÊÖ¶¯¹Ø±Õ±¨¾¯Êä³ö*/ +#define MINOR_REMOTE_ALARM_ENABLE_CFG 0xd8 /* Ô¶³ÌÉèÖñ¨¾¯Ö÷»úµÄRS485´®¿ÚʹÄÜ״̬*/ +#define MINOR_DBDATA_OUTPUT 0xd9 /* µ¼³öÊý¾Ý¿â¼Ç¼ */ +#define MINOR_DBDATA_INPUT 0xda /* µ¼ÈëÊý¾Ý¿â¼Ç¼ */ +#define MINOR_MU_SWITCH 0xdb /* ¼¶ÁªÇл» */ +#define MINOR_MU_PTZ 0xdc /* ¼¶ÁªPTZ¿ØÖÆ */ +#define MINOR_DELETE_LOGO 0xdd /* ɾ³ýlogo */ +#define MINOR_REMOTE_INQUEST_DEL_FILE 0xde /*Ô¶³Ìɾ³ýÎļþ*/ + +#define MINOR_LOCAL_CONF_REB_RAID 0x101 /*±¾µØÅäÖÃ×Ô¶¯Öؽ¨*/ +#define MINOR_LOCAL_CONF_SPARE 0x102 /*±¾µØÅäÖÃÈȱ¸*/ +#define MINOR_LOCAL_ADD_RAID 0x103 /*±¾µØ´´½¨ÕóÁÐ*/ +#define MINOR_LOCAL_DEL_RAID 0x104 /*±¾µØɾ³ýÕóÁÐ*/ +#define MINOR_LOCAL_MIG_RAID 0x105 /*±¾µØǨÒÆÕóÁÐ*/ +#define MINOR_LOCAL_REB_RAID 0x106 /* ±¾µØÊÖ¶¯Öؽ¨ÕóÁÐ*/ +#define MINOR_LOCAL_QUICK_CONF_RAID 0x107 /*±¾µØÒ»¼üÅäÖÃ*/ +#define MINOR_LOCAL_ADD_VD 0x108 /*±¾µØ´´½¨ÐéÄâ´ÅÅÌ*/ +#define MINOR_LOCAL_DEL_VD 0x109 /*±¾µØɾ³ýÐéÄâ´ÅÅÌ*/ +#define MINOR_LOCAL_RP_VD 0x10a /*±¾µØÐÞ¸´ÐéÄâ´ÅÅÌ*/ +#define MINOR_LOCAL_FORMAT_EXPANDVD 0X10b /*±¾µØÀ©Õ¹ÐéÄâ´ÅÅÌÀ©ÈÝ*/ +#define MINOR_LOCAL_RAID_UPGRADE 0X10c /*±¾µØraid¿¨Éý¼¶*/ +#define MINOR_LOCAL_STOP_RAID 0x10d /*±¾µØÔÝÍ£RAID²Ù×÷(¼´°²È«°ÎÅÌ)*/ +#define MINOR_REMOTE_CONF_REB_RAID 0x111 /*Ô¶³ÌÅäÖÃ×Ô¶¯Öؽ¨*/ +#define MINOR_REMOTE_CONF_SPARE 0x112 /*Ô¶³ÌÅäÖÃÈȱ¸*/ +#define MINOR_REMOTE_ADD_RAID 0x113 /*Ô¶³Ì´´½¨ÕóÁÐ*/ +#define MINOR_REMOTE_DEL_RAID 0x114 /*Ô¶³Ìɾ³ýÕóÁÐ*/ +#define MINOR_REMOTE_MIG_RAID 0x115 /*Ô¶³ÌǨÒÆÕóÁÐ*/ +#define MINOR_REMOTE_REB_RAID 0x116 /* Ô¶³ÌÊÖ¶¯Öؽ¨ÕóÁÐ*/ +#define MINOR_REMOTE_QUICK_CONF_RAID 0x117 /*Ô¶³ÌÒ»¼üÅäÖÃ*/ +#define MINOR_REMOTE_ADD_VD 0x118 /*Ô¶³Ì´´½¨ÐéÄâ´ÅÅÌ*/ +#define MINOR_REMOTE_DEL_VD 0x119 /*Ô¶³Ìɾ³ýÐéÄâ´ÅÅÌ*/ +#define MINOR_REMOTE_RP_VD 0x11a /*Ô¶³ÌÐÞ¸´ÐéÄâ´ÅÅÌ*/ +#define MINOR_REMOTE_FORMAT_EXPANDVD 0X11b /*Ô¶³ÌÐéÄâ´ÅÅÌÀ©ÈÝ*/ +#define MINOR_REMOTE_RAID_UPGRADE 0X11c /*Ô¶³Ìraid¿¨Éý¼¶*/ +#define MINOR_REMOTE_STOP_RAID 0x11d /*Ô¶³ÌÔÝÍ£RAID²Ù×÷(¼´°²È«°ÎÅÌ)*/ +#define MINOR_LOCAL_START_PIC_REC 0x121 /*±¾µØ¿ªÊ¼×¥Í¼*/ +#define MINOR_LOCAL_STOP_PIC_REC 0x122 /*±¾µØֹͣץͼ*/ +#define MINOR_LOCAL_SET_SNMP 0x125 /*±¾µØÅäÖÃSNMP*/ +#define MINOR_LOCAL_TAG_OPT 0x126 /*±¾µØ±êÇ©²Ù×÷*/ +#define MINOR_REMOTE_START_PIC_REC 0x131 /*Ô¶³Ì¿ªÊ¼×¥Í¼*/ +#define MINOR_REMOTE_STOP_PIC_REC 0x132 /*Ô¶³Ìֹͣץͼ*/ +#define MINOR_REMOTE_SET_SNMP 0x135 /*Ô¶³ÌÅäÖÃSNMP*/ +#define MINOR_REMOTE_TAG_OPT 0x136 /*Ô¶³Ì±êÇ©²Ù×÷*/ +#define MINOR_REMOTE_LOGIN_LOCK 0x137 //Ô¶³ÌµÇ¼Ëø¶¨ +#define MINOR_REMOTE_LOGIN_UNLOCK 0x138 //Ô¶³ÌµÇ¼½âËø +// 9000 v2.2.0 +#define MINOR_LOCAL_VOUT_SWITCH 0x140 /* ±¾µØÊä³ö¿ÚÇл»²Ù×÷*/ +#define MINOR_STREAM_CABAC 0x141 /* ÂëÁ÷ѹËõÐÔÄÜÑ¡ÏîÅäÖòÙ×÷*/ + +//Netra 3.0.0 +#define MINOR_LOCAL_SPARE_OPT 0x142 /*±¾µØN+1 Èȱ¸Ïà¹Ø²Ù×÷*/ +#define MINOR_REMOTE_SPARE_OPT 0x143 /*Ô¶³ÌN+1 Èȱ¸Ïà¹Ø²Ù×÷*/ +#define MINOR_LOCAL_IPCCFGFILE_OUTPUT 0x144 /* ±¾µØµ¼³öipcÅäÖÃÎļþ*/ +#define MINOR_LOCAL_IPCCFGFILE_INPUT 0x145 /* ±¾µØµ¼ÈëipcÅäÖÃÎļþ */ +#define MINOR_LOCAL_IPC_UPGRADE 0x146 /* ±¾µØÉý¼¶IPC */ +#define MINOR_REMOTE_IPCCFGFILE_OUTPUT 0x147 /* Ô¶³Ìµ¼³öipcÅäÖÃÎļþ*/ +#define MINOR_REMOTE_IPCCFGFILE_INPUT 0x148 /* Ô¶³Ìµ¼ÈëipcÅäÖÃÎļþ*/ +#define MINOR_REMOTE_IPC_UPGRADE 0x149 /* Ô¶³ÌÉý¼¶IPC */ + +#define MINOR_LOCAL_UNLOAD_HDISK 0x150 /*±¾µØжÔØÓ²ÅÌ*/ +#define MINOR_LOCAL_AUDIO_MIX 0x151 /*±¾µØÅäÖÃÒôƵ»ìÒô²ÎÊý*/ +#define MINOR_REMOTE_AUDIO_MIX 0x152 /*Ô¶³ÌÅäÖÃÒôƵ»ìÒô²ÎÊý*/ +#define MINOR_LOCAL_TRIAL_PAUSE 0x153 /*±¾µØÔÝͣѶÎÊ*/ +#define MINOR_LOCAL_TRIAL_RESUME 0x154 /*±¾µØ¼ÌÐøѶÎÊ*/ +#define MINOR_REMOTE_TRIAL_PAUSE 0x155 /*Ô¶³ÌÔÝͣѶÎÊ*/ +#define MINOR_REMOTE_TRIAL_RESUME 0x156 /*Ô¶³Ì¼ÌÐøѶÎÊ*/ +#define MINOR_REMOTE_MODIFY_VERIFICATION_CODE 0x157 /*ÐÞ¸Äƽ̨µÄÑéÖ¤Âë*/ + +#define MINOR_LOCAL_MAKECALL 0x180 /*±¾µØºô½Ð*/ +#define MINOR_LOCAL_REJECTCALL 0x181 /*±¾µØ¾Ü½Ó*/ +#define MINOR_LOCAL_ANSWERCALL 0x182 /*±¾µØ½ÓÌý*/ +#define MINOR_LOCAL_HANGUPCALL 0x183 /*±¾µØ¹Ò¶Ï*/ + +#define MINOR_REMOTE_MAKECALL 0x188 /*Ô¶³Ìºô½Ð*/ +#define MINOR_REMOTE_REJECTCALL 0x189 /*Ô¶³Ì¾Ü½Ó*/ +#define MINOR_REMOTE_ANSWERCALL 0x18a /*Ô¶³Ì½ÓÌý*/ +#define MINOR_REMOTE_HANGUPCALL 0x18b /*Ô¶³Ì¹Ò¶Ï*/ + +#define MINOR_LOCAL_CHANNEL_ORDERED 0x19b /*±¾µØͨµÀÅÅÐò*/ + +#define MINOR_SET_MULTI_MASTER 0x201 /*ÉèÖôóÆÁÖ÷ÆÁ*/ +#define MINOR_SET_MULTI_SLAVE 0x202 /*ÉèÖôóÆÁ×ÓÆÁ*/ +#define MINOR_CANCEL_MULTI_MASTER 0x203 /*È¡Ïû´óÆÁÖ÷ÆÁ*/ +#define MINOR_CANCEL_MULTI_SLAVE 0x204 /*È¡Ïû´óÆÁ×ÓÆÁ*/ + +#define MINOR_DISPLAY_LOGO 0x205 /*ÏÔʾLOGO*/ +#define MINOR_HIDE_LOGO 0x206 /*Òþ²ØLOGO*/ +#define MINOR_SET_DEC_DELAY_LEVEL 0x207 /*½âÂëͨµÀÑÓʱ¼¶±ðÉèÖÃ*/ +#define MINOR_SET_BIGSCREEN_DIPLAY_AREA 0x208 /*ÉèÖôóÆÁÏÔʾÇøÓò*/ +#define MINOR_CUT_VIDEO_SOURCE 0x209 /*´óÆÁÊÓƵԴÇиîÉèÖÃ*/ +#define MINOR_SET_BASEMAP_AREA 0x210 /*´óÆÁµ×ͼÇøÓòÉèÖÃ*/ +#define MINOR_DOWNLOAD_BASEMAP 0x211 /*ÏÂÔØ´óÆÁµ×ͼ*/ +#define MINOR_CUT_BASEMAP 0x212 /*µ×ͼÇиîÅäÖÃ*/ +#define MINOR_CONTROL_ELEC_ENLARGE 0x213 /*µç×Ó·Å´ó²Ù×÷(·Å´ó»ò»¹Ô­)*/ +#define MINOR_SET_OUTPUT_RESOLUTION 0x214 /*ÏÔʾÊä³ö·Ö±æÂÊÉèÖÃ*/ +#define MINOR_SET_TRANCSPARENCY 0X215 /*ͼ²ã͸Ã÷¶ÈÉèÖÃ*/ +#define MINOR_SET_OSD 0x216 /*ÏÔʾOSDÉèÖÃ*/ +#define MINOR_RESTORE_DEC_STATUS 0x217 /*»Ö¸´³õʼ״̬(³¡¾°Çл»Ê±£¬½âÂë»Ö¸´³õʼ״̬)*/ + +//2011-11-11 Ôö¼Ó´óÆÁ¿ØÖÆÆ÷²Ù×÷ÈÕÖ¾´ÎÀàÐÍ +#define MINOR_SCREEN_OPEN_SCREEN 0x218 //´ò¿ªÆÁÄ» +#define MINOR_SCREEN_CLOSE_SCREEN 0x219 //¹Ø±ÕÆÁÄ» +#define MINOR_SCREEN_SWITCH_SIGNAL 0x21a //ÐźÅÔ´Çл» +#define MINOR_SCREEN_MODIFY_NETWORK 0x21b //ÅäÖÃÍøÂç²ÎÊý +#define MINOR_SCREEN_MODIFY_LEDRES 0x21c //ÅäÖÃÊä³ö¿ÚLED·Ö±æÂÊ +#define MINOR_SCREEN_SHOW_NORMAL 0x21d //ÅäÖô°¿ÚÆÕͨÏÔʾģʽ +#define MINOR_SCREEN_SHOW_TILE 0x21e //ÅäÖô°¿ÚƽÆÌÏÔʾģʽ +#define MINOR_SCREEN_DEC_NORMAL 0x21f //ÅäÖÃÆÕͨ½âÂëģʽ +#define MINOR_SCREEN_DEC_LOWLATENCY 0x220 //ÅäÖõÍÑÓʱ½âÂëģʽ +#define MINOR_SCREEN_MODIFY_SELFRES 0x221 //ÅäÖÃÐźÅÔ´×Ô¶¨Òå·Ö±æÂÊ +#define MINOR_SCREEN_OUTPUT_POSITION 0x222 //Êä³ö¿Ú¹ØÁªÆÁÄ» +#define MINOR_SCREEN_IMAGE_ENHANCE 0x223 //ͼÏñÔöÇ¿ +#define MINOR_SCREEN_JOIN_SIGNAL 0x224 //ÐźÅÔ´Æ´½Ó +#define MINOR_SCREEN_SIGNAL_OSD 0x225 //ÐźÅÔ´×Ö·ûµþ¼Ó +#define MINOR_SCREEN_ASSOCIATED_INTERACTION 0x226 //ÐźÅÔ´¹ØÁª¶àÆÁ»¥¶¯·þÎñÆ÷ +#define MINOR_SCREEN_MODIFY_MATRIX 0x227 //ÅäÖþØÕó²ÎÊý +#define MINOR_SCREEN_WND_TOP_KEEP 0x228 //´°¿ÚÖö¥±£³Ö +#define MINOR_SCREEN_WND_OPEN_KEEP 0x229 //´°¿Ú´ò¿ª±£³Ö +#define MINOR_SCREEN_WALL_MIRROR 0x22a //µçÊÓǽÇøÓò¾µÏñ +#define MINOR_SCREEN_UPLOAD_BASEMAP 0x22b //ÉÏ´«µ×ͼ +#define MINOR_SCREEN_SHOW_BASEMAP 0x22c //ÏÔʾµ×ͼ +#define MINOR_SCREEN_HIDE_BASEMAP 0x22d //Òþ²Øµ×ͼ +#define MINOR_SCREEN_MODIFY_SERIAL 0x22e //ÅäÖô®¿Ú²ÎÊý + +#define MINOR_SCREEN_SET_INPUT 0x251 /*ÐÞ¸ÄÊäÈëÔ´*/ +#define MINOR_SCREEN_SET_OUTPUT 0x252 /*ÐÞ¸ÄÊä³öͨµÀ*/ +#define MINOR_SCREEN_SET_OSD 0x253 /*ÐÞ¸ÄÐéÄâLED*/ +#define MINOR_SCREEN_SET_LOGO 0x254 /*ÐÞ¸ÄLOGO*/ +#define MINOR_SCREEN_SET_LAYOUT 0x255 /*ÉèÖò¼¾Ö*/ +#define MINOR_SCREEN_PICTUREPREVIEW 0x256 /*»ØÏÔ²Ù×÷*/ + + +//2012-06-14 CVCS2.0, ´°¿ÚÉèÖõȲÙ×÷ÔÚV1.0£¬ V1.1ÖÐÒѾ­ÓÐÁË£¬µ±Ê±ÔÚÉ豸ÈÕÖ¾ÖÐûÓж¨Òå +#define MINOR_SCREEN_GET_OSD 0x257 /*»ñÈ¡ÐéÄâLED*/ +#define MINOR_SCREEN_GET_LAYOUT 0x258 /*»ñÈ¡²¼¾Ö*/ +#define MINOR_SCREEN_LAYOUT_CTRL 0x259 /*²¼¾Ö¿ØÖÆ*/ +#define MINOR_GET_ALL_VALID_WND 0x260 /*»ñÈ¡ËùÓÐÓÐЧ´°¿Ú*/ +#define MINOR_GET_SIGNAL_WND 0x261 /*»ñÈ¡µ¥¸ö´°¿ÚÐÅÏ¢*/ +#define MINOR_WINDOW_CTRL 0x262 /*´°¿Ú¿ØÖÆ*/ +#define MINOR_GET_LAYOUT_LIST 0x263 /*»ñÈ¡²¼¾ÖÁбí*/ +#define MINOR_LAYOUT_CTRL 0x264 /*²¼¾Ö¿ØÖÆ*/ +#define MINOR_SET_LAYOUT 0x265 /*ÉèÖò¼¾Ö*/ +#define MINOR_GET_SIGNAL_LIST 0x266 /*»ñÈ¡ÊäÈëÐźÅÔ´Áбí*/ +#define MINOR_GET_PLAN_LIST 0x267 /*»ñÈ¡Ô¤°¸Áбí*/ +#define MINOR_SET_PLAN 0x268 /*ÐÞ¸ÄÔ¤°¸*/ +#define MINOR_CTRL_PLAN 0x269 /*¿ØÖÆÔ¤°¸*/ +#define MINOR_CTRL_SCREEN 0x270 /*ÆÁÄ»¿ØÖÆ*/ +#define MINOR_ADD_NETSIG 0x271 /*Ìí¼ÓÐźÅÔ´*/ +#define MINOR_SET_NETSIG 0x272 /*ÐÞ¸ÄÐźÅÔ´*/ +#define MINOR_SET_DECBDCFG 0x273 /*ÉèÖýâÂë°å²ÎÊý*/ +#define MINOR_GET_DECBDCFG 0x274 /*»ñÈ¡½âÂë°å²ÎÊý*/ +#define MINOR_GET_DEVICE_STATUS 0x275 /*»ñÈ¡É豸ÐÅÏ¢*/ +#define MINOR_UPLOAD_PICTURE 0x276 /*µ×ͼÉÏ´«*/ +#define MINOR_SET_USERPWD 0x277 /*ÉèÖÃÓû§ÃÜÂë*/ +#define MINOR_ADD_LAYOUT 0x278 /*Ìí¼Ó²¼¾Ö*/ +#define MINOR_DEL_LAYOUT 0x279 /*ɾ³ý²¼¾Ö*/ +#define MINOR_DEL_NETSIG 0x280 /*ɾ³ýÐźÅÔ´*/ +#define MINOR_ADD_PLAN 0x281 /*Ìí¼ÓÔ¤°¸*/ +#define MINOR_DEL_PLAN 0x282 /*ɾ³ýÔ¤°¸*/ +#define MINOR_GET_EXTERNAL_MATRIX_CFG 0x283 //»ñÈ¡Íâ½Ó¾ØÕóÅäÖà +#define MINOR_SET_EXTERNAL_MATRIX_CFG 0x284 //ÉèÖÃÍâ½Ó¾ØÕóÅäÖà +#define MINOR_GET_USER_CFG 0x285 //»ñÈ¡Óû§ÅäÖà +#define MINOR_SET_USER_CFG 0x286 //ÉèÖÃÓû§ÅäÖà +#define MINOR_GET_DISPLAY_PANEL_LINK_CFG 0x287 //»ñÈ¡ÏÔʾǽÁ¬½ÓÅäÖà +#define MINOR_SET_DISPLAY_PANEL_LINK_CFG 0x288 //ÉèÖÃÏÔʾǽÁ¬½ÓÅäÖà + +#define MINOR_GET_WALLSCENE_PARAM 0x289 //»ñÈ¡µçÊÓǽ³¡¾° +#define MINOR_SET_WALLSCENE_PARAM 0x28a //ÉèÖõçÊÓǽ³¡¾° +#define MINOR_GET_CURRENT_WALLSCENE 0x28b //»ñÈ¡µ±Ç°Ê¹Óó¡¾° +#define MINOR_SWITCH_WALLSCENE 0x28c //³¡¾°Çл» +#define MINOR_SIP_LOGIN 0x28d //SIP×¢²á³É¹¦ +#define MINOR_VOIP_START 0x28e //VOIP¶Ô½²¿ªÊ¼ +#define MINOR_VOIP_STOP 0x28f //VOIP¶Ô½²Í£Ö¹ +#define MINOR_WIN_TOP 0x290 //µçÊÓǽ´°¿ÚÖö¥ +#define MINOR_WIN_BOTTOM 0x291 //µçÊÓǽ´°¿ÚÖÃµ× +#define MINOR_SET_USER_ADD_CFG 0x292 //Ôö¼ÓÓû§ +#define MINOR_SET_USER_MODF_CFG 0x293 //ÐÞ¸ÄÓû§ +#define MINOR_SET_USER_DEL_CFG 0x294 //ɾ³ýÓû§ + +// Netra 2.2.2 +#define MINOR_LOCAL_LOAD_HDISK 0x300 //±¾µØ¼ÓÔØÓ²ÅÌ +#define MINOR_LOCAL_DELETE_HDISK 0x301 //±¾µØɾ³ýÒì³£²»´æÔÚµÄÓ²ÅÌ + +//KY2013 3.0.0 +#define MINOR_LOCAL_MAIN_AUXILIARY_PORT_SWITCH 0X302 //±¾µØÖ÷¸¨¿ÚÇл» +#define MINOR_LOCAL_HARD_DISK_CHECK 0x303 //±¾µØÎïÀíÓ²ÅÌ×Ô¼ì + +//Netra3.1.0 +#define MINOR_LOCAL_CFG_DEVICE_TYPE 0x310 //±¾µØÅäÖÃÉ豸ÀàÐÍ +#define MINOR_REMOTE_CFG_DEVICE_TYPE 0x311 //Ô¶³ÌÅäÖÃÉ豸ÀàÐÍ +#define MINOR_LOCAL_CFG_WORK_HOT_SERVER 0x312 //±¾µØÅäÖù¤×÷»úÈȱ¸·þÎñÆ÷ +#define MINOR_REMOTE_CFG_WORK_HOT_SERVER 0x313 //Ô¶³ÌÅäÖù¤×÷»úÈȱ¸·þÎñÆ÷ +#define MINOR_LOCAL_DELETE_WORK 0x314 //±¾µØɾ³ý¹¤×÷»ú +#define MINOR_REMOTE_DELETE_WORK 0x315 //Ô¶³Ìɾ³ý¹¤×÷»ú +#define MINOR_LOCAL_ADD_WORK 0x316 //±¾µØÌí¼Ó¹¤×÷»ú +#define MINOR_REMOTE_ADD_WORK 0x317 //Ô¶³ÌÌí¼Ó¹¤×÷»ú +#define MINOR_LOCAL_IPCHEATMAP_OUTPUT 0x318 /* ±¾µØµ¼³öÈȶÈͼÎļþ */ +#define MINOR_LOCAL_IPCHEATFLOW_OUTPUT 0x319 /* ±¾µØµ¼³öÈȶÈÁ÷Á¿Îļþ */ +#define MINOR_REMOTE_SMS_SEND 0x350 /*Ô¶³Ì·¢ËͶÌÐÅ*/ +#define MINOR_LOCAL_SMS_SEND 0x351 /*±¾µØ·¢ËͶÌÐÅ*/ +#define MINOR_ALARM_SMS_SEND 0x352 /*·¢ËͶÌÐű¨¾¯*/ +#define MINOR_SMS_RECV 0x353 /*½ÓÊÕ¶ÌÐÅ*/ +//£¨±¸×¢£º0x350¡¢0x351ÊÇÖ¸È˹¤ÔÚGUI»òIE¿Ø¼þÉϱ༭²¢·¢ËͶÌÐÅ£© +#define MINOR_LOCAL_SMS_SEARCH 0x354 /*±¾µØËÑË÷¶ÌÐÅ*/ +#define MINOR_REMOTE_SMS_SEARCH 0x355 /*Ô¶³ÌËÑË÷¶ÌÐÅ*/ +#define MINOR_LOCAL_SMS_READ 0x356 /*±¾µØ²é¿´¶ÌÐÅ*/ +#define MINOR_REMOTE_SMS_READ 0x357 /*Ô¶³Ì²é¿´¶ÌÐÅ*/ +#define MINOR_REMOTE_DIAL_CONNECT 0x358 /*Ô¶³Ì¿ªÆôÊÖ¶¯²¦ºÅ*/ +#define MINOR_REMOTE_DIAL_DISCONN 0x359 /*Ô¶³ÌÍ£Ö¹ÊÖ¶¯²¦ºÅ*/ +#define MINOR_LOCAL_ALLOWLIST_SET 0x35A /*±¾µØÅäÖÃÔÊÐíÃûµ¥*/ +#define MINOR_REMOTE_ALLOWLIST_SET 0x35B /*Ô¶³ÌÅäÖÃÔÊÐíÃûµ¥*/ +#define MINOR_LOCAL_DIAL_PARA_SET 0x35C /*±¾µØÅäÖò¦ºÅ²ÎÊý*/ +#define MINOR_REMOTE_DIAL_PARA_SET 0x35D /*Ô¶³ÌÅäÖò¦ºÅ²ÎÊý*/ +#define MINOR_LOCAL_DIAL_SCHEDULE_SET 0x35E /*±¾µØÅäÖò¦ºÅ¼Æ»®*/ +#define MINOR_REMOTE_DIAL_SCHEDULE_SET 0x35F /*Ô¶³ÌÅäÖò¦ºÅ¼Æ»®*/ +#define MINOR_PLAT_OPER 0x360 /* ƽ̨²Ù×÷*/ +#define MINOR_REMOTE_CFG_POE_WORK_MODE 0x361//Ô¶³ÌÉèÖÃPOE¹¤×÷ģʽ +#define MINOR_LOCAL_CFG_POE_WORK_MODE 0x362//±¾µØÉèÖÃPOE¹¤×÷ģʽ +#define MINOR_REMOTE_CFG_FACE_CONTRAST 0x363//Ô¶³ÌÉèÖÃÈËÁ³±È¶ÔÅäÖà +#define MINOR_LOCAL_CFG_FACE_CONTRAST 0x364//±¾µØÉèÖÃÈËÁ³±È¶ÔÅäÖà +#define MINOR_REMOTE_CFG_ALLOWLIST_FACE_CONTRAST 0x365//Ô¶³ÌÉèÖÃÔÊÐíÃûµ¥ÈËÁ³±È¶ÔÅäÖà +#define MINOR_LOCAL_CFG_ALLOWLIST_FACE_CONTRAST 0x366//±¾µØÉèÖÃÔÊÐíÃûµ¥ÈËÁ³±È¶ÔÅäÖà +#define MINOR_LOCAL_CHECK_TIME 0x367 //±¾µØÊÖ¶¯Ð£Ê± +#define MINOR_VCA_ONEKEY_EXPORT_PICTURE 0x368 //Ò»¼üµ¼³öͼƬ +#define MINOR_VCA_ONEKEY_DELETE_PICTURE 0x369 //Ò»¼üɾ³ýͼƬ +#define MINOR_VCA_ONEKEY_EXPORT_VIDEO 0x36a //Ò»¼üµ¼³ö¼Ïñ +#define MINOR_VCA_ONEKEY_DELETE_VIDEO 0x36b //Ò»¼üɾ³ý¼Ïñ +#define MINOR_REMOTE_CFG_WIRELESS_DIALPARAM 0x36c /*Ô¶³ÌÅäÖÃÎÞÏß²¦ºÅ²ÎÊý*/ +#define MINOR_LOCAL_CFG_WIRELESS_DIALPARAM 0x36d /*±¾µØÅäÖÃÎÞÏß²¦ºÅ²ÎÊý*/ +#define MINOR_REMOTE_CFG_WIRELESS_SMSPARAM 0x36e /*Ô¶³ÌÅäÖÃÎÞÏ߶ÌÐÅÅäÖòÎÊý*/ +#define MINOR_LOCAL_CFG_WIRELESS_SMSPARAM 0x36f /*±¾µØÅäÖÃÎÞÏ߶ÌÐÅÅäÖòÎÊý*/ +#define MINOR_REMOTE_CFG_WIRELESS_SMSSElFHELP 0x370 /*Ô¶³ÌÅäÖÃÎÞÏ߶ÌÐÅ×ÔÖúÅäÖòÎÊý*/ +#define MINOR_LOCAL_CFG_WIRELESS_SMSSElFHELP 0x371 /*±¾µØÅäÖÃÎÞÏ߶ÌÐÅ×ÔÖúÅäÖòÎÊý*/ +#define MINOR_REMOTE_CFG_WIRELESS_NETFLOWPARAM 0x372 /*Ô¶³ÌÅäÖÃÎÞÏßÁ÷Á¿ÅäÖòÎÊý*/ +#define MINOR_LOCAL_CFG_WIRELESS_NETFLOWPARAM 0x373 /*±¾µØÅäÖÃÎÞÏßÁ÷Á¿ÅäÖòÎÊý*/ + +//0x400-0x1000 ÃŽû²Ù×÷ÀàÐÍ +#define MINOR_REMOTE_OPEN_DOOR 0x400 //Ô¶³Ì¿ªÃÅ +#define MINOR_REMOTE_CLOSE_DOOR 0x401 //Ô¶³Ì¹ØÃÅ(ÊÜ¿Ø) +#define MINOR_REMOTE_ALWAYS_OPEN 0x402 //Ô¶³Ì³£¿ª(×ÔÓÉ) +#define MINOR_REMOTE_ALWAYS_CLOSE 0x403 //Ô¶³Ì³£¹Ø(½ûÓÃ) +#define MINOR_REMOTE_CHECK_TIME 0x404 //Ô¶³ÌÊÖ¶¯Ð£Ê± +#define MINOR_NTP_CHECK_TIME 0x405 //NTP×Ô¶¯Ð£Ê± +#define MINOR_REMOTE_CLEAR_CARD 0x406 //Ô¶³ÌÇå¿Õ¿¨ºÅ +#define MINOR_REMOTE_RESTORE_CFG 0x407 //Ô¶³Ì»Ö¸´Ä¬ÈϲÎÊý +#define MINOR_ALARMIN_ARM 0x408 //·ÀÇø²¼·À +#define MINOR_ALARMIN_DISARM 0x409 //·ÀÇø³··À +#define MINOR_LOCAL_RESTORE_CFG 0x40a //±¾µØ»Ö¸´Ä¬ÈϲÎÊý +#define MINOR_REMOTE_CAPTURE_PIC 0x40b //Ô¶³Ì×¥ÅÄ +#define MINOR_MOD_NET_REPORT_CFG 0x40c //ÐÞ¸ÄÍøÂçÖÐÐIJÎÊýÅäÖà +#define MINOR_MOD_GPRS_REPORT_PARAM 0x40d //ÐÞ¸ÄGPRSÖÐÐIJÎÊýÅäÖà +#define MINOR_MOD_REPORT_GROUP_PARAM 0x40e //ÐÞ¸ÄÖÐÐÄ×é²ÎÊýÅäÖà +#define MINOR_UNLOCK_PASSWORD_OPEN_DOOR 0x40f //½â³ýÂëÊäÈë +#define MINOR_AUTO_RENUMBER 0x410 //×Ô¶¯ÖØбàºÅ +#define MINOR_AUTO_COMPLEMENT_NUMBER 0x411 //×Ô¶¯²¹³ä±àºÅ +#define MINOR_NORMAL_CFGFILE_INPUT 0x412 //µ¼ÈëÆÕͨÅäÖÃÎļþ +#define MINOR_NORMAL_CFGFILE_OUTTPUT 0x413 //µ¼³öÆÕͨÅäÖÃÎļþ +#define MINOR_CARD_RIGHT_INPUT 0x414 //µ¼È뿨ȨÏÞ²ÎÊý +#define MINOR_CARD_RIGHT_OUTTPUT 0x415 //µ¼³ö¿¨È¨ÏÞ²ÎÊý +#define MINOR_LOCAL_USB_UPGRADE 0x416 //±¾µØUÅÌÉý¼¶ +#define MINOR_REMOTE_VISITOR_CALL_LADDER 0x417 //·Ã¿ÍºôÌÝ +#define MINOR_REMOTE_HOUSEHOLD_CALL_LADDER 0x418 //ס»§ºôÌÝ +#define MINOR_REMOTE_ACTUAL_GUARD 0x419 //Ô¶³Ìʵʱ²¼·À +#define MINOR_REMOTE_ACTUAL_UNGUARD 0x41a //Ô¶³Ìʵʱ³··À +#define MINOR_REMOTE_CONTROL_NOT_CODE_OPER_FAILED 0x41b //Ò£¿ØÆ÷δ¶ÔÂë²Ù×÷ʧ°Ü +#define MINOR_REMOTE_CONTROL_CLOSE_DOOR 0x41c //Ò£¿ØÆ÷¹ØÃÅ +#define MINOR_REMOTE_CONTROL_OPEN_DOOR 0x41d //Ò£¿ØÆ÷¿ªÃÅ +#define MINOR_REMOTE_CONTROL_ALWAYS_OPEN_DOOR 0x41e //Ò£¿ØÆ÷³£¿ªÃÅ +#define MINOR_M1_CARD_ENCRYPT_VERIFY_OPEN 0x41f /*M1¿¨¼ÓÃÜÑéÖ¤¹¦ÄÜ¿ªÆô*/ +#define MINOR_M1_CARD_ENCRYPT_VERIFY_CLOSE 0x420 /*M1¿¨¼ÓÃÜÑéÖ¤¹¦ÄܹرÕ*/ +#define MINOR_NFC_FUNCTION_OPEN 0x421 /*NFC¿ªÃŹ¦ÄÜ¿ªÆô*/ +#define MINOR_NFC_FUNCTION_CLOSE 0x422 /*NFC¿ªÃŹ¦ÄܹرÕ*/ +#define MINOR_OFFLINE_DATA_OUTPUT 0x423 //ÀëÏ߲ɼ¯Êý¾Ýµ¼³ö +#define MINOR_CREATE_SSH_LINK 0x42d //½¨Á¢SSHÁ¬½Ó +#define MINOR_CLOSE_SSH_LINK 0x42e //¶Ï¿ªSSHÁ¬½Ó +#define MINOR_LOCAL_IMPORT_USERINFO 0x42f //±¾µØµ¼ÈëÈËÔ±Êý¾Ý£¨µ¼ÈëÈËԱȨÏÞ£¬Ä£°å£¬ÈËÁ³Í¼Æ¬¶¼ÓÃÕâ¸öʼþÀàÐÍ£© +#define MINOR_LOCAL_EXPORT_USERINFO 0x430 //±¾µØµ¼³öÈËÔ±Êý¾Ý +#define MINOR_CREATE_CERTIFICATE 0x431 //´´½¨Ö¤Ê飨ÓÃÓÚSSLͨÐŵÄÖ¤Ê飬°üÀ¨SDKµÄTLSºÍHTTPSµÈ£© +#define MINOR_UPLOAD_CERTIFICATE 0x432 //ÉÏ´«Ö¤Êé +#define MINOR_DELETE_CERTIFICATE 0x433 //ɾ³ýÖ¤Êé +#define MINOR_COMSUME_ARM 0x434 //Ïû·Ñ²¼·À +#define MINOR_COMSUME_DISARM 0x435 //Ïû·Ñ³··À +#define MINOR_ORCODE_KEY_MODIFY 0x436 //¶þάÂëÃÜÔ¿ÐÞ¸Ä + +#define MINOR_OPERATION_CUSTOM1 0x900 //ÃŽû×Ô¶¨Òå²Ù×÷1 +#define MINOR_OPERATION_CUSTOM2 0x901 //ÃŽû×Ô¶¨Òå²Ù×÷2 +#define MINOR_OPERATION_CUSTOM3 0x902 //ÃŽû×Ô¶¨Òå²Ù×÷3 +#define MINOR_OPERATION_CUSTOM4 0x903 //ÃŽû×Ô¶¨Òå²Ù×÷4 +#define MINOR_OPERATION_CUSTOM5 0x904 //ÃŽû×Ô¶¨Òå²Ù×÷5 +#define MINOR_OPERATION_CUSTOM6 0x905 //ÃŽû×Ô¶¨Òå²Ù×÷6 +#define MINOR_OPERATION_CUSTOM7 0x906 //ÃŽû×Ô¶¨Òå²Ù×÷7 +#define MINOR_OPERATION_CUSTOM8 0x907 //ÃŽû×Ô¶¨Òå²Ù×÷8 +#define MINOR_OPERATION_CUSTOM9 0x908 //ÃŽû×Ô¶¨Òå²Ù×÷9 +#define MINOR_OPERATION_CUSTOM10 0x909 //ÃŽû×Ô¶¨Òå²Ù×÷10 +#define MINOR_OPERATION_CUSTOM11 0x90a //ÃŽû×Ô¶¨Òå²Ù×÷11 +#define MINOR_OPERATION_CUSTOM12 0x90b //ÃŽû×Ô¶¨Òå²Ù×÷12 +#define MINOR_OPERATION_CUSTOM13 0x90c //ÃŽû×Ô¶¨Òå²Ù×÷13 +#define MINOR_OPERATION_CUSTOM14 0x90d //ÃŽû×Ô¶¨Òå²Ù×÷14 +#define MINOR_OPERATION_CUSTOM15 0x90e //ÃŽû×Ô¶¨Òå²Ù×÷15 +#define MINOR_OPERATION_CUSTOM16 0x90f //ÃŽû×Ô¶¨Òå²Ù×÷16 +#define MINOR_OPERATION_CUSTOM17 0x910 //ÃŽû×Ô¶¨Òå²Ù×÷17 +#define MINOR_OPERATION_CUSTOM18 0x911 //ÃŽû×Ô¶¨Òå²Ù×÷18 +#define MINOR_OPERATION_CUSTOM19 0x912 //ÃŽû×Ô¶¨Òå²Ù×÷19 +#define MINOR_OPERATION_CUSTOM20 0x913 //ÃŽû×Ô¶¨Òå²Ù×÷20 +#define MINOR_OPERATION_CUSTOM21 0x914 //ÃŽû×Ô¶¨Òå²Ù×÷21 +#define MINOR_OPERATION_CUSTOM22 0x915 //ÃŽû×Ô¶¨Òå²Ù×÷22 +#define MINOR_OPERATION_CUSTOM23 0x916 //ÃŽû×Ô¶¨Òå²Ù×÷23 +#define MINOR_OPERATION_CUSTOM24 0x917 //ÃŽû×Ô¶¨Òå²Ù×÷24 +#define MINOR_OPERATION_CUSTOM25 0x918 //ÃŽû×Ô¶¨Òå²Ù×÷25 +#define MINOR_OPERATION_CUSTOM26 0x919 //ÃŽû×Ô¶¨Òå²Ù×÷26 +#define MINOR_OPERATION_CUSTOM27 0x91a //ÃŽû×Ô¶¨Òå²Ù×÷27 +#define MINOR_OPERATION_CUSTOM28 0x91b //ÃŽû×Ô¶¨Òå²Ù×÷28 +#define MINOR_OPERATION_CUSTOM29 0x91c //ÃŽû×Ô¶¨Òå²Ù×÷29 +#define MINOR_OPERATION_CUSTOM30 0x91d //ÃŽû×Ô¶¨Òå²Ù×÷30 +#define MINOR_OPERATION_CUSTOM31 0x91e //ÃŽû×Ô¶¨Òå²Ù×÷31 +#define MINOR_OPERATION_CUSTOM32 0x91f //ÃŽû×Ô¶¨Òå²Ù×÷32 +#define MINOR_OPERATION_CUSTOM33 0x920 //ÃŽû×Ô¶¨Òå²Ù×÷33 +#define MINOR_OPERATION_CUSTOM34 0x921 //ÃŽû×Ô¶¨Òå²Ù×÷34 +#define MINOR_OPERATION_CUSTOM35 0x922 //ÃŽû×Ô¶¨Òå²Ù×÷35 +#define MINOR_OPERATION_CUSTOM36 0x923 //ÃŽû×Ô¶¨Òå²Ù×÷36 +#define MINOR_OPERATION_CUSTOM37 0x924 //ÃŽû×Ô¶¨Òå²Ù×÷37 +#define MINOR_OPERATION_CUSTOM38 0x925 //ÃŽû×Ô¶¨Òå²Ù×÷38 +#define MINOR_OPERATION_CUSTOM39 0x926 //ÃŽû×Ô¶¨Òå²Ù×÷39 +#define MINOR_OPERATION_CUSTOM40 0x927 //ÃŽû×Ô¶¨Òå²Ù×÷40 +#define MINOR_OPERATION_CUSTOM41 0x928 //ÃŽû×Ô¶¨Òå²Ù×÷41 +#define MINOR_OPERATION_CUSTOM42 0x929 //ÃŽû×Ô¶¨Òå²Ù×÷42 +#define MINOR_OPERATION_CUSTOM43 0x92a //ÃŽû×Ô¶¨Òå²Ù×÷43 +#define MINOR_OPERATION_CUSTOM44 0x92b //ÃŽû×Ô¶¨Òå²Ù×÷44 +#define MINOR_OPERATION_CUSTOM45 0x92c //ÃŽû×Ô¶¨Òå²Ù×÷45 +#define MINOR_OPERATION_CUSTOM46 0x92d //ÃŽû×Ô¶¨Òå²Ù×÷46 +#define MINOR_OPERATION_CUSTOM47 0x92e //ÃŽû×Ô¶¨Òå²Ù×÷47 +#define MINOR_OPERATION_CUSTOM48 0x92f //ÃŽû×Ô¶¨Òå²Ù×÷48 +#define MINOR_OPERATION_CUSTOM49 0x930 //ÃŽû×Ô¶¨Òå²Ù×÷49 +#define MINOR_OPERATION_CUSTOM50 0x931 //ÃŽû×Ô¶¨Òå²Ù×÷50 +#define MINOR_OPERATION_CUSTOM51 0x932 //ÃŽû×Ô¶¨Òå²Ù×÷51 +#define MINOR_OPERATION_CUSTOM52 0x933 //ÃŽû×Ô¶¨Òå²Ù×÷52 +#define MINOR_OPERATION_CUSTOM53 0x934 //ÃŽû×Ô¶¨Òå²Ù×÷53 +#define MINOR_OPERATION_CUSTOM54 0x935 //ÃŽû×Ô¶¨Òå²Ù×÷54 +#define MINOR_OPERATION_CUSTOM55 0x936 //ÃŽû×Ô¶¨Òå²Ù×÷55 +#define MINOR_OPERATION_CUSTOM56 0x937 //ÃŽû×Ô¶¨Òå²Ù×÷56 +#define MINOR_OPERATION_CUSTOM57 0x938 //ÃŽû×Ô¶¨Òå²Ù×÷57 +#define MINOR_OPERATION_CUSTOM58 0x939 //ÃŽû×Ô¶¨Òå²Ù×÷58 +#define MINOR_OPERATION_CUSTOM59 0x93a //ÃŽû×Ô¶¨Òå²Ù×÷59 +#define MINOR_OPERATION_CUSTOM60 0x93b //ÃŽû×Ô¶¨Òå²Ù×÷60 +#define MINOR_OPERATION_CUSTOM61 0x93c //ÃŽû×Ô¶¨Òå²Ù×÷61 +#define MINOR_OPERATION_CUSTOM62 0x93d //ÃŽû×Ô¶¨Òå²Ù×÷62 +#define MINOR_OPERATION_CUSTOM63 0x93e //ÃŽû×Ô¶¨Òå²Ù×÷63 +#define MINOR_OPERATION_CUSTOM64 0x93f //ÃŽû×Ô¶¨Òå²Ù×÷64 +#define MINOR_OPERATION_REALTIMEBROADCAST 0x940 //ʵʱ¹ã²¥ +#define MINOR_OPERATION_PLANBROADCAST 0x941 //¼Æ»®¹ã²¥ + +#define MINOR_SET_WIFI_PARAMETER 0x950 //ÉèÖÃWIFIÅäÖòÎÊý +#define MINOR_EZVIZ_LOGIN 0x951 //өʯÔƵǽ +#define MINOR_EZVIZ_LOGINOUT 0x952 //өʯÔƵdzö +#define MINOR_LOCK_ADD 0x953 //ÖÇÄÜËøÌí¼Ó +#define MINOR_LOCK_DELETE 0x954 //ÖÇÄÜËøɾ³ý +#define MINOR_LOCK_GET_STATUS 0x955 //ÖÇÄÜËø״̬»ñÈ¡ +#define MINOR_LOCK_SET_TMP_PASSWORD 0x956 //ÖÇÄÜËøÁÙʱÃÜÂëÏ·¢ +#define MINOR_LOCK_SET_SILENT_MODE 0x957 //ÖÇÄÜËø¾²ÒôÉèÖà +#define MINOR_LOCK_SET_LATE_WARNING 0x958 //ÖÇÄÜËøÍí¹éÌáÐÑÉèÖà +#define MINOR_LOCK_IPC_ADD 0x959 //ÖÇÄÜËøIPC¹ØÁª +#define MINOR_LOCK_IPC_REMOVE 0x95a //ÖÇÄÜËøIPC½â³ý¹ØÁª +#define MINOR_LOCK_DETECTOR_ADD 0x95b //ÖÇÄÜËø̽²âÆ÷¹ØÁª +#define MINOR_LOCK_DETECTOR_REMOVE 0x95c //ÖÇÄÜËø̽²âÆ÷½â³ý¹ØÁª +#define MINOR_LOCK_MESSAGE_REMINDING_OPEN 0x95d //ÖÇÄÜËøÏûÏ¢ÌáÐÑ´ò¿ª +#define MINOR_LOCK_MESSAGE_REMINDING_CLOSE 0x95e //ÖÇÄÜËøÏûÏ¢ÌáÐÑ¹Ø±Õ +#define MINOR_LOCK_SET_HEART_BEAT 0x95f //ÖÇÄÜËøÐÄÌøÉèÖà +#define MINOR_LOCK_REBOOT 0x960 //ÖÇÄÜËøÖØÆô +#define MINOR_LOCK_CLEAR_USER 0x961 //ÖÇÄÜËøÇå¿ÕÓû§ +#define MINOR_LOCK_FORMAT 0x962 //ÖÇÄÜËø¸ñʽ»¯ +#define MINOR_LOCK_FINGER_CHANGE 0x963 //ÖÇÄÜËøÖ¸ÎƸĶ¯ +#define MINOR_LOCK_PASSWORD_CHANGE 0x964 //ÖÇÄÜËøÃÜÂë¸Ä¶¯ +#define MINOR_LOCK_CARD_CHANGE 0x965 //ÖÇÄÜËø¿¨ÐÅÏ¢¸Ä¶¯ +#define MINOR_LOCK_USER_CHANGE 0x966 //ÖÇÄÜËøÓû§ÐÅÏ¢¸Ä¶¯ +#define MINOR_LOCK_SYSTEM_CHANGE 0x967 //ÖÇÄÜËøϵͳÐÅÏ¢¸Ä¶¯ +#define MINOR_LOCK_CHANGE_ADD_UESR 0x968 //ÖÇÄÜËøÐÂÔöÓû§ +#define MINOR_LOCK_CHANGE_DEL_UESR 0x969 //ÖÇÄÜËøɾ³ýÓû§ +#define MINOR_LOCK_CHANGE_CUSTOM_USER_NAME 0x96a //ÖÇÄÜËø×Ô¶¨ÒåÓû§Óû§Ãû¸Ä¶¯ +#define MINOR_LOCK_CHANGE_REMOTE_DEVICE 0x96b //ÖÇÄÜËøÒ£¿ØÆ÷ÐÅÏ¢¸Ä¶¯ +#define MINOR_LOCK_CHANGE_ADD_FP 0x96c //ÖÇÄÜËøÐÂÔöÖ¸ÎÆ +#define MINOR_LOCK_CHANGE_DEL_FP 0x96d //ÖÇÄÜËøɾ³ýÖ¸ÎÆ +#define MINOR_LOCK_CHANGE_ADD_PASSWORD 0x96e //ÖÇÄÜËøÐÂÔöÃÜÂë +#define MINOR_LOCK_CHANGE_DEL_PASSWORD 0x96f //ÖÇÄÜËøɾ³ýÃÜÂë +#define MINOR_LOCK_CHANGE_ADD_CARD 0x970 //ÖÇÄÜËøÐÂÔö¿¨Æ¬ +#define MINOR_LOCK_CHANGE_DEL_CARD 0x971 //ÖÇÄÜËøɾ³ý¿¨Æ¬ +#define MINOR_LOCK_NETWORK_SWITCH 0x972 //ÖÇÄÜËøÍøÂ繦ÄÜ¿ª¹Ø¸Ä¶¯ +#define MINOR_LOCK_CLEAR_NETWORK_DATA 0x973 //ÖÇÄÜËøÍøÂçÊý¾ÝÇå¿Õ +#define MINOR_LOCK_CLEAR_HOST_USER 0x974 //ÖÇÄÜËøÇå¿ÕÖ÷ÈËÓû§ +#define MINOR_LOCK_CLEAR_GUEST_USER 0x975 //ÖÇÄÜËøÇå¿Õ¿ÍÈËÓû§ +#define MINOR_LOCK_CLEAN_ALL_REMOTE_DEVICE 0x976 //Ò£¿ØÆ÷Óû§ÐÅÏ¢Çå¿Õ +#define MINOR_LOCK_CLEAN_NORMAL_USER_FINGRT 0x977 //ÖÇÄÜËøÇå¿ÕÆÕͨÓû§Ö¸ÎÆ +#define MINOR_LOCK_CLEAN_ALL_CARD 0x978 //ÖÇÄÜËøÇå¿ÕËùÓп¨Æ¬ +#define MINOR_LOCK_CLEAN_ALL_PASSWORD 0x979 //ÖÇÄÜËøÇå¿ÕËùÓÐÃÜÂë +#define MINOR_START_WIRELESSSERVER 0x97a //¿ªÆôÉ豸Èȵã +#define MINOR_STOP_WIRELESSSERVER 0x97b //¹Ø±ÕÉ豸Èȵã +#define MINOR_EMERGENCY_CARD_AUTH_NORMAL_CARD 0x97c //Ó¦¼±¹ÜÀí¿¨ÊÚȨÆÕͨ¿¨ +#define MINOR_CHANGE_ALWAYS_OPEN_RIGHT 0x97d //ͨµÀģʽ¸Ä¶¯ +#define MINOR_LOCK_DOOR_BELL_EVENT 0x97e //ÃÅÁåʼþ£¨²Ù×÷Ëø´¥·¢£© + +//´«ÏÔÐÅÏ¢·¢²¼²Ù×÷ÈÕÖ¾ +#define MINOR_BACKUP_DATA 0xc41 //Êý¾Ý±¸·Ý +#define MINOR_TRANSFER_DATA 0xc42 //Êý¾ÝǨÒÆ +#define MINOR_RESTORE_DATA 0xc43 //Êý¾Ý»¹Ô­ +#define MINOR_SET_INPUT_PLAN 0xc44 //ÉèÖÃÖն˶¨Ê±ÊäÈëÇл»¼Æ»® +#define MINOR_TERMINAL_ADB 0xc45//ÖÕ¶ËADBÅäÖà +#define MINOR_TERMINAL_VOLUME 0xc46 //ÖÕ¶ËÒôÁ¿ÅäÖà +#define MINOR_TERMINAL_LOGO 0xc47 //ÖÕ¶ËLOGOÅäÖà +#define MINOR_TERMINAL_DEFAULT_SCHEDULE 0xc48 //µæƬÈÕ³ÌʹÄÜ +#define MINOR_TERMINAL_PASSWORD 0xc49 //ÉèÖÃÖÕ¶ËÃÜÂë +#define MINOR_TERMINAL_IP 0xc4a//ÖÕ¶ËIPÅäÖà +#define MINOR_TERMINAL_RELATE_IPC 0xc4b//Öն˹ØÁªIPC +#define MINOR_TERMINAL_SERVER 0xc4c//Öն˹ØÁª·þÎñÆ÷ÅäÖà +#define MINOR_TERMINAL_SADP 0xc4d//ÖÕ¶ËSADP¿ª¹ØÅäÖà +#define MINOR_TERMINAL_TIMEZONE 0xc4e//ÖÕ¶ËʱÇøÅäÖà +#define MINOR_TERMINAL_TEMP_PROTECT 0xc4f//ÖÕ¶Ëζȱ£»¤ÅäÖà +#define MINOR_ADD_ORGANIZATION 0xc50 //Ìí¼Ó×éÖ¯ +#define MINOR_DELETE_ORGANIZATION 0xc51 //ɾ³ý×éÖ¯ +#define MINOR_MODIFY_ORGANIZATION 0xc52 //ÐÞ¸Ä×éÖ¯ +#define MINOR_WEATHER_FACTORY 0xc53 //ÌìÆø³§ÉÌÅäÖà +#define MINOR_SADP_ENABLE 0xc54 //sadp¿ª¹ØÅäÖà +#define MINOR_SSH_ENABLE 0xc55 //SSH¿ª¹ØÅäÖà +#define MINOR_MODIFY_MATERIAL 0xc56 //ËزIJÎÊýÐÞ¸Ä +#define MINOR_INSERT_CHARACTER 0xc57 //²å²¥ÎÄ×ÖÏûÏ¢ +#define MINOR_TERMINAL_BACKLIGHT 0xc58 //Öն˱³¹âÅäÖà +#define MINOR_DOWNLOAD_MATERIAL_THUMBNAIL 0xc59 //ÏÂÔØËزÄËõÂÔͼ +#define MINOR_UPLOAD_PROGRAM_THUMBNAIL 0xc5a//ÉÏ´«½ÚÄ¿ËõÂÔͼ +#define MINOR_TDOWNLOAD_PROGRAM_THUMBNAIL 0xc5b//ÏÂÔؽÚÄ¿ËõÂÔͼ +#define MINOR_BATCH_DELETE_SCHEDULE_PLAN 0xc5c//ÅúÁ¿É¾³ý·¢²¼¼Æ»® +#define MINOR_REPUBLISH 0xc5d//ÖØз¢²¼ +#define MINOR_CLEAR_TERMINAL_PLAY_INFO 0xc5e//Çå¿ÕÖն˲¥·ÅÐÅÏ¢ +#define MINOR_GET_TERMINAL_RESOLUTION 0xc5f//»ñÈ¡Öն˷ֱæÂÊ +#define MINOR_SET_TERMINAL_RESOLUTION 0xc60//ÉèÖÃÖն˷ֱæÂÊ +#define MINOR_GET_BATCH_TERMINAL_UPGRATE_PROGRESS 0xc61//ÅúÁ¿»ñÈ¡ÖÕ¶ËÉý¼¶½ø¶È +#define MINOR_GET_BATCH_PROGRESS 0xc62//ÅúÁ¿»ñÈ¡Öն˷¢²¼½ø¶È +#define MINOR_GET_TEMPLATE 0xc64//»ñÈ¡Ä£°å +#define MINOR_INIT_TEMPLATE 0xc65//³õʼ»¯Ä£°å +#define MINOR_GET_TERMINAL_NTP_SERVERS 0xc66//»ñÈ¡ÖÕ¶ËNTP·þÎñ +#define MINOR_SET_TERMINAL_NTP_SERVERS 0xc67//ÉèÖÃÖÕ¶ËNTP·þÎñ +#define MINOR_GET_RELEASE_DETAILS 0xc68//»ñÈ¡·¢²¼ÏêϸÐÅÏ¢ +#define MINOR_UPLOAD_TEMPLATE_THUMBNAIL 0xc69//ÉÏ´«Ä£°åËõÂÔͼ +#define MINOR_DOWNLOAD_TEMPLATE_THUMBNAIL 0xc6a//ÏÂÔØÄ£°åËõÂÔͼ +#define MINOR_ADD_TEMPLATE 0xc6b//Ìí¼ÓÄ£°å +#define MINOR_DELETE_TEMPLATE 0xc6c//ɾ³ýÄ£°å +#define MINOR_MODIFY_TEMPLATE 0xc6d//ÐÞ¸ÄÄ£°å +#define MINOR_ADD_SCHEDULE_PLAN 0xc6e//Ìí¼Ó·¢²¼¼Æ»® +#define MINOR_MODIFY_SCHEDULE_PLAN 0xc6f//Ð޸ķ¢²¼¼Æ»® +#define MINOR_CANCEL_SCHEDULE_RELEASE 0xc70//È¡ÏûÈճ̷¢²¼ +#define MINOR_GET_SCHEDULE 0xc71//»ñÈ¡ÈÕ³Ì +#define MINOR_ADD_INSERT 0xc72//н¨²å²¥ +#define MINOR_CANCEL_INSERT 0xc73//È¡Ïû²å²¥ +#define MINOR_SWITCH_LANGUAGE 0xc74//Çл»ÓïÑÔ +#define MINOR_SET_ADMIN_INITIAL_PASSWORD 0xc75//ÉèÖÃadmin³õʼÃÜÂë +#define MINOR_MODIFY_PORT 0xc76//ÐÞ¸Ä¶Ë¿Ú +#define MINOR_MODIFY_STORAGE_PATH 0xc77//Ð޸Ĵ洢·¾¶ +#define MINOR_EXIT_PROGRAM 0xc78//Í˳ö³ÌÐò +#define MINOR_MODULE_STARTUP_SUCCESS 0xc79//Ä£¿éÆô¶¯³É¹¦ +#define MINOR_APPROVE_SCHEDULE 0xc80//ÈÕ³ÌÉóºË +#define MINOR_GENERAL_DATA_SEND 0xc81//µÚÈý·½Êý¾ÝÏ·¢ +#define MINOR_SET_SIGN_INTERFACE 0xc82//ÅäÖÃÇ©µ½½çÃæ²ÎÊý +#define MINOR_GET_SIGN_INTERFACE 0xc83//»ñÈ¡Ç©µ½½çÃæ²ÎÊý +#define MINOR_SET_SHOW_MODE 0xc84//ÅäÖÃÏÔʾģʽ²ÎÊý +#define MINOR_GET_SHOW_MODE 0xc85//»ñÈ¡ÏÔʾģʽ²ÎÊý +#define MINOR_SET_SCREEN_DIRECTION 0xc86//ÅäÖÃÆÁÄ»·½Ïò²ÎÊý +#define MINOR_GET_SCREEN_DIRECTION 0xc87//»ñÈ¡ÆÁÄ»·½Ïò²ÎÊý +#define MINOR_SET_LOCK_SCREEN 0xc88//ÅäÖÃËøÆÁ²ÎÊý +#define MINOR_GET_LOCK_SCREEN 0xc89//»ñÈ¡ËøÆÁ²ÎÊý +#define MINOR_SET_FACE_DATA_LIB 0xc8a//ÅäÖÃÈËÁ³¿â²ÎÊý +#define MINOR_DELETE_FACE_DATA_LIB 0xc8b//ɾ³ýÈËÁ³¿â +#define MINOR_SET_SPEC_FACE_DATA_LIB 0xc8c//ÅäÖÃÖ¸¶¨ÈËÁ³¿â²ÎÊý +#define MINOR_DELETE_SPEC_FACE_DATA_LIB 0xc8d//ɾ³ýÖ¸¶¨ÈËÁ³¿â²ÎÊý +#define MINOR_ADD_FACE_DATA 0xc8e//Ìí¼ÓÈËÁ³Êý¾Ý +#define MINOR_SEARCH_FACE_DATA 0xc8f//²éѯÈËÁ³Êý¾Ý +#define MINOR_MODIFY_FACE_DATA 0xc90//ÐÞ¸ÄÈËÁ³Êý¾Ý +#define MINOR_DELETE_FACE_DATA 0xc91//ɾ³ýÈËÁ³Êý¾Ý +#define MINOR_DELETE_USERINFO_DETAIL 0xc92//ÈËÔ±ÐÅÏ¢¼°È¨ÏÞɾ³ý +#define MINOR_ADD_USERINFO 0xc93//Ìí¼ÓÈËÔ±ÐÅÏ¢ +#define MINOR_MODIFY_USERINFO 0xc94//ÐÞ¸ÄÈËÔ±ÐÅÏ¢ +#define MINOR_DELETE_USERINFO 0xc95//ɾ³ýÈËÔ±ÐÅÏ¢ +#define MINOR_ADD_CARD_INFO 0xc96//Ìí¼Ó¿¨ÐÅÏ¢ +#define MINOR_MODIFY_CARD_INFO 0xc97//Ð޸Ŀ¨ÐÅÏ¢ +#define MINOR_DELETE_CARD_INFO 0xc98//ɾ³ý¿¨ÐÅÏ¢ +#define MINOR_SET_USER_RIGHT_WEEK 0xc99//ÈËԱȨÏÞÖܼƻ®ÉèÖà +#define MINOR_SET_USER_RIGHT_HOLIDAY 0xc9a//ÈËԱȨÏÞ½ÚÈռƻ®ÉèÖà +#define MINOR_SET_USER_RIGHT_HOLIDAYGROUP 0xc9b//ÈËԱȨÏÞ¼ÙÈÕ×é¼Æ»®ÉèÖà +#define MINOR_SET_USER_RIGHT_TEMPLATE 0xc9c//ÈËԱȨÏ޼ƻ®Ä£°åÉèÖà + +//2012-03-05 ITC²Ù×÷ÈÕÖ¾ÀàÐÍ +#define MINOR_SET_TRIGGERMODE_CFG 0x1001 /*ÉèÖô¥·¢Ä£Ê½²ÎÊý*/ +#define MINOR_GET_TRIGGERMODE_CFG 0x1002 /*»ñÈ¡´¥·¢Ä£Ê½²ÎÊý*/ +#define MINOR_SET_IOOUT_CFG 0x1003 /*ÉèÖÃIOÊä³ö²ÎÊý*/ +#define MINOR_GET_IOOUT_CFG 0x1004 /*»ñÈ¡IOÊä³ö²ÎÊý*/ +#define MINOR_GET_TRIGGERMODE_DEFAULT 0x1005 /*»ñÈ¡´¥·¢Ä£Ê½ÍƼö²ÎÊý*/ +#define MINOR_GET_ITCSTATUS 0x1006 /*»ñȡ״̬¼ì²â²ÎÊý*/ +#define MINOR_SET_STATUS_DETECT_CFG 0x1007 /*ÉèÖÃ״̬¼ì²â²ÎÊý*/ +#define MINOR_GET_STATUS_DETECT_CFG 0x1008 /*»ñȡ״̬¼ì²â²ÎÊý*/ +#define MINOR_SET_VIDEO_TRIGGERMODE_CFG 0x1009 /*ÉèÖÃÊÓƵ´¥·¢Ä£Ê½²ÎÊý*/ +#define MINOR_GET_VIDEO_TRIGGERMODE_CFG 0x100a /*»ñÈ¡ÊÓƵ´¥·¢Ä£Ê½²ÎÊý*/ + +//2018-04-23 ͨÓÃÎïÁªÍø¹Ø²Ù×÷ÈÕÖ¾ÀàÐÍ +#define MINOR_ALARMHOST_GUARD 0x1010 //ÆÕͨ²¼·À(Íâ³ö²¼·À) +#define MINOR_ALARMHOST_UNGUARD 0x1011 //ÆÕͨ³··À +#define MINOR_ALARMHOST_BYPASS 0x1012 //ÅÔ· +#define MINOR_ALARMHOST_DURESS_ACCESS 0x1013 //Ю³Ö + +#define MINOR_ALARMHOST_RS485_PARAM 0x1018 //ÐÞ¸Ä485ÅäÖòÎÊý +#define MINOR_ALARMHOST_ALARM_OUTPUT 0x1019 //¿ØÖÆ´¥·¢Æ÷ +#define MINOR_ALARMHOST_ACCESS_OPEN 0x101a //¿ØÖÆÃŽû¿ª +#define MINOR_ALARMHOST_ACCESS_CLOSE 0x101b //¿ØÖÆÃŽû¹Ø +#define MINOR_ALARMHOST_SIREN_OPEN 0x101c //¿ØÖƾ¯ºÅ¿ª +#define MINOR_ALARMHOST_SIREN_CLOSE 0x101d //¿ØÖƾ¯ºÅ¹Ø +#define MINOR_ALARMHOST_MOD_ZONE_CONFIG 0x101e //Ð޸ķÀÇø²ÎÊý +#define MINOR_ALARMHOST_MOD_ALARMOUT_CONIFG 0x101f //Ð޸Ĵ¥·¢Æ÷²ÎÊý +#define MINOR_ALARMHOST_MOD_ANALOG_CONFIG 0x1020 //ÐÞ¸ÄÄ£ÄâÁ¿ÅäÖà +#define MINOR_ALARMHOST_RS485_CONFIG 0x1021 //ÐÞ¸Ä485ͨµÀÅäÖà +#define MINOR_ALARMHOST_PHONE_CONFIG 0x1022 //Ð޸IJ¦ºÅÅäÖà +#define MINOR_ALARMHOST_ADD_ADMIN 0x1023 //Ôö¼Ó¹ÜÀíÔ± +#define MINOR_ALARMHOST_MOD_ADMIN_PARAM 0x1024 //Ð޸ĹÜÀíÔ±²ÎÊý +#define MINOR_ALARMHOST_DEL_ADMIN 0x1025 //ɾ³ý¹ÜÀíÔ± +#define MINOR_ALARMHOST_ADD_NETUSER 0x1026 //Ôö¼Óºó¶Ë²Ù×÷Ô± +#define MINOR_ALARMHOST_MOD_NETUSER_PARAM 0x1027 //Ð޸ĺó¶Ë²Ù×÷Ô±²ÎÊý +#define MINOR_ALARMHOST_DEL_NETUSER 0x1028 //ɾ³ýºó¶Ë²Ù×÷Ô± +#define MINOR_ALARMHOST_ADD_OPERATORUSER 0x1029 //Ôö¼ÓÇ°¶Ë²Ù×÷Ô± +#define MINOR_ALARMHOST_MOD_OPERATORUSER_PW 0x102a //ÐÞ¸ÄÇ°¶Ë²Ù×÷Ô±ÃÜÂë +#define MINOR_ALARMHOST_DEL_OPERATORUSER 0x102b //ɾ³ýÇ°¶Ë²Ù×÷Ô± +#define MINOR_ALARMHOST_ADD_KEYPADUSER 0x102c //Ôö¼Ó¼üÅÌ/¶Á¿¨Æ÷Óû§ +#define MINOR_ALARMHOST_DEL_KEYPADUSER 0x102d //ɾ³ý¼üÅÌ/¶Á¿¨Æ÷Óû§ + + +#define MINOR_ALARMHOST_MOD_HOST_CONFIG 0x1032 //ÐÞ¸ÄÖ÷»úÅäÖà +#define MINOR_ALARMHOST_RESTORE_BYPASS 0x1033 //ÅÔ·»Ö¸´ + +#define MINOR_ALARMHOST_ALARMOUT_OPEN 0x1034 //´¥·¢Æ÷¿ªÆô +#define MINOR_ALARMHOST_ALARMOUT_CLOSE 0x1035 //´¥·¢Æ÷¹Ø±Õ +#define MINOR_ALARMHOST_MOD_SUBSYSTEM_PARAM 0x1036 //ÐÞ¸Ä×Óϵͳ²ÎÊýÅäÖà +#define MINOR_ALARMHOST_GROUP_BYPASS 0x1037 //×éÅÔ· +#define MINOR_ALARMHOST_RESTORE_GROUP_BYPASS 0x1038 //×éÅÔ·»Ö¸´ +#define MINOR_ALARMHOST_MOD_GRPS_PARAM 0x1039 //ÐÞ¸ÄGPRS²ÎÊý + +#define MINOR_ALARMHOST_MOD_REPORT_MOD 0x103b //ÐÞ¸ÄÉÏ´«·½Ê½ÅäÖà +#define MINOR_ALARMHOST_MOD_GATEWAY_PARAM 0x103c //ÐÞ¸ÄÃŽû²ÎÊýÅäÖà + +#define MINOR_STAY_ARM 0x104c //ÁôÊز¼·À +#define MINOR_QUICK_ARM 0x104d //¼´Ê±²¼·À +#define MINOR_AUTOMATIC_ARM 0x104e //×Ô¶¯²¼·À +#define MINOR_AUTOMATIC_DISARM 0x104f //×Ô¶¯³··À +#define MINOR_KEYSWITCH_ARM 0x1050 //Ô¿³×²¼³··À·ÀÇø²¼·À +#define MINOR_KEYSWITCH_DISARM 0x1051 //Ô¿³×²¼³··À·ÀÇø³··À +#define MINOR_CLEAR_ALARM 0x1052 //Ïû¾¯ +#define MINOR_MOD_FAULT_CFG 0x1053 //ÐÞ¸Äϵͳ¹ÊÕÏÅäÖà +#define MINOR_MOD_EVENT_TRIGGER_ALARMOUT_CFG 0x1054 //ÐÞ¸Äʼþ´¥·¢´¥·¢Æ÷ÅäÖà +#define MINOR_SEARCH_EXTERNAL_MODULE 0x1055 //ËÑË÷Íâ½ÓÄ£¿é +#define MINOR_REGISTER_EXTERNAL_MODULE 0x1056 //ÖØÐÂ×¢²áÍâ½ÓÄ£¿é +#define MINOR_CLOSE_KEYBOARD_ALARM 0x1057 //¹Ø±Õ¼üÅ̱¨¾¯ÌáʾÒô +#define MINOR_MOD_3G_PARAM 0x1058 //ÐÞ¸Ä3G²ÎÊý +#define MINOR_MOD_PRINT_PARAM 0x1059 //Ð޸ĴòÓ¡»ú²ÎÊý +#define MINOR_ALARMHOST_SD_CARD_FORMAT 0x1060 //SD¿¨¸ñʽ»¯ +#define MINOR_ALARMHOST_SUBSYSTEM_UPGRADE 0x1061 //×Ó°å¹Ì¼þÉý¼¶ + +#define MINOR_PLAN_ARM_CFG 0x1062 //¼Æ»®²¼³··À²ÎÊýÅäÖà +#define MINOR_PHONE_ARM 0x1063 //ÊÖ»ú²¼·À +#define MINOR_PHONE_STAY_ARM 0x1064 //ÊÖ»úÁôÊز¼·À +#define MINOR_PHONE_QUICK_ARM 0x1065 //ÊÖ»ú¼´Ê±²¼·À +#define MINOR_PHONE_DISARM 0x1066 //ÊÖ»ú³··À +#define MINOR_PHONE_CLEAR_ALARM 0x1067 //ÊÖ»úÏû¾¯ +#define MINOR_ALLOWLIST_CFG 0x1068 //ÔÊÐíÃûµ¥ÅäÖà +#define MINOR_TIME_TRIGGER_CFG 0x1069 //¶¨Ê±¿ª¹Ø´¥·¢Æ÷ÅäÖà +#define MINOR_CAPTRUE_CFG 0x106a //ץͼ²ÎÊýÅäÖà +#define MINOR_TAMPER_CFG 0x106b //·ÀÇø·À²ð²ÎÊýÅäÖà + +#define MINOR_REMOTE_KEYPAD_UPGRADE 0x106c //Ô¶³ÌÉý¼¶¼üÅÌ +#define MINOR_ONETOUCH_AWAY_ARMING 0x106d //Ò»¼üÍâ³ö²¼·À +#define MINOR_ONETOUCH_STAY_ARMING 0x106e //Ò»¼üÁôÊز¼·À +#define MINOR_SINGLE_PARTITION_ARMING_OR_DISARMING 0x106f //µ¥·ÀÇø²¼³··À +#define MINOR_CARD_CONFIGURATION 0x1070 //¿¨²ÎÊýÅäÖà +#define MINOR_CARD_ARMING_OR_DISARMING 0x1071 //Ë¢¿¨²¼³··À +#define MINOR_EXPENDING_NETCENTER_CONFIGURATION 0x1072 //À©Õ¹ÍøÂçÖÐÐÄÅäÖà +#define MINOR_NETCARD_CONFIGURATION 0x1073 //Íø¿¨ÅäÖà +#define MINOR_DDNS_CONFIGURATION 0x1074 //DDNSÅäÖà +#define MINOR_RS485BUS_CONFIGURATION 0x1075 // 485×ÜÏß²ÎÊýÅäÖà +#define MINOR_RS485BUS_RE_REGISTRATION 0x1076 //485×ÜÏßÖØÐÂ×¢²á + +#define MINOR_REMOTE_OPEN_ELECTRIC_LOCK 0x1077 //Ô¶³Ì´ò¿ªµçËø +#define MINOR_REMOTE_CLOSE_ELECTRIC_LOCK 0x1078 //Ô¶³Ì¹Ø±ÕµçËø +#define MINOR_LOCAL_OPEN_ELECTRIC_LOCK 0x1079 //±¾µØ´ò¿ªµçËø +#define MINOR_LOCAL_CLOSE_ELECTRIC_LOCK 0x107a //±¾µØ¹Ø±ÕµçËø +#define MINOR_OPEN_ALARM_LAMP 0x107b //´ò¿ª¾¯µÆ(Ô¶³Ì) +#define MINOR_CLOSE_ALARM_LAMP 0x107c //¹Ø±Õ¾¯µÆ(Ô¶³Ì) + + +#define MINOR_TEMPORARY_PASSWORD 0x107d //ÁÙʱÃÜÂë²Ù×÷¼Ç¼ + +#define MINOR_HIDDNS_CONFIG 0x1082 // HIDDNSÅäÖà +#define MINOR_REMOTE_KEYBOARD_UPDATA 0x1083 //Ô¶³Ì¼üÅÌÉý¼¶ÈÕÖ¾ +#define MINOR_ZONE_ADD_DETECTOR 0x1084 //·ÀÇøÌí¼Ó̽²âÆ÷ +#define MINOR_ZONE_DELETE_DETECTOR 0x1085 //·ÀÇøɾ³ý̽²âÆ÷ +#define MINOR_QUERY_DETECTOR_SIGNAL 0x1086 //Ö÷»ú²éѯ̽²âÆ÷ÐźÅÇ¿¶È +#define MINOR_QUERY_DETECTOR_BATTERY 0x1087 //Ö÷»ú²éѯ̽²âÆ÷µçÁ¿ +#define MINOR_SET_DETECTOR_GUARD 0x1088 //̽²âÆ÷²¼·À +#define MINOR_SET_DETECTOR_UNGUARD 0x1089 //̽²âÆ÷³··À +#define MINOR_WIRELESS_CONFIGURATION 0x108a //ÎÞÏß²ÎÊýÅäÖà +#define MINOR_OPEN_VOICE 0x108b //´ò¿ªÓïÒô +#define MINOR_CLOSE_VOICE 0x108c //¹Ø±ÕÓïÒô +#define MINOR_ENABLE_FUNCTION_KEY 0x108d //ÆôÓù¦Äܼü +#define MINOR_DISABLE_FUNCTION_KEY 0x108e //¹Ø±Õ¹¦Äܼü +#define MINOR_READ_CARD 0x108f //Ѳ¸üË¢¿¨ +#define MINOR_START_BROADCAST 0x1090 //´ò¿ªÓïÒô¹ã²¥ +#define MINOR_STOP_BROADCAST 0x1091 //¹Ø±ÕÓïÒô¹ã²¥ +#define MINOR_REMOTE_ZONE_MODULE_UPGRADE 0x1092 //Ô¶³ÌÉý¼¶·ÀÇøÄ£¿é +#define MINOR_NETWORK_MODULE_EXTEND 0x1093 //ÍøÂçÄ£¿é²ÎÊýÅäÖà +#define MINOR_ADD_CONTROLLER 0x1094 //Ìí¼ÓÒ£¿ØÆ÷Óû§ +#define MINOR_DELETE_CONTORLLER 0x1095 //ɾ³ýÒ£¿ØÆ÷Óû§ +#define MINOR_REMOTE_NETWORKMODULE_UPGRADE 0x1096 //Ô¶³ÌÉý¼¶ÍøÂçÄ£¿é +#define MINOR_WIRELESS_OUTPUT_ADD 0x1097 //×¢²áÎÞÏßÊä³öÄ£¿é +#define MINOR_WIRELESS_OUTPUT_DEL 0x1098 //ɾ³ýÎÞÏßÊä³öÄ£¿é +#define MINOR_WIRELESS_REPEATER_ADD 0x1099 //×¢²áÎÞÏßÖмÌÆ÷ +#define MINOR_WIRELESS_REPEATER_DEL 0x109a //ɾ³ýÎÞÏßÖмÌÆ÷ +#define MINOR_PHONELIST_CFG 0x109b //µç»°Ãûµ¥²ÎÊýÅäÖà +#define MINOR_RF_SIGNAL_CHECK 0x109c // RFÐźŲéѯ +#define MINOR_USB_UPGRADE 0x109d // USBÉý¼¶ +#define MINOR_DOOR_TIME_REMINDER_CFG 0x109f //ÃŴŶ¨Ê±ÌáÐѲÎÊýÅäÖà +#define MINOR_WIRELESS_SIREN_ADD 0x1100 //×¢²áÎÞÏß¾¯ºÅ +#define MINOR_WIRELESS_SIREN_DEL 0x1101 //ɾ³ýÎÞÏß¾¯ºÅ +#define MINOR_OUT_SCALE_OPEN 0x1102 //¸¨µç¿ªÆô +#define MINOR_OUT_SCALE_CLOSE 0x1103 //¸¨µç¹Ø±Õ + +#define MINOR_ALARMHOST_4G_MODULS_START 0x1108 //4GÄ£¿éÆôÓà +#define MINOR_ALARMHOST_4G_MODULS_STOP 0x1109 //4GÄ£¿éÍ£Óà + +#define MINOR_EZVIZ_CLOUD_START 0x1110 //өʯÔÆÆôÓà +#define MINOR_EZVIZ_CLOUD_STOP 0x1111 //өʯÔÆÍ£Óà +#define MINOR_SIPUA_GRID_START 0x1112 //¹úÍøBÆôÓà +#define MINOR_SIPUA_GRID_STOP 0x1113 //¹úÍøBÍ£Óà + +#define MINOR_MODBUS_FILE_DOWNLOAD 0x1114 //µ¼³ömodbusЭÒéÅäÖÃÎļþ +#define MINOR_MODBUS_FILE_UPLOAD 0x1115 //µ¼ÈëmodbusЭÒéÅäÖÃÎļþ + +#define MINOR_RS485_DLL_FILE_DOWNLOAD 0x1116 //µ¼³ö485ЭÒé¿âÎļþ +#define MINOR_RS485_DLL_FLIE_UPLOAD 0x1117 //µ¼Èë485ЭÒé¿âÎļþ +#define MINOR_TX1_REBOOT 0x1118 //TX1ϵͳÕý³£ÖØÆô + +#define MINOR_LORA_PARAM 0x1119 //LoRa²ÎÊý +#define MINOR_GB28181_PLATE_CFG_PARAM 0x111a //¹ú±êƽ̨½ÓÈë²ÎÊýÅäÖà +#define MINOR_GB28181_SERVER_START 0x111b //¹ú±ê·þÎñÆôÓà +#define MINOR_GB28181_SERVER_STOP 0x111c //¹ú±ê·þÎñÍ£Óà +#define MINOR_WEB_AUTHENTICATION 0x111d //webÈÏÖ¤·½Ê½ÅäÖà +#define MINOR_SADP_ENABLED 0x111e //SADP¿ª¹ØÅäÖà +#define MINOR_HTTPS_ENABLED 0x111f //HTTPS¿ª¹ØÅäÖà +#define MINOR_EZVIZ_PARAM_CFG 0x1120 //өʯÔÆÅäÖà +#define MINOR_SET_MOTION_DETECTION_CFG 0x1121 //ÉèÖÃÒƶ¯Õì²â²ÎÊýÅäÖà +#define MINOR_GET_MOTION_DETECTION_CFG 0x1122 //»ñÈ¡Òƶ¯Õì²â²ÎÊýÅäÖà +#define MINOR_SET_SHELTER_ALARM_CFG 0x1123 //ÉèÖÃÕÚµ²±¨¾¯²ÎÊýÅäÖà +#define MINOR_GET_SHELTER_ALARM_CFG 0x1124 //»ñÈ¡ÕÚµ²±¨¾¯²ÎÊýÅäÖà +#define MINOR_SET_VIDEO_LOSS_CFG 0x1125 //ÉèÖÃÊÓƵ¶ªÊ§²ÎÊýÅäÖà +#define MINOR_GET_VIDEO_LOSS_CFG 0x1126 //»ñÈ¡ÊÓƵ¶ªÊ§²ÎÊýÅäÖà +#define MINOR_SET_ABNORMAL_CFG 0x1127 //ÉèÖÃÒì³£²ÎÊýÅäÖà +#define MINOR_GET_ABNORMAL_CFG 0x1128 //»ñÈ¡Òì³£²ÎÊýÅäÖà +#define MINOR_SET_ALARM_LINKAGE_CFG 0x1129 //ÉèÖñ¨¾¯Áª¶¯ÅäÖà +#define MINOR_GET_ALARM_LINKAGE_CFG 0x112a //»ñÈ¡±¨¾¯Áª¶¯ÅäÖà +#define MINOR_SET_NETWORK_CFG 0x112b //ÉèÖÃÍøÂç²ÎÊýÅäÖà +#define MINOR_GET_NETWORK_CFG 0x112c //»ñÈ¡ÍøÂç²ÎÊýÅäÖà +#define MINOR_SET_VIDEO_MASK_CFG 0x112d //ÉèÖÃÊÓƵÕڸDzÎÊýÅäÖà +#define MINOR_GET_VIDEO_MASK_CFG 0x112e //»ñÈ¡ÊÓƵÕڸDzÎÊýÅäÖà + +#define MINOR_BASIC_OPERATION_CFG 0x112f //»ù±¾²Ù×÷ +#define MINOR_DISPLAY_EFFECT_ADJUST_CFG 0x1130 //ÏÔʾЧ¹ûµ÷½Ú +#define MINOR_DISPLAY_PROPERTY_CFG 0x1131 //ÏÔʾÆÁÊôÐÔÅäÖà +#define MINOR_SIGNAL_CABLE_CFG 0x1132 //ÐźÅÏßÀÂÅäÖà +#define MINOR_BASIC_CFG 0x1133 //»ù´¡ÅäÖà +#define MINOR_IMAGE_ADJUST_CFG 0x1134 //ͼÏñµ÷ÕûÅäÖà +#define MINOR_IMAGE_ENHANCE_CFG 0x1135 //ͼÏñÔöÇ¿ÅäÖà +#define MINOR_NOSIGN_SCREEN_SAVER_CFG 0x1136 //ÎÞÐźÅÆÁ±£ +#define MINOR_ADVANCED_OPERATION_CFG 0x1137 //¸ß¼¶²Ù×÷ +#define MINOR_RECEIVE_CARD_CFG 0x1138 //½ÓÊÕ¿¨ÅäÖà +#define MINOR_INPUT_SUPPORT_CFG 0x1139 //ÊäÈëÖ§³Ö¹ÜÀí +#define MINOR_SYSTEM_MAINTAIN_CFG 0x113a //ϵͳά»¤ÅäÖà +#define MINOR_SYSTEM_TEST_CFG 0x113b //ϵͳ¼ì²âÅäÖà +#define MINOR_JOINT_CFG 0x113c //Æ´½ÓÅäÖà +#define MINOR_SHOW_MODE_CFG 0x113d //ÏÔʾģʽÅäÖà +#define MINOR_ADVANCED_IMAGE_CFG 0x113e //¸ß¼¶Í¼ÏñÅäÖà +#define MINOR_SHELF_SIZE_CALIBRATION 0x1140 //»õ¼Ü¹æ¸ñ±ê¶¨ +#define MINOR_CARGO_SENSOR_CALIBRATION 0x1141 //»õ¸ñ´«¸ÐÆ÷±ê¶¨ +#define MINOR_CARGO_PRODUCT_BIND_CFG 0x1142 //»õ¸ñÉÌÆ·°ó¶¨ÅäÖà + +//2013-04-19 ITS²Ù×÷ÈÕÖ¾ÀàÐÍ +#define MINOR_LOCAL_ADD_CAR_INFO 0x2001 /*±¾µØÌí¼Ó³µÁ¾ÐÅÏ¢*/ +#define MINOR_LOCAL_MOD_CAR_INFO 0x2002 /*±¾µØÐ޸ijµÁ¾ÐÅÏ¢*/ +#define MINOR_LOCAL_DEL_CAR_INFO 0x2003 /*±¾µØɾ³ý³µÁ¾ÐÅÏ¢*/ +#define MINOR_LOCAL_FIND_CAR_INFO 0x2004 /*±¾µØ²éÕÒ³µÁ¾ÐÅÏ¢*/ +#define MINOR_LOCAL_ADD_MONITOR_INFO 0x2005 /*±¾µØÌí¼Ó²¼¿ØÐÅÏ¢*/ +#define MINOR_LOCAL_MOD_MONITOR_INFO 0x2006 /*±¾µØÐ޸IJ¼¿ØÐÅÏ¢*/ +#define MINOR_LOCAL_DEL_MONITOR_INFO 0x2007 /*±¾µØɾ³ý²¼¿ØÐÅÏ¢*/ +#define MINOR_LOCAL_FIND_MONITOR_INFO 0x2008 /*±¾µØ²éѯ²¼¿ØÐÅÏ¢*/ +#define MINOR_LOCAL_FIND_NORMAL_PASS_INFO 0x2009 /*±¾µØ²éѯÕý³£Í¨ÐÐÐÅÏ¢*/ +#define MINOR_LOCAL_FIND_ABNORMAL_PASS_INFO 0x200a /*±¾µØ²éѯÒ쳣ͨÐÐÐÅÏ¢*/ +#define MINOR_LOCAL_FIND_PEDESTRIAN_PASS_INFO 0x200b /*±¾µØ²éѯÕý³£Í¨ÐÐÐÅÏ¢*/ +#define MINOR_LOCAL_PIC_PREVIEW 0x200c /*±¾µØͼƬԤÀÀ*/ +#define MINOR_LOCAL_SET_GATE_PARM_CFG 0x200d /*ÉèÖñ¾µØÅäÖóöÈë¿Ú²ÎÊý*/ +#define MINOR_LOCAL_GET_GATE_PARM_CFG 0x200e /*»ñÈ¡±¾µØÅäÖóöÈë¿Ú²ÎÊý*/ +#define MINOR_LOCAL_SET_DATAUPLOAD_PARM_CFG 0x200f /*ÉèÖñ¾µØÅäÖÃÊý¾ÝÉÏ´«²ÎÊý*/ +#define MINOR_LOCAL_GET_DATAUPLOAD_PARM_CFG 0x2010 /*»ñÈ¡±¾µØÅäÖÃÊý¾ÝÉÏ´«²ÎÊý*/ + +//2013-11-19ÐÂÔöÈÕÖ¾ÀàÐÍ +#define MINOR_LOCAL_DEVICE_CONTROL 0x2011 /*±¾µØÉ豸¿ØÖÆ(±¾µØ¿ª¹ØÕ¢)*/ +#define MINOR_LOCAL_ADD_EXTERNAL_DEVICE_INFO 0x2012 /*±¾µØÌí¼ÓÍâ½ÓÉ豸ÐÅÏ¢ */ +#define MINOR_LOCAL_MOD_EXTERNAL_DEVICE_INFO 0x2013 /*±¾µØÐÞ¸ÄÍâ½ÓÉ豸ÐÅÏ¢ */ +#define MINOR_LOCAL_DEL_EXTERNAL_DEVICE_INFO 0x2014 /*±¾µØɾ³ýÍâ½ÓÉ豸ÐÅÏ¢ */ +#define MINOR_LOCAL_FIND_EXTERNAL_DEVICE_INFO 0x2015 /*±¾µØ²éѯÍâ½ÓÉ豸ÐÅÏ¢ */ +#define MINOR_LOCAL_ADD_CHARGE_RULE 0x2016 /*±¾µØÌí¼ÓÊշѹæÔò */ +#define MINOR_LOCAL_MOD_CHARGE_RULE 0x2017 /*±¾µØÐÞ¸ÄÊշѹæÔò */ +#define MINOR_LOCAL_DEL_CHARGE_RULE 0x2018 /*±¾µØɾ³ýÊշѹæÔò */ +#define MINOR_LOCAL_FIND_CHARGE_RULE 0x2019 /*±¾µØ²éѯÊշѹæÔò */ +#define MINOR_LOCAL_COUNT_NORMAL_CURRENTINFO 0x2020 /*±¾µØͳ¼ÆÕý³£Í¨ÐÐÐÅÏ¢ */ +#define MINOR_LOCAL_EXPORT_NORMAL_CURRENTINFO_REPORT 0x2021 /*±¾µØµ¼³öÕý³£Í¨ÐÐÐÅϢͳ¼Æ±¨±í */ +#define MINOR_LOCAL_COUNT_ABNORMAL_CURRENTINFO 0x2022 /*±¾µØͳ¼ÆÒ쳣ͨÐÐÐÅÏ¢ */ +#define MINOR_LOCAL_EXPORT_ABNORMAL_CURRENTINFO_REPORT 0x2023 /*±¾µØµ¼³öÒ쳣ͨÐÐÐÅϢͳ¼Æ±¨±í */ +#define MINOR_LOCAL_COUNT_PEDESTRIAN_CURRENTINFO 0x2024 /*±¾µØͳ¼ÆÐÐÈËͨÐÐÐÅÏ¢ */ +#define MINOR_LOCAL_EXPORT_PEDESTRIAN_CURRENTINFO_REPORT 0x2025 /*±¾µØµ¼³öÐÐÈËͨÐÐÐÅϢͳ¼Æ±¨±í */ +#define MINOR_LOCAL_FIND_CAR_CHARGEINFO 0x2026 /*±¾µØ²éѯ¹ý³µÊÕ·ÑÐÅÏ¢ */ +#define MINOR_LOCAL_COUNT_CAR_CHARGEINFO 0x2027 /*±¾µØͳ¼Æ¹ý³µÊÕ·ÑÐÅÏ¢ */ +#define MINOR_LOCAL_EXPORT_CAR_CHARGEINFO_REPORT 0x2028 /*±¾µØµ¼³ö¹ý³µÊÕ·ÑÐÅϢͳ¼Æ±¨±í */ +#define MINOR_LOCAL_FIND_SHIFTINFO 0x2029 /*±¾µØ²éѯ½»½Ó°àÐÅÏ¢ */ +#define MINOR_LOCAL_FIND_CARDINFO 0x2030 /*±¾µØ²éѯ¿¨Æ¬ÐÅÏ¢ */ +#define MINOR_LOCAL_ADD_RELIEF_RULE 0x2031 /*±¾µØÌí¼Ó¼õÃâ¹æÔò */ +#define MINOR_LOCAL_MOD_RELIEF_RULE 0x2032 /*±¾µØÐ޸ļõÃâ¹æÔò */ +#define MINOR_LOCAL_DEL_RELIEF_RULE 0x2033 /*±¾µØɾ³ý¼õÃâ¹æÔò */ +#define MINOR_LOCAL_FIND_RELIEF_RULE 0x2034 /*±¾µØ²éѯ¼õÃâ¹æÔò */ +#define MINOR_LOCAL_GET_ENDETCFG 0x2035 /*±¾µØ»ñÈ¡³öÈë¿Ú¿ØÖÆ»úÀëÏß¼ì²âÅäÖà */ +#define MINOR_LOCAL_SET_ENDETCFG 0x2036 /*±¾µØÉèÖóöÈë¿Ú¿ØÖÆ»úÀëÏß¼ì²âÅäÖÃ*/ +#define MINOR_LOCAL_SET_ENDEV_ISSUEDDATA 0x2037 /*±¾µØÉèÖóöÈë¿Ú¿ØÖÆ»úÏ·¢¿¨Æ¬ÐÅÏ¢ */ +#define MINOR_LOCAL_DEL_ENDEV_ISSUEDDATA 0x2038 /*±¾µØÇå¿Õ³öÈë¿Ú¿ØÖÆ»úÏ·¢¿¨Æ¬ÐÅÏ¢ */ + +#define MINOR_REMOTE_DEVICE_CONTROL 0x2101 /*Ô¶³ÌÉ豸¿ØÖÆ*/ +#define MINOR_REMOTE_SET_GATE_PARM_CFG 0x2102 /*ÉèÖÃÔ¶³ÌÅäÖóöÈë¿Ú²ÎÊý*/ +#define MINOR_REMOTE_GET_GATE_PARM_CFG 0x2103 /*»ñÈ¡Ô¶³ÌÅäÖóöÈë¿Ú²ÎÊý*/ +#define MINOR_REMOTE_SET_DATAUPLOAD_PARM_CFG 0x2104 /*ÉèÖÃÔ¶³ÌÅäÖÃÊý¾ÝÉÏ´«²ÎÊý*/ +#define MINOR_REMOTE_GET_DATAUPLOAD_PARM_CFG 0x2105 /*»ñÈ¡Ô¶³ÌÅäÖÃÊý¾ÝÉÏ´«²ÎÊý*/ +#define MINOR_REMOTE_GET_BASE_INFO 0x2106 /*Ô¶³Ì»ñÈ¡Öն˻ù±¾ÐÅÏ¢*/ +#define MINOR_REMOTE_GET_OVERLAP_CFG 0x2107 /*Ô¶³Ì»ñÈ¡×Ö·ûµþ¼Ó²ÎÊýÅäÖÃ*/ +#define MINOR_REMOTE_SET_OVERLAP_CFG 0x2108 /*Ô¶³ÌÉèÖÃ×Ö·ûµþ¼Ó²ÎÊýÅäÖÃ*/ +#define MINOR_REMOTE_GET_ROAD_INFO 0x2109 /*Ô¶³Ì»ñȡ·¿ÚÐÅÏ¢*/ +#define MINOR_REMOTE_START_TRANSCHAN 0x210a /*Ô¶³Ì½¨Á¢Í¬²½Êý¾Ý·þÎñÆ÷*/ +#define MINOR_REMOTE_GET_ECTWORKSTATE 0x210b /*Ô¶³Ì»ñÈ¡³öÈë¿ÚÖն˹¤×÷״̬*/ +#define MINOR_REMOTE_GET_ECTCHANINFO 0x210c /*Ô¶³Ì»ñÈ¡³öÈë¿ÚÖÕ¶ËͨµÀ״̬*/ + +//Ô¶³Ì¿ØÖÆ 2013-11-19 +#define MINOR_REMOTE_ADD_EXTERNAL_DEVICE_INFO 0x210d /*Ô¶³ÌÌí¼ÓÍâ½ÓÉ豸ÐÅÏ¢ */ +#define MINOR_REMOTE_MOD_EXTERNAL_DEVICE_INFO 0x210e /*Ô¶³ÌÐÞ¸ÄÍâ½ÓÉ豸ÐÅÏ¢ */ +#define MINOR_REMOTE_GET_ENDETCFG 0x210f /*Ô¶³Ì»ñÈ¡³öÈë¿Ú¿ØÖÆ»úÀëÏß¼ì²âÅäÖà */ +#define MINOR_REMOTE_SET_ENDETCFG 0x2110 /*Ô¶³ÌÉèÖóöÈë¿Ú¿ØÖÆ»úÀëÏß¼ì²âÅäÖÃ*/ +#define MINOR_REMOTE_ENDEV_ISSUEDDATA 0x2111 /*Ô¶³ÌÉèÖóöÈë¿Ú¿ØÖÆ»úÏ·¢¿¨Æ¬ÐÅÏ¢ */ +#define MINOR_REMOTE_DEL_ENDEV_ISSUEDDATA 0x2112 /*Ô¶³ÌÇå¿Õ³öÈë¿Ú¿ØÖÆ»úÏ·¢¿¨Æ¬ÐÅÏ¢ */ + +//ITS 0x2115~0x2120 Í£³µ³¡³µÎ»ÏîÄ¿ +#define MINOR_REMOTE_ON_CTRL_LAMP 0x2115 /*¿ªÆôÔ¶³Ì¿ØÖƳµÎ»Ö¸Ê¾µÆ*/ +#define MINOR_REMOTE_OFF_CTRL_LAMP 0x2116 /*¹Ø±ÕÔ¶³Ì¿ØÖƳµÎ»Ö¸Ê¾µÆ*/ +//Netra3.1.0 +#define MINOR_SET_VOICE_LEVEL_PARAM 0x2117 /*ÉèÖÃÒôÁ¿´óС */ +#define MINOR_SET_VOICE_INTERCOM_PARAM 0x2118 /*ÉèÖÃÒôÁ¿Â¼Òô */ +#define MINOR_SET_INTELLIGENT_PARAM 0x2119 /*ÖÇÄÜÅäÖÃ*/ +#define MINOR_LOCAL_SET_RAID_SPEED 0x211a /*±¾µØÉèÖÃraidËÙ¶È*/ +#define MINOR_REMOTE_SET_RAID_SPEED 0x211b /*Ô¶³ÌÉèÖÃraidËÙ¶È*/ +//Nerta3.1.2 +#define MINOR_REMOTE_CREATE_STORAGE_POOL 0x211c //Ô¶³ÌÌí¼Ó´æ´¢³Ø +#define MINOR_REMOTE_DEL_STORAGE_POOL 0x211d //Ô¶³Ìɾ³ý´æ´¢³Ø + +#define MINOR_REMOTE_DEL_PIC 0x2120 //Ô¶³Ìɾ³ýͼƬÊý¾Ý +#define MINOR_REMOTE_DEL_RECORD 0x2121 //Ô¶³Ìɾ³ý¼ÏñÊý¾Ý +#define MINOR_REMOTE_CLOUD_ENABLE 0x2123 //Ô¶³ÌÉèÖÃÔÆϵͳÆôÓà +#define MINOR_REMOTE_CLOUD_DISABLE 0x2124 //Ô¶³ÌÉèÖÃÔÆϵͳ½ûÓà +#define MINOR_REMOTE_CLOUD_MODIFY_PARAM 0x2125 //Ô¶³ÌÐ޸Ĵ洢³Ø²ÎÊý +#define MINOR_REMOTE_CLOUD_MODIFY_VOLUME 0x2126 //Ô¶³ÌÐ޸Ĵ洢³ØÈÝÁ¿ +#define MINOR_REMOTE_GET_GB28181_SERVICE_PARAM 0x2127 //Ô¶³Ì»ñÈ¡GB28181·þÎñ²ÎÊý +#define MINOR_REMOTE_SET_GB28181_SERVICE_PARAM 0x2128 //Ô¶³ÌÉèÖÃGB28181·þÎñ²ÎÊý +#define MINOR_LOCAL_GET_GB28181_SERVICE_PARAM 0x2129 //±¾µØ»ñÈ¡GB28181·þÎñ²ÎÊý +#define MINOR_LOCAL_SET_GB28181_SERVICE_PARAM 0x212a //±¾µØÅäÖÃB28181·þÎñ²ÎÊý +#define MINOR_REMOTE_SET_SIP_SERVER 0x212b //Ô¶³ÌÅäÖÃSIP SERVER +#define MINOR_LOCAL_SET_SIP_SERVER 0x212c //±¾µØÅäÖÃSIP SERVER +#define MINOR_LOCAL_BLOCKALLOWFILE_OUTPUT 0x212d //±¾µØÃûµ¥µ¼³ö +#define MINOR_LOCAL_BLOCKALLOWFILE_INPUT 0x212e //±¾µØÃûµ¥µ¼Èë +#define MINOR_REMOTE_BLOCKALLOWCFGFILE_OUTPUT 0x212f //Ô¶³ÌÃûµ¥µ¼³ö +#define MINOR_REMOTE_BLOCKALLOWCFGFILE_INPUT 0x2130 //Ô¶³ÌÃûµ¥µ¼Èë + + +#define MINOR_REMOTE_CREATE_MOD_VIEWLIB_SPACE 0x2200 /*Ô¶³Ì´´½¨/ÐÞ¸ÄÊÓͼ¿â¿Õ¼ä*/ +#define MINOR_REMOTE_DELETE_VIEWLIB_FILE 0x2201 /*Ô¶³Ìɾ³ýÊÓͼ¿âÎļþ*/ +#define MINOR_REMOTE_DOWNLOAD_VIEWLIB_FILE 0x2202 /*Ô¶³ÌÏÂÔØÊÓͼ¿âÎļþ*/ +#define MINOR_REMOTE_UPLOAD_VIEWLIB_FILE 0x2203 /*Ô¶³ÌÉÏ´«ÊÓͼ¿âÎļþ*/ +#define MINOR_LOCAL_CREATE_MOD_VIEWLIB_SPACE 0x2204 /*±¾µØ´´½¨/ÐÞ¸ÄÊÓͼ¿â¿Õ¼ä*/ + +#define MINOR_LOCAL_SET_DEVICE_ACTIVE 0x3000 //±¾µØ¼¤»îÉ豸 +#define MINOR_REMOTE_SET_DEVICE_ACTIVE 0x3001 //Ô¶³Ì¼¤»îÉ豸 +#define MINOR_LOCAL_PARA_FACTORY_DEFAULT 0x3002 //±¾µØ»Ø¸´³ö³§ÉèÖà +#define MINOR_REMOTE_PARA_FACTORY_DEFAULT 0x3003 //Ô¶³Ì»Ö¸´³ö³§ÉèÖà +#define MIMOR_REMOTE_DELETE_ALL_VERIFYORCAP_PICS 0x3004 //Ô¶³Ìɾ³ýËùÓÐÈÏÖ¤»ò×¥ÅÄͼƬ +#define MIMOR_LOCAL_DELETE_ALL_VERIFYORCAP_PICS 0x3005 //±¾µØɾ³ýËùÓÐÈÏÖ¤»ò×¥ÅÄͼƬ +#define MIMOR_REMOTE_DELETE_EVENTS_AT_SPECTIME 0x3006 //Ô¶³Ì°´Ö¸¶¨Ê±¼äɾ³ýʼþ +#define MIMOR_LOCAL_DELETE_EVENTS_AT_SPECTIME 0x3007 //±¾µØ°´Ö¸¶¨Ê±¼äɾ³ýʼþ +#define MIMOR_REMOTE_OPEN_SUMMER_TIME 0x3008 //Ô¶³Ì¿ªÆôÏÄÁîʱ +#define MIMOR_LOCAL_OPEN_SUMMER_TIME 0x3009 //±¾µØ¿ªÆôÏÄÁîʱ +#define MIMOR_REMOTE_CLOSE_SUMMER_TIME 0x3010 //Ô¶³Ì¹Ø±ÕÏÄÁîʱ +#define MIMOR_LOCAL_CLOSE_SUMMER_TIME 0x3011 //±¾µØ¹Ø±ÕÏÄÁîʱ +#define MIMOR_REMOTE_EZVIZ_UNBIND 0x3012 //Ô¶³ÌөʯÔƽâ°ó +#define MIMOR_LOCAL_EZVIZ_UNBIND 0x3013 //±¾µØөʯÔƽâ°ó +#define MIMOR_ENTER_LOCALUI_BACKGROUND 0x3014 //½øÈëUIºǫ́ +#define MIMOR_REMOTE_DELETE_FACEBASEMAP 0x3015 //Ô¶³Ìɾ³ýÈËÁ³µ×ͼ +#define MIMOR_LOCAL_DELETE_FACEBASEMAP 0x3016 //±¾µØɾ³ýÈËÁ³µ×ͼ + + +/*ÐÅÏ¢·¢²¼·þÎñÆ÷²Ù×÷ÈÕÖ¾*/ +#define MINOR_UPLAOD_STATIC_MATERIAL 0x2401 //¾²Ì¬ËزÄÉÏ´« +#define MINOR_UPLOAD_DYNAMIC_MATERIAL 0x2402 //¶¯Ì¬ËزÄÉÏ´« +#define MINOR_DELETE_MATERIAL 0x2403 //ɾ³ýËØ²Ä +#define MINOR_DOWNLOAD_STATIC_MATERIAL 0x2404 //¾²Ì¬ËزÄÏÂÔØ +#define MINOR_COVER_STATIC_MATERIAL 0x2405 //¾²Ì¬Ëزĸ²¸Ç +#define MINOR_APPROVE_MATERIAL 0x2406 //ËزÄÉóºË +#define MINOR_UPLAOD_PROGRAM 0x2407 //ÉÏ´«½ÚÄ¿ +#define MINOR_DOWNLOAD_PROGRAM 0x2408 //ÏÂÔؽÚÄ¿ +#define MINOR_DELETE_PROGRAM 0x2409 //ɾ³ý½ÚÄ¿ +#define MINOR_MODIFY_PROGRAM 0x240a //½ÚÄ¿ÊôÐÔÐÞ¸Ä +#define MINOR_APPROVE_PRAGRAM 0x240b //½ÚÄ¿ÉóºË +#define MINOR_UPLAOD_SCHEDULE 0x240c //ÉÏ´«ÈÕ³Ì +#define MINOR_DOWNLOAD_SCHEDULE 0x240d //ÏÂÔØÈÕ³Ì +#define MINOR_DELETE_SCHEDULE 0x240e //ɾ³ýÈÕ³Ì +#define MINOR_MODIFY_SCHEDULE 0x240f //ÐÞ¸ÄÈÕ³ÌÊôÐÔ +#define MINOR_RELEASE_SCHEDULE 0x2410 //·¢²¼ÈÕ³Ì +#define MINOR_ADD_TERMINAL 0x2411 //Ìí¼ÓÖÕ¶Ë +#define MINOR_DELETE_TERMINAL 0x2412 //ɾ³ýÖÕ¶Ë +#define MINOR_MODIFY_TERMIANL_PARAM 0x2413 //ÐÞ¸ÄÖն˲ÎÊý +#define MINOR_MODIFY_TERMIANL_PLAY_PARAM 0x2414 //ÅäÖÃÖն˲¥·Å²ÎÊý +#define MINOR_ADD_TERMIANL_GROUP 0x2415 //Ìí¼ÓÖÕ¶Ë×é +#define MINOR_MODIFY_TERMINAL_GROUP_PARAM 0x2416 //ÐÞ¸ÄÖÕ¶Ë×é²ÎÊý +#define MINOR_DELETE_TERMIANL_GROUP 0x2417 //ɾ³ýÖÕ¶Ë×é +#define MINOR_TERMINAL_PLAY_CONTROL 0x2418 //Öն˲¥·Å¿ØÖÆ +#define MINOR_TERMINAL_ON_OFF_LINE 0x2419 //ÖÕ¶ËÉÏÏÂÏß +#define MINOR_SET_SWITCH_PLAN 0x241a //ÉèÖÃÖն˶¨Ê±¿ª¹Ø»ú¼Æ»® +#define MINOR_SET_VOLUME_PLAN 0x241b //ÉèÖÃÖն˶¨Ê±ÒôÁ¿¼Æ»® +#define MINOR_TERMINAL_SCREENSHOT 0x241c //Öն˽ØÆÁ +#define MINOR_SYSTEM_TIME_CFG 0x241d //ϵͳУʱ +#define MINOR_ADD_USER_CFG 0x241e //Ìí¼ÓÓû§ÅäÖà +#define MINOR_DEL_USER_CFG 0x241f //ɾ³ýÓû§ÅäÖà +#define MINOR_REMOTE_MANAGE_HDD 0x2420 //Ô¶³Ì±à¼­Ó²ÅÌ +#define MINOR_TERMINAL_UPDATE_START 0x2421 //ÖÕ¶ËÉý¼¶ +#define MINOR_SVR_RESTORE_DEFAULT_PARAM 0x2422 //·þÎñÆ÷Ô¶³Ì»Ö¸´Ä¬ÈÏ +#define MINOR_SVR_REMOTE_RESTORE_FACTORY 0x2423 //·þÎñÆ÷Ô¶³Ì»Ö¸´³ö³§ÉèÖà +#define MINOR_SVR_REMOTE_REBOOT 0x2424 //·þÎñÆ÷Ô¶³ÌÖØÆô +#define MINOR_SVR_MODIFY_NETWORK_PARAM 0x2425 //·þÎñÆ÷ÍøÂç²ÎÊýÐÞ¸Ä +#define MINOR_SVR_SOFTWARE_UPGRADE 0x2426 //·þÎñÆ÷Èí¼þÉý¼¶ + + + +#define MINOR_REMOTE_CONFERENCE_CONFIG 0x2501 //MCU»áÒéÅäÖà +#define MINOR_REMOTE_TERMINAL_CONFIG 0x2502 //MCUÖÕ¶ËÅäÖà +#define MINOR_REMOTE_GROUP_CONFIG 0x2503 //MCU·Ö×éÅäÖà +#define MINOR_REMOTE_CONFERENCE_CTRL 0x2504 //MCU»áÒé¿ØÖÆ +#define MINOR_REMOTE_TERMINAL_CTRL 0x2505 //MCUÖն˿ØÖÆ +#define MINOR_ADD_VIDEOWALLSCENE 0x2506 //н¨µçÊÓǽ³¡¾° +#define MINOR_DEL_VIDEOWALLSCENE 0x2507 //ɾ³ýµçÊÓǽ³¡¾° +#define MINOR_SAVE_VIDEOWALLSCENE 0x2508 //±£´æµçÊÓǽ³¡¾° +#define MINOR_UPLOAD_SCENECFGFILE 0x2509 //ÉÏ´«µçÊÓǽ³¡¾°ÅäÖÃÎļþ +#define MINOR_DOWNLOAD_SCENECFGFILE 0x250a //ÏÂÔصçÊÓǽ³¡¾°ÅäÖÃÎļþ + + +//NVRºó¶Ë +#define MINOR_LOCAL_RESET_LOGIN_PASSWORD 0x2600 /* ±¾µØÖØÖÃadminµÇ½ÃÜÂë*/ +#define MINOR_REMOTE_RESET_LOGIN_PASSWORD 0x2601 /* Ô¶³ÌÖØÖÃadminµÇ¼ÃÜÂë */ +#define MINOR_LOCAL_FACE_BASE_CREATE 0x2602 /* ±¾µØÈËÁ³¶Ô±È¿â´´½¨*/ +#define MINOR_REMOTE_FACE_BASE_CREATE 0x2603 /* Ô¶³ÌÈËÁ³¶Ô±È¿â´´½¨*/ +#define MINOR_LOCAL_FACE_BASE_MODIFY 0x2604 /* ±¾µØÈËÁ³¶Ô±È¿âÐÞ¸Ä*/ +#define MINOR_REMOTE_FACE_BASE_MODIFY 0x2605 /* Ô¶³ÌÈËÁ³¶Ô±È¿âÐÞ¸Ä*/ +#define MINOR_LOCAL_FACE_BASE_DELETE 0x2606 /* ±¾µØÈËÁ³¶Ô±È¿âɾ³ý*/ +#define MINOR_REMOTE_FACE_BASE_DELETE 0x2607 /* Ô¶³ÌÈËÁ³¶Ô±È¿âɾ³ý*/ +#define MINOR_LOCAL_FACE_DATA_APPEND 0x2608 /* ±¾µØ¼ÈëÈËÁ³Êý¾Ý*/ +#define MINOR_REMOTE_FACE_DATA_APPEND 0x2609 /* Ô¶³Ì¼ÈëÈËÁ³Êý¾Ý*/ +#define MINOR_LOCAL_FACE_DATA_SEARCH 0x2610 /* ±¾µØÈËÁ³±È¶ÔÊý¾Ý²éÕÒ*/ +#define MINOR_REMOTE_FACE_DATA_SEARCH 0x2611 /* Ô¶³ÌÈËÁ³±È¶ÔÊý¾Ý²éÕÒ*/ +#define MINOR_LOCAL_FACE_DATA_ANALYSIS 0x2612 /* ±¾µØͼƬ·ÖÎö²Ù×÷*/ +#define MINOR_REMOTE_FACE_DATA_ANALYSIS 0x2613 /* Ô¶³ÌͼƬ·ÖÎö²Ù×÷*/ +#define MINOR_LOCAL_FACE_DATA_EDIT 0x2614 /* ±¾µØÈËÁ³Êý¾ÝÐÞ¸Ä*/ +#define MINOR_REMOTE_FACE_DATA_EDIT 0x2615 /* Ô¶³ÌÈËÁ³Êý¾ÝÐÞ¸Ä*/ + +#define MINOR_LOCAL_FACE_DATA_DELETE 0x2616 /* ±¾µØÈËÁ³Êý¾Ýɾ³ý*/ +#define MINOR_REMOTE_FACE_DATA_DELET 0x2617 /* Ô¶³ÌÈËÁ³Êý¾Ýɾ³ý*/ + +#define MINOR_LOCAL_VCA_ANALYSIS_CFG 0x2618 /* ±¾µØÖÇÄÜ·ÖÎöÅäÖÃ*/ +#define MINOR_REMOTE_VCA_ANALYSIS_CFG 0x2619 /* Ô¶³ÌÖÇÄÜ·ÖÎöÅäÖÃ*/ + +#define MINOR_LOCAL_FACE_BASE_IMPORT 0x261a /* ±¾µØµ¼ÈëÈËÁ³¿â*/ +#define MINOR_LOCAL_FACE_BASE_EXPORT 0x261b /* ±¾µØµ¼³öÈËÁ³¿â*/ +//NVR¼¯Èº +#define MINOR_REMOTE_CLUSTER_MODE_CONFIG 0x261c /* Ô¶³Ì¼¯ÈºÄ£Ê½ÅäÖòÙ×÷*/ +#define MINOR_LOCAL_CLUSTER_MODE_CONFIG 0x261d /* ±¾µØ¼¯ÈºÄ£Ê½ÅäÖòÙ×÷*/ +#define MINOR_REMOTE_CLUSTER_NETWORK_CONFIG 0x261e /* Ô¶³Ì¼¯Èº×éÍøÅäÖòÙ×÷*/ +#define MINOR_LOCAL_CLUSTER_NETWORK_CONFIG 0x261f /* ±¾µØ¼¯Èº×éÍøÅäÖòÙ×÷*/ +#define MINOR_REMOTE_CLUSTER_ADD_DEVICE 0x2620 /* Ô¶³Ì¼¯ÈºÌí¼ÓÉ豸²Ù×÷*/ +#define MINOR_LOCAL_CLUSTER_ADD_DEVICE 0x2621 /* ±¾µØ¼¯ÈºÌí¼ÓÉ豸²Ù×÷*/ +#define MINOR_REMOTE_CLUSTER_DEL_DEVICE 0x2622 /* Ô¶³Ì¼¯ÈºÉ¾³ýÉ豸²Ù×÷*/ +#define MINOR_LOCAL_CLUSTER_DEL_DEVICE 0x2623 /* ±¾µØ¼¯ÈºÉ¾³ýÉ豸²Ù×÷*/ +#define MINOR_REMOTE_HFPD_CFG 0x2624 /* Ô¶³Ì¸ßƵÈËÔ±¼ì²âÅäÖÃ*/ +#define MINOR_REMOTE_FACE_CONTRAST_TASK 0x2625 /* Ô¶³ÌÈËÁ³±È¶ÔÈÎÎñÅäÖà */ +#define MINOR_REMOTE_LFPD_CFG 0x2626 /* Ô¶³ÌµÍƵÈËÔ±¼ì²âÅäÖÃ*/ +#define MINOR_REMOTE_IOTCFGFILE_INPUT 0x2627//Ô¶³Ìµ¼ÈëIOTÅäÖÃÎļþ +#define MINOR_REMOTE_IOTCFGFILE_OUTPUT 0x2628//Ô¶³Ìµ¼³öIOTÅäÖÃÎļþ +#define MINOR_LOCAL_IOT_ADD 0x2629//±¾µØÌí¼ÓIOTͨµÀ +#define MINOR_REMOTE_IOT_ADD 0x262a//Ô¶³ÌÌí¼ÓIOTͨµÀ +#define MINOR_LOCAL_IOT_DEL 0x262b//±¾µØɾ³ýIOTͨµÀ +#define MINOR_REMOTE_IOT_DEL 0x262c//Ô¶³Ìɾ³ýIOTͨµÀ +#define MINOR_LOCAL_IOT_SET 0x262d//±¾µØÅäÖÃIOTͨµÀ +#define MINOR_REMOTE_IOT_SET 0x262e//Ô¶³ÌÅäÖÃIOTͨµÀ +#define MINOR_LOCAL_IOTCFGFILE_INPUT 0x262f //±¾µØµ¼ÈëIOTÅäÖÃÎļþ +#define MINOR_LOCAL_IOTCFGFILE_OUTPUT 0x2630//±¾µØµ¼³öIOTÅäÖÃÎļþ +#define MINOR_LOCAL_VAD_CFG 0x2631 /* ±¾µØÓïÒô»î¶¯¼ì²âÅäÖÃ*/ +#define MINOR_REMOTE_VAD_CFG 0x2632 /* Ô¶³ÌÓïÒô»î¶¯¼ì²âÅäÖÃ*/ +#define MINOR_LOCAL_ADDRESS_FILTER_CONFIG 0x2633 /* ±¾µØµØÖ·¹ýÂËÅäÖÃ*/ +#define MINOR_REMOTE_ADDRESS_FILTER_CONFIG 0x2634 /* Ô¶³ÌµØÖ·¹ýÂËÅäÖÃ*/ +#define MINOR_LOCAL_POE_CFG 0x2635 /* ±¾µØPOEÅäÖÃ*/ +#define MINOR_REMOTE_POE_CFG 0x2636 /* Ô¶³ÌPOEÅäÖÃ*/ +#define MINOR_LOCAL_RESET_CHANNEL_PASSWORD 0x2637 /* ±¾µØÖØÖÃͨµÀÃÜÂë*/ +#define MINOR_REMOTE_RESET_CHANNEL_PASSWORD 0x2638 /* Ô¶³ÌÖØÖÃͨµÀÃÜÂë*/ +#define MINOR_LOCAL_SSD_UPGRADE_START 0x2639 /* ±¾µØSSDÎļþϵͳÉý¼¶¿ªÊ¼*/ +#define MINOR_LOCAL_SSD_UPGRADE_STOP 0x2640 /* ±¾µØSSDÎļþϵͳÉý¼¶½áÊø*/ +#define MINOR_REMOTE_SSD_UPGRADE_START 0x2641 /* Ô¶³ÌSSDÎļþϵͳÉý¼¶¿ªÊ¼*/ +#define MINOR_REMOTE_SSD_UPGRADE_STOP 0x2642 /* Ô¶³ÌSSDÎļþϵͳÉý¼¶½áÊø*/ +#define MINOR_LOCAL_SSD_FORMAT_START 0x2643 /*±¾µØSSDÎļþϵͳ¸ñʽ»¯¿ªÊ¼*/ +#define MINOR_LOCAL_SSD_FORMAT_STOP 0x2644 /*±¾µØSSDÎļþϵͳ¸ñʽ»¯½áÊø*/ +#define MINOR_REMOTE_SSD_FORMAT_START 0x2645 /*Ô¶³ÌSSDÎļþϵͳ¸ñʽ»¯¿ªÊ¼*/ +#define MINOR_REMOTE_SSD_FORMAT_STOP 0x2646 /*Ô¶³ÌSSDÎļþϵͳ¸ñʽ»¯½áÊø*/ +#define MINOR_LOCAL_AUTO_SWITCH_CONFIG 0x2647 /* ±¾µØ×Ô¶¯¿ª¹Ø»úÅäÖÃ*/ +#define MINOR_REMOTE_AUTO_SWITCH_CONFIG 0x2648 /* Ô¶³Ì×Ô¶¯¿ª¹Ø»úÅäÖÃ*/ + +#define MINOR_LOCAL_SSD_INITIALIZATION_START 0x264a /* ±¾µØSSD³õʼ»¯¿ªÊ¼*/ +#define MINOR_LOCAL_SSD_INITIALIZATION_END 0x264b /* ±¾µØSSD³õʼ»¯½áÊø*/ +#define MINOR_REMOTE_SSD_INITIALIZATION_START 0x264c /* Ô¶³ÌSSD³õʼ»¯¿ªÊ¼*/ +#define MINOR_REMOTE_SSD_INITIALIZATION_END 0x264d /* Ô¶³ÌSSD³õʼ»¯½áÊø*/ + + +//¶¨ÒåAI¿ª·Åƽ̨µÄ²Ù×÷ÈÕÖ¾ +#define MINOR_REMOTE_AI_MODEL_ADD 0x2650//Ä£ÐÍ°üÌí¼Ó +#define MINOR_REMOTE_AI_MODEL_QUERY 0x2651//Ä£ÐÍ°ü²éѯ +#define MINOR_REMOTE_AI_MODEL_DELETE 0x2652//Ä£ÐÍ°üɾ³ý +#define MINOR_REMOTE_AI_MODEL_UPDATE 0x2653//Ä£ÐÍ°ü¸üР+#define MINOR_REMOTE_AI_PICTURE_POLLING_TASK_ADD 0x2654//ͼƬÂÖѯÈÎÎñÔö¼Ó +#define MINOR_REMOTE_AI_PICTURE_POLLING_TASK_QUERY 0x2655//ͼƬÂÖѯÈÎÎñ²éѯ +#define MINOR_REMOTE_AI_PICTURE_POLLING_TASK_DELETE 0x2656//ͼƬÂÖѯÈÎÎñɾ³ý +#define MINOR_REMOTE_AI_PICTURE_POLLING_TASK_MODIFY 0x2657//ͼƬÂÖѯÈÎÎñÐÞ¸Ä +#define MINOR_REMOTE_AI_VIDEO_POLLING_TASK_ADD 0x2658//ÊÓƵÂÖѯÈÎÎñÔö¼Ó +#define MINOR_REMOTE_AI_VIDEO_POLLING_TASK_QUERY 0x2659//ÊÓƵÂÖѯÈÎÎñ²éѯ +#define MINOR_REMOTE_AI_VIDEO_POLLING_TASK_DELETE 0x265A//ÊÓƵÂÖѯÈÎÎñɾ³ý +#define MINOR_REMOTE_AI_VIDEO_POLLING_TASK_MODIFY 0x265B//ÊÓƵÂÖѯÈÎÎñÐÞ¸Ä +#define MINOR_REMOTE_AI_PICTURE_TASK_ADD 0x265C//ͼƬÈÎÎñÔö¼Ó +#define MINOR_REMOTE_AI_PICTURE_TASK_QUERY 0x265D//ͼƬÈÎÎñ²éѯ +#define MINOR_REMOTE_AI_PICTURE_TASK_DELETE 0x265E//ͼƬÈÎÎñɾ³ý +#define MINOR_REMOTE_AI_PICTURE_TASK_MODIFY 0x265F//ͼƬÈÎÎñÐÞ¸Ä +#define MINOR_REMOTE_AI_VIDEO_TASK_ADD 0x2660//ÊÓƵÈÎÎñÔö¼Ó +#define MINOR_REMOTE_AI_VIDEO_TASK_QUERY 0x2661//ÊÓƵÈÎÎñ²éѯ +#define MINOR_REMOTE_AI_VIDEO_TASK_DELETE 0x2662//ÊÓƵÈÎÎñɾ³ý +#define MINOR_REMOTE_AI_VIDEO_TASK_MODIFY 0x2663//ÊÓƵÈÎÎñÐÞ¸Ä +#define MINOR_REMOTE_AI_RULE_CONFIG 0x2664//AI¹æÔòÅäÖà + +#define MINOR_REMOTE_LOG_STORAGE_CONFIG 0x2665//ÈÕÖ¾´æ´¢ÅäÖà +#define MINOR_REMOTE_LOG_SERVER_CONFIG 0x2666//ÈÕÖ¾·þÎñÆ÷²ÎÊýÅäÖà + +#define MINOR_REMOTE_RESET_IPC_PASSWORD 0x2670//NVRÖØÖÃIPCÃÜÂëÈÕÖ¾ + +//¶¨Òåөʯƽ̨²Ù×÷ÈÕÖ¾ +#define MINOR_LOCAL_EZVIZ_OPERATION 0x2671 //±¾µØөʯ²Ù×÷(°üÀ¨Ó©Ê¯²ÎÊýÅäÖúÍÉý¼¶) +#define MINOR_REMOTE_EZVIZ_OPERATION 0x2672 //Ô¶³Ìөʯ²Ù×÷(°üÀ¨Ó©Ê¯²ÎÊýÅäÖúÍÉý¼¶) + +#define MINOR_EZVIZ_BITSTREAM_PARAMATERS_CONFIG 0x2673 /* өʯÂëÁ÷²ÎÊýÅäÖÃ*/ +#define MINOR_EZVIZ_ALARM_PARAMATERS_CONFIG 0x2674 /* өʯ±¨¾¯²ÎÊýÅäÖÃ*/ +#define MINOR_EZVIZ_UPGRADE 0x2675 /* өʯÉý¼¶*/ +#define MINOR_EZVIZ_REGISTER 0x2676 /* өʯע²á*/ +#define MINOR_EZVIZ_LOCAL_PARAMATERS_CONFIG 0x2677 /* өʯ±¾µØ²ÎÊýÅäÖÃ*/ +#define MINOR_EZVIZ_REMOTE_PARAMATERS_CONFIG 0x2678 /* өʯԶ³Ì²ÎÊýÅäÖÃ*/ + + +//Ïû·À²Ù×÷ÈÕÖ¾ +#define MINOR_STOP_SOUND 0x2700 /*ÏûÒô*/ +#define MINOR_SELF_CHECK 0x2701 /*×Ô¼ì*/ +#define MINOR_DUTY_CHECK 0x2702 /*²é¸Ú*/ +#define MINOR_SWITCH_SIMPLE_WORKMODE 0x2703 /*Çл»ÖÁ¼òÒ×ģʽ*/ +#define MINOR_SWITCH_NORMAL_WORKMODE 0x2704 /*Çл»ÖÁ±ê׼ģʽ*/ +#define MINOR_LOCAL_SSD_OPERATE_START 0x2705 /* ±¾µØSSD²Ù×÷¿ªÊ¼*/ +#define MINOR_LOCAL_SSD_OPERATE_STOP 0x2706 /* ±¾µØSSD²Ù×÷½áÊø*/ +#define MINOR_REMOTE_SSD_OPERATE_START 0x2707 /* Ô¶³ÌSSD²Ù×÷¿ªÊ¼*/ +#define MINOR_REMOTE_SSD_OPERATE_STOP 0x2708 /* Ô¶³ÌSSD²Ù×÷½áÊø*/ + +/*ÈÕÖ¾¸½¼ÓÐÅÏ¢*/ +//Ö÷ÀàÐÍ +#define MAJOR_INFORMATION 0x4 /*¸½¼ÓÐÅÏ¢*/ +//´ÎÀàÐÍ +#define MINOR_HDD_INFO 0xa1 /*Ó²ÅÌÐÅÏ¢*/ +#define MINOR_SMART_INFO 0xa2 /*SMARTÐÅÏ¢*/ +#define MINOR_REC_START 0xa3 /*¿ªÊ¼Â¼Ïñ*/ +#define MINOR_REC_STOP 0xa4 /*ֹͣ¼Ïñ*/ +#define MINOR_REC_OVERDUE 0xa5 /*¹ýÆÚ¼Ïñɾ³ý*/ +#define MINOR_LINK_START 0xa6 //Á¬½ÓÇ°¶ËÉ豸 +#define MINOR_LINK_STOP 0xa7 //¶Ï¿ªÇ°¶ËÉ豸¡¡ +#define MINOR_NET_DISK_INFO 0xa8 //ÍøÂçÓ²ÅÌÐÅÏ¢ +#define MINOR_RAID_INFO 0xa9 //raidÏà¹ØÐÅÏ¢ +#define MINOR_RUN_STATUS_INFO 0xaa /*ϵͳÔËÐÐ״̬ÐÅÏ¢*/ + +//Netra3.0.0 +#define MINOR_SPARE_START_BACKUP 0xab /*Èȱ¸ÏµÍ³¿ªÊ¼±¸·ÝÖ¸¶¨¹¤×÷»ú*/ +#define MINOR_SPARE_STOP_BACKUP 0xac /*Èȱ¸ÏµÍ³Í£Ö¹±¸·ÝÖ¸¶¨¹¤×÷»ú*/ +#define MINOR_SPARE_CLIENT_INFO 0xad /*Èȱ¸¿Í»§»úÐÅÏ¢*/ +#define MINOR_ANR_RECORD_START 0xae /*ANR¼Ïñ¿ªÊ¼*/ +#define MINOR_ANR_RECORD_END 0xaf /*ANR¼Ïñ½áÊø*/ +#define MINOR_ANR_ADD_TIME_QUANTUM 0xb0 /*ANRÌí¼Óʱ¼ä¶Î*/ +#define MINOR_ANR_DEL_TIME_QUANTUM 0xb1 /*ANRɾ³ýʱ¼ä¶Î*/ + +#define MINOR_PIC_REC_START 0xb3 /* ¿ªÊ¼×¥Í¼*/ +#define MINOR_PIC_REC_STOP 0xb4 /* ֹͣץͼ*/ +#define MINOR_PIC_REC_OVERDUE 0xb5 /* ¹ýÆÚͼƬÎļþɾ³ý */ +//Netra3.1.0 +#define MINOR_CLIENT_LOGIN 0xb6 /*µÇ¼·þÎñÆ÷³É¹¦*/ +#define MINOR_CLIENT_RELOGIN 0xb7 /*ÖØеǼ·þÎñÆ÷*/ +#define MINOR_CLIENT_LOGOUT 0xb8 /*Í˳ö·þÎñÆ÷³É¹¦*/ +#define MINOR_CLIENT_SYNC_START 0xb9 /*¼Ïñͬ²½¿ªÊ¼*/ +#define MINOR_CLIENT_SYNC_STOP 0xba /*¼Ïñͬ²½ÖÕÖ¹*/ +#define MINOR_CLIENT_SYNC_SUCC 0xbb /*¼Ïñͬ²½³É¹¦*/ +#define MINOR_CLIENT_SYNC_EXCP 0xbc /*¼Ïñͬ²½Òì³£*/ +#define MINOR_GLOBAL_RECORD_ERR_INFO 0xbd /*È«¾Ö´íÎó¼Ç¼ÐÅÏ¢*/ +#define MINOR_BUFFER_STATE 0xbe /*»º³åÇø״̬ÈÕÖ¾¼Ç¼*/ +#define MINOR_DISK_ERRORINFO_V2 0xbf /*Ó²ÅÌ´íÎóÏêϸÐÅÏ¢V2*/ +#define MINOR_CS_DATA_EXPIRED 0xc0 //ÔÆ´æ´¢Êý¾Ý¹ýÆÚ +#define MINOR_PLAT_INFO 0xc1 //ƽ̨²Ù×÷ÐÅÏ¢ +#define MINOR_DIAL_STAT 0xc2 /*²¦ºÅ״̬*/ + +#define MINOR_UNLOCK_RECORD 0xc3 //¿ªËø¼Ç¼ +#define MINOR_VIS_ALARM 0xc4 //·ÀÇø±¨¾¯ +#define MINOR_TALK_RECORD 0xc5 //ͨ»°¼Ç¼ +#define MINOR_ACCESSORIES_MESSAGE 0xc6 //Åä¼þ°åÐÅÏ¢ +#define MINOR_KMS_EXPAMSION_DISK_INSERT 0xc7// KMSÀ©ÈÝÅ̲åÈë +#define MINOR_IPC_CONNECT 0xc8// IPCÁ¬½ÓÐÅÏ¢ +#define MINOR_INTELLIGENT_BOARD_STATUS 0xc9// ÖÇÄÜ°å״̬ +#define MINOR_IPC_CONNECT_STATUS 0xca// IPCÁ¬½Ó״̬ +#define MINOR_AUTO_TIMING 0xcb //×Ô¶¯Ð£Ê± +#define MINOR_EZVIZ_OPERATION 0xcc //өʯÔËÐÐ״̬ +//NVR¼¯Èº +#define MINOR_CLUSTER_DEVICE_ONLINE 0xcd //¼¯ÈºÉ豸ÉÏÏß +#define MINOR_CLUSTER_MGR_SERVICE_STARTUP 0xce //¼¯Èº¹ÜÀí·þÎñÆô¶¯ +#define MINOR_CLUSTER_BUSINESS_TRANSFER 0xcf //¼¯ÈºÒµÎñǨÒÆ +#define MINOR_CLUSTER_STATUS 0xd0 //¼¯Èº×´Ì¬ÐÅÏ¢ +#define MINOR_CLUSTER_CS_STATUS 0xd1 //¼¯ÈºCSÏòCM·¢ËÍÉ豸״̬ʧ°Ü£¬¼Ç¼CSºÍCMµÄIPµØÖ· +#define MINOR_CLUSTER_CM_STATUS 0xd2 //CM״̬Çл»£¬¼Ç¼CMת±äµÄ½ÇÉ«£¬Èçleader¡¢follower¡¢candidate +#define MINOR_VOICE_START_DETECTED 0xd3 /*¼ì²âµ½ÓïÒô¿ªÊ¼*/ +#define MINOR_VOICE_END_DETECTED 0xd4 /*¼ì²âµ½ÓïÒô½áÊø*/ +#define MINOR_DOUBLE_VERIFICATION_PASS 0xd5 /*¶þ´ÎÈÏ֤ͨ¹ý*/ +#define MINOR_WIRELESS_RUNNING_STATUS 0xd6 /*ÎÞÏßÔËÐÐ״̬*/ +#define MINOR_SYSTEM_DATA_SYNCHRONIZATION 0xd7 /*ϵͳÊý¾Ýͬ²½*/ +#define MINOR_HD_FORMAT_START 0xd8 /*Ó²Å̸ñʽ»¯¿ªÊ¼*/ +#define MINOR_HD_FORMAT_STOP 0xd9 /*Ó²Å̸ñʽ»¯½áÊø*/ + +//0x400-0x4ff ÃŽû¸½¼þÐÅÏ¢ÈÕÖ¾ÀàÐÍ +#define MINOR_LIVE_DETECT_OPEN 0x400 //ÕæÈ˼ì²â¿ªÆô +#define MINOR_LIVE_DETECT_CLOSE 0x401 //ÕæÈ˼ì²â¹Ø±Õ +#define MINOR_CLEAR_DATA_COLLECTION 0x402 //²É¼¯Êý¾ÝÇå¿Õ +#define MINOR_DELETE_DATA_COLLECTION 0x403 //²É¼¯Êý¾Ýɾ³ý +#define MINOR_EXPORT_DATA_COLLECTION 0x404 //²É¼¯Êý¾Ýµ¼³ö +#define MINOR_CARD_LEN_CONFIG 0x405 //¿¨³¤¶ÈÅäÖà +#define MINOR_DATA_BASE_INIT_FAILED 0x406 //Êý¾Ý¿â³õʼ»¯Ê§°Ü +#define MINOR_DATA_BASE_PATCH_UPDATE 0x407 //Êý¾Ý¿â²¹¶¡Éý¼¶ +#define MINOR_PSAM_CARD_INSERT 0x408 //Psam¿¨²åÈë +#define MINOR_PSAM_CARD_REMOVE 0x409 //Psam¿¨°Î³ö +#define MINOR_HARD_FAULT_REBOOT 0x40a //Ó²¼þÒì³££¨hardfault£©ÖØÆô +#define MINOR_PSAM_CARD_OCP 0x40b //Psam¿¨¹ýÁ÷±£»¤ +#define MINOR_STACK_OVERFLOW 0x40c //¶ÑÕ»Òç³ö +#define MINOR_PARM_CFG 0x40d //²ÎÊýÅäÖà +#define MINOR_CLR_USER 0x40e //Çå¿ÕËùÓÐÓû§ +#define MINOR_CLR_CARD 0x40f //Çå¿ÕËùÓп¨ +#define MINOR_CLR_FINGER_BY_READER 0x410 //Çå¿ÕËùÓÐÖ¸ÎÆ(°´¶Á¿¨Æ÷) +#define MINOR_CLR_FINGER_BY_CARD 0x411 //Çå¿ÕËùÓÐÖ¸ÎÆ(°´¿¨ºÅ) +#define MINOR_CLR_FINGER_BY_EMPLOYEE_ON 0x412 //Çå¿ÕËùÓÐÖ¸ÎÆ(°´¹¤ºÅ) +#define MINOR_DEL_FINGER 0x413 //ɾ³ýÒ»¸öÖ¸ÎÆ +#define MINOR_CLR_WEEK_PLAN 0x414 //Çå³ýȨÏÞÖܼƻ® +#define MINOR_SET_WEEK_PLAN 0x415 //ÉèÖÃȨÏÞÖܼƻ® +#define MINOR_SET_HOLIDAY_PLAN 0x416 //ÉèÖÃȨÏÞ¼ÙÈռƻ® +#define MINOR_CLR_HOLIDAY_PLAN 0x417 //Çå³ýȨÏÞ¼ÙÈռƻ® +#define MINOR_SET_HOLIDAY_GROUP 0x418 //ÉèÖÃȨÏÞ¼ÙÈÕ×é¼Æ»® +#define MINOR_CLR_HOLIDAY_GROUP 0x419 //Çå³ýȨÏÞ¼ÙÈÕ×é¼Æ»® +#define MINOR_CLR_TEMPLATE_PLAN 0x41a //Çå³ýȨÏ޼ƻ® +#define MINOR_SET_TEMPLATE_PLAN 0x41b //ÉèÖÃȨÏ޼ƻ® +#define MINOR_ADD_CARD 0x41c //ÐÂÔö¿¨ +#define MINOR_MOD_CARD 0x41d //Ð޸Ŀ¨ +#define MINOR_ADD_FINGER_BY_CARD 0x41e //ÐÂÔöÖ¸ÎÆ(°´¿¨ºÅ) +#define MINOR_ADD_FINGER_BY_EMPLOYEE_NO 0x41f //ÐÂÔöÖ¸ÎÆ(°´¹¤ºÅ) +#define MINOR_MOD_FINGER_BY_CARD 0x420 //ÐÞ¸ÄÖ¸ÎÆ(°´¿¨ºÅ) +#define MINOR_MOD_FINGER_BY_EMPLOYEE_NO 0x421 //ÐÞ¸ÄÖ¸ÎÆ(°´¹¤ºÅ) +#define MINOR_IMPORT_USER_LIST 0x422 //Óû§ÁÐ±íµ¼È루ÀëÏ߲ɼ¯£© +#define MINOR_USB_LOGIN 0x423 //USBµÇ½ +#define MINOR_USB_LOGOUT 0x424 //USBµÇ³ö +#define MINOR_ISAPI_HTTP_LOGIN 0x425 //ISAPI HTTPµÇ½ +#define MINOR_ISAPI_HTTP_LOGOUT 0x426 //ISAPI HTTP µÇ³ö +#define MINOR_ISAPI_HTTPS_LOGIN 0x427 //ISAPI HTTPSµÇ½ +#define MINOR_ISAPI_HTTPS_LOGOUT 0x428 //ISAPI HTTPSµÇ³ö +#define MINOR_ISUP_ONLINE 0x429 //ISUPÔÚÏß +#define MINOR_ISUP_OFFLINE 0x42a//ISUPÏÂÏß +#define MINOR_FP_ISSUE_REC 0x42b //Ö¸ÎÆ·¢¿¨¼Ç¼ +#define MINOR_FACE_ISSUE_REC 0x42c//ÈËÁ³·¢¿¨¼Ç¼ +#define MINOR_ADD_IRIS 0x42d //Ï·¢ºçĤ +#define MINOR_MODIFY_IRIS 0x42e //Ð޸ĺçĤ +#define MINOR_DELETE_EMPLOYEE_IRIS 0x42f //ɾ³ýÓû§ºçĤ£¨°´¹¤ºÅɾ³ý£© +#define MINOR_DELETE_WHOLE_IRIS 0x430 //ɾ³ýÈ«²¿ºçĤ +#define MINOR_MODIFY_IRIS_CFG 0x431 //Ð޸ĺçĤ²ÎÊý +#define MINOR_ADD_USER_INFO 0x432 //ÐÂÔöÈËÔ±ÐÅÏ¢£¨ÃŽûÈËԱȨÏÞ£© +#define MINOR_MODIFY_USER_INFO 0x433 //ÐÞ¸ÄÈËÔ±ÐÅÏ¢£¨ÃŽûÈËԱȨÏÞ£© +#define MINOR_CLR_USER_INFO 0x434 //ɾ³ýÈËÔ±ÐÅÏ¢£¨ÃŽûÈËԱȨÏÞ£¬°´¹¤ºÅ£© +#define MINOR_CLR_CARD_BY_CARD_OR_EMPLOYEE 0x435 //ɾ³ý¿¨£¨°´¿¨ºÅ»ò¹¤ºÅ£© +#define MINOR_CLR_ALL_CARD 0x436 //ɾ³ýËùÓп¨ +#define MINOR_SIM_CARD_INSERT 0x437 //SIM¿¨²åÈë +#define MINOR_SIM_CARD_PULLOUT 0x438 //SIM¿¨°Î³ö +#define MINOR_FINGERPRINT_RECOGNITION_OPEN 0x439 //Ö¸ÎÆʶ±ð¿ªÆô +#define MINOR_FINGERPRINT_RECOGNITION_CLOSE 0x43a //Ö¸ÎÆʶ±ð¹Ø±Õ +#define MINOR_FACE_RECOGNITION_OPEN 0x43b //ÈËÁ³Ê¶±ð¿ªÆô +#define MINOR_FACE_RECOGNITION_CLOSE 0x43c //ÈËÁ³Ê¶±ð¹Ø±Õ +#define MINOR_RESET_ONLINE_READER 0x43d //ÖØÖÃÔÚÏ߶Á¿¨Æ÷ +#define MINOR_CLEAR_IRIS_PICTURE 0x43e //Çå¿ÕºçĤµ×ͼ +#define MINOR_ADD_VP 0x43f //Ï·¢ÉùÎÆ +#define MINOR_MODIFY_VP 0x440 //ÐÞ¸ÄÉùÎÆ +#define MINOR_DELETE_EMPLOYEE_VP 0x441 //°´¹¤ºÅɾ³ýÉùÎÆ +#define MINOR_DELETE_ALL_VP 0x442 //ɾ³ýËùÓÐÉùÎÆ + + +//802.1xÈÏÖ¤²Ù×÷ÈÕÖ¾ +#define MINOR_802_1X_AUTH_SUCC 0x320 /*802.1xÈÏÖ¤³É¹¦*/ +#define MINOR_802_1X_AUTH_FAIL 0x321 /*802.1xÈÏ֤ʧ°Ü*/ + +/*ʼþ*/ +//Ö÷ÀàÐÍ +#define MAJOR_EVENT 0x5 /*ʼþ*/ +//´ÎÀàÐÍ +#define MINOR_LEGAL_CARD_PASS 0x01 //ºÏ·¨¿¨ÈÏ֤ͨ¹ý +#define MINOR_CARD_AND_PSW_PASS 0x02 //Ë¢¿¨¼ÓÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_CARD_AND_PSW_FAIL 0x03 //Ë¢¿¨¼ÓÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_CARD_AND_PSW_TIMEOUT 0x04 //Êý¿¨¼ÓÃÜÂëÈÏÖ¤³¬Ê± +#define MINOR_CARD_AND_PSW_OVER_TIME 0x05 //Ë¢¿¨¼ÓÃÜÂ볬´Î +#define MINOR_CARD_NO_RIGHT 0x06 //δ·ÖÅäȨÏÞ +#define MINOR_CARD_INVALID_PERIOD 0x07 //ÎÞЧʱ¶Î +#define MINOR_CARD_OUT_OF_DATE 0x08 //¿¨ºÅ¹ýÆÚ +#define MINOR_INVALID_CARD 0x09 //ÎÞ´Ë¿¨ºÅ +#define MINOR_ANTI_SNEAK_FAIL 0x0a //·´Ç±»ØÈÏ֤ʧ°Ü +#define MINOR_INTERLOCK_DOOR_NOT_CLOSE 0x0b //»¥ËøÃÅδ¹Ø±Õ +#define MINOR_NOT_BELONG_MULTI_GROUP 0x0c //¿¨²»ÊôÓÚ¶àÖØÈÏ֤Ⱥ×é +#define MINOR_INVALID_MULTI_VERIFY_PERIOD 0x0d //¿¨²»ÔÚ¶àÖØÈÏ֤ʱ¼ä¶ÎÄÚ +#define MINOR_MULTI_VERIFY_SUPER_RIGHT_FAIL 0x0e //¶àÖØÈÏ֤ģʽ³¬¼¶È¨ÏÞÈÏ֤ʧ°Ü +#define MINOR_MULTI_VERIFY_REMOTE_RIGHT_FAIL 0x0f //¶àÖØÈÏ֤ģʽԶ³ÌÈÏ֤ʧ°Ü +#define MINOR_MULTI_VERIFY_SUCCESS 0x10 //¶àÖØÈÏÖ¤³É¹¦ +#define MINOR_LEADER_CARD_OPEN_BEGIN 0x11 //Ê׿¨¿ªÃÅ¿ªÊ¼ +#define MINOR_LEADER_CARD_OPEN_END 0x12 //Ê׿¨¿ªÃŽáÊø +#define MINOR_ALWAYS_OPEN_BEGIN 0x13 //³£¿ª×´Ì¬¿ªÊ¼ +#define MINOR_ALWAYS_OPEN_END 0x14 //³£¿ª×´Ì¬½áÊø +#define MINOR_LOCK_OPEN 0x15 //ÃÅËø´ò¿ª +#define MINOR_LOCK_CLOSE 0x16 //ÃÅËø¹Ø±Õ +#define MINOR_DOOR_BUTTON_PRESS 0x17 //¿ªÃÅ°´Å¥´ò¿ª +#define MINOR_DOOR_BUTTON_RELEASE 0x18 //¿ªÃÅ°´Å¥·Å¿ª +#define MINOR_DOOR_OPEN_NORMAL 0x19 //Õý³£¿ªÃÅ£¨ÃÅ´Å£© +#define MINOR_DOOR_CLOSE_NORMAL 0x1a //Õý³£¹ØÃÅ£¨ÃÅ´Å£© +#define MINOR_DOOR_OPEN_ABNORMAL 0x1b //ÃÅÒì³£´ò¿ª£¨ÃÅ´Å£© +#define MINOR_DOOR_OPEN_TIMEOUT 0x1c //ÃÅ´ò¿ª³¬Ê±£¨ÃÅ´Å£© +#define MINOR_ALARMOUT_ON 0x1d //±¨¾¯Êä³ö´ò¿ª +#define MINOR_ALARMOUT_OFF 0x1e //±¨¾¯Êä³ö¹Ø±Õ +#define MINOR_ALWAYS_CLOSE_BEGIN 0x1f //³£¹Ø״̬¿ªÊ¼ +#define MINOR_ALWAYS_CLOSE_END 0x20 //³£¹Ø״̬½áÊø +#define MINOR_MULTI_VERIFY_NEED_REMOTE_OPEN 0x21 //¶àÖضàÖØÈÏÖ¤ÐèÒªÔ¶³Ì¿ªÃÅ +#define MINOR_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS 0x22 //¶àÖØÈÏÖ¤³¬¼¶ÃÜÂëÈÏÖ¤³É¹¦Ê¼þ +#define MINOR_MULTI_VERIFY_REPEAT_VERIFY 0x23 //¶àÖØÈÏÖ¤Öظ´ÈÏ֤ʼþ +#define MINOR_MULTI_VERIFY_TIMEOUT 0x24 //¶àÖØÈÏÖ¤Öظ´ÈÏ֤ʼþ +#define MINOR_DOORBELL_RINGING 0x25 //ÃÅÁåÏì +#define MINOR_FINGERPRINT_COMPARE_PASS 0x26 //Ö¸ÎƱȶÔͨ¹ý +#define MINOR_FINGERPRINT_COMPARE_FAIL 0x27 //Ö¸ÎƱȶÔʧ°Ü +#define MINOR_CARD_FINGERPRINT_VERIFY_PASS 0x28 //Ë¢¿¨¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý +#define MINOR_CARD_FINGERPRINT_VERIFY_FAIL 0x29 //Ë¢¿¨¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü +#define MINOR_CARD_FINGERPRINT_VERIFY_TIMEOUT 0x2a //Ë¢¿¨¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± +#define MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_PASS 0x2b //Ë¢¿¨¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL 0x2c //Ë¢¿¨¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT 0x2d //Ë¢¿¨¼ÓÖ¸ÎƼÓÃÜÂëÈÏÖ¤³¬Ê± +#define MINOR_FINGERPRINT_PASSWD_VERIFY_PASS 0x2e //Ö¸ÎƼÓÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_FINGERPRINT_PASSWD_VERIFY_FAIL 0x2f //Ö¸ÎƼÓÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_FINGERPRINT_PASSWD_VERIFY_TIMEOUT 0x30 //Ö¸ÎƼÓÃÜÂëÈÏÖ¤³¬Ê± +#define MINOR_FINGERPRINT_INEXISTENCE 0x31 //Ö¸ÎƲ»´æÔÚ +#define MINOR_CARD_PLATFORM_VERIFY 0x32 //Ë¢¿¨Æ½Ì¨ÈÏÖ¤ +#define MINOR_CALL_CENTER 0x33 //ºô½ÐÖÐÐÄʼþ +#define MINOR_FIRE_RELAY_TURN_ON_DOOR_ALWAYS_OPEN 0x34 //Ïû·À¼ÌµçÆ÷µ¼Í¨´¥·¢Ãų£¿ª +#define MINOR_FIRE_RELAY_RECOVER_DOOR_RECOVER_NORMAL 0x35 //Ïû·À¼ÌµçÆ÷»Ö¸´ÃŻָ´Õý³£ +#define MINOR_FACE_AND_FP_VERIFY_PASS 0x36 //ÈËÁ³¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý +#define MINOR_FACE_AND_FP_VERIFY_FAIL 0x37 //ÈËÁ³¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü +#define MINOR_FACE_AND_FP_VERIFY_TIMEOUT 0x38 //ÈËÁ³¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± +#define MINOR_FACE_AND_PW_VERIFY_PASS 0x39 //ÈËÁ³¼ÓÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_FACE_AND_PW_VERIFY_FAIL 0x3a //ÈËÁ³¼ÓÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_FACE_AND_PW_VERIFY_TIMEOUT 0x3b //ÈËÁ³¼ÓÃÜÂëÈÏÖ¤³¬Ê± +#define MINOR_FACE_AND_CARD_VERIFY_PASS 0x3c //ÈËÁ³¼ÓË¢¿¨ÈÏ֤ͨ¹ý +#define MINOR_FACE_AND_CARD_VERIFY_FAIL 0x3d //ÈËÁ³¼ÓË¢¿¨ÈÏ֤ʧ°Ü +#define MINOR_FACE_AND_CARD_VERIFY_TIMEOUT 0x3e //ÈËÁ³¼ÓË¢¿¨ÈÏÖ¤³¬Ê± +#define MINOR_FACE_AND_PW_AND_FP_VERIFY_PASS 0x3f //ÈËÁ³¼ÓÃÜÂë¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý +#define MINOR_FACE_AND_PW_AND_FP_VERIFY_FAIL 0x40 //ÈËÁ³¼ÓÃÜÂë¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü +#define MINOR_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT 0x41 //ÈËÁ³¼ÓÃÜÂë¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± +#define MINOR_FACE_CARD_AND_FP_VERIFY_PASS 0x42 //ÈËÁ³¼ÓË¢¿¨¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý +#define MINOR_FACE_CARD_AND_FP_VERIFY_FAIL 0x43 //ÈËÁ³¼ÓË¢¿¨¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü +#define MINOR_FACE_CARD_AND_FP_VERIFY_TIMEOUT 0x44 //ÈËÁ³¼ÓË¢¿¨¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± +#define MINOR_EMPLOYEENO_AND_FP_VERIFY_PASS 0x45 //¹¤ºÅ¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý +#define MINOR_EMPLOYEENO_AND_FP_VERIFY_FAIL 0x46 //¹¤ºÅ¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü +#define MINOR_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT 0x47 //¹¤ºÅ¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± +#define MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS 0x48 //¹¤ºÅ¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL 0x49 //¹¤ºÅ¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT 0x4a //¹¤ºÅ¼ÓÖ¸ÎƼÓÃÜÂëÈÏÖ¤³¬Ê± +#define MINOR_FACE_VERIFY_PASS 0x4b //ÈËÁ³ÈÏ֤ͨ¹ý +#define MINOR_FACE_VERIFY_FAIL 0x4c //ÈËÁ³ÈÏ֤ʧ°Ü +#define MINOR_EMPLOYEENO_AND_FACE_VERIFY_PASS 0x4d //¹¤ºÅ¼ÓÈËÁ³ÈÏ֤ͨ¹ý +#define MINOR_EMPLOYEENO_AND_FACE_VERIFY_FAIL 0x4e //¹¤ºÅ¼ÓÈËÁ³ÈÏ֤ʧ°Ü +#define MINOR_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT 0x4f //¹¤ºÅ¼ÓÈËÁ³ÈÏÖ¤³¬Ê± +#define MINOR_FACE_RECOGNIZE_FAIL 0x50 //ÈËÁ³Ê¶±ðʧ°Ü +#define MINOR_FIRSTCARD_AUTHORIZE_BEGIN 0x51 //Ê׿¨ÊÚȨ¿ªÊ¼ +#define MINOR_FIRSTCARD_AUTHORIZE_END 0x52 //Ê׿¨ÊÚȨ½áÊø +#define MINOR_DOORLOCK_INPUT_SHORT_CIRCUIT 0x53 //ÃÅËøÊäÈë¶Ì·±¨¾¯ +#define MINOR_DOORLOCK_INPUT_BROKEN_CIRCUIT 0x54 //ÃÅËøÊäÈë¶Ï·±¨¾¯ +#define MINOR_DOORLOCK_INPUT_EXCEPTION 0x55 //ÃÅËøÊäÈëÒì³£±¨¾¯ +#define MINOR_DOORCONTACT_INPUT_SHORT_CIRCUIT 0x56 //ÃÅ´ÅÊäÈë¶Ì·±¨¾¯ +#define MINOR_DOORCONTACT_INPUT_BROKEN_CIRCUIT 0x57 //ÃÅ´ÅÊäÈë¶Ï·±¨¾¯ +#define MINOR_DOORCONTACT_INPUT_EXCEPTION 0x58 //ÃÅ´ÅÊäÈëÒì³£±¨¾¯ +#define MINOR_OPENBUTTON_INPUT_SHORT_CIRCUIT 0x59 //¿ªÃÅ°´Å¥ÊäÈë¶Ì·±¨¾¯ +#define MINOR_OPENBUTTON_INPUT_BROKEN_CIRCUIT 0x5a //¿ªÃÅ°´Å¥ÊäÈë¶Ï·±¨¾¯ +#define MINOR_OPENBUTTON_INPUT_EXCEPTION 0x5b //¿ªÃÅ°´Å¥ÊäÈëÒì³£±¨¾¯ +#define MINOR_DOORLOCK_OPEN_EXCEPTION 0x5c //ÃÅËøÒì³£´ò¿ª +#define MINOR_DOORLOCK_OPEN_TIMEOUT 0x5d //ÃÅËø´ò¿ª³¬Ê± +#define MINOR_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE 0x5e //Ê׿¨Î´ÊÚȨ¿ªÃÅʧ°Ü +#define MINOR_CALL_LADDER_RELAY_BREAK 0x5f //ºôÌݼ̵çÆ÷¶Ï¿ª +#define MINOR_CALL_LADDER_RELAY_CLOSE 0x60 //ºôÌݼ̵çÆ÷±ÕºÏ +#define MINOR_AUTO_KEY_RELAY_BREAK 0x61 //×Ô¶¯°´¼ü¼ÌµçÆ÷¶Ï¿ª +#define MINOR_AUTO_KEY_RELAY_CLOSE 0x62 //×Ô¶¯°´¼ü¼ÌµçÆ÷±ÕºÏ +#define MINOR_KEY_CONTROL_RELAY_BREAK 0x63 //°´¼üÌݿؼ̵çÆ÷¶Ï¿ª +#define MINOR_KEY_CONTROL_RELAY_CLOSE 0x64 //°´¼üÌݿؼ̵çÆ÷±ÕºÏ +#define MINOR_EMPLOYEENO_AND_PW_PASS 0x65 //¹¤ºÅ¼ÓÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_EMPLOYEENO_AND_PW_FAIL 0x66 //¹¤ºÅ¼ÓÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_EMPLOYEENO_AND_PW_TIMEOUT 0x67 //¹¤ºÅ¼ÓÃÜÂëÈÏÖ¤³¬Ê± +#define MINOR_HUMAN_DETECT_FAIL 0x68 //ÕæÈ˼ì²âʧ°Ü +#define MINOR_PEOPLE_AND_ID_CARD_COMPARE_PASS 0x69 //ÈËÖ¤±È¶Ôͨ¹ý +#define MINOR_PEOPLE_AND_ID_CARD_COMPARE_FAIL 0x70 //ÈËÖ¤±È¶Ôʧ°Ü +#define MINOR_CERTIFICATE_BLOCKLIST 0x71 //½ûÖ¹Ãûµ¥Ê¼þ +#define MINOR_LEGAL_MESSAGE 0x72 //ºÏ·¨¶ÌÐÅ +#define MINOR_ILLEGAL_MESSAGE 0x73 //·Ç·¨¶ÌÐÅ +#define MINOR_DOOR_OPEN_OR_DORMANT_FAIL 0x75 //ÃÅ״̬³£±Õ»òÐÝÃß״̬ÈÏ֤ʧ°Ü +#define MINOR_AUTH_PLAN_DORMANT_FAIL 0x76 //ÈÏÖ¤¼Æ»®ÐÝÃßģʽÈÏ֤ʧ°Ü +#define MINOR_CARD_ENCRYPT_VERIFY_FAIL 0x77 //¿¨¼ÓÃÜУÑéʧ°Ü +#define MINOR_SUBMARINEBACK_REPLY_FAIL 0x78 //·´Ç±»Ø·þÎñÆ÷Ó¦´ðʧ°Ü +#define MINOR_DOOR_OPEN_OR_DORMANT_OPEN_FAIL 0x82 //Ãų£±Õ»òÐÝÃßʱ¿ªÃÅ°´Å¥¿ªÃÅʧ°Ü +#define MINOR_HEART_BEAT 0x83 //ÐÄÌøʼþ +#define MINOR_DOOR_OPEN_OR_DORMANT_LINKAGE_OPEN_FAIL 0x84 //Ãų£±Õ»òÐÝÃßʱ¿ªÃÅÁª¶¯¿ªÃÅʧ°Ü +#define MINOR_TRAILING 0x85 //βËæͨÐÐ +#define MINOR_REVERSE_ACCESS 0x86 //·´Ïò´³Èë +#define MINOR_FORCE_ACCESS 0x87 //ÍâÁ¦³åײ +#define MINOR_CLIMBING_OVER_GATE 0x88 //·­Ô½ +#define MINOR_PASSING_TIMEOUT 0x89 //ͨÐг¬Ê± +#define MINOR_INTRUSION_ALARM 0x8a //Îó´³±¨¾¯ +#define MINOR_FREE_GATE_PASS_NOT_AUTH 0x8b //Õ¢»ú×ÔÓÉͨÐÐʱδÈÏ֤ͨ¹ý +#define MINOR_DROP_ARM_BLOCK 0x8c //°Ú±Û±»×èµ² +#define MINOR_DROP_ARM_BLOCK_RESUME 0x8d //°Ú±Û×èµ²Ïû³ý +#define MINOR_LOCAL_FACE_MODELING_FAIL 0x8e //É豸Éý¼¶±¾µØÈËÁ³½¨Ä£Ê§°Ü +#define MINOR_STAY_EVENT 0x8f //¶ºÁôʼþ +#define MINOR_CERTIFICATE_ALLOWLIST_PASS 0x90 //ÊÚȨÃûµ¥ÈÏ֤ͨ¹ý +#define MINOR_CERTIFICATE_ALLOWLIST_FALL 0x91 //ÊÚȨÃûµ¥ÈÏ֤ʧ°Ü +#define MINOR_FACE_COLLECTION 0x92 //ÈËÁ³²É¼¯Ê¼þ£¨ÎÞÈÏÖ¤£¬Ô¶³ÌºËÑéʱÉϱ¨£© +#define MINOR_CARD_COLLECTION 0x93 //¿¨²É¼¯Ê¼þ£¨ÎÞÈÏÖ¤£¬Ô¶³ÌºËÑéʱÉϱ¨£© +#define MINOR_PSW_ERROR_OVER_TIMES 0x94 //ÃÜÂëÈÏ֤ʧ°Ü³¬´Î +#define MINOR_ID_CARD_COLLECTION 0x95 //Éí·ÝÖ¤²É¼¯Ê¼þ£¨ÎÞÈÏÖ¤£¬Ô¶³ÌºËÑéʱÉϱ¨£© +#define MINOR_PSW_VERIFY_FAIL 0x96 //ÃÜÂëÈÏ֤ʧ°Ü +#define MINOR_PASSWORD_MISMATCH 0x97 //ÃÜÂ벻ƥÅä +#define MINOR_EMPLOYEE_NO_NOT_EXIST 0x98 //¹¤ºÅ²»´æÔÚ +#define MINOR_COMBINED_VERIFY_PASS 0x99 //×éºÏÈÏ֤ͨ¹ý +#define MINOR_COMBINED_VERIFY_TIMEOUT 0x9a //×éºÏÈÏÖ¤³¬Ê± +#define MINOR_VERIFY_MODE_MISMATCH 0x9b //ÈÏÖ¤·½Ê½²»Æ¥Åä +#define MINOR_ORCODE_VERIFY_PASS 0x9c //¶þάÂëÈÏ֤ͨ¹ý +#define MINOR_ORCODE_VERIFY_FAIL 0x9d //¶þάÂëÈÏ֤ʧ°Ü +#define MINOR_HOUSEHOLDER_AUTHORIZE_PASS 0x9e //»§Ö÷ÊÚȨÈÏ֤ͨ¹ý +#define MINOR_BLUETOOTH_VERIFY_PASS 0x9f //À¶ÑÀÈÏ֤ͨ¹ý +#define MINOR_BLUETOOTH_VERIFY_FAIL 0xa0 //À¶ÑÀÈÏ֤ʧ°Ü + +#define MINOR_PASSPORT_VERIFY_FAIL 0xa1 //»¤ÕÕÐÅϢУÑéʧ°Ü +#define MINOR_INFORMAL_MIFARE_CARD_VERIFY_FAIL 0xa2 //·ÇÕý¹æMifare¿¨ÈÏ֤ʧ°Ü +#define MINOR_CPU_CARD_ENCRYPT_VERIFY_FAIL 0xa3 //CPU¿¨¼ÓÃÜУÑéʧ°Ü +#define MINOR_NFC_DISABLE_VERIFY_FAIL 0xa4 //NFC¹¦ÄܹرÕÑé֤ʧ°Ü + +#define MINOR_LORA_MODULE_ONLINE 0xa5 //LoRaÄ£¿éÉÏÏß +#define MINOR_LORA_MODULE_OFFLINE 0xa6 //LoRaÄ£¿éÏÂÏß +#define MINOR_MQTT_STATUS 0xa7 //MqttÁ¬½Ó״̬ + +#define MINOR_EM_CARD_RECOGNIZE_NOT_ENABLED 0xa8 //EM¿¨Ê¶±ðδÆôÓà +#define MINOR_M1_CARD_RECOGNIZE_NOT_ENABLED 0xa9 //M1¿¨Ê¶±ðδÆôÓà +#define MINOR_CPU_CARD_RECOGNIZE_NOT_ENABLED 0xaa //CPU¿¨Ê¶±ðδÆôÓà +#define MINOR_ID_CARD_RECOGNIZE_NOT_ENABLED 0xab //Éí·Ý֤ʶ±ðδÆôÓà +#define MINOR_CARD_SET_SECRET_KEY_FAIL 0xac //¿¨¹à×°ÃÜԿʧ°Ü +#define MINOR_LOCAL_UPGRADE_FAIL 0xad /* ±¾µØÉý¼¶Ê§°Ü */ +#define MINOR_REMOTE_UPGRADE_FAIL 0xae /* Ô¶³ÌÉý¼¶Ê§°Ü */ +#define MINOR_REMOTE_EXTEND_MODULE_UPGRADE_SUCC 0xaf /*Ô¶³ÌÀ©Õ¹Ä£¿éÉý¼¶³É¹¦*/ +#define MINOR_REMOTE_EXTEND_MODULE_UPGRADE_FAIL 0xb0 /*Ô¶³ÌÀ©Õ¹Ä£¿éÉý¼¶Ê§°Ü*/ +#define MINOR_REMOTE_FINGER_PRINT_MODULE_UPGRADE_SUCC 0xb1 /*Ô¶³ÌÖ¸ÎÆÄ£×éÉý¼¶³É¹¦*/ +#define MINOR_REMOTE_FINGER_PRINT_MODULE_UPGRADE_FAIL 0xb2 /*Ô¶³ÌÖ¸ÎÆÄ£×éÉý¼¶Ê§°Ü*/ +#define MINOR_PASSWD_VERIFY_PASS 0xb5 //ÃÜÂëÈÏ֤ͨ¹ý +#define MINOR_COMSUME_TIMEOUT 0xb6 //Ïû·Ñ³¬Ê± +#define MINOR_REFUND_TIMEOUT 0xb7 //¾À´í³¬Ê± +#define MINOR_COMSUME_AMOUNT_OVERLIMIT 0xb8 //Ïû·Ñ½ð¶î³¬¹ý×î´óÖµ +#define MINOR_COMSUME_TIMES_OVERLIMIT 0xb9 //Ïû·Ñ´ÎÊýÂú +#define MINOR_USER_COMSUME_ENSURE_TIMEOUT 0xba //Óû§Ïû·ÑÈ·Èϳ¬Ê± +#define MINOR_BLOCKLIST_REACH_THRESHOLD 0xbb //½ûÖ¹Ãûµ¥ÊýÁ¿´ïµ½ãÐÖµ +#define MINOR_DESFIRE_CARD_ENCRYPT_VERIFY_FAIL 0xbc //Desfire¿¨¼ÓÃÜУÑéʧ°Ü +#define MINOR_DESFIRE_CARD_RECOGNIZE_NOT_ENABLED 0xbd //Desfire¿¨Ê¶±ðδÆôÓà +#define MINOR_IRIS_VERIFY_PASS 0xbe //ºçĤÈÏ֤ͨ¹ý +#define MINOR_IRIS_VERIFY_FAIL 0xbf //ºçĤÈÏ֤ʧ°Ü +#define MINOR_IRIS_BIOASSAY_FAIL 0xc0 //ºçĤ»îÌå¼ì²âʧ°Ü +#define MINOR_FULL_STAFF 0xc1 //ÈËÔ±ÂúÌáÐÑʼþ£¬ÈËÔ±ÊýÁ¿³¬¹ý90%ʱ²úÉú +#define MINOR_ATTENDANCE_RECORD_EXCEED_THRESHOLD 0xc2 //±¾µØ¿¼ÇڼǼ³¬¹ýÉèÖõÄãÐÖµ +#define MINOR_DYNAMICCODE_VERIFY_INVALID 0xc3 // ¶¯Ì¬ÑéÖ¤ÂëÈÏÖ¤¹ýÆÚ +#define MINOR_MEETING_NO_SIGNIN 0xc4 //»áÒéδǩµ½ +#define MINOR_MEETING_SIGNIN 0xc5 //»áÒéÇ©µ½ +#define MINOR_MEETING_LATE 0xc6 //»áÒé³Ùµ½ + +#define MINOR_INTERLOCK_SERVER_FAILED_RESPONSE 0xc9 //¶àÃÅ»¥Ëø·þÎñÆ÷Ó¦´ðʧ°Ü +#define MINOR_FINGERPRINT_DISENABELD_VERIFY_FAIL 0xca //Ö¸ÎÆʶ±ðδʹÄÜÈÏ֤ʧ°Ü +#define MINOR_FACE_DISENABELD_VERIFY_FAIL 0xcb //ÈËÁ³Ê¶±ðδʹÄÜÈÏ֤ʧ°Ü +#define MINOR_MONITOR_OPEN_DOOR 0xcc //¼àÊÓ¿ªÃÅ +#define MINOR_READER_FACTORY_RESET 0xcd //¶Á¿¨Æ÷»Ö¸´³ö³§ÉèÖà +#define MINOR_READER_ID_CONFLICT 0xce //¶Á¿¨Æ÷ID³åÍ» +#define MINOR_FELICA_CARD_RECOGNIZE_NOT_ENABLED 0xcf //Felica¿¨Ê¶±ðδÆôÓà +#define MINOR_PROPERTY_EXCEPTION_VERIFY_FAIL 0xd0 //ÊôÐÔÒì³£ÈÏ֤ʧ°Ü£¨Î´´÷¿ÚÕÖ£¬°²È«Ã±£¬ÌåÎÂÒì³£µÈÊôÐÔÒì³££© +#define MINOR_MEETING_NO_PERSON 0xd1 //·Ç»áÒéÈËÔ±£º»áÒéģʽÏ£¬ËùÓÐ״̬£¬·Ç»áÒéÈËԱǩµ½£¬Éϱ¨¸Ãʼþ +#define MINOR_MEETING_NOT_START 0xd2 //»áÒéδ¿ªÊ¼£º»áÒé¿ÕÏÐ״̬£¬»áÒéÈËԱǩµ½ +#define MINOR_MEETING_SIGNEDIN 0xd3 //ÒÑÇ©µ½£ºÒÑÇ©µ½»áÒéÈËÔ±Öظ´Ç©µ½ +#define MINOR_AUTHENTICATION_TIMES_REACHED 0xd4 //ÈËÔ±ÈÏÖ¤´ÎÊýÒÑÂú£¨ÔÚȨÏ޼ƻ®µÄµ±Ç°Ê±¼ä¶ÎÄÚ£¬´ïµ½ÈÏÖ¤´ÎÊýÏÞÖÆ£© +#define MINOR_FACE_MODEL_FAIL_BY_UPGRADE 0xd5 //ÈËÁ³½¨Ä£Éý¼¶¼æÈÝʧ°Üʼþ + +#define MINOR_UNCLOCK_RECORD 0xd6 //É豸¿ªËø¼Ç¼Ê¼þÉϱ¨ +#define MINOR_DOOR_NOT_OPEN 0xd7 //ÃÅ먦±¨¾¯£¨¶Ô½²É豸£© +#define MINOR_DOOR_UNCLOSED 0xd8 //ÃÅδ¹Ø±¨¾¯£¨¶Ô½²É豸£© +#define MINOR_ORCODE_KEY_VERIFY_FAIL 0xd9 //¶þάÂëÃÜÔ¿Ñé֤ʧ°Ü + +#define MINOR_EVENT_CUSTOM1 0x500 //ÃŽû×Ô¶¨Òåʼþ1 +#define MINOR_EVENT_CUSTOM2 0x501 //ÃŽû×Ô¶¨Òåʼþ2 +#define MINOR_EVENT_CUSTOM3 0x502 //ÃŽû×Ô¶¨Òåʼþ3 +#define MINOR_EVENT_CUSTOM4 0x503 //ÃŽû×Ô¶¨Òåʼþ4 +#define MINOR_EVENT_CUSTOM5 0x504 //ÃŽû×Ô¶¨Òåʼþ5 +#define MINOR_EVENT_CUSTOM6 0x505 //ÃŽû×Ô¶¨Òåʼþ6 +#define MINOR_EVENT_CUSTOM7 0x506 //ÃŽû×Ô¶¨Òåʼþ7 +#define MINOR_EVENT_CUSTOM8 0x507 //ÃŽû×Ô¶¨Òåʼþ8 +#define MINOR_EVENT_CUSTOM9 0x508 //ÃŽû×Ô¶¨Òåʼþ9 +#define MINOR_EVENT_CUSTOM10 0x509 //ÃŽû×Ô¶¨Òåʼþ10 +#define MINOR_EVENT_CUSTOM11 0x50a //ÃŽû×Ô¶¨Òåʼþ11 +#define MINOR_EVENT_CUSTOM12 0x50b //ÃŽû×Ô¶¨Òåʼþ12 +#define MINOR_EVENT_CUSTOM13 0x50c //ÃŽû×Ô¶¨Òåʼþ13 +#define MINOR_EVENT_CUSTOM14 0x50d //ÃŽû×Ô¶¨Òåʼþ14 +#define MINOR_EVENT_CUSTOM15 0x50e //ÃŽû×Ô¶¨Òåʼþ15 +#define MINOR_EVENT_CUSTOM16 0x50f //ÃŽû×Ô¶¨Òåʼþ16 +#define MINOR_EVENT_CUSTOM17 0x510 //ÃŽû×Ô¶¨Òåʼþ17 +#define MINOR_EVENT_CUSTOM18 0x511 //ÃŽû×Ô¶¨Òåʼþ18 +#define MINOR_EVENT_CUSTOM19 0x512 //ÃŽû×Ô¶¨Òåʼþ19 +#define MINOR_EVENT_CUSTOM20 0x513 //ÃŽû×Ô¶¨Òåʼþ20 +#define MINOR_EVENT_CUSTOM21 0x514 //ÃŽû×Ô¶¨Òåʼþ21 +#define MINOR_EVENT_CUSTOM22 0x515 //ÃŽû×Ô¶¨Òåʼþ22 +#define MINOR_EVENT_CUSTOM23 0x516 //ÃŽû×Ô¶¨Òåʼþ23 +#define MINOR_EVENT_CUSTOM24 0x517 //ÃŽû×Ô¶¨Òåʼþ24 +#define MINOR_EVENT_CUSTOM25 0x518 //ÃŽû×Ô¶¨Òåʼþ25 +#define MINOR_EVENT_CUSTOM26 0x519 //ÃŽû×Ô¶¨Òåʼþ26 +#define MINOR_EVENT_CUSTOM27 0x51a //ÃŽû×Ô¶¨Òåʼþ27 +#define MINOR_EVENT_CUSTOM28 0x51b //ÃŽû×Ô¶¨Òåʼþ28 +#define MINOR_EVENT_CUSTOM29 0x51c //ÃŽû×Ô¶¨Òåʼþ29 +#define MINOR_EVENT_CUSTOM30 0x51d //ÃŽû×Ô¶¨Òåʼþ30 +#define MINOR_EVENT_CUSTOM31 0x51e //ÃŽû×Ô¶¨Òåʼþ31 +#define MINOR_EVENT_CUSTOM32 0x51f //ÃŽû×Ô¶¨Òåʼþ32 +#define MINOR_EVENT_CUSTOM33 0x520 //ÃŽû×Ô¶¨Òåʼþ33 +#define MINOR_EVENT_CUSTOM34 0x521 //ÃŽû×Ô¶¨Òåʼþ34 +#define MINOR_EVENT_CUSTOM35 0x522 //ÃŽû×Ô¶¨Òåʼþ35 +#define MINOR_EVENT_CUSTOM36 0x523 //ÃŽû×Ô¶¨Òåʼþ36 +#define MINOR_EVENT_CUSTOM37 0x524 //ÃŽû×Ô¶¨Òåʼþ37 +#define MINOR_EVENT_CUSTOM38 0x525 //ÃŽû×Ô¶¨Òåʼþ38 +#define MINOR_EVENT_CUSTOM39 0x526 //ÃŽû×Ô¶¨Òåʼþ39 +#define MINOR_EVENT_CUSTOM40 0x527 //ÃŽû×Ô¶¨Òåʼþ40 +#define MINOR_EVENT_CUSTOM41 0x528 //ÃŽû×Ô¶¨Òåʼþ41 +#define MINOR_EVENT_CUSTOM42 0x529 //ÃŽû×Ô¶¨Òåʼþ42 +#define MINOR_EVENT_CUSTOM43 0x52a //ÃŽû×Ô¶¨Òåʼþ43 +#define MINOR_EVENT_CUSTOM44 0x52b //ÃŽû×Ô¶¨Òåʼþ44 +#define MINOR_EVENT_CUSTOM45 0x52c //ÃŽû×Ô¶¨Òåʼþ45 +#define MINOR_EVENT_CUSTOM46 0x52d //ÃŽû×Ô¶¨Òåʼþ46 +#define MINOR_EVENT_CUSTOM47 0x52e //ÃŽû×Ô¶¨Òåʼþ47 +#define MINOR_EVENT_CUSTOM48 0x52f //ÃŽû×Ô¶¨Òåʼþ48 +#define MINOR_EVENT_CUSTOM49 0x530 //ÃŽû×Ô¶¨Òåʼþ49 +#define MINOR_EVENT_CUSTOM50 0x531 //ÃŽû×Ô¶¨Òåʼþ50 +#define MINOR_EVENT_CUSTOM51 0x532 //ÃŽû×Ô¶¨Òåʼþ51 +#define MINOR_EVENT_CUSTOM52 0x533 //ÃŽû×Ô¶¨Òåʼþ52 +#define MINOR_EVENT_CUSTOM53 0x534 //ÃŽû×Ô¶¨Òåʼþ53 +#define MINOR_EVENT_CUSTOM54 0x535 //ÃŽû×Ô¶¨Òåʼþ54 +#define MINOR_EVENT_CUSTOM55 0x536 //ÃŽû×Ô¶¨Òåʼþ55 +#define MINOR_EVENT_CUSTOM56 0x537 //ÃŽû×Ô¶¨Òåʼþ56 +#define MINOR_EVENT_CUSTOM57 0x538 //ÃŽû×Ô¶¨Òåʼþ57 +#define MINOR_EVENT_CUSTOM58 0x539 //ÃŽû×Ô¶¨Òåʼþ58 +#define MINOR_EVENT_CUSTOM59 0x53a //ÃŽû×Ô¶¨Òåʼþ59 +#define MINOR_EVENT_CUSTOM60 0x53b //ÃŽû×Ô¶¨Òåʼþ60 +#define MINOR_EVENT_CUSTOM61 0x53c //ÃŽû×Ô¶¨Òåʼþ61 +#define MINOR_EVENT_CUSTOM62 0x53d //ÃŽû×Ô¶¨Òåʼþ62 +#define MINOR_EVENT_CUSTOM63 0x53e //ÃŽû×Ô¶¨Òåʼþ63 +#define MINOR_EVENT_CUSTOM64 0x53f //ÃŽû×Ô¶¨Òåʼþ64 +#define MINOR_ESD_OK 0x540 //ESDºÏ¸ñ +#define MINOR_ESD_LINKAGE_DISENABLE 0x541 //ESD²»ºÏ¸ñ£¬²»¿ªÃÅ +#define MINOR_ESD_LINKAGE_ENABLE 0x542 //ESD²»ºÏ¸ñ£¬¿ªÃÅ +#define MINOR_ESD_OVERTIME 0x543 //ESD¼ì²â³¬Ê± + + +#define MINOR_LOCK_FINGER_OPEN_DOOR 0x600 //ÖÇÄÜËøÖ¸ÎÆ¿ªÃÅ +#define MINOR_LOCK_PASSWORD_OPEN_DOOR 0x601 //ÖÇÄÜËøÃÜÂ뿪ÃÅ +#define MINOR_LOCK_CARD_OPEN_DOOR 0x602 //ÖÇÄÜËøË¢¿¨¿ªÃÅ +#define MINOR_LOCK_CENTER_OPEN_DOOR 0x603 //ÖÇÄÜËøÖÐÐÄ¿ªÃÅ +#define MINOR_LOCK_APP_OPEN_DOOR 0x604 //ÖÇÄÜËøAPP¿ªÃÅ +#define MINOR_LOCK_KEY_OPEN_DOOR 0x605 //ÖÇÄÜËøÔ¿³×¿ªÃÅ +#define MINOR_LOCK_REMOTE_DEVICE_OPEN_DOOR 0x606 //ÖÇÄÜËøÒ£¿ØÆ÷¿ªÃÅ +#define MINOR_LOCK_TMP_PASSWORD_OPEN_DOOR 0x607 //ÖÇÄÜËøÁÙʱÃÜÂ뿪ÃÅ +#define MINOR_LOCK_BLUETOOTH_OPEN_DOOR 0x608 //ÖÇÄÜËøÀ¶ÑÀ¿ªÃÅ +#define MINOR_LOCK_MULTI_OPEN_DOOR 0x609 //ÖÇÄÜËø¶àÖØ¿ªÃÅ + + +#define MINOR_VP_ANTI_SPOOFING_FAIL 0x700 //ÉùÎÆ»îÌå¼ì²âʧ°Ü +#define MINOR_VP_VERIFY_FAIL 0x701 //ÉùÎÆÈÏ֤ʧ°Ü + + +//2018-04-23 ͨÓÃÎïÁªÍø¹ØʼþÈÕÖ¾ÀàÐÍ +#define MINOR_ALARMHOST_SCHOOLTIME_IRGI_B 0x1001 //BÂëУʱ +#define MINOR_ALARMHOST_SCHOOLTIME_SDK 0x1002 //SDKУʱ +#define MINOR_ALARMHOST_SCHOOLTIME_SELFTEST 0x1003 //¶¨ÖÆ×Ô¼ìУʱ +#define MINOR_ALARMHOST_SUBSYSTEM_ABNORMALINSERT 0x1004 //×Ó°å²åÈë +#define MINOR_ALARMHOST_SUBSYSTEM_ABNORMALPULLOUT 0x1005 //×Ó°å°Î³ö + +#define MINOR_ALARMHOST_AUTO_ARM 0x1006 //×Ô¶¯²¼·À +#define MINOR_ALARMHOST_AUTO_DISARM 0x1007 //×Ô¶¯³··À +#define MINOR_ALARMHOST_TIME_TIGGER_ON 0x1008 //¶¨Ê±¿ªÆô´¥·¢Æ÷ +#define MINOR_ALARMHOST_TIME_TIGGER_OFF 0x1009 //¶¨Ê±¹Ø±Õ´¥·¢Æ÷ +#define MINOR_ALARMHOST_AUTO_ARM_FAILD 0x100a //×Ô¶¯²¼·Àʧ°Ü +#define MINOR_ALARMHOST_AUTO_DISARM_FAILD 0x100b //×Ô¶¯³··Àʧ°Ü +#define MINOR_ALARMHOST_TIME_TIGGER_ON_FAILD 0x100c //¶¨Ê±¿ªÆô´¥·¢Æ÷ʧ°Ü +#define MINOR_ALARMHOST_TIME_TIGGER_OFF_FAILD 0x100d //¶¨Ê±¹Ø±Õ´¥·¢Æ÷ʧ°Ü +#define MINOR_ALARMHOST_MANDATORY_ALARM 0x100e //Ç¿ÖƲ¼·À +#define MINOR_ALARMHOST_KEYPAD_LOCKED 0x100f //¼üÅÌËø¶¨ +#define MINOR_ALARMHOST_USB_INSERT 0x1010 //USB²åÈë +#define MINOR_ALARMHOST_USB_PULLOUT 0x1011 //USB°Î³ö +#define MINOR_ALARMHOST_4G_MODULS_ONLINE 0x1012 //4GÄ£¿éÉÏÏß +#define MINOR_ALARMHOST_4G_MODULS_OFFLINE 0x1013 //4GÄ£¿éÏÂÏß + +#define MINOR_EZVIZ_CLOUD_ONLINE 0x1014 //өʯÔÆÉÏÏß +#define MINOR_EZVIZ_CLOUD_OFFLINE 0x1015 //өʯÔÆÏÂÏß + +#define MINOR_SIPUA_GRID_ONLINE 0x1016 //¹úÍøBÉÏÏß +#define MINOR_SIPUA_GRID_OFFLINE 0x1017 //¹úÍøBÏÂÏß + +#define MINOR_INTERNET_ACCESS_CONNECTED 0x1018 //Íø¿ÚÁ¬½Ó +#define MINOR_INTERNET_ACCESS_BREAK 0x1019 //Íø¿Ú¶Ï¿ª + +#define MINOR_WIRELESS_CONNECTED 0x101a //ÎÞÏßÁ¬½Ó +#define MINOR_WIRELESS_BREAK 0x101b //ÎÞÏ߶Ͽª +#define MINOR_PORT_LINK_DOWN 0x101c //¶Ë¿ÚÍøÂçdown +#define MINOR_PORT_LINK_UP 0x101d //¶Ë¿ÚÍøÂçup +#define MINOR_POE_PORT_POWER_ON 0x101e //POE¶Ë¿Úpower on +#define MINOR_POE_PORT_POWER_OFF 0x101f //POE¶Ë¿Úpower off +#define MINOR_POE_TOTAL_POWER_MAX 0x1020 //POE×ܹ¦ÂÊ´ïµ½poe-max +#define MINNOR_POE_TOTAL_POWER_RESUME 0x1021 //POE×ܹ¦Âʻָ´Õý³£ +#define MINNOR_CARGO_ITEMS 0x1022 //»õ¸ñÎïÆ·È¡·Å + + +typedef enum tagALARMHOST_MAJOR_TYPE +{ + MAJOR_ALARMHOST_ALARM = 1, + MAJOR_ALARMHOST_EXCEPTION, + MAJOR_ALARMHOST_OPERATION, + MAJ0R_ALARMHOST_EVENT +}ALARMHOST_MAJOR_TYPE; + +typedef enum tagALARMHOST_MINOR_TYPE +{ + // ±¨¾¯ + MINOR_SHORT_CIRCUIT =0x01, // ¶Ì·±¨¾¯ + MINOR_BROKEN_CIRCUIT, // ¶Ï·±¨¾¯ + MINOR_ALARM_RESET, // ±¨¾¯¸´Î» + MINOR_ALARM_NORMAL, // ±¨¾¯»Ö¸´Õý³£ + MINOR_PASSWORD_ERROR, // ÃÜÂë´íÎó£¨Á¬Ðø3´ÎÊäÈëÃÜÂë´íÎó£© + MINOR_ID_CARD_ILLEGALLY, // ·Ç·¨¸ÐÓ¦¿¨ID + MINOR_KEYPAD_REMOVE, // ¼üÅÌ·À²ð + MINOR_KEYPAD_REMOVE_RESTORE, // ¼üÅÌ·À²ð¸´Î» + MINOR_DEV_REMOVE, // É豸·À²ð + MINOR_DEV_REMOVE_RESTORE, // É豸·À²ð¸´Î» + MINOR_BELOW_ALARM_LIMIT1, // Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ1 + MINOR_BELOW_ALARM_LIMIT2, // Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ2 + MINOR_BELOW_ALARM_LIMIT3, // Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ3 + MINOR_BELOW_ALARM_LIMIT4, // Ä£ÄâÁ¿µÍÓÚ±¨¾¯ÏÞ4 + MINOR_ABOVE_ALARM_LIMIT1, // Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ1 + MINOR_ABOVE_ALARM_LIMIT2, // Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ2 + MINOR_ABOVE_ALARM_LIMIT3, // Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ3 + MINOR_ABOVE_ALARM_LIMIT4, // Ä£ÄâÁ¿¸ßÓÚ±¨¾¯ÏÞ4 + MINOR_URGENCYBTN_ON, // ½ô¼±°´Å¥°´Ï + MINOR_URGENCYBTN_OFF, // ½ô¼±°´Å¥¸´Î» + MINOR_VIRTUAL_DEFENCE_BANDIT, //Èí·ÀÇø·Ë¾¯ + MINOR_VIRTUAL_DEFENCE_FIRE, //Èí·ÀÇø»ð¾¯ + MINOR_VIRTUAL_DEFENCE_URGENT, //Èí·ÀÇø½ô¼± + MINOR_ALARMHOST_MOTDET_START, //Òƶ¯Õì²â±¨¾¯¿ªÊ¼ + MINOR_ALARMHOST_MOTDET_STOP, //Òƶ¯Õì²â±¨¾¯½áÊø + MINOR_ALARMHOST_HIDE_ALARM_START, //ÕÚµ²±¨¾¯¿ªÊ¼ + MINOR_ALARMHOST_HIDE_ALARM_STOP, //ÕÚµ²±¨¾¯½áÊø + MINOR_ALARMHOST_UPS_ALARM, //UPS±¨¾¯ + MINOR_ALARMHOST_ELECTRICITY_METER_ALARM, //µçÁ¿±í±¨¾¯ + MINOR_ALARMHOST_SWITCH_POWER_ALARM, //¿ª¹ØµçÔ´±¨¾¯ + MINOR_ALARMHOST_GAS_DETECT_SYS_ALARM, //ÆøÌå¼ì²âϵͳ±¨¾¯ + MINOR_ALARMHOST_TRANSFORMER_TEMPRATURE_ALARM, //±äµçÆ÷ÎÂÏÔ±í±¨¾¯ + MINOR_ALARMHOST_TEMP_HUMI_ALARM, //ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯ + MINOR_ALARMHOST_UPS_ALARM_RESTORE, //UPS±¨¾¯»Ö¸´ + MINOR_ALARMHOST_ELECTRICITY_METER_ALARM_RESTORE, //µçÁ¿±í±¨¾¯»Ö¸´ + MINOR_ALARMHOST_SWITCH_POWER_ALARM_RESTORE, //¿ª¹ØµçÔ´±¨¾¯»Ö¸´ + MINOR_ALARMHOST_GAS_DETECT_SYS_ALARM_RESTORE, //ÆøÌå¼ì²âϵͳ±¨¾¯»Ö¸´ + MINOR_ALARMHOST_TRANSFORMER_TEMPRATURE_ALARM_RESTORE, //±äµçÆ÷ÎÂÏÔ±í±¨¾¯»Ö¸´ + MINOR_ALARMHOST_TEMP_HUMI_ALARM_RESTORE, //ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯»Ö¸´ + MINOR_ALARMHOST_WATER_LEVEL_SENSOR_ALARM, //ˮλ´«¸ÐÆ÷±¨¾¯ + MINOR_ALARMHOST_WATER_LEVEL_SENSOR_ALARM_RESTORE, //ˮλ´«¸ÐÆ÷±¨¾¯»Ö¸´ + MINOR_ALARMHOST_DUST_NOISE_ALARM, //Ñï³¾ÔëÉù´«¸ÐÆ÷±¨¾¯ + MINOR_ALARMHOST_DUST_NOISE_ALARM_RESTORE, //Ñï³¾ÔëÉù´«¸ÐÆ÷±¨¾¯»Ö¸´ + MINOR_ALARMHOST_ENVIRONMENTAL_LOGGER_ALARM, //»·¾³²É¼¯ÒDZ¨¾¯ + MINOR_ALARMHOST_ENVIRONMENTAL_LOGGER_ALARM_RESTORE, //»·¾³²É¼¯ÒDZ¨¾¯»Ö¸´ + + MINOR_ALARMHOST_TRIGGER_TAMPER, //̽²âÆ÷·À²ð + MINOR_ALARMHOST_TRIGGER_TAMPER_RESTORE, //̽²âÆ÷·À²ð»Ö¸´ + MINOR_ALARMHOST_EMERGENCY_CALL_HELP_ALARM, //½ô¼±ºô½ÐÇóÖú±¨¾¯ + MINOR_ALARMHOST_EMERGENCY_CALL_HELP_ALARM_RESTORE, //½ô¼±ºô½ÐÇóÖú±¨¾¯»Ö¸´ + MINOR_ALARMHOST_CONSULTING_ALARM, //ÒµÎñ×Éѯ±¨¾¯ + MINOR_ALARMHOST_CONSULTING_ALARM_RESTORE, //ÒµÎñ×Éѯ±¨¾¯»Ö¸´ + MINOR_ZONE_MODULE_REMOVE, // ·ÀÇøÄ£¿é·À²ð + MINOR_ZONE_MODULE_RESET, // ·ÀÇøÄ£¿é·À²ð¸´Î» + + MINOR_ALARM_WIND_SPEED_ALARM, //·çËÙ´«¸ÐÆ÷¸æ¾¯ + MINOR_ALARM_WIND_SPEED_ALARM_RESTORE, //·çËÙ´«¸ÐÆ÷¸æ¾¯»Ö¸´ + MINOR_ALARM_GENERATE_OUTPUT_ALARM, //ͨÓÃÊä³öÄ£¿é¸æ¾¯ + MINOR_ALARM_GENERATE_OUTPUT_RESTORE, //ͨÓÃÊä³öÄ£¿é¸æ¾¯»Ö¸´ + MINOR_ALARM_SOAK_ALARM, //½þË®´«¸ÐÆ÷¸æ¾¯ + MINOR_ALARM_SOAK_ALARM_RESTORE, //½þË®´«¸ÐÆ÷¸æ¾¯»Ö¸´ + MINOR_ALARM_SOLAR_POWER_ALARM, //Ì«ÑôÄÜ´«¸ÐÆ÷¸æ¾¯ + MINOR_ALARM_SOLAR_POWER_ALARM_RESTORE, //Ì«ÑôÄÜ´«¸ÐÆ÷¸æ¾¯»Ö¸´ + MINOR_ALARM_SF6_ALARM, //SF6±¨¾¯Ö÷»ú¸æ¾¯ + MINOR_ALARM_SF6_ALARM_RESTORE, //SF6±¨¾¯Ö÷»ú¸æ¾¯»Ö¸´ + MINOR_ALARM_WEIGHT_ALARM, //³ÆÖØÒǸ澯 + MINOR_ALARM_WEIGHT_ALARM_RESTORE, //³ÆÖØÒǸ澯»Ö¸´ + MINOR_ALARM_WEATHER_ALARM, //ÆøÏó²É¼¯ÏµÍ³¸æ¾¯ + MINOR_ALARM_WEATHER_ALARM_RESTORE, //ÆøÏó²É¼¯ÏµÍ³¸æ¾¯»Ö¸´ + MINOR_ALARM_FUEL_GAS_ALARM, //ȼÆø¼à²âϵͳ¸æ¾¯ + MINOR_ALARM_FUEL_GAS_ALARM_RESTORE, //ȼÆø¼à²âϵͳ¸æ¾¯»Ö¸´ + MINOR_ALARM_FIRE_ALARM, //»ðÔÖ±¨¾¯ÏµÍ³¸æ¾¯ + MINOR_ALARM_FIRE_ALARM_RESTORE, //»ðÔÖ±¨¾¯ÏµÍ³¸æ¾¯»Ö¸´ + + MINOR_WIRELESS_OUTPUT_MODULE_REMOVE, // ÎÞÏßÊä³öÄ£¿é·À²ð + MINOR_WIRELESS_OUTPUT_MODULE_RESET, // ÎÞÏßÊä³öÄ£¿é·À²ð¸´Î» + MINOR_WIRELESS_REPEATER_MODULE_REMOVE, // ÎÞÏßÖмÌÆ÷·À²ð + MINOR_WIRELESS_REPEATER_MODULE_RESET, // ÎÞÏßÖмÌÆ÷·À²ð¸´Î» + MINOR_WIRELESS_SIREN_MODULE_REMOVE, // ÎÞÏß¾¯ºÅ·À²ð + MINOR_WIRELESS_SIREN_MODULE_RESET, // ÎÞÏß¾¯ºÅ·À²ð¸´Î» + MINOR_SOUND_INTENSITY_RISE, // ÉùÇ¿¶¸Éý±¨¾¯ + MINOR_SOUND_INTENSITY_RISE_RESET, // ÉùÇ¿¶¸Éý±¨¾¯»Ö¸´ + MINOR_SOUND_INTENSITY_DROP, // ÉùÇ¿¶¸½µ±¨¾¯ + MINOR_SOUND_INTENSITY_DROP_RESET, // ÉùÇ¿¶¸½µ±¨¾¯»Ö¸´ + MINOR_AUDIO_INPUT_EXCEPTION, // ÒôƵÊäÈëÒì³£±¨¾¯ + MINOR_AUDIO_INPUT_EXCEPTION_RESET, // ÒôƵÊäÈëÒì³£±¨¾¯»Ö¸´ + MINOR_FACE_DETECTION_ALARM, // ÈËÁ³Õì²â±¨¾¯ + MINOR_FACE_DETECTION_ALARM_RESTORE, // ÈËÁ³Õì²â±¨¾¯»Ö¸´ + + // Òì³£ + MINOR_POWER_ON = 0x01, // Éϵç + MINOR_POWER_OFF, // µôµç + MINOR_WDT_RESET, // WDT ¸´Î» + MINOR_LOW_BATTERY_VOLTAGE, // Ðîµç³ØµçѹµÍ + MINOR_AC_LOSS, // ½»Á÷µç¶Ïµç + MINOR_AC_RESTORE, // ½»Á÷µç»Ö¸´ + MINOR_RTC_EXCEPTION, // RTCʵʱʱÖÓÒì³£ + MINOR_NETWORK_CONNECT_FAILURE, // ÍøÂçÁ¬½Ó¶Ï + MINOR_NETWORK_CONNECT_RESTORE, // ÍøÂçÁ¬½Ó»Ö¸´ + MINOR_TEL_LINE_CONNECT_FAILURE, // µç»°ÏßÁ¬½Ó¶Ï + MINOR_TEL_LINE_CONNECT_RESTORE, // µç»°ÏßÁ¬½Ó»Ö¸´ + MINOR_EXPANDER_BUS_LOSS, // À©Õ¹×ÜÏßÄ£¿éµôÏß + MINOR_EXPANDER_BUS_RESTORE, // À©Õ¹×ÜÏßÄ£¿éµôÏ߻ָ´ + MINOR_KEYPAD_BUS_LOSS, // ¼üÅÌ×ÜÏßÄ£¿éµôÏß + MINOR_KEYPAD_BUS_RESTORE, // ¼üÅÌ×ÜÏßÄ£¿éµôÏ߻ָ´ + MINOR_SENSOR_FAILURE, // Ä£ÄâÁ¿´«¸ÐÆ÷¹ÊÕÏ + MINOR_SENSOR_RESTORE, // Ä£ÄâÁ¿´«¸ÐÆ÷»Ö¸´ + MINOR_RS485_CONNECT_FAILURE, // RS485ͨµÀÁ¬½Ó¶Ï + MINOR_RS485_CONNECT_RESTORE, // RS485ͨµÀÁ¬½Ó¶Ï»Ö¸´ + MINOR_BATTERT_VOLTAGE_RESTORE, // Ðîµç³Øµçѹ»Ö¸´Õý³£ + MINOR_WIRED_NETWORK_ABNORMAL, //ÓÐÏßÍøÂçÒì³£ + MINOR_WIRED_NETWORK_RESTORE, //ÓÐÏßÍøÂç»Ö¸´Õý³£ + MINOR_GPRS_ABNORMAL, //GPRSͨÐÅÒì³£ + MINOR_GPRS_RESTORE, //GPRS»Ö¸´Õý³£ + MINOR_3G_ABNORMAL, //3GͨÐÅÒì³£ + MINOR_3G_RESTORE, //3G»Ö¸´Õý³£ + MINOR_SIM_CARD_ABNORMAL, //SIM¿¨Òì³£ + MINOR_SIM_CARD_RESTORE, //SIM¿¨»Ö¸´Õý³£ + MINOR_ALARMHOST_VI_LOST, // ÊÓƵÐźŶªÊ§ + MINOR_ALARMHOST_ILLEGAL_ACCESS, // ·Ç·¨·ÃÎÊ + MINOR_ALARMHOST_HD_FULL, // Ó²ÅÌÂú + MINOR_ALARMHOST_HD_ERROR, // Ó²ÅÌ´íÎó + MINOR_ALARMHOST_DCD_LOST, // MODEM µôÏß(±£Áô²»Ê¹ÓÃ) + MINOR_ALARMHOST_IP_CONFLICT, // IPµØÖ·³åÍ» + MINOR_ALARMHOST_NET_BROKEN, // ÍøÂç¶Ï¿ª + MINOR_ALARMHOST_REC_ERROR, // ¼Ïñ³ö´í + MINOR_ALARMHOST_VI_EXCEPTION, // ÊÓƵÊäÈëÒì³£(Ö»Õë¶ÔÄ£ÄâͨµÀ) + MINOR_ALARMHOST_FORMAT_HDD_ERROR, //Ô¶³Ì¸ñʽ»¯Ó²ÅÌʧ°Ü + MINOR_ALARMHOST_USB_ERROR, //USBͨÐŹÊÕÏ + MINOR_ALARMHOST_USB_RESTORE, //USBͨÐŹÊÕϻָ´ + MINOR_ALARMHOST_PRINT_ERROR, //´òÓ¡»ú¹ÊÕÏ + MINOR_ALARMHOST_PRINT_RESTORE, //´òÓ¡»ú¹ÊÕϻָ´ + MINOR_SUBSYSTEM_COMMUNICATION_ERROR, //×Ó°åͨѶ´íÎó + MINOR_ALARMHOST_IPC_NO_LINK, /* IPCÁ¬½Ó¶Ï¿ª */ + MINOR_ALARMHOST_IPC_IP_CONFLICT, /*ipc ip µØÖ· ³åÍ»*/ + MINOR_ALARMHOST_VI_MISMATCH, /*ÊÓƵÖÆʽ²»Æ¥Åä*/ + MINOR_ALARMHOST_MCU_RESTART, //MCUÖØÆô + MINOR_ALARMHOST_GPRS_MODULE_FAULT, //GPRSÄ£¿é¹ÊÕÏ + MINOR_ALARMHOST_TELEPHONE_MODULE_FAULT, //µç»°Ä£¿é¹ÊÕÏ + MINOR_ALARMHOST_WIFI_ABNORMAL, //WIFIͨÐÅÒì³£ + MINOR_ALARMHOST_WIFI_RESTORE, //WIFI»Ö¸´Õý³£ + MINOR_ALARMHOST_RF_ABNORMAL, //RFÐźÅÒì³£ + MINOR_ALARMHOST_RF_RESTORE, //RFÐźŻָ´Õý³£ + MINOR_ALARMHOST_DETECTOR_ONLINE, //̽²âÆ÷ÔÚÏß + MINOR_ALARMHOST_DETECTOR_OFFLINE, //̽²âÆ÷ÀëÏß + MINOR_ALARMHOST_DETECTOR_BATTERY_NORMAL, //̽²âÆ÷µçÁ¿Õý³£ + MINOR_ALARMHOST_DETECTOR_BATTERY_LOW, //̽²âÆ÷µçÁ¿Ç·Ñ¹ + MINOR_ALARMHOST_DATA_TRAFFIC_OVERFLOW, //Á÷Á¿³¬¶î + MINOR_ZONE_MODULE_LOSS, // ·ÀÇøÄ£¿éµôÏß + MINOR_ZONE_MODULE_RESTORE, // ·ÀÇøÄ£¿éµôÏ߻ָ´ + MINOR_ALARMHOST_WIRELESS_OUTPUT_LOSS, //ÎÞÏßÊä³öÄ£¿éÀëÏß + MINOR_ALARMHOST_WIRELESS_OUTPUT_RESTORE, //ÎÞÏßÊä³öÄ£¿é»Ö¸´ÔÚÏß + MINOR_ALARMHOST_WIRELESS_REPEATER_LOSS, //ÎÞÏßÖмÌÆ÷ÀëÏß + MINOR_ALARMHOST_WIRELESS_REPEATER_RESTORE, //ÎÞÏßÖмÌÆ÷»Ö¸´ÔÚÏß + MINOR_TRIGGER_MODULE_LOSS, // ´¥·¢Æ÷Ä£¿éµôÏß + MINOR_TRIGGER_MODULE_RESTORE, // ´¥·¢Æ÷Ä£¿éµôÏ߻ָ´ + MINOR_WIRELESS_SIREN_LOSS, // ÎÞÏß¾¯ºÅÀëÏß + MINOR_WIRELESS_SIREN_RESTORE, // ÎÞÏß¾¯ºÅ»Ö¸´ÔÚÏß + MINOR_ALARMHOST_WIRELESS_RS485_LOSS, //ÎÞÏßRS485½ÓÊÕÆ÷Ä£¿éÀëÏß + MINOR_ALARMHOST_WIRELESS_RS485_RESTORE, //ÎÞÏßRS485½ÓÊÕÆ÷Ä£¿é»Ö¸´ÔÚÏß + + // ²Ù×÷ + MINOR_GUARD = 0x01, // ÆÕͨ²¼·À + MINOR_UNGUARD, // ÆÕͨ³··À + MINOR_BYPASS, // ÅÔ· + MINOR_DURESS_ACCESS, // Ю³Ö + MINOR_ALARMHOST_LOCAL_REBOOT, // ±¾µØÖØÆô + MINOR_ALARMHOST_REMOTE_REBOOT, // Ô¶³ÌÖØÆô + MINOR_ALARMHOST_LOCAL_UPGRADE, // ±¾µØÉý¼¶ + MINOR_ALARMHOST_REMOTE_UPGRADE, // Ô¶³ÌÉý¼¶ + MINOR_RECOVERY_DEFAULT_PARAM, // »Ö¸´Ä¬ÈϲÎÊý + MINOR_ALARM_OUTPUT, // ¿ØÖƱ¨¾¯Êä³ö + MINOR_ACCESS_OPEN, // ¿ØÖÆÃŽû¿ª + MINOR_ACCESS_CLOSE, // ¿ØÖÆÃŽû¹Ø + MINOR_SIREN_OPEN, // ¿ØÖƾ¯ºÅ¿ª + MINOR_SIREN_CLOSE, // ¿ØÖƾ¯ºÅ¹Ø + MINOR_MOD_ZONE_CONFIG, // Ð޸ķÀÇøÉèÖà + MINOR_MOD_ALARMOUT_CONIFG, // ¿ØÖƱ¨¾¯Êä³öÅäÖà + MINOR_MOD_ANALOG_CONFIG, // ÐÞ¸ÄÄ£ÄâÁ¿ÅäÖà + MINOR_RS485_CONFIG, // ÐÞ¸Ä485ͨµÀÅäÖà + MINOR_PHONE_CONFIG, // Ð޸IJ¦ºÅÅäÖà + MINOR_ADD_ADMIN, // Ôö¼Ó¹ÜÀíÔ± + MINOR_MOD_ADMIN_PARAM, // Ð޸ĹÜÀíÔ±²ÎÊý + MINOR_DEL_ADMIN, // ɾ³ý¹ÜÀíÔ± + MINOR_ADD_NETUSER, // Ôö¼Óºó¶Ë²Ù×÷Ô± + MINOR_MOD_NETUSER_PARAM, // Ð޸ĺó¶Ë²Ù×÷Ô±²ÎÊý + MINOR_DEL_NETUSER, // ɾ³ýºó¶Ë²Ù×÷Ô± + MINOR_ADD_OPERATORUSER, // Ôö¼ÓÇ°¶Ë²Ù×÷Ô± + MINOR_MOD_OPERATORUSER_PW, // ÐÞ¸ÄÇ°¶Ë²Ù×÷Ô±ÃÜÂë + MINOR_DEL_OPERATORUSER, // ɾ³ýÇ°¶Ë²Ù×÷Ô± + MINOR_ADD_KEYPADUSER, // Ôö¼Ó¼üÅÌ/¶Á¿¨Æ÷Óû§ + MINOR_DEL_KEYPADUSER, // ɾ³ý¼üÅÌ/¶Á¿¨Æ÷Óû§ + MINOR_REMOTEUSER_LOGIN, // Ô¶³ÌÓû§µÇ½ + MINOR_REMOTEUSER_LOGOUT, // Ô¶³ÌÓû§×¢Ïú + MINOR_REMOTE_GUARD, // Ô¶³Ì²¼·À + MINOR_REMOTE_UNGUARD, // Ô¶³Ì³··À + MINOR_MOD_HOST_CONFIG, // ÐÞ¸ÄÖ÷»úÅäÖà + MINOR_RESTORE_BYPASS, // ÅÔ·»Ö¸´ + MINOR_ALARMOUT_OPEN, // ±¨¾¯Êä³ö¿ªÆô + MINOR_ALARMOUT_CLOSE, // ±¨¾¯Êä³ö¹Ø±Õ + MINOR_MOD_SUBSYSTEM_PARAM, // ÐÞ¸Ä×Óϵͳ²ÎÊýÅäÖà + MINOR_GROUP_BYPASS, // ×éÅÔ· + MINOR_RESTORE_GROUP_BYPASS, // ×éÅÔ·»Ö¸´ + MINOR_MOD_GRPS_PARAM, // ÐÞ¸ÄGPRS²ÎÊý + MINOR_MOD_NET_REPORT_PARAM, // ÐÞ¸ÄÍøÂçÉϱ¨²ÎÊýÅäÖà + MINOR_MOD_REPORT_MOD, // ÐÞ¸ÄÉÏ´«·½Ê½ÅäÖà + MINOR_MOD_GATEWAY_PARAM, // ÐÞ¸ÄÃŽû²ÎÊýÅäÖà + MINOR_ALARMHOST_REMOTE_START_REC, // Ô¶³Ì¿ªÊ¼Â¼Ïñ + MINOR_ALARMHOST_REMOTE_STOP_REC, // Ô¶³Ìֹͣ¼Ïñ + MINOR_ALARMHOST_START_TRANS_CHAN, // ¿ªÊ¼Í¸Ã÷´«Êä + MINOR_ALARMHOST_STOP_TRANS_CHAN, // ֹͣ͸Ã÷´«Êä + MINOR_ALARMHOST_START_VT, // ¿ªÊ¼ÓïÒô¶Ô½² + MINOR_ALARMHOST_STOP_VTM, // Í£Ö¹ÓïÒô¶Ô½² + MINOR_ALARMHOST_REMOTE_PLAYBYFILE, // Ô¶³Ì°´Îļþ»Ø·Å + MINOR_ALARMHOST_REMOTE_PLAYBYTIME, // Ô¶³Ì°´Ê±¼ä»Ø·Å + MINOR_ALARMHOST_REMOTE_PTZCTRL, // Ô¶³ÌÔÆ̨¿ØÖÆ + MINOR_ALARMHOST_REMOTE_FORMAT_HDD, // Ô¶³Ì¸ñʽ»¯Ó²ÅÌ + MINOR_ALARMHOST_REMOTE_LOCKFILE, // Ô¶³ÌËø¶¨Îļþ + MINOR_ALARMHOST_REMOTE_UNLOCKFILE, // Ô¶³Ì½âËøÎļþ + MINOR_ALARMHOST_REMOTE_CFGFILE_OUTPUT, // Ô¶³Ìµ¼³öÅäÖÃÎļþ + MINOR_ALARMHOST_REMOTE_CFGFILE_INTPUT, // Ô¶³Ìµ¼ÈëÅäÖÃÎļþ + MINOR_ALARMHOST_REMOTE_RECFILE_OUTPUT, // Ô¶³Ìµ¼³ö¼ÏóÎļþ + + MINOR_ALARMHOST_STAY_ARM, //ÁôÊز¼·À + MINOR_ALARMHOST_QUICK_ARM, //¼´Ê±²¼·À + MINOR_ALARMHOST_AUTOMATIC_ARM, //×Ô¶¯²¼·À + MINOR_ALARMHOST_AUTOMATIC_DISARM, //×Ô¶¯³··À + MINOR_ALARMHOST_KEYSWITCH_ARM, //Ô¿³×·ÀÇø²¼·À + MINOR_ALARMHOST_KEYSWITCH_DISARM, //Ô¿³×·ÀÇø³··À + MINOR_ALARMHOST_CLEAR_ALARM, //Ïû¾¯ + MINOR_ALARMHOST_MOD_FAULT_CFG, //ÐÞ¸Äϵͳ¹ÊÕÏÅäÖà + MINOR_ALARMHOST_MOD_EVENT_TRIGGER_ALARMOUT_CFG, //ÐÞ¸Äʼþ´¥·¢±¨¾¯Êä³öÅäÖà + MINOR_ALARMHOST_SEARCH_EXTERNAL_MODULE, //ËÑË÷Íâ½ÓÄ£¿é + MINOR_ALARMHOST_REGISTER_EXTERNAL_MODULE, //ÖØÐÂ×¢²áÍâ½ÓÄ£¿é + MINOR_ALARMHOST_CLOSE_KEYBOARD_ALARM, //¹Ø±Õ¼üÅ̱¨¾¯ÌáʾÒô + MINOR_ALARMHOST_MOD_3G_PARAM, //ÐÞ¸Ä3G²ÎÊý + MINOR_ALARMHOST_MOD_PRINT_PARAM, //Ð޸ĴòÓ¡»ú²ÎÊý + MINOR_SD_CARD_FORMAT, //SD¿¨¸ñʽ»¯ + MINOR_SUBSYSTEM_UPGRADE, //×Ó°å¹Ì¼þÉý¼¶ + + MINOR_ALARMHOST_PLAN_ARM_CFG, //¼Æ»®²¼³··À²ÎÊýÅäÖà + MINOR_ALARMHOST_PHONE_ARM, //ÊÖ»ú²¼·À + MINOR_ALARMHOST_PHONE_STAY_ARM, //ÊÖ»úÁôÊز¼·À + MINOR_ALARMHOST_PHONE_QUICK_ARM,//ÊÖ»ú¼´Ê±²¼·À + MINOR_ALARMHOST_PHONE_DISARM, //ÊÖ»ú³··À + MINOR_ALARMHOST_PHONE_CLEAR_ALARM, //ÊÖ»úÏû¾¯ + MINOR_ALARMHOST_ALLOWLIST_CFG, //ÔÊÐíÃûµ¥ÅäÖà + MINOR_ALARMHOST_TIME_TRIGGER_CFG, //¶¨Ê±¿ª¹Ø´¥·¢Æ÷ÅäÖà + MINOR_ALARMHOST_CAPTRUE_CFG, //ץͼ²ÎÊýÅäÖà + MINOR_ALARMHOST_TAMPER_CFG, //·ÀÇø·À²ð²ÎÊýÅäÖà + + MINOR_ALARMHOST_REMOTE_KEYPAD_UPGRADE, //Ô¶³ÌÉý¼¶¼üÅÌ + MINOR_ALARMHOST_ONETOUCH_AWAY_ARMING, //Ò»¼üÍâ³ö²¼·À + MINOR_ALARMHOST_ONETOUCH_STAY_ARMING, //Ò»¼üÁôÊز¼·À + MINOR_ALARMHOST_SINGLE_PARTITION_ARMING_OR_DISARMING, //µ¥·ÀÇø²¼³··À + MINOR_ALARMHOST_CARD_CONFIGURATION, //¿¨²ÎÊýÅäÖà + MINOR_ALARMHOST_CARD_ARMING_OR_DISARMING, //Ë¢¿¨²¼³··À + MINOR_ALARMHOST_EXPENDING_NETCENTER_CONFIGURATION, //À©Õ¹ÍøÂçÖÐÐÄÅäÖà + MINOR_ALARMHOST_NETCARD_CONFIGURATION, //Íø¿¨ÅäÖà + MINOR_ALARMHOST_DDNS_CONFIGURATION, //DDNSÅäÖà + MINOR_ALARMHOST_RS485BUS_CONFIGURATION, // 485×ÜÏß²ÎÊýÅäÖà + MINOR_ALARMHOST_RS485BUS_RE_REGISTRATION, //485×ÜÏßÖØÐÂ×¢²á + + MINOR_ALARMHOST_REMOTE_OPEN_ELECTRIC_LOCK, //Ô¶³Ì´ò¿ªµçËø + MINOR_ALARMHOST_REMOTE_CLOSE_ELECTRIC_LOCK, //Ô¶³Ì¹Ø±ÕµçËø + MINOR_ALARMHOST_LOCAL_OPEN_ELECTRIC_LOCK, //±¾µØ´ò¿ªµçËø + MINOR_ALARMHOST_LOCAL_CLOSE_ELECTRIC_LOCK, //±¾µØ¹Ø±ÕµçËø + MINOR_ALARMHOST_OPEN_ALARM_LAMP, //´ò¿ª¾¯µÆ(Ô¶³Ì) + MINOR_ALARMHOST_CLOSE_ALARM_LAMP, //¹Ø±Õ¾¯µÆ(Ô¶³Ì) + + + MINOR_ALARMHOST_TEMPORARY_PASSWORD, //ÁÙʱÃÜÂë²Ù×÷¼Ç¼ + MINOR_ALARMHOST_ONEKEY_AWAY_ARM, //Ò»¼üÍâ³ö²¼·À + MINOR_ALARMHOST_ONEKEY_STAY_ARM, //Ò»¼üÁôÊز¼·À + MINOR_ALARMHOST_SINGLE_ZONE_ARM, //µ¥·ÀÇø²¼·À + MINOR_ALARMHOST_SINGLE_ZONE_DISARM, //µ¥·ÀÇø³··À + MINOR_ALARMHOST_HIDDNS_CONFIG, // HIDDNSÅäÖà + MINOR_ALARMHOST_REMOTE_KEYBOARD_UPDATA, //Ô¶³Ì¼üÅÌÉý¼¶ÈÕÖ¾ + MINOR_ALARMHOST_ZONE_ADD_DETECTOR, //·ÀÇøÌí¼Ó̽²âÆ÷ + MINOR_ALARMHOST_ZONE_DELETE_DETECTOR, //·ÀÇøɾ³ý̽²âÆ÷ + MINOR_ALARMHOST_QUERY_DETECTOR_SIGNAL, //Ö÷»ú²éѯ̽²âÆ÷ÐźÅÇ¿¶È + MINOR_ALARMHOST_QUERY_DETECTOR_BATTERY, //Ö÷»ú²éѯ̽²âÆ÷µçÁ¿ + MINOR_ALARMHOST_SET_DETECTOR_GUARD, //̽²âÆ÷²¼·À + MINOR_ALARMHOST_SET_DETECTOR_UNGUARD, //̽²âÆ÷³··À + MINOR_ALARMHOST_SET_WIFI_PARAMETER, //ÉèÖÃWIFIÅäÖòÎÊý + MINOR_ALARMHOST_OPEN_VOICE, //´ò¿ªÓïÒô + MINOR_ALARMHOST_CLOSE_VOICE, //¹Ø±ÕÓïÒô + MINOR_ALARMHOST_ENABLE_FUNCTION_KEY, //ÆôÓù¦Äܼü + MINOR_ALARMHOST_DISABLE_FUNCTION_KEY, //¹Ø±Õ¹¦Äܼü + MINOR_ALARMHOST_READ_CARD, //Ѳ¸üË¢¿¨ + MINOR_ALARMHOST_START_BROADCAST, //´ò¿ªÓïÒô¹ã²¥ + MINOR_ALARMHOST_STOP_BROADCAST, //¹Ø±ÕÓïÒô¹ã²¥ + MINOR_ALARMHOST_REMOTE_ZONE_MODULE_UPGRADE, //Ô¶³ÌÉý¼¶·ÀÇøÄ£¿é + MINOR_ALARMHOST_NETWORK_MODULE_EXTEND, //ÍøÂçÄ£¿é²ÎÊýÅäÖà + MINOR_ALARMHOST_ADD_CONTROLLER, //Ìí¼ÓÒ£¿ØÆ÷Óû§ + MINOR_ALARMHOST_DELETE_CONTORLLER, //ɾ³ýÒ£¿ØÆ÷Óû§ + MINOR_ALARMHOST_REMOTE_NETWORKMODULE_UPGRADE, //Ô¶³ÌÉý¼¶ÍøÂçÄ£¿é + MINOR_ALARMHOST_WIRELESS_OUTPUT_ADD, //×¢²áÎÞÏßÊä³öÄ£¿é + MINOR_ALARMHOST_WIRELESS_OUTPUT_DEL, //ɾ³ýÎÞÏßÊä³öÄ£¿é + MINOR_ALARMHOST_WIRELESS_REPEATER_ADD, //×¢²áÎÞÏßÖмÌÆ÷ + MINOR_ALARMHOST_WIRELESS_REPEATER_DEL, //ɾ³ýÎÞÏßÖмÌÆ÷ + MINOR_ALARMHOST_PHONELIST_CFG, //µç»°Ãûµ¥²ÎÊýÅäÖà + MINOR_ALARMHOST_RF_SIGNAL_CHECK, // RFÐźŲéѯ + MINOR_ALARMHOST_USB_UPGRADE, // USBÉý¼¶ + MINOR_ALARMHOST_DOOR_TIME_REMINDER_CFG,//ÃŴŶ¨Ê±ÌáÐѲÎÊýÅäÖà + MINOR_ALARMHOST_WIRELESS_SIREN_ADD, //×¢²áÎÞÏß¾¯ºÅ + MINOR_ALARMHOST_WIRELESS_SIREN_DEL, //ɾ³ýÎÞÏß¾¯ºÅ + MINOR_ALARMHOST_OUT_SCALE_OPEN, //¸¨µç¿ªÆô + MINOR_ALARMHOST_OUT_SCALE_CLOSE, //¸¨µç¹Ø±Õ + + MINOR_ALARMHOST_TIME_ZONE_CFG,//ʱÇøÐÞ¸Ä + MINOR_ALARMHOST_NTP_START_AND_PARAMETERS_CFG,//NTPÆô¶¯¼°²ÎÊýÐÞ¸Ä + MINOR_ALARMHOST_DST_START_AND_PARAMETERS_CFG,//DSTÆô¶¯¼°²ÎÊýÐÞ¸Ä + MINOR_ALARMHOST_DEVINFO_CFG,//É豸ÐÅÏ¢ÅäÖà + MINOR_ALARMHOST_VIDEO_OVERLAP_CFG,//¼Ïñ¸²¸ÇÅäÖà + MINOR_ALARMHOST_SSH_CFG,//SSHÆô¶¯ÅäÖà + MINOR_ALARMHOST_PASSWORD_MANAGE_CFG,//ÃÜÂë¹ÜÀíÅäÖà + MINOR_ALARMHOST_RESTORE_DEFAULT_PARAMETERS,//»Ö¸´Ä¬ÈϲÎÊý + MINOR_ALARMHOST_RESTORECOMPLETELY_DEFAULT_PARAMETERS,//ÍêÈ«»Ö¸´Ä¬ÈϲÎÊý + MINOR_ALARMHOST_AUDIO_AUTO_DETECT_CFG,//×Ô¶¯¼ì²â²ÎÊýÅäÖà + MINOR_ALARMHOST_AUDIO_MANUAL_DETECT_CFG,//ÊÖ¶¯¼ì²â + MINOR_ALARMHOST_NET_PARAMETERS_CFG,//ÍøÂç²ÎÊýÅäÖà + MINOR_ALARMHOST_MTU_CFG,//MTUÅäÖà + MINOR_ALARMHOST_PORT_CFG,//¶Ë¿ÚÅäÖà + MINOR_ALARMHOST_DEFAULT_ROUTER_CFG,//ĬÈÏ·ÓÉÅäÖà + MINOR_ALARMHOST_DNS_PARAMETERS_CFG,//DNS²ÎÊýÅäÖà + MINOR_ALARMHOST_UNPNP_PARAMETERS_CFG,//UNPNP²ÎÊýÅäÖà + MINOR_ALARMHOST_SIP_PARAMETERS_CFG,//SIP²ÎÊýÅäÖà + MINOR_ALARMHOST_FLOW_LIMIT_CFG,//Á÷Á¿ÏÞ¶î²ÎÊýÅäÖà + MINOR_ALARMHOST_APN_PARAMETERS_CFG,//APN²ÎÊýÅäÖà + MINOR_ALARMHOST_MESSAGE_TELEPHONENO_CFG,//¶ÌÐŵ绰ºÅÂëÅäÖà + MINOR_ALARMHOST_EZVIZ_PARAMATERS_CFG,//өʯ²ÎÊýÅäÖà + MINOR_ALARMHOST_ISUP_PARAMATERS_CFG,//ISUP²ÎÊýÅäÖà + MINOR_ALARMHOST_SIP_SWITCH_CFG,//SIP±ê׼ЭÒé˽ÓÐЭÒéÇл» + MINOR_ALARMHOST_INFO_UPLOAD_TO_PLATFORM_CFG,//ÉÏ´«Æ½Ì¨ÐÅÏ¢ÅäÖà + MINOR_ALARMHOST_ONVIF_CONTROL,//ONVIF¿ØÖÆ(¿ªÆô£¬¹Ø±Õ) + MINOR_ALARMHOST_ONVIF_USER_ADD,//onvifÓû§µÄÔö¼Ó + MINOR_ALARMHOST_ONVIF_USER_MOD,//onvifÓû§µÄÐÞ¸Ä + MINOR_ALARMHOST_ONVIF_USER_DELETE,//onvifÓû§µÄɾ³ý + MINOR_ALARMHOST_TIME_OF_BELLS_CFG,//ÏìÁåʱ¼ä + MINOR_ALARMHOST_CALL_WAITTIME_CFG,//ºô½ÐµÈ´ýʱ¼ä + MINOR_ALARMHOST_PROMPT_PARAMATERS_CFG,//ÌáʾÒô²ÎÊýÅäÖà + MINOR_ALARMHOST_MUTEPLAN_PARAMATERS_CFG,//¾²Òô¼Æ»®²ÎÊýÅäÖà + MINOR_ALARMHOST_SD_PARTITION_CFG,//SD¿¨·ÖÇø²ÎÊýÅäÖà + MINOR_ALARMHOST_AUDIO_PARAMETERS_CFG,//ÒôÊÓƵ²ÎÊýÅäÖà + MINOR_ALARMHOST_VOICETALK_AUDIO_ENCODING_CFG,//¶Ô½²ÒôƵ±àÂë + MINOR_ALARMHOST_RECORD_PLAN_PARAMETERS_CFG,//¼Ïñ¼Æ»®²ÎÊýÅäÖà + MINOR_ALARMHOST_RECORD_ADVANCE_PARAMETERS_CFG,//¼Ïñ¸ß¼¶²ÎÊýÅäÖà + MINOR_ALARMHOST_PICTURE_PLAN_PARAMETERS_CFG,//ץͼ¼Æ»®²ÎÊýÅäÖà + MINOR_ALARMHOST_PICTURE_ADVANCE_PARAMETERS_CFG,//ץͼ¸ß¼¶²ÎÊýÅäÖà + MINOR_ALARMHOST_AUDIO_EXCEPTION_PARAMETERS_CFG,//ÒôƵÒì³£²ÎÊýÅäÖà + MINOR_ALARMHOST_PATROL_CARD_CFG,//Ѳ¸ü¿¨ÅäÖà + MINOR_ALARMHOST_VOICE_VOLUME_CFG,//ÉùÒôÅäÖà + MINOR_ALARMHOST_VOICE_MODE_CFG,//ÉùÒôģʽÅäÖã¨ÊäÈ룬Êä³ö£¬¹ã²¥Ä£Ê½£© + MINOR_ALARMHOST_AUDIO_OR_MATERIALS_UPLOAD,//ÒôƵ¡¢ËزÄÎļþÉÏ´« + MINOR_ALARMHOST_AUDIO_OR_MATERIALS_DELETE,//ÒôƵ¡¢ËزÄÎļþɾ³ý + MINOR_ALARMHOST_ALARM_LAMP_FLASH_TIME_CFG,//ÉÁ˸ʱ¼ä + MINOR_ALARMHOST_ALARM_LAMP_FLASH_PLAN_CFG,//¼Æ»®ÉÁ˸ÅäÖà + MINOR_ALARMHOST_FRONT_END_VIDEO_PARAMETERS_CFG,//Ç°¶ËÊÓƵ²ÎÊýÅäÖà + MINOR_ALARMHOST_WDR_CFG,//¿í¶¯Ì¬ÅäÖà + MINOR_ALARMHOST_BPFRAME_CFG,//PNÖ¡ÅäÖà + MINOR_ALARMHOST_PASSWORD_RESET_CFG,//ÃÜÂëÖØÖÃÅäÖà + MINOR_ALARMHOST_ACCOUNT_LOCK,//ÕË»§Ëø¶¨ + MINOR_ALARMHOST_ACCOUNT_UNLOCK,//ÕË»§½âËø + MINOR_ALARMHOST_START_LIVEVIEW_REMOTELY,//Ô¶³Ì¿ªÆôÔ¤ÀÀ + MINOR_ALARMHOST_STOP_LIVEVIEW_REMOTELT,//Ô¶³Ì¹Ø±ÕÔ¤ÀÀ + MINOR_ALARMHOST_TELEPHONE_CENTER_SETTINGS,//µç»°ÖÐÐIJÎÊýÅäÖà + MINOR_ALARMHOST_NATIONAL_STANDARD_CFG,//¹ú±êÅäÖà + MINOR_ALARMHOST_SUPPLEMENTLIGHT_CFG,//²¹¹âµÆÅäÖà + MINOR_ALARMHOST_FACESNAP_CFG,//ÈËÁ³×¥ÅÄÅäÖà + MINOR_ALARMHOST_PUBLISHMANAGE_CFG,//·¢²¼¹ÜÀíÅäÖà + MINOR_ALARMHOST_KEYDIAL_CFG,//°´¼üÅäÖà + MINOR_ALARMHOST_VOICETALK_SILENT_CFG,//¶Ô½²¾²ÒôÅäÖà + MINOR_ALARMHOST_START_VIDEO_PROTECT,//ÆôÓÃÊÓƵ±£»¤ + MINOR_ALARMHOST_START_AUDIO_PROTECT,//ÆôÓüàÌý±£»¤ + MINOR_ALARMHOST_START_MANUAL_ANSWER,//ÆôÓÃÊÖ¶¯½ÓÌý + MINOR_ALARMHOST_START_LOG_SERVER,//ÆôÓð²È«ÈÕÖ¾ + MINOR_ALARMHOST_ADD_CARD,//Ìí¼Ó¿¨Æ¬ + MINOR_ALARMHOST_DELETE_CARD,//ɾ³ý¿¨Æ¬ + MINOR_ALARMHOST_MOTION_DETECTION_CFG,//Òƶ¯Õì²âÅäÖà + MINOR_ALARMHOST_VIDEO_BLOCK_CFG,//ÊÓƵÕÚµ²ÅäÖà + MINOR_ALARMHOST_FACE_DETECTION_CFG,//ÈËÁ³Õì²âÅäÖà + MINOR_ALARMHOST_LOG_BACKUP,//ÈÕÖ¾±¸·Ý + + + MINOR_ALARMHOST_LOCAL_SET_DEVICE_ACTIVE = 0xf0, //±¾µØ¼¤»îÉ豸 + MINOR_ALARMHOST_REMOTE_SET_DEVICE_ACTIVE = 0xf1, //Ô¶³Ì¼¤»îÉ豸 + MINOR_ALARMHOST_LOCAL_PARA_FACTORY_DEFAULT = 0xf2, //±¾µØ»Ø¸´³ö³§ÉèÖà + MINOR_ALARMHOST_REMOTE_PARA_FACTORY_DEFAULT = 0xf3, //Ô¶³Ì»Ö¸´³ö³§ÉèÖà + + MINOR_ADD_IPC = 0xf4, //IPCÌí¼Ó(±¨¾¯½ÓÈëIPC) + MINOR_MODIFY_IPC = 0xf5, //IPCÐÞ¸Ä + MINOR_DELETE_IPC = 0xf6, //IPCɾ³ý + MINOR_SYS_CHECK_START = 0xf7, //ϵͳ¼ì²â¿ªÊ¼ + MINOR_SYS_CHECK_STOP = 0xf8, //ϵͳ¼ì²âÖÐÖ¹ + MINOR_SYS_CHECK_FINISH = 0xf9, //ϵͳ¼ì²â½áÊø + MINOR_DEVICE_TAMPER_CFG = 0xfa, //É豸·À²ð²ÎÊýÅäÖà + MINOR_ALARMHOST_INDICATORLIGHT_CFG = 0xfb, //ָʾµÆÅäÖà + MINOR_ALARMHOST_WIRELESSBUTTON_CFG = 0xfc, //ÎÞÏß°´Å¥ÅäÖà + MINOR_ALARMHOST_IRCUTFILTER_CFG = 0xfd, //ÈÕÒ¹Çл»ÅäÖà + MINOR_ALARMHOST_KEYWORD_AUDIO_RECOGNITION_CFG = 0xfe, //¹Ø¼ü×ÖÓïÒôʶ±ðÅäÖà + MINOR_ALARMHOST_DEVICE_POWER_MODE_SWITCH_CFG = 0xff, //É豸¹¦ºÄģʽÇл» + + + // ʼþ + MINOR_SCHOOLTIME_IRGI_B = 0x01, // BÂëУʱ + MINOR_SCHOOLTIME_SDK, // SDKУʱ + MINOR_SCHOOLTIME_SELFTEST, // ¶¨Ê±×Ô¼ìУʱ + MINOR_SUBSYSTEM_ABNORMALINSERT, //×Ó°å²åÈë + MINOR_SUBSYSTEM_ABNORMALPULLOUT, //×Ó°å°Î³ö + + MINOR_AUTO_ARM, //×Ô¶¯²¼·À + MINOR_AUTO_DISARM, //×Ô¶¯³··À + MINOR_TIME_TIGGER_ON, //¶¨Ê±¿ªÆô´¥·¢Æ÷ + MINOR_TIME_TIGGER_OFF, //¶¨Ê±¹Ø±Õ´¥·¢Æ÷ + MINOR_AUTO_ARM_FAILD, //×Ô¶¯²¼·Àʧ°Ü + MINOR_AUTO_DISARM_FAILD, //×Ô¶¯³··Àʧ°Ü + MINOR_TIME_TIGGER_ON_FAILD, //¶¨Ê±¿ªÆô´¥·¢Æ÷ʧ°Ü + MINOR_TIME_TIGGER_OFF_FAILD, //¶¨Ê±¹Ø±Õ´¥·¢Æ÷ʧ°Ü + MINOR_MANDATORY_ALARM, //Ç¿ÖƲ¼·À + MINOR_KEYPAD_LOCKED, //¼üÅÌËø¶¨ + MINOR_USB_INSERT, //USB²åÈë + MINOR_USB_PULLOUT, //USB°Î³ö + MINOR_KEYPAD_UNLOCK, //¼üÅ̽âËø +}ALARMHOST_MINOR_TYPE; + + +//µ±ÈÕÖ¾µÄÖ÷ÀàÐÍΪMAJOR_OPERATION=03£¬´ÎÀàÐÍΪMINOR_LOCAL_CFG_PARM=0x52»òÕßMINOR_REMOTE_GET_PARM=0x76 +//»òÕßMINOR_REMOTE_CFG_PARM=0x77ʱ£¬dwParaType:²ÎÊýÀàÐÍÓÐЧ£¬Æ京ÒåÈçÏ£º +#define PARA_VIDEOOUT 0x1 +#define PARA_IMAGE 0x2 +#define PARA_ENCODE 0x4 +#define PARA_NETWORK 0x8 +#define PARA_ALARM 0x10 +#define PARA_EXCEPTION 0x20 +#define PARA_DECODER 0x40 /*½âÂëÆ÷*/ +#define PARA_RS232 0x80 +#define PARA_PREVIEW 0x100 +#define PARA_SECURITY 0x200 +#define PARA_DATETIME 0x400 +#define PARA_FRAMETYPE 0x800 /*Ö¡¸ñʽ*/ +#define PARA_DETECTION 0x1000 //Õì²âÅäÖà +#define PARA_VCA_RULE 0x1001 //ÐÐΪ¹æÔò +#define PARA_VCA_CTRL 0x1002 //ÅäÖÃÖÇÄÜ¿ØÖÆÐÅÏ¢ +#define PARA_VCA_PLATE 0x1003 // ³µÅÆʶ±ð + +#define PARA_CODESPLITTER 0x2000 /*Âë·ÖÆ÷²ÎÊý*/ +//2010-01-22 Ôö¼ÓÊÓƵ×ÛºÏƽ̨ÈÕÖ¾ÐÅÏ¢´ÎÀàÐÍ +#define PARA_RS485 0x2001 /* RS485ÅäÖÃÐÅÏ¢*/ +#define PARA_DEVICE 0x2002 /* É豸ÅäÖÃÐÅÏ¢*/ +#define PARA_HARDDISK 0x2003 /* Ó²ÅÌÅäÖÃÐÅÏ¢ */ +#define PARA_AUTOBOOT 0x2004 /* ×Ô¶¯ÖØÆôÅäÖÃÐÅÏ¢*/ +#define PARA_HOLIDAY 0x2005 /* ½Ú¼ÙÈÕÅäÖÃÐÅÏ¢*/ +#define PARA_IPC 0x2006 /* IPͨµÀÅäÖà */ +/*************************²ÎÊýÅäÖÃÃüÁî end*******************************/ + + +/*******************²éÕÒÎļþºÍÈÕÖ¾º¯Êý·µ»ØÖµ*************************/ +#define NET_DVR_FILE_SUCCESS 1000 //»ñµÃÎļþÐÅÏ¢ +#define NET_DVR_FILE_NOFIND 1001 //ûÓÐÎļþ +#define NET_DVR_ISFINDING 1002 //ÕýÔÚ²éÕÒÎļþ +#define NET_DVR_NOMOREFILE 1003 //²éÕÒÎļþʱûÓиü¶àµÄÎļþ +#define NET_DVR_FILE_EXCEPTION 1004 //²éÕÒÎļþʱÒì³£ +#define NET_DVR_FIND_TIMEOUT 1005 //²éÕÒÎļþ³¬Ê± + +/*********************»Øµ÷º¯ÊýÀàÐÍ begin************************/ + +//±¨¾¯»Øµ÷ÃüÁî +#define COMM_ALARM 0x1100 //8000±¨¾¯ÐÅÏ¢Ö÷¶¯ÉÏ´« + +//¶ÔÓ¦NET_VCA_RULE_ALARM +#define COMM_ALARM_RULE 0x1102 //ÐÐΪ·ÖÎö±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_PDC 0x1103 //ÈËÊýͳ¼Æ±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_VIDEOPLATFORM 0x1104 //ÊÓƵ×ÛºÏƽ̨±¨¾¯ +#define COMM_ALARM_ALARMHOST 0x1105 //ÍøÂ籨¾¯Ö÷»ú±¨¾¯ +#define COMM_ALARM_FACE 0x1106 //ÈËÁ³¼ì²âʶ±ð±¨¾¯ÐÅÏ¢ +#define COMM_RULE_INFO_UPLOAD 0x1107 // ʼþÊý¾ÝÐÅÏ¢ÉÏ´« +#define COMM_ALARM_AID 0x1110 //½»Í¨Ê¼þ±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_TPS 0x1111 //½»Í¨²ÎÊýͳ¼Æ±¨¾¯ÐÅÏ¢ +//ÖÇÄÜÈËÁ³×¥ÅĽá¹ûÉÏ´« +#define COMM_UPLOAD_FACESNAP_RESULT 0x1112 //ÈËÁ³Ê¶±ð½á¹ûÉÏ´« +#define COMM_ALARM_TFS 0x1113 //½»Í¨È¡Ö¤±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_TPS_V41 0x1114 //½»Í¨²ÎÊýͳ¼Æ±¨¾¯ÐÅÏ¢À©Õ¹ +#define COMM_ALARM_AID_V41 0x1115 //½»Í¨Ê¼þ±¨¾¯ÐÅÏ¢À©Õ¹ +#define COMM_ALARM_VQD_EX 0x1116 //ÊÓƵÖÊÁ¿Õï¶Ï±¨¾¯ +#define COMM_ALARM_NOTIFICATION_REPORT 0x1117 //֪ͨʼþÉϱ¨ +#define COMM_SENSOR_VALUE_UPLOAD 0x1120 //Ä£ÄâÁ¿Êý¾ÝʵʱÉÏ´« +#define COMM_SENSOR_ALARM 0x1121 //Ä£ÄâÁ¿±¨¾¯ÉÏ´« +#define COMM_SWITCH_ALARM 0x1122 //¿ª¹ØÁ¿±¨¾¯ +#define COMM_ALARMHOST_EXCEPTION 0x1123 //±¨¾¯Ö÷»ú¹ÊÕϱ¨¾¯ +#define COMM_ALARMHOST_OPERATEEVENT_ALARM 0x1124 //²Ù×÷ʼþ±¨¾¯ÉÏ´« +#define COMM_ALARMHOST_SAFETYCABINSTATE 0x1125 //·À»¤²Õ״̬ +#define COMM_ALARMHOST_ALARMOUTSTATUS 0x1126 //±¨¾¯Êä³ö¿Ú/¾¯ºÅ״̬ +#define COMM_ALARMHOST_CID_ALARM 0x1127 //±¨¸æ±¨¾¯ÉÏ´« +#define COMM_ALARMHOST_EXTERNAL_DEVICE_ALARM 0x1128 //±¨¾¯Ö÷»úÍâ½ÓÉ豸±¨¾¯ÉÏ´« +#define COMM_ALARMHOST_DATA_UPLOAD 0x1129 //±¨¾¯Êý¾ÝÉÏ´« +#define COMM_FACECAPTURE_STATISTICS_RESULT 0x112a //ÈËÁ³×¥ÅÄͳ¼ÆÉÏ´« +#define COMM_ALARM_WIRELESS_INFO 0x122b // ÎÞÏßÍøÂçÐÅÏ¢ÉÏ´« +#define COMM_SCENECHANGE_DETECTION_UPLOAD 0x1130 //³¡¾°±ä¸ü±¨¾¯ÉÏ´«(²¼·À)2013-7-16 +#define COMM_CROSSLINE_ALARM 0x1131 //ѹÏß±¨¾¯(¼àÌý) 2013-09-27 +#define COMM_UPLOAD_VIDEO_INTERCOM_EVENT 0x1132 //¿ÉÊÓ¶Ô½²Ê¼þ¼Ç¼ÉÏ´« +#define COMM_ALARM_VIDEO_INTERCOM 0x1133 //¿ÉÊÓ¶Ô½²±¨¾¯ÉÏ´« +#define COMM_UPLOAD_NOTICE_DATA 0x1134 //¿ÉÊÓ¶Ô½²¹«¸æÐÅÏ¢ÉÏ´« +#define COMM_ALARM_AUDIOEXCEPTION 0x1150 //ÉùÒô±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_DEFOCUS 0x1151 //Ðé½¹±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_BUTTON_DOWN_EXCEPTION 0x1152 //°´Å¥°´Ï±¨¾¯ÐÅÏ¢ +#define COMM_ALARM_ALARMGPS 0x1202 //GPS±¨¾¯ÐÅÏ¢ÉÏ´« +#define COMM_TRADEINFO 0x1500 //ATMDVRÖ÷¶¯ÉÏ´«½»Ò×ÐÅÏ¢ +#define COMM_UPLOAD_PLATE_RESULT 0x2800 //ÉÏ´«³µÅÆÐÅÏ¢ +#define COMM_ITC_STATUS_DETECT_RESULT 0x2810 //ʵʱ״̬¼ì²â½á¹ûÉÏ´«(ÖÇÄܸßÇåIPC) +#define COMM_IPC_AUXALARM_RESULT 0x2820 //PIR±¨¾¯¡¢ÎÞÏß±¨¾¯¡¢ºô¾È±¨¾¯ÉÏ´« +#define COMM_UPLOAD_PICTUREINFO 0x2900 //ÉÏ´«Í¼Æ¬ÐÅÏ¢ +#define COMM_SNAP_MATCH_ALARM 0x2902 //½ûÖ¹Ãûµ¥±È¶Ô½á¹ûÉÏ´« +#define COMM_ITS_PLATE_RESULT 0x3050 //ÖÕ¶ËͼƬÉÏ´« +#define COMM_ITS_TRAFFIC_COLLECT 0x3051 //ÖÕ¶Ëͳ¼ÆÊý¾ÝÉÏ´« +#define COMM_ITS_GATE_VEHICLE 0x3052 //³öÈë¿Ú³µÁ¾×¥ÅÄÊý¾ÝÉÏ´« +#define COMM_ITS_GATE_FACE 0x3053 //³öÈë¿ÚÈËÁ³×¥ÅÄÊý¾ÝÉÏ´« +#define COMM_ITS_GATE_COSTITEM 0x3054 //³öÈë¿Ú¹ý³µÊÕ·ÑÃ÷ϸ 2013-11-19 +#define COMM_ITS_GATE_HANDOVER 0x3055 //³öÈë¿Ú½»½Ó°àÊý¾Ý 2013-11-19 +#define COMM_ITS_PARK_VEHICLE 0x3056 //Í£³µ³¡Êý¾ÝÉÏ´« +#define COMM_ITS_BLOCKLIST_ALARM 0x3057 //½ûÖ¹Ãûµ¥±¨¾¯ÉÏ´« + +#define COMM_VEHICLE_CONTROL_LIST_DSALARM 0x3058 //Ãûµ¥Êý¾ÝÐèҪͬ²½±¨¾¯2013-11-04 +#define COMM_VEHICLE_CONTROL_ALARM 0x3059 //³µÁ¾±¨¾¯2013-11-04 +#define COMM_FIRE_ALARM 0x3060 //Ïû·À±¨¾¯2013-11-04 + +#define COMM_ITS_GATE_ALARMINFO 0x3061 //³öÈë¿Ú¿ØÖÆ»úÊý¾ÝÉÏ´« + +#define COMM_VEHICLE_RECOG_RESULT 0x3062 //³µÁ¾¶þ´Îʶ±ð½á¹ûÉÏ´« 2014-11-12 +#define COMM_PLATE_RESULT_V50 0x3063 //³µÅÆÉÏ´« V50 + +#define COMM_GATE_CHARGEINFO_UPLOAD 0x3064 //³öÈë¿Ú¸¶·ÑÐÅÏ¢ÉÏ´« +#define COMM_TME_VEHICLE_INDENTIFICATION 0x3065 //TME³µÁ¾×¥Í¼ÉÏ´« +#define COMM_GATE_CARDINFO_UPLOAD 0x3066 //³öÈë¿Ú¿¨Æ¬ÐÅÏ¢ÉÏ´« +#define COMM_LOADING_DOCK_OPERATEINFO 0x3067 //ÔĄ̂×÷ÒµÉÏ´« + +#define COMM_ALARM_SENSORINFO_UPLOAD 0x3077 //´«¸ÐÆ÷ÉÏ´«ÐÅÏ¢ +#define COMM_ALARM_CAPTURE_UPLOAD 0x3078 //×¥ÅÄͼƬÉÏ´« + +#define COMM_ITS_RADARINFO 0x3079 //À״ﱨ¾¯ÉÏ´« + +#define COMM_SIGNAL_LAMP_ABNORMAL 0x3080 //ÐźŵÆÒì³£¼ì²âÉÏ´« + +#define COMM_ALARM_TPS_REAL_TIME 0x3081 //TPSʵʱ¹ý³µÊý¾ÝÉÏ´« +#define COMM_ALARM_TPS_STATISTICS 0x3082 //TPSͳ¼Æ¹ý³µÊý¾ÝÉÏ´« + +#define COMM_ALARM_V30 0x4000 //9000±¨¾¯ÐÅÏ¢Ö÷¶¯ÉÏ´« +#define COMM_IPCCFG 0x4001 //9000É豸IPC½ÓÈëÅäÖøı䱨¾¯ÐÅÏ¢Ö÷¶¯ÉÏ´« +#define COMM_IPCCFG_V31 0x4002 //9000É豸IPC½ÓÈëÅäÖøı䱨¾¯ÐÅÏ¢Ö÷¶¯ÉÏ´«À©Õ¹ 9000_1.1 +#define COMM_IPCCFG_V40 0x4003 // IVMS 2000 ±àÂë·þÎñÆ÷ NVR IPC½ÓÈëÅäÖøıäʱ±¨¾¯ÐÅÏ¢ÉÏ´« +#define COMM_ALARM_DEVICE 0x4004 //É豸±¨¾¯ÄÚÈÝ£¬ÓÉÓÚͨµÀÖµ´óÓÚ256¶øÀ©Õ¹ +#define COMM_ALARM_CVR 0x4005 //CVR 2.0.XÍⲿ±¨¾¯ÀàÐÍ +#define COMM_ALARM_HOT_SPARE 0x4006 //Èȱ¸Òì³£±¨¾¯£¨N+1ģʽÒì³£±¨¾¯£© +#define COMM_ALARM_V40 0x4007 //Òƶ¯Õì²â£¬ÊÓƵ¶ªÊ§£¬ÕÚµ²£¬IOÐźÅÁ¿µÈ±¨¾¯ÐÅÏ¢Ö÷¶¯ÉÏ´«£¬±¨¾¯Êý¾ÝΪ¿É±ä³¤ + +#define COMM_UPLOAD_HEATMAP_RESULT 0x4008 //ÈȶÈͼ±¨¾¯ÉÏ´« 2014-03-21 +#define COMM_ALARM_DEVICE_V40 0x4009 //É豸±¨¾¯ÄÚÈÝÀ©Õ¹ +#define COMM_ALARM_FACE_DETECTION 0x4010 //ÈËÁ³Õì²â±¨¾¯ +#define COMM_ALARM_TARGET_LEFT_REGION 0x4011 //¼ì²âÄ¿±êÀ뿪¼ì²âÇøÓò±¨¾¯(½Ìʦ×ßÏòѧÉú±¨¾¯(ÓÃÓÚÁª¶¯Çл»Â¼²¥Ö÷»ú¿ØÖƼì²âѧÉúµÄÇò»ú)) +#define COMM_GISINFO_UPLOAD 0x4012 //GISÐÅÏ¢ÉÏ´« +#define COMM_VANDALPROOF_ALARM 0x4013 //ÉÏ´«·ÀÆÆ»µ±¨¾¯ÐÅÏ¢ +#define COMM_PEOPLE_DETECTION_UPLOAD 0x4014 //ÈËÔ±Õì²âÐÅÏ¢ÉÏ´« +#define COMM_ALARM_STORAGE_DETECTION 0x4015 //´æ´¢ÖÇÄܼì²â±¨¾¯ÉÏ´« +#define COMM_MVM_REGISTER 0x4016 //µØ´Å¹ÜÀíÆ÷£¨Magnetic Vehicle Manager£©×¢²á +#define COMM_MVM_STATUS_INFO 0x4017 //µØ´Å¹ÜÀíÆ÷£¨Magnetic Vehicle Manager£©×´Ì¬Éϱ¨ +#define COMM_UPLOAD_HEATMAP_RESULT_PDC 0x4018 //ÈȶÈͼ°´ÈËÊýͳ¼ÆÊý¾ÝÉÏ´«Ê¼þ +#define COMM_UPLOAD_HEATMAP_RESULT_DURATION 0x4019 //ÈȶÈͼ°´ÈËԱͣÁôʱ¼äͳ¼ÆÊý¾ÝÉÏ´«Ê¼þ +#define COMM_UPLOAD_HEATMAP_RESULT_INTERSECTION 0x4020 //·¿Ú·ÖÎöÈȶÈÖµ½á¹ûÉÏ´« +#define COMM_UPLOAD_AIOP_VIDEO 0x4021 //É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«ÊÓƵ¼ì²âÊý¾Ý +#define COMM_UPLOAD_AIOP_PICTURE 0x4022 //É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«Í¼Æ¬¼ì²âÊý¾Ý +#define COMM_UPLOAD_AIOP_POLLING_SNAP 0x4023 //É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«ÂÖѲץͼͼƬ¼ì²âÊý¾Ý ¶ÔÓ¦µÄ½á¹¹Ìå(NET_AIOP_POLLING_PICTURE_HEAD) +#define COMM_UPLOAD_AIOP_POLLING_VIDEO 0x4024 //É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«ÂÖѲÊÓƵ¼ì²âÊý¾Ý ¶ÔÓ¦µÄ½á¹¹Ìå(NET_AIOP_POLLING_VIDEO_HEAD) +#define COMM_UPLOAD_AIOP_HISTORY_VIDEO 0x4025 //É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«ÀúÊ·ÊÓƵÈÎÎñ¼ì²âÊý¾Ý ¶ÔÓ¦µÄ½á¹¹Ìå(NET_AIOP_HISTORY_VIDEO_HEAD) + + +#define COMM_ITS_ROAD_EXCEPTION 0x4500 //·¿ÚÉ豸Òì³£±¨¾¯ +#define COMM_ITS_EXTERNAL_CONTROL_ALARM 0x4520 //Íâ¿Ø±¨¾¯ +#define COMM_ALARM_SHIPSDETECTION 0x4521 // ´¬Ö»¼ì²â±¨¾¯ÐÅÏ¢ + +#define COMM_VCA_DBD_ALARM 0x4550 //¼ÝÊ»ÐÐΪ±¨¾¯ÐÅÏ¢ +#define COMM_VCA_ADAS_ALARM 0x4551 //¸ß¼¶¸¨Öú¼ÝÊ»±¨¾¯ÐÅÏ¢ +#define COMM_VEH_REALTIME_INFO 0x4552 //ÐгµÊµÊ±Êý¾ÝÐÅÏ¢ +#define COMM_VCA_ATTEND_ALARM 0x4553 //¿¼ÇÚʼþ±¨¾¯ÐÅÏ¢ + +#define COMM_FIREDETECTION_ALARM 0x4991 //»ðµã¼ì²â±¨¾¯ +#define COMM_ALARM_DENSEFOGDETECTION 0x4992 //´óÎí¼ì²â±¨¾¯ÐÅÏ¢ +#define COMM_VCA_ALARM 0x4993 //ÖÇÄܼì²â±¨¾¯ +#define COMM_FACE_THERMOMETRY_ALARM 0x4994 //ÈËÁ³²âα¨¾¯ + +#define COMM_TAPE_ARCHIVE_ALARM 0x4996 //´Å´ø¿â¹éµµ±¨¾¯ + +#define COMM_SCREEN_ALARM 0x5000 //¶àÆÁ¿ØÖÆÆ÷±¨¾¯ÀàÐÍ +#define COMM_DVCS_STATE_ALARM 0x5001 //·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷±¨¾¯ÉÏ´« +#define COMM_ALARM_ACS 0x5002 //ÃŽûÖ÷»ú±¨¾¯ +#define COMM_ALARM_FIBER_CONVERT 0x5003 //¹âÏËÊÕ·¢Æ÷±¨¾¯ +#define COMM_ALARM_SWITCH_CONVERT 0x5004 //½»»»»ú±¨¾¯ +#define COMM_ALARM_DEC_VCA 0x5010 //ÖÇÄܽâÂ뱨¾¯ +#define COMM_ALARM_LCD 0x5011 //ÆÁÄ»±¨¾¯ +#define COMM_CONFERENCE_CALL_ALARM 0x5012 //»áÒéºô½Ð¸æ¾¯ + +#define COMM_ALARM_WALL_CONFERNECE 0x5015 //MCUµ¥¸öÒÑ¿ª»áµÄ»áÒéÐÅÏ¢±¨¾¯ + +#define COMM_DIAGNOSIS_UPLOAD 0x5100 //Õï¶Ï·þÎñÆ÷VQD±¨¾¯ÉÏ´« +#define COMM_HIGH_DENSITY_UPLOAD 0x5101 //ÈËÔ±¾Û¼¯ÃܶÈÊä³ö±¨¾¯ÉÏ´« + +#define COMM_ID_INFO_ALARM 0x5200 //Éí·ÝÖ¤ÐÅÏ¢ÉÏ´« +#define COMM_PASSNUM_INFO_ALARM 0x5201 //ͨÐÐÈËÊýÉϱ¨ +#define COMM_PASSPORT_ALARM 0x5202 //»¤ÕÕÐÅÏ¢ÉÏ´« + +#define COMM_THERMOMETRY_DIFF_ALARM 0x5211 //β¾¯ÉÏ´« +#define COMM_THERMOMETRY_ALARM 0x5212 //ζȱ¨¾¯ÉÏ´« +#define COMM_PANORAMIC_LINKAGE_ALARM 0x5213 //È«¾°Áª¶¯µ½Î»ÉÏ´« +#define COMM_TAG_INFO_ALARM 0x5215 // ±êÇ©ÐÅÏ¢ÉÏ´« +#define COMM_ALARM_VQD 0x6000 //VQDÖ÷¶¯±¨¾¯ÉÏ´« +#define COMM_PUSH_UPDATE_RECORD_INFO 0x6001 //ÍÆģʽ¼ÏñÐÅÏ¢ÉÏ´« +#define COMM_SWITCH_LAMP_ALARM 0x6002 //¿ª¹ØµÆ¼ì²â +#define COMM_INQUEST_ALARM 0x6005 // ÉóѶÖ÷»ú±¨¾¯ÉÏ´« +#define COMM_VIDEO_PARKING_POLE_ALARM 0x6006 //ÊÓƵ׮±¨¾¯ +#define COMM_GPS_STATUS_ALARM 0x6010 // GPS״̬ÉÏ´« +#define COMM_BASE_STATION_INFO_ALARM 0x6011 //»ùÕ¾ÐÅÏ¢ÉÏ´« +#define COMM_ALARM_SUBSCRIBE_EVENT 0x6012 //¶©ÔĽá¹ûÉϱ¨ + +#define COMM_FACESNAP_RAWDATA_ALARM 0x6015 //ÈËÁ³±È¶Ô±¨¾¯£¨Êý¾Ý͸´«·½Ê½£© +#define COMM_CLUSTER_ALARM 0x6020 //¼¯Èº±¨¾¯ÉÏ´« + +#define COMM_ISAPI_ALARM 0x6009 + +//PJ01C20170209084³¬ÄÔ¼²¥NVSÈí¼þ¹¦ÄÜ¿ª·¢¶¨ÖÆÏîĿרÓà +#define COMM_FRAMES_PEOPLE_COUNTING_ALARM 0x6069 //µ¥Ö¡»­ÃæÈËÊýͳ¼Æ½á¹ûÉÏ´« + +#define COMM_SIGN_ABNORMAL_ALARM 0x6120 //ÌåÕ÷Òì³£±¨¾¯ +#define COMM_HFPD_ALARM 0x6121 //¸ßƵÈËÔ±¼ì²â±¨¾¯ + +#define COMM_HCU_ALARM 0x6150 //³µÔØÖÇÄܺÐ×Ó±¨¾¯£¨±¾±¨¾¯SDK¿â²»ÊµÏÖ£¬ÓÃ×÷É豸ºÍDVRͨÐÅЭÒ飬ռλ·ÀÖ¹³åÍ»£© + +#define COMM_DEV_STATUS_CHANGED 0x7000 //É豸״̬¸Ä±ä±¨¾¯ÉÏ´« + +#define COMM_ALARM_EXCEPTION 0x7fff //±¨¾¯Òì³£ÀàÐÍ + +/*************²Ù×÷Òì³£ÀàÐÍ(ÏûÏ¢·½Ê½, »Øµ÷·½Ê½(±£Áô))****************/ +#define EXCEPTION_EXCHANGE 0x8000 //Óû§½»»¥Ê±Òì³£ +#define EXCEPTION_AUDIOEXCHANGE 0x8001 //ÓïÒô¶Ô½²Òì³£ +#define EXCEPTION_ALARM 0x8002 //±¨¾¯Òì³£ +#define EXCEPTION_PREVIEW 0x8003 //ÍøÂçÔ¤ÀÀÒì³£ +#define EXCEPTION_SERIAL 0x8004 //͸Ã÷ͨµÀÒì³£ +#define EXCEPTION_RECONNECT 0x8005 //Ô¤ÀÀʱÖØÁ¬ +#define EXCEPTION_ALARMRECONNECT 0x8006 //±¨¾¯Ê±ÖØÁ¬ +#define EXCEPTION_SERIALRECONNECT 0x8007 //͸Ã÷ͨµÀÖØÁ¬ +#define SERIAL_RECONNECTSUCCESS 0x8008 //͸Ã÷ͨµÀÖØÁ¬³É¹¦ +#define EXCEPTION_PLAYBACK 0x8010 //»Ø·ÅÒì³£ +#define EXCEPTION_DISKFMT 0x8011 //Ó²Å̸ñʽ»¯ +#define EXCEPTION_PASSIVEDECODE 0x8012 //±»¶¯½âÂëÒì³£ +#define EXCEPTION_EMAILTEST 0x8013 //Óʼþ²âÊÔÒì³£ +#define EXCEPTION_BACKUP 0x8014 //±¸·ÝÒì³£ +#define PREVIEW_RECONNECTSUCCESS 0x8015 //Ô¤ÀÀʱÖØÁ¬³É¹¦ +#define ALARM_RECONNECTSUCCESS 0x8016 //±¨¾¯Ê±ÖØÁ¬³É¹¦ +#define RESUME_EXCHANGE 0x8017 //Óû§½»»¥»Ö¸´ +#define NETWORK_FLOWTEST_EXCEPTION 0x8018 //ÍøÂçÁ÷Á¿¼ì²âÒì³£ +#define EXCEPTION_PICPREVIEWRECONNECT 0x8019 //ͼƬԤÀÀÖØÁ¬ +#define PICPREVIEW_RECONNECTSUCCESS 0x8020 //ͼƬԤÀÀÖØÁ¬³É¹¦ +#define EXCEPTION_PICPREVIEW 0x8021 //ͼƬԤÀÀÒì³£ +#define EXCEPTION_MAX_ALARM_INFO 0x8022 //±¨¾¯ÐÅÏ¢»º´æÒÑ´ïÉÏÏÞ +#define EXCEPTION_LOST_ALARM 0x8023 //±¨¾¯¶ªÊ§ +#define EXCEPTION_PASSIVETRANSRECONNECT 0x8024 //±»¶¯×ªÂëÖØÁ¬ +#define PASSIVETRANS_RECONNECTSUCCESS 0x8025 //±»¶¯×ªÂëÖØÁ¬³É¹¦ +#define EXCEPTION_PASSIVETRANS 0x8026 //±»¶¯×ªÂëÒì³£ +#define SUCCESS_PUSHDEVLOGON 0x8030 //ÍÆģʽÉ豸ע²á³É¹¦ +#define EXCEPTION_RELOGIN 0x8040 //Óû§Öصǽ +#define RELOGIN_SUCCESS 0x8041 //Óû§Öصǽ³É¹¦ +#define EXCEPTION_PASSIVEDECODE_RECONNNECT 0x8042 //±»¶¯½âÂëÖØÁ¬ +#define EXCEPTION_CLUSTER_CS_ARMFAILED 0x8043 //¼¯Èº±¨¾¯Òì³£ + +#define EXCEPTION_RELOGIN_FAILED 0x8044 //Öصǽʧ°Ü£¬Í£Ö¹Öصǽ +#define EXCEPTION_PREVIEW_RECONNECT_CLOSED 0x8045 //¹Ø±ÕÔ¤ÀÀÖØÁ¬¹¦ÄÜ +#define EXCEPTION_ALARM_RECONNECT_CLOSED 0x8046 //¹Ø±Õ±¨¾¯ÖØÁ¬¹¦ÄÜ +#define EXCEPTION_SERIAL_RECONNECT_CLOSED 0x8047 //¹Ø±Õ͸Ã÷ͨµÀÖØÁ¬¹¦ÄÜ +#define EXCEPTION_PIC_RECONNECT_CLOSED 0x8048 //¹Ø±Õ»ØÏÔÖØÁ¬¹¦ÄÜ +#define EXCEPTION_PASSIVE_DECODE_RECONNECT_CLOSED 0x8049 //¹Ø±Õ±»¶¯½âÂëÖØÁ¬¹¦ÄÜ +#define EXCEPTION_PASSIVE_TRANS_RECONNECT_CLOSED 0x804a //¹Ø±Õ±»¶¯×ªÂëÖØÁ¬¹¦ÄÜ +#define EXCEPTION_VIDEO_DOWNLOAD 0x804b // [add] by yangzheng 2019/11/09 ¼ÏñÏÂÔØÒì³£ + +/********************Ô¤ÀÀ»Øµ÷º¯Êý*********************/ +#define NET_DVR_SYSHEAD 1 //ϵͳͷÊý¾Ý +#define NET_DVR_STREAMDATA 2 //ÊÓƵÁ÷Êý¾Ý£¨°üÀ¨¸´ºÏÁ÷ºÍÒôÊÓƵ·Ö¿ªµÄÊÓƵÁ÷Êý¾Ý£© +#define NET_DVR_AUDIOSTREAMDATA 3 //ÒôƵÁ÷Êý¾Ý +#define NET_DVR_STD_VIDEODATA 4 //±ê×¼ÊÓƵÁ÷Êý¾Ý +#define NET_DVR_STD_AUDIODATA 5 //±ê×¼ÒôƵÁ÷Êý¾Ý +#define NET_DVR_SDP 6 //SDPÐÅÏ¢(Rstp´«ÊäʱÓÐЧ) +#define NET_DVR_CHANGE_FORWARD 10 //ÂëÁ÷¸Ä±äΪÕý·Å +#define NET_DVR_CHANGE_REVERSE 11 //ÂëÁ÷¸Ä±äΪµ¹·Å +#define NET_DVR_PLAYBACK_ALLFILEEND 12 //»Ø·ÅÎļþ½áÊø±ê¼Ç +#define NET_DVR_VOD_DRAW_FRAME 13 //»Ø·Å³éÖ¡ÂëÁ÷ +#define NET_DVR_VOD_DRAW_DATA 14 //Í϶¯Æ½»¬ÂëÁ÷ +#define NET_DVR_HLS_INDEX_DATA 15 //HLSË÷ÒýÊý¾Ý +#define NET_DVR_PLAYBACK_NEW_POS 16 //»Ø·ÅÖØÖÃ(°´Ê±¼ä¶¨Î»ÃüÁîNET_DVR_PLAYSETTIMEºÍNET_DVR_PLAYSETTIME_V50½Ó¿Ú·µ»Ø³É¹¦ºó£¬»¹ÐèÒªµÈ´ýÊÕµ½¸Ã»Øµ÷ÀàÐͺó²Å¿ÉÈÏΪ²Ù×÷³É¹¦) +#define NET_DVR_METADATA_DATA 107 //MetadataÊý¾Ý +#define NET_DVR_PRIVATE_DATA 112 //˽ÓÐÊý¾Ý,°üÀ¨ÖÇÄÜÐÅÏ¢ + +//É豸ÐͺÅ(DVRÀàÐÍ) +/* É豸ÀàÐÍ */ +#define DVR 1 /*¶ÔÉÐ䶨ÒåµÄdvrÀàÐÍ·µ»ØDVR*/ +#define ATMDVR 2 /*atm dvr*/ +#define DVS 3 /*DVS*/ +#define DEC 4 /* 6001D */ +#define ENC_DEC 5 /* 6001F */ +#define DVR_HC 6 /*8000HC*/ +#define DVR_HT 7 /*8000HT*/ +#define DVR_HF 8 /*8000HF*/ +#define DVR_HS 9 /* 8000HS DVR(no audio) */ +#define DVR_HTS 10 /* 8016HTS DVR(no audio) */ +#define DVR_HB 11 /* HB DVR(SATA HD) */ +#define DVR_HCS 12 /* 8000HCS DVR */ +#define DVS_A 13 /* ´øATAÓ²Å̵ÄDVS */ +#define DVR_HC_S 14 /* 8000HC-S */ +#define DVR_HT_S 15 /* 8000HT-S */ +#define DVR_HF_S 16 /* 8000HF-S */ +#define DVR_HS_S 17 /* 8000HS-S */ +#define ATMDVR_S 18 /* ATM-S */ +#define DVR_7000H 19 /*7000HϵÁÐ*/ +#define DEC_MAT 20 /*¶à·½âÂëÆ÷*/ +#define DVR_MOBILE 21 /* mobile DVR */ +#define DVR_HD_S 22 /* 8000HD-S */ +#define DVR_HD_SL 23 /* 8000HD-SL */ +#define DVR_HC_SL 24 /* 8000HC-SL */ +#define DVR_HS_ST 25 /* 8000HS_ST */ +#define DVS_HW 26 /* 6000HW */ +#define DS630X_D 27 /* ¶à·½âÂëÆ÷ */ +#define DS640X_HD 28 /*640X¸ßÇå½âÂëÆ÷*/ +#define DS610X_D 29 /*610X½âÂëÆ÷*/ +#define IPCAM 30 /*IP ÉãÏñ»ú*/ +#define MEGA_IPCAM 31 /*¸ßÇåIPÉãÏñ»ú*/ +#define IPCAM_X62MF 32 /*862MF¿ÉÒÔ½ÓÈë9000É豸*/ +#define ITCCAM 35 /*ÖÇÄܸßÇåÍøÂçÉãÏñ»ú*/ +#define IVS_IPCAM 36 /*ÖÇÄÜ·ÖÎö¸ßÇåÍøÂçÉãÏñ»ú*/ +#define ZOOMCAM 38 /*Ò»Ìå»ú*/ +#define IPDOME 40 /*IP ±êÇåÇò»ú*/ +#define IPDOME_MEGA200 41 /*IP 200Íò¸ßÇåÇò»ú*/ +#define IPDOME_MEGA130 42 /*IP 130Íò¸ßÇåÇò»ú*/ +#define IPDOME_AI 43 /*IP ¸ßÇåÖÇÄÜ¿ìÇò*/ +#define TII_IPCAM 44 /*ºìÍâÈȳÉÏñÉãÏñ»ú*/ +#define IPTC_DOME 45 /*ºìÍâÈȳÉÏñË«Ä¿Çò»ú*/ +#define DS_2DP_Z 46 /*ÇòÐÍÓ¥ÑÛ£¨´ó£©*/ +#define DS_2DP 47 /*·ÇÇòÐÍÓ¥ÑÛ£¨Ð¡£©*/ +#define ITS_WMS 48 /*³ÆÖØÊý¾Ý¹ÜÀí·þÎñÆ÷*/ +#define IPMOD 50 /*IP Ä£¿é*/ +#define TRAFFIC_YTDOME 51 //½»Í¨ÖÇÄÜÔÆ̨£¨²»´øÀ×´ï²âËÙ£© +#define TRAFFIC_RDDOME 52 //½»Í¨ÖÇÄÜÔÆ̨£¨´øÀ×´ï²âËÙ£© +#define IDS6501_HF_P 60 // 6501 ³µÅÆ +#define IDS6101_HF_A 61 //ÖÇÄÜATM +#define IDS6002_HF_B 62 //Ë«»ú¸ú×Ù£ºDS6002-HF/B +#define IDS6101_HF_B 63 //ÐÐΪ·ÖÎö£ºDS6101-HF/B DS6101-HF/B_SATA +#define IDS52XX 64 //ÖÇÄÜ·ÖÎöÒÇIVMS +#define IDS90XX 65 // 9000ÖÇÄÜ +#define IDS8104_AHL_S_HX 66 // º£öÎÈËÁ³Ê¶±ð ATM +#define IDS8104_AHL_S_H 67 // ˽ÓÐÈËÁ³Ê¶±ð ATM +#define IDS91XX 68 // 9100ÖÇÄÜ +#define IIP_CAM_B 69 // ÖÇÄÜÐÐΪIPÉãÏñ»ú +#define IIP_CAM_F 70 //ÖÇÄÜÈËÁ³IPÉãÏñ»ú +#define DS71XX_H 71 /* DS71XXH_S */ +#define DS72XX_H_S 72 /* DS72XXH_S */ +#define DS73XX_H_S 73 /* DS73XXH_S */ +#define DS72XX_HF_S 74 //DS72XX_HF_S +#define DS73XX_HFI_S 75 //DS73XX_HFI_S +#define DS76XX_H_S 76 /* DVR,e.g. DS7604_HI_S */ +#define DS76XX_N_S 77 /* NVR,e.g. DS7604_NI_S */ +#define DS_TP3200_EC 78 /*»ú¹ñÖÇÄܼì²âÒÇ*/ +#define DS81XX_HS_S 81 /* DS81XX_HS_S */ +#define DS81XX_HL_S 82 /* DS81XX_HL_S */ +#define DS81XX_HC_S 83 /* DS81XX_HC_S */ +#define DS81XX_HD_S 84 /* DS81XX_HD_S */ +#define DS81XX_HE_S 85 /* DS81XX_HE_S */ +#define DS81XX_HF_S 86 /* DS81XX_HF_S */ +#define DS81XX_AH_S 87 /* DS81XX_AH_S */ +#define DS81XX_AHF_S 88 /* DS81XX_AHF_S */ +#define DS90XX_HF_S 90 /*DS90XX_HF_S*/ +#define DS91XX_HF_S 91 /*DS91XX_HF_S*/ +#define DS91XX_HD_S 92 /*91XXHD-S(MD)*/ +#define IDS90XX_A 93 // 9000ÖÇÄÜ ATM +#define IDS91XX_A 94 // 9100ÖÇÄÜ ATM +#define DS95XX_N_S 95 /*DS95XX_N_S NVR ²»´øÈκÎÊä³ö*/ +#define DS96XX_N_SH 96 /*DS96XX_N_SH NVR*/ +#define DS90XX_HF_SH 97 /*DS90XX_HF_SH */ +#define DS91XX_HF_SH 98 /*DS91XX_HF_SH */ +#define DS_B10_XY 100 /*ÊÓƵ×ÛºÏƽ̨É豸ÐͺÅ(X:±àÂë°åƬÊý£¬Y:½âÂë°åƬÊý)*/ +#define DS_6504HF_B10 101 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±àÂëÆ÷*/ +#define DS_6504D_B10 102 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿½âÂëÆ÷*/ +#define DS_1832_B10 103 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿Âë·ÖÆ÷*/ +#define DS_6401HFH_B10 104 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿¹âÏË°å*/ +#define DS_65XXHC 105 //65XXHC DVS +#define DS_65XXHC_S 106 //65XXHC-SATA DVS +#define DS_65XXHF 107 //65XXHF DVS +#define DS_65XXHF_S 108 //65XXHF-SATA DVS +#define DS_6500HF_B 109 //65 rack DVS +#define IVMS_6200_C 110 // iVMS-6200(/C) +#define IVMS_6200_B 111 // iVMS-6200(/B) +#define DS_72XXHV_ST15 112 //72XXHV_ST º£Ë¼3515ƽ̨ DVR +#define DS_72XXHV_ST20 113 //72XXHV_ST º£Ë¼3520ƽ̨ DVR +#define IVMS_6200_T 114 // IVMS-6200(/T) +#define IVMS_6200_BP 115 // IVMS-6200(/BP) +#define DS_81XXHC_ST 116 //DS_81XXHC_ST +#define DS_81XXHS_ST 117 //DS_81XXHS_ST +#define DS_81XXAH_ST 118 //DS_81XXAH_ST +#define DS_81XXAHF_ST 119 //DS_81XXAHF_ST +#define DS_66XXDVS 120 //66XX DVS + +#define DS_1964_B10 121 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±¨¾¯Æ÷*/ +#define DS_B10N04_IN 122 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿¼¶ÁªÊäÈë*/ +#define DS_B10N04_OUT 123 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿¼¶ÁªÊä³ö*/ +#define DS_B10N04_INTEL 124 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿ÖÇÄÜ*/ +#define DS_6408HFH_B10E_RM 125 //V6¸ßÇå +#define DS_B10N64F1_RTM 126 //V6¼¶Áª²»´øDSP +#define DS_B10N64F1D_RTM 127 //V6¼¶Áª´øDSP +#define DS_B10_SDS 128 //ÊÓƵ×ÛºÏƽ̨×ÓÓò¿ØÖÆÆ÷ +#define DS_B10_DS 129 //ÊÓƵ×ÛºÏƽ̨Óò¿ØÖÆÆ÷ +#define DS_6401HFH_B10V 130 //VGA¸ßÇå±àÂëÆ÷ +#define DS_6504D_B10B 131 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±êÇå½âÂëÆ÷*/ +#define DS_6504D_B10H 132 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿¸ßÇå½âÂëÆ÷*/ +#define DS_6504D_B10V 133 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿VGA½âÂëÆ÷*/ +#define DS_6408HFH_B10S 134 //ÊÓƵ×ÛºÏƽ̨SDI×Ó°å +#define DS_18XX_N 135 /* ¾ØÕó½ÓÈëÍø¹Ø*/ +#define DS_6504HF_B10F_CLASS 136 //¹â¶Ë»úSD +#define DS_18XX_PTZ 141 /*ÍøÂçÂë·ÖÀà²úÆ·*/ +#define DS_19AXX 142 /*ͨÓñ¨¾¯Ö÷»úÀà²úÆ·*/ +#define DS_19BXX 143 /*¼ÒÓñ¨¾¯Ö÷»ú*/ +#define DS_19CXX 144 /*×ÔÖúÒøÐб¨¾¯Ö÷»ú*/ +#define DS_19DXX 145 /*¶¯»·¼à¿Ø±¨¾¯Ö÷»ú*/ +#define DS_19XX 146 /*1900ϵÁб¨¾¯Ö÷»ú*/ +#define DS_19SXX 147 /*ÊÓƵ±¨¾¯Ö÷»ú*/ +#define DS_1HXX 148 /*CSÀà²úÆ·*/ //·À»¤²Õ +#define DS_PEAXX 149 /*Ò»¼üʽ½ô¼±±¨¾¯²úÆ·*/ +#define DS_PWXX 150 /*ÎÞÏß±¨¾¯Ö÷»ú²úÆ·*/ +#define DS_PMXX 151 /*4GÍøÂçÄ£¿é*/ +#define DS_19DXX_S 152 /*ÊÓƵ¶¯»·¼à¿ØÖ÷»ú*/ +#define DS_PWAXX 153 /* Axiom HubÎÞÏß±¨¾¯Ö÷»ú */ +#define DS_PHAXX 154 /* Axiom Hybrid»ìºÏ±¨¾¯Ö÷»ú */ +#define DS_PHAProXX 155 /* Axiom Hybrid Pro»ìºÏ±¨¾¯Ö÷»ú*/ + + +//2011-11-30 +#define DS_C10H 161 /*¶àÆÁ¿ØÖÆÆ÷*/ +#define DS_C10N_BI 162 //BNC´¦ÀíÆ÷ +#define DS_C10N_DI 163 //rbg´¦ÀíÆ÷ +#define DS_C10N_SI 164 //ÂëÁ÷´¦ÀíÆ÷ +#define DS_C10N_DO 165 //ÏÔʾ´¦ÀíÆ÷ +#define DS_C10N_SERVER 166 //·Ö²¼Ê½·þÎñÆ÷ + + +#define IDS_8104_AHFL_S_H 171 // 8104ATM +#define IDS_65XX_HF_A 172 // 65 ATM +#define IDS90XX_HF_RH 173 // 9000 ÖÇÄÜRH +#define IDS91XX_HF_RH 174 // 9100 ÖÇÄÜRHÉ豸 +#define IDS_65XX_HF_B 175 // 65 ÐÐΪ·ÖÎö +#define IDS_65XX_HF_P 176 // 65 ³µÅÆʶ±ð +#define IVMS_6200_F 177 // IVMS-6200(/F) +#define IVMS_6200_A 178 //iVMS-6200(/A) +#define IVMS_6200_F_S 179 // IVMS-6200(/F_S)ÈËÁ³ºó¼ìË÷·ÖÎöÒÇ + +#define DS90XX_HF_RH 181 // 9000 RH 648 +#define DS91XX_HF_RH 182 // 9100 RHÉ豸 648 +#define DS78XX_S 183 // 78ϵÁÐÉ豸 6446 +#define DS81XXHW_S 185 // 81 Resolution 960 KY2011 +#define DS81XXHW_ST 186 // DS81XXHW_ST KY2011 +#define DS91XXHW_ST 187 // DS91XXHW_ST KY2011 +#define DS91XX_ST 188 // DS91XX_ST netra +#define DS81XX_ST 189 // DS81XX_ST netra +#define DS81XXHX_ST 190 // DS81XXHDI_ST,DS81XXHE_ST ky2012 +#define DS73XXHX_ST 191 // DS73XXHI_ST ky2012 +#define DS81XX_SH 192 // ÉóѶ81SH,81SHF +#define DS81XX_SN 193 // ÉóѶ81SNL + +#define DS96XXN_ST 194 //NVR:DS96xxN_ST +#define DS86XXN_ST 195 //NVR:DS86xxN_ST +#define DS80XXHF_ST 196 //DVR:DS80xxHF_ST +#define DS90XXHF_ST 197 //DVR:DS90xxHF_ST +#define DS76XXN_ST 198 //NVR:DS76xxN_ST + +#define DS_9664N_RX 199 //NVR:DS_9664N_RX +#define ENCODER_SERVER 200 // ±àÂ뿨·þÎñÆ÷ +#define DECODER_SERVER 201 // ½âÂ뿨·þÎñÆ÷ +#define PCNVR_SERVER 202 // PCNVR´æ´¢·þÎñÆ÷ +#define CVR_SERVER 203 // °îŵCVR£¬Ëû¸ø×Ô¼º¶¨µÄÀàÐÍΪDVR_S-1 +#define DS_91XXHFH_ST 204 // 91ϵÁÐHD-SDI¸ßÇåDVR +#define DS_66XXHFH 205 // 66¸ßÇå±àÂëÆ÷ +#define TRAFFIC_TS_SERVER 210 //Öն˷þÎñÆ÷ +#define TRAFFIC_VAR 211 //ÊÓƵ·ÖÎö¼Ç¼ÒÇ +#define IPCALL 212 //IP¿ÉÊÓ¶Ô½²·Ö»ú +#define SAN_SERVER 213 //ÓëCVR_SERVERÏàͬµÄ³ÌÐò£¬Ö»ÊÇģʽ²»Í¬ + +#define DS_B11_M_CLASS 301 /*ÊÓƵ×ÛºÏƽ̨É豸ÐͺÅ*/ +#define DS_B12_M_CLASS 302 /*ÊÓƵ×ÛºÏƽ̨É豸ÐͺÅ*/ +#define DS_6504HF_B11_CLASS 303 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±àÂëÆ÷*/ +#define DS_6504HF_B12_CLASS 304 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±àÂëÆ÷*/ +#define DS_6401HFH_B11V_CLASS 305 //VGA¸ßÇå +#define DS_6401HFH_B12V_CLASS 306 //VGA¸ßÇå +#define DS_6408HFH_B11S_CLASS 307 //SDI +#define DS_6408HFH_B12S_CLASS 308 //SDI +#define DS_6504D_B11H_CLASS 309 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿¸ßÇå½âÂëÆ÷*/ +#define DS_6504D_B11B_CLASS 310 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±êÇå½âÂëÆ÷*/ +#define DS_6504D_B12B_CLASS 311 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±êÇå½âÂëÆ÷*/ +#define DS_6504D_B11V_CLASS 312 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿VGA½âÂëÆ÷*/ +#define DS_6504D_B12V_CLASS 313 /*ÊÓƵ×ÛºÏƽ̨ÄÚ²¿VGA½âÂëÆ÷*/ +//B10ÐÂÔö +#define DS_6401HFH_B10R_CLASS 314 //B10 RGB¸ßÇå +#define DS_6401HFH_B10D_CLASS 315 //B10 DVI¸ßÇå +#define DS_6401HFH_B10H_CLASS 316 //B10 HDMI¸ßÇå +//B11ÐÂÔö +#define DS_6401HFH_B11R_CLASS 317 //B11 RGB¸ßÇå +#define DS_6401HFH_B11D_CLASS 318 //B11 DVI¸ßÇå +#define DS_6401HFH_B11H_CLASS 319 //B11 HDMI¸ßÇå +//B12ÐÂÔö +#define DS_6401HFH_B12R_CLASS 320 //B12 RGB¸ßÇå +#define DS_6401HFH_B12D_CLASS 321 //B12 DVI¸ßÇå +#define DS_6401HFH_B12H_CLASS 322 //B12 HDMI¸ßÇå +#define DS_65XXD_B10Ex_CLASS 323 //netra¸ßÇå½âÂë + +//B10 V2.1ÐÂÔö +#define DS_6516HW_B10_CLASS 324 //netra¸ßÏß±àÂë +#define DS_6401HFH_B10F_RX_CLASS 326 //¸ßÇå¹â¶Ë»ú½ÓÈ루֧³Ö1/2·¹â¶Ë»ú½ÓÈ룩 +#define DS_6502HW_B10F_RX_CLASS 327 //960H¹â¶Ë»ú½ÓÈ루֧³Ö1/4/8·¹â¶Ë»ú½ÓÈ룩 +//2012-5-16ÐÂÔö +#define DS_6504D_B11Ex_CLASS 328 //netra¸ßÇå½âÂë +#define DS_6504D_B12Ex_CLASS 329 //netra¸ßÇå½âÂë +#define DS_6512_B11_CLASS 330 //netra¸ßÏß±àÂë +#define DS_6512_B12_CLASS 331 //netra¸ßÏß±àÂë +#define DS_6504D_B10H_CLASS 332 //ÊÓƵ×ÛºÏƽ̨ÄÚ²¿¸ßÇå½âÂëÆ÷ + +#define DS_65XXT_B10_CLASS 333 //ÊÓƵ×ÛºÏƽ̨תÂë×Óϵͳ +#define DS_65XXD_B10_CLASS 335 //ÊÓƵ×ÛºÏƽ̨ÍòÄܽâÂë°å +#define DS_IVMSE_B10X_CLASS 336 //X86·þÎñÆ÷×Óϵͳ +#define DS_6532D_B10ES_CLASS 337 //ÔöÇ¿ÐͽâÂë°å_SDI(B10) +#define DS_6508HFH_B10ES_CLASS 338 //SDIÊäÈë±àÂë×Óϵͳ +#define DS_82NCG_CLASS 340 //ÁªÍøÍø¹ØÖеÄ×Óϵͳ +#define DS_82VAG_CLASS 341 //ÁªÍøÍø¹ØÖеÄ×Óϵͳ +#define DS_1802XXF_B10_CLASS 342 //¹â¿Ú½»»»×Óϵͳ +#define iDS_6504_B10EVAC_CLASS 343 //ÖÇÄÜ×Óϵͳ +#define iDS_6504_B10EDEC_CLASS 344 //ÖÇÄÜ×Óϵͳ +#define DS_6402HFH_B10EV_CLASS 345 //netra±àÂë(VGA) +#define DS_6402HFH_B10ED_CLASS 346 //netra±àÂë(DVI) +#define DS_6402HFH_B10EH_CLASS 347 //netra±àÂë(HDMI) +#define DS_6404HFH_B10T_RX_CLASS 348 //¹âÏ˽ÓÈë±àÂë +#define DS_6504D_AIO_CLASS 349 //netra¸ßÇå½âÂë +#define DS_IVMST_B10_CLASS 350 //X86תÂë×Óϵͳ +#define DS_6402_AIO_CLASS 351 //netra±àÂë +#define DS_iVMSE_AIO_CLASS 352 //x86·þÎñÆ÷×Óϵͳ +#define DS_AIO_M_CLASS 353 //Ò»Ìå»ú + + +#define DS_6508HF_B10E_CLASS 355 //BNCÊäÈë±àÂë×Óϵͳ +#define DS_6404HFH_B10ES_CLASS 356 //SDIÊäÈë±àÂë×Óϵͳ +#define DS_6402HFH_B10ER_CLASS 358 //RGBÊäÈë±àÂë×Óϵͳ +#define DS_6404HFH_B10T_RM_CLASS 361 //¹âÏËÊäÈë±àÂë×Óϵͳ +#define DS_6516D_B10EB_CLASS 362 //BNCÊä³ö½âÂë×Óϵͳ +#define DS_6516D_B10ES_CLASS 363 //SDIÊä³ö½âÂë×Óϵͳ + +//DVI/HDMI/VGA³©ÏÔ½âÂ빫ÓÃÒ»¸öÀàÐÍ +#define DS_6508D_B10FH_CLASS 364 +#define DS_6508D_B10FD_CLASS 364 +#define DS_6508D_B10FV_CLASS 364 + +#define DS_6508_B11E_CLASS 365 //BNCÊäÈë±àÂë×Óϵͳ +#define DS_6402_B11ES_CLASS 366 //SDIÊäÈë±àÂë×Óϵͳ +#define DS_6402_B11EV_CLASS 367 //VGAÊäÈë±àÂë×Óϵͳ +#define DS_6402_B11ER_CLASS 368 //RGBÊäÈë±àÂë×Óϵͳ +#define DS_6402_B11ED_CLASS 369 //DVIÊäÈë±àÂë×Óϵͳ +#define DS_6402_B11EH_CLASS 370 //HDMIÊäÈë±àÂë×Óϵͳ +#define DS_6516D_B11EB_CLASS 371 //BNCÊä³ö½âÂë×Óϵͳ +#define DS_6516D_B11ES_CLASS 372 //SDIÊä³ö½âÂë×Óϵͳ + +#define DS_6508_B12E_CLASS 373 //BNCÊäÈë±àÂë×Óϵͳ +#define DS_6402_B12ES_CLASS 375 //SDIÊäÈë±àÂë×Óϵͳ +#define DS_6402_B12EV_CLASS 376 //VGAÊäÈë±àÂë×Óϵͳ +#define DS_6402_B12ER_CLASS 377 //RGBÊäÈë±àÂë×Óϵͳ +#define DS_6402_B12ED_CLASS 378 //DVIÊäÈë±àÂë×Óϵͳ +#define DS_6402_B12EH_CLASS 379 //HDMIÊäÈë±àÂë×Óϵͳ +#define DS_6516D_B12EB_CLASS 380 //BNCÊä³ö½âÂë×Óϵͳ + +#define DS_iVMSE_AIO_8100x_CLASS 381 //½ðÈÚÐÐÒµÒ»Ìå»úX86×Óϵͳ +#define DS_iVMSE_AIO_87x_CLASS 382 //ÖÇÄÜÂ¥ÓîÒ»Ìå»úX86×Óϵͳ +#define DS_6532D_B11ES_CLASS 384 //ÔöÇ¿ÐͽâÂë°å_SDI(B11) +#define DS_6532D_B12ES_CLASS 385 //ÔöÇ¿ÐͽâÂë°å_SDI(B12) +//B20ÐÂÔö +#define DS_B20_MSU_NP 400 //B20Ö÷¿Ø°å +#define DS_6416HFH_B20S 401 //SDIÊäÈë±àÂë +#define DS_6416HFH_B20_RM 402 //¹âÏËÊäÈë¸ßÇå±àÂë +#define DS_6564D_B20D 403 //DVI½âÂë +#define DS_6564D_B20H 404 //HDMI½âÂë +#define DS_6564D_B20V 405 //VGA½âÂë +#define DS_B20_6516D_DEV_CLASS 406 //B20½âÂë×Óϵͳ +#define DS_6408HFH_B20V 407 //VGA±àÂë°å +#define DS_MMC_B20_CLASS 408 //B20Ö÷¿Ø +#define DS_CARD_CHIP_B20_CLASS 409 //B20Ö÷¿Ø×Ó°å +#define DS_6564D_B20B_DEV_CLASS 410 //BNC½âÂë×Óϵͳ +#define DS_6564D_B20S_DEV_CLASS 411 //SDI½âÂë×Óϵͳ +#define DS_6532HF_B20B_DEV_CLASS 412 //BNC±àÂë×Óϵͳ +#define DS_6408HFH_B20D_DEV_CLASS 413 //DVI±àÂë×Óϵͳ +#define DS_6408HFH_B20H_DEV_CLASS 414 //HDMI±àÂë×Óϵͳ +#define DS_IVMSE_B20_CLASS 415 //X86·þÎñÆ÷×Óϵͳ +#define DS_6402HFH_B20Y_DEV_CLASS 416 //YUV±àÂë×Óϵͳ +#define DS_6508HW_B20_DEV_CLASS 417 //HW±àÂë×Óϵͳ +#define DS_B20N128Fx_B20_DEV_CLASS 418 //DS_B20N128Fx_M¼¶Áª°å +#define DS_AIO_MCU_NP_DEV_CLASS 419 //IOÖ÷¿Ø°å +#define DS_6402_AIO_EV_DEV_CLASS 420 //VGA±àÂë +#define DS_6508D_AIO_EV_DEV_CLASS 421 //VGA½âÂë +#define DS_6508D_AIO_ED_DEV_CLASS 422 //DVI½âÂë +#define DS_6508D_AIO_EH_DEV_CLASS 423 //HDMI½âÂë +#define DS_6508HD_B20F_DEV_CLASS 424 //ÊÓƵÔöÇ¿°å +#define DS_6402HFH_B20ES_DEV_CLASS 425 //3G SID±àÂë +#define DS_6532D_B20_DEV_CLASS 426 //B20½âÂë×Óϵͳ +#define DS_IVMST_B20_DEV_CLASS 427 //X86·þÎñÆ÷×Óϵͳ +#define DS_6416HFH_B20DD_DEV_CLASS 428 //DVIË«Á´Â· +#define DS_6441VS_B20_DEV_CLASS 429 //Ïà»úÆ´½ÓÀàÐÍ +#define DS_6404HFH_B20T_CLASS 431 //TVI +#define DS_FS22_B20_DEV_CLASS 432 //½»»»»ú×Óϵͳ +#define DS_IVMSE_B20UH_DEV_CLASS 433 //³¬¸ßÇåX86ÊäÈë +#define IDS_6524J_B20_DEV_CLASS 434 +#define IDS_6532B_B20_DEV_CLASS 435 +#define DS_6404HFH_B20Fx_DEV_CLASS 436 //¹â¶Ë»ú½ÓÈë×Óϵͳ +#define DS_N128x_B20Fy_CLASS 437 //¼¶Áª×Óϵͳ +#define DS_181600F_B20_CLASS 438 //ÍøÂç¹âÏË×Óϵͳ +#define DS_6904UD_B20H_CLASS 439 //³¬¸ßÇå½âÂë×Óϵͳ + +#define DS_B21_MCU_NP_CLASS 440 //B21Ö÷¿Ø +#define DS_B21_S10_x_CLASS 441 //B21»úÏä x = A/S/D +#define DS_6402HFH_B21D_CLASS 442 //B21±àÂë×Óϵͳ +#define DS_6508HD_B21D_CLASS 443 //B21½âÂë×Óϵͳ +#define DS_iVMSE_B21HW_CLASS 444 //B21 X86×Óϵͳ + +#define DS_C10S 501 //C10S ¼¯ÖÐʽ´óÆÁ¿ØÖÆÆ÷ +#define DS_C3X 502 //¼¯ÖÐʽƴ½Ó¿ØÖÆÆ÷ + +#define DS_C10N_SDI 551 //SDI´¦ÀíÆ÷ +#define DS_C10N_BIW 552 //8·BNC´¦ÀíÆ÷ +#define DS_C10N_DON 553 //ÏÔʾ´¦ÀíÆ÷ +#define DS_C10N_TVI 554 //TVIÊäÈë°å +#define DS_C10N_DI2 555 //DVI 2·ÊäÈë°å +#define DS_C10N_AUDIO_OUT 556 //DVI£¬HDMI£¬VGAÊä³ö°å´øÒôƵ +#define DS_C10N_AUDIO_IN 557 //DVI£¬HDMI£¬VGAÊäÈë°å´øÒôƵ + +//Èí·þÎñÆ÷°æ±¾µÄ·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷ +#define DS_C20N 570 //·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷ +#define DS_C20N_BNC 571 //BNCÊäÈëÉ豸 +#define DS_C20N_DVI 572 //DVIÊäÈëÉ豸 +#define DS_C20N_DP 573 //DPÊäÈëÉ豸 +#define DS_C20N_OUT 574 //Êä³öÉ豸 + +//¼¯ÖÐʽ¶àÆÁ¿ØÖÆÆ÷ 5301 - 5350 £¨50£© +#define DS_C30 5301 //C30¼¯ÖÐʽƴ½Ó¿ØÖÆÆ÷ +#define DS_C31 5302 //C31¼¯ÖÐʽƴ½Ó¿ØÖÆÆ÷ +#define DS_M0804 5303 //M0804¾­¼ÃÐÍÆ´½Ó¿ØÖÆÆ÷ + +//Ó²·þÎñÆ÷°æ±¾µÄ·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷ +#define DS_C20N_VWMS 5351 //C20N·þÎñÆ÷ +#define DS_C20N_DI2 5352 //Á½Â·DVIÊäÈëÉ豸 +#define DS_C20N_DO2 5353 //Á½Â·DVIÊä³öÉ豸 +#define DS_C20N_UHDI 5354 //DP/HDMI 1·4K³¬¸ßÇåÊäÈëÉ豸 +#define DS_C20N_YI2 5355 //Á½Â·YPbPrÊäÈë°å + +#define DS_C12N_VWMS 5356 //C12N·þÎñÆ÷ +#define DS_C12N_DO 5357 //1·DVIÊä³ö +#define DS_C12N_HOE 5358 //1·HDMI 4KÊä³ö + +#define DS_C20N_HI2 5359 // HDMIÊäÈë½Úµã(2·) +#define DS_C20N_VI2 5360 //VGAÊäÈë½Úµã(2·) +#define DS_C20N_SI2 5361 //SDIÊäÈë½Úµã(2·) +#define DS_C20N_HO2 5362 //HDMIÊä³ö½Úµã(2·) +#define DS_C20N_S24G 5363 //C20NרÓÃǧÕ×½»»»»ú(24·) +#define DS_C20N_S24X 5364 //C20NרÓÃÍòÕ×½»»»»ú(24·) +#define DS_C12A_0104H 5365 //´´ÒâÆ´½Ó¿ØÖÆÆ÷ +#define DS_C20N_DO2_V2 5366 //Á½Â·DVIÊä³öÉ豸V2 +#define DS_C20N_HO2_V2 5367 //Á½Â·HDMIÊä³öÉ豸V2 +#define DS_C21N 5368 //·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷ +#define DS_C21K 5369 //×øϯKVMϵͳC21 +#define DS_68TS_A 5370 //´¥¿ØÒ»Ìå»ú +#define DS_C22N_UHDI 5371 //4K60ÊäÈëÉ豸(1·) +#define DS_C21N_UHDI_T 5372 //1·4K60³¬¸ßÇåÊäÈë½Úµã +#define DS_C22N_HI1 5373 //1·HDMI¸ßÇåÊäÈë +#define DS_C22N_HO1 5374 //1·HDMI¸ßÇåÊä³ö + + +//È«Ï¢ÏÔʾÉ豸 +#define DS_D1HXX 5591 //È«Ï¢ÏÔʾÉ豸 +#define DS_60SDL_X 5592 //WindowsË«ÃæÆÁÖÕ¶Ë +#define DS_6043DL_B 5593 //°²×¿Ë«ÃæÆÁ43´çÖÕ¶Ë +#define DS_6049DL_B 5594 //°²×¿Ë«ÃæÆÁ49´çÖÕ¶Ë +#define DS_6055DL_B 5595 //°²×¿Ë«ÃæÆÁ55´çÖÕ¶Ë + +//ÎÞÏß´«ÊäÉ豸 +#define ELEVATO_BRIDGE 5751 //ÎÞÏßµçÌÝÍøÇÅ +#define DS_3WF01S_5NG_M 5752 //5.8GÊÒÍâ1¹«ÀïÎÞÏß¹¤µØÍø +#define DS_3WF0EC_2N_D 5753 //2.4GÊÒÍâ500Ã×ÍøÇÅ +#define DS_3WF0EC_5ACT 5754 //5.8G 11acµçÌÝÍøÇÅ +#define DS_3WF03S_5AC 5755 //5.8G 3¹«Àï¾­¼ÃÐÍÍøÇÅ +#define DS_3WF0ES_5AC_H 5756 //5.8GÊÒÍâ500Ã׸ߴ©Í¸ÍøÇÅ +#define DS_3WF05S_5AC_H 5765 //5.8G 5KMǧÕ×Íø¿Ú²¦ÂëÍøÇÅ +#define DS_3WSXXX 5766 //Íø¹Ø·ÓÉÆ÷ϵÁУ¨°üÀ¨AC¿ØÖÆÆ÷£© +#define DS_3WAXXX 5767 //Îü¶¥¡¢ÊÒÍâAPϵÁÐ +#define DS_3WAXXXP 5768 //Ãæ°åAPϵÁÐ +#define DS_3WRXXX 5769 //ÆÕͨÎÞÏß·ÓÉÆ÷ϵÁÐ +#define DS_3WMRXXX 5770 //MESH·ÓÉÆ÷ϵÁÐ +#define DS_3WAX18 5881 //ÊÒÍâAP + +//ÍøÂçÉ豸¹ÜÀíÀà +#define DS_3CXXXX 5891 //ͳһÍøÂç¹ÜÀíƽ̨ + + +//±¨¾¯É豸 +#define DS_19M00_MN 601 //±¨¾¯Ö÷»ú°ÙÕ×ÍøÂçÄ£¿é +#define DS_KH8302_A 602 //ÊÒÄÚ»ú +#define DS_KD8101_2 603 //ÃÅ¿Ú»ú +#define DS_KM8301 604 //¹ÜÀí»ú +#define DS_KVXXXX_XX 605 //±ðÊûÃÅ¿Ú»ú +#define DS_LHPM1D_C 606 //¾ÆµêËø +#define DS_KAM03 607 //°ëÊý×Öת½ÓÄ£¿é +#define DS_KDXXX 608 //ÖÇÄܽ»»¥Öնˣ¬¼àËùÐÐÒµDS-KD9623-F-JP£¬DS-KD9623-FC-JP£¬DS-KD9803-F-JPÒ½ÁÆÐÐÒµ£ºDS-KD9803-3XF5G-HI£¬DS-KD9803-3XFW-HI£¬DS-KD9803-W-HI + +#define DS64XXHD_T 701 //64-T¸ßÇå½âÂëÆ÷ +#define DS_65XXD 703 //65ÍòÄܽâÂëÆ÷ +#define DS63XXD_T 704 //63-T±êÇå½âÂëÆ÷ +#define SCE_SERVER 705 //×¥ÆÁ·þÎñÆ÷ +#define DS_64XXHD_S 706 //64XXHD-S¸ßÇå½âÂëÆ÷ +#define DS_68XXT 707 //¶à¹¦ÄÜÊÓÒôƵתÂëÆ÷ +#define DS_65XXD_T 708 //65D-TÍòÄܽâÂëÆ÷ +#define DS_65XXHD_T 709 //65HD-TÍòÄܽâÂëÆ÷ +#define DS_69XXUD 710 //69XXUD³¬¸ßÇå½âÂëÆ÷ +#define DS_65XXUD 711 //65XXUD½âÂëÆ÷ +#define DS_65XXUD_L 712 //65XXUD_L½âÂëÆ÷ +#define DS_65XXUD_T 713 //65XXUD_T½âÂëÆ÷ + + +#define DS_D20XX 750 //LCDÆÁÄ» ½âÂ뿨 +//SDI¾ØÕó +#define DS_C50S 751 //SDI¾ØÕó +#define DS_D50XX 752 //LCDÆÁÄ» ½âÂ뿨 + +#define DS_D40 760 //LEDÆÁ·¢ËÍ¿¨ + +#define DS_65VMXX 770 //ÊÓƵ»áÒé·þÎñÆ÷ +#define DS_65VTXX 771 //ÊÓƵ»áÒéÖÕ¶Ë +#define DS_65VTA 772 //ÊÓƵ»áÒéÒ»ÌåʽÖÕ¶Ë +#define DS_65VT_RX 773 //»¥¶¯½ÌѧÖÕ¶Ë +#define DS_65VM_MCU_NP 774 //´óÈÝÁ¿MCU + + +#define DS_CS_SERVER 800 //ÐéÄâÆÁ·þÎñÆ÷ +#define DS_68GAP_MCU 831 //ÊÓƵÍøÕ¢ +#define DS_K260X 850 //ÃŽûÖ÷»ú +#define DS_K1TXXX 851 //Ö¸ÎÆÒ»Ìå»ú +#define DS_K280X 852 //¾­¼ÃÐÍÃŽûÖ÷»ú +#define DS_K1T80X 854 //¾­¼ÃÐÍÃŽûÒ»Ìå»ú +#define RAC_6X00 856 //ºº¾üÖ¸ÎÆÃŽûÒ»Ìå»ú +#define DS_K2602_AX 857 //ÈËԱͨµÀÖ÷»ú +#define DS_K1T803F 858 //¾­¼ÃÐÍÖ¸ÎÆÃŽû²úÆ· +#define DS_K2700 859 //·Ö²¼Ê½Èý²ã¼Ü¹¹ÃŽûÖ÷»ú +#define DS_K270X 860 //·Ö²¼Ê½Èý²ã¼Ü¹¹¾ÍµØ¿ØÖÆÆ÷ +#define DS_K1T500S 861 //ÊÓÆÁÃŽûÒ»Ìå»ú +#define DS_K1A801F 862 //¾­¼ÃÐÍÖ¸ÎÆÃŽû²úÆ· +#define DS_K1T600X 863 //ÈËÁ³Ê¶±ðÃŽûÒ»Ìå»ú +#define DS_K22X 864 //ÌÝ¿ØÖ÷¿ØÖÆÆ÷ +#define DS_K2M0016AX 865 //ÌÝ¿Ø·Ö¿ØÖÆÆ÷ +#define DS_K2602S_AX 867 //ÈËԱͨµÀ²úÆ· +#define DS_K560XX 870 //Á¢Ê½/̨ʽÖÇÄÜÉí·Ýʶ±ðÖÕ¶Ë +#define DS_K260X_E 873 //µÍ¶ËÃŽûÖ÷»ú +#define DS_K5603X 874 //̨ʽ/±Ú¹ÒʽǶÈëʽÈËÖ¤É豸 +#define DS_K3M200X 875 //ȨÏÞ¿ØÖÆÆ÷ +#define DS_K3M100X 879 //ͨµÀ¿ØÖÆÆ÷ +#define DS_K1T8101XT 881 //¾­ÏúÐÍÈËÁ³Ê¶±ðÃŽûÒ»Ìå»ú +#define DS_K1T8101XX 882 //¾­ÏúÐÍÈËÁ³Ê¶±ðÃŽûÒ»Ìå»ú +#define DS_K5604 883 //5604ÈËÖ¤É豸 +#define DS_K1T607XXXX 884 //ÖжËÈËÁ³ÃŽûÒ»Ìå»úDS_K1T607£¨M/MF/E/EF/MG/MFG?MW/MFW/TM/TMF/TE/TEF/TMG/TMFG/TMW/TMFW£© +#define DS_K1A850X 885 //µÍ¶Ë¾­ÏúÖ¸ÎÆ¿¼ÇÚ»ú +#define DS_K1T800X 886 //µÍ¶Ë¾­ÏúÖ¸ÎÆÃŽûÒ»Ìå»ú +#define DS_K1T610XXXX 887 //ÖжËÈËÁ³ÃŽûÒ»Ìå»úDS_K1T610£¨M/MF/E/EF/MG/MFG?MW/MFW/TM/TMF/TE/TEF/TMG/TMFG/TMW/TMFW£© +#define DS_K1T8115X 888 //DS-K1T8115¡¢DS-K1T8115M¡¢DS-K1T8115M-Z ¾­ÏúÐÍÈËÁ³Ê¶±ðÒ»Ìå»ú +#define DS_K1T815LC_M 889 //¾­ÏúÐÍÈËÁ³Ê¶±ðÒ»Ìå»ú +#define DS_K1T606M_Z 890 //¾­ÏúÐÍÈËÁ³Ê¶±ðÒ»Ìå»ú +#define DS_K5607_XXX 891 //K5607Çᱡ¿îͨµÀÈËÁ³×é¼þ +#define DS_K1T950MX 893 //¾­Ïú¿îÈËÁ³Ö¸ÎÆÃŽûÒ»Ìå»ú +#define DS_K1T331XX 894 //µÍ¶ËÈËÁ³ÃŽû¿¼ÇÚÒ»Ìå»ú +#define DS_K1T671T 895 //ÈËÁ³ÃŽûÒ»Ìå»ú +#define DS_K1T671 896 //ÈËÁ³ÃŽûÒ»Ìå»ú +#define DS_K5671 897 //Çᱡ¿îͨµÀÈËÁ³×é¼þ +#define DS_K1T640 898 //4.3´çÈËÁ³ÃŽûÒ»Ìå»ú +#define DS_K1A802A 899 //¾­¼ÃÐÍÖ¸ÎÆ¿¼ÇÚ»ú + +#define DS_6800M 900 //68MºÏÂëÆ÷ +#define DS_68NTH 901 //ÐÅÏ¢·¢²¼Ö÷»ú +#define DS_D60S 902 //ÐÅÏ¢·¢²¼·þÎñÆ÷ +#define DS_D60W 903 //ÐÅÏ¢·¢²¼WindowsÖÕ¶Ë +#define DS_D10 931 //±³Í¶ÏÔʾÉ豸 +#define DS_3K0X_NM 951 //¹âÏËÊÕ·¢Æ÷ +#define DS_3E2328 952 //°ÙÕ×½»»»»ú +#define DS_3E1528 953 //ǧÕ×½»»»»ú +#define SCREEN_LINK_SERVER 971 //ÆÁÄ»·þÎñÆ÷ +#define DS_D51OPSXX 972 //OPSµçÄԺР+//Ò»Ì廯ÔÆ̨ +#define IP_PTSYS_MEGA200 1001 //IP 200ÍòÒ»Ì廯ÔÆ̨ +#define IPCAM_FISHEYE 1002 //ÓãÑÛÉãÏñ»ú +#define IPCAM_FISHEYE_E 1003 //¾­¼ÃÐÍÓãÑÛÉãÏñ»ú + +//68xxϵÁÐË«Ä¿3DÏà»ú +#define IPCAM_BINOCULAR 1004 //Ë«Ä¿ÉãÏñ»ú + +#define IPCAM_365 1010 //Ö§³Ö365µÄƽ̨µÄIPC CAM +#define IPCAM_R0 1011 //Ö§³ÖA5SµÄƽ̨µÄIPC CAM +#define IPCAM_R1 1012 //Ö§³Ö385µÄƽ̨µÄIPC CAM +#define IPCAM_R2 1013 //Ö§³ÖR2µÄƽ̨µÄIPC CAM +#define IPCAM_R3 1014 //Ö§³Ö8127µÄƽ̨µÄIPC CAM +#define IPCAM_R4 1015 //Ö§³ÖS2µÄƽ̨µÄIPC CAM + +#define IPDOME_365 1110 //Ö§³Ö365µÄƽ̨µÄIPD CAM +#define IPDOME_R0 1111 //Ö§³ÖA5SµÄƽ̨µÄIPD CAM +#define IPDOME_R1 1112 //Ö§³Ö385µÄƽ̨µÄIPD CAM +#define IPDOME_R2 1113 //Ö§³ÖR2µÄƽ̨µÄIPD CAM +#define IPDOME_R3 1114 //Ö§³Ö8127µÄƽ̨µÄIPD CAM +#define IPDOME_R4 1115 //Ö§³ÖS2µÄƽ̨µÄIPD CAM +#define ITCCAM_R3 1211 //Ö§³Ö8127µÄƽ̨µÄITCCAM + +//ÎÞÈË»úÒµÎñÉ豸£¨1300~1350£© +#define UAV_S 1300 //ÎÞÈË»ú»ùÕ¾É豸 £¨Ummanned Aerial Vehicle ¨C Station£© + +//ÐÂÔöÉ豸ÀàÐÍ 2013-11-19 +#define TRAFFIC_ECT 1400 //ECTÉ豸ÀàÐÍ +#define TRAFFIC_PARKING_SERVER 1401 //Í£³µ³¡·þÎñÆ÷ +#define TRAFFIC_TME 1402 //³öÈë¿Ú¿ØÖÆ»ú +// DVR +#define DS90XXHW_ST 2001 // DS90XXHW_ST»ìºÏDVR +#define DS72XXHX_SH 2002 // DS-72xxHV_SH, DS-72xxHF-SH +#define DS_92XX_HF_ST 2003 // DS-92XX-HF-ST +#define DS_91XX_HF_XT 2004 // 9100DVR_HF_XT +#define DS_90XX_HF_XT 2005 // 9000DVR_HF_XT +#define DS_73XXHX_SH 2006 // 7300DVR_HX_SH +#define DS_72XXHFH_ST 2007 // 7200DVR_HFH_ST +//DS_67ϵÁÐ + +#define DS_67XXHF_SATA 2008 // DS-67XXHF-SATA +#define DS_67XXHW 2009 // DS-67XXHW +#define DS_67XXHW_SATA 2010 // DS-67XXHW-SATA +#define DS_67XXHF 2011 // DS-67XXHF + +//Netra2.3 +#define DS_72XXHF_SV 2012 // DS-72xxHF-SV +#define DS_72XXHW_SV 2013 // DS-72xxHW-SV + +#define DS_81XXHX_SH 2014 // 8100DVR_HX_SH + +#define DS_71XXHX_SL 2015 //СÐÍDVR + +#define DS_76XXH_ST 2016 //DS_76XXH_ST + + +#define DS_73XXHFH_ST 2017 //73HFHϵÁÐ +#define DS_81XXHFH_ST 2018 //81HFHϵÁÐ ST + +#define DS_72XXHFH_SL 2019 //hi3521 +#define DS_FDXXCGA_FLT 2020 //2ÅÌλATM + +#define IDS_91XX_HF_ST_A 2100 //iDS-9100HF-ST/A +#define IDS_91XX_HF_ST_B 2101 //iDS-9100HF-ST/B +#define IDS_90XX_HF_ST_A 2102 //iDS-9000HF-ST/A +#define IDS_90XX_HF_ST_B 2103 //iDS-9000HF-ST/B +#define IDS_81XX_HF_ST_A 2104 //iDS-8100HF-ST/A +#define IDS_81XX_HF_ST_B 2105 //iDS-8100HF-ST/B +#define IDS_80XX_HF_ST_A 2106 //iDS-8000HF-ST/A +#define IDS_80XX_HF_ST_B 2107 //iDS-8000HF-ST/B +#define IDS_8104_AHFL_ST 2108 //ÖÇÄÜ»ìºÏATM»ú +#define IDS_2CD6812F_C 2109 //´¹Ö±Ë«Ä¿Ïà»ú + + +// NVR +#define DS_77XXN_ST 2201 // NVR DS-77XXHF-ST +#define DS_95XX_N_ST 2202 // 95XXN_ST NVR +#define DS_85XX_N_ST 2203 // 85XXN_ST NVR +#define DS_96XX_N_XT 2204 // 9600NVR_N_XT +#define DS_76XX_N_SE 2205 // 7600NVR_N_SE + +//¸ßÇåÉóѶ»ú +#define DS_86XXSN_SX 2206 // 8608NVR_SX£¬°üÀ¨4ÖÐÀàÐÍDS-8608SNL-SP¡¢DS-8608SNL-ST¡¢DS-8608SN-SP¡¢DS-8608SN-ST£¬L±íʾ´øLCD£¬P±íPOE + +//#define DS_96XX_N_RX 2207 //DS-96XX-N-RX +#define DS_71XXN_SL 2208 //DS-71XXN-SL ÃñÓòúÆ· +#define CS_N1_1XX 2209 //CS_N1_1XX£¬ÃñÓÃÊÂÒµ²¿ËùÓà + +#define DS_71XXN_SN 2210 //71XX_N_SN ¾­¼ÃÐÍÃñÓòúÆ· +#define CS_N1_2XX 2211 //N1_2XX ÃñÓÃÊÂÒµ²¿ËùÓà +#define DS_76XX_N_SHT 2212 //76XX_N_SHT ºó¶Ë»ùÏß²úÆ· +#define DS_96XXX_N_E 2213 //¸ßÐÂÐÔÄÜNVR(256) + +#define DS_76XXN_EX 2214 /* 76 78ϵÁÐNVR£¬×¢£º°üÀ¨ 4 8 16·µÄE1Ò»ÅÌ룬 8 16 32· E2Á½ÅÌλ£» /N /PÉ豸*/ +#define DS_77XXN_E4 2215/* 77ϵÁÐNVR£¬ ×¢£º°üÀ¨8 16 32·£¬ /N /PÉ豸*/ +#define DS_86XXN_E8 2216/* 86ϵÁÐNVR£¬ ×¢£º°üÀ¨8 16 32·£¬ /N /PÉ豸*/ +#define DS_9616N_H8 2217 //DS_9616N_H8 +#define DS_72XXHX_EX_GXY 2218 //±íʾ72ϵÁÐÎÞÏßDVR²úÆ·£¬ÆäÖÐ72ºóÃæµÄxx±íʾͨµÀÊý£¬HºóµÄXÄ¿Ç°½öÓÐHW,ΪÁ˺óÐøÀ©Õ¹±£Áô£¬EºóÃæµÄX±íʾµÄÊÇÅÌλÊý£¬G XY±íʾµÄÊÇÎÞÏßÀàÐÍ +#define DS_76XXN_EX_GXY 2219 //±íʾÊÇ76ϵÁÐÎÞÏßNVR²úÆ·£¬ÆäÖÐ76ºóÃæµÄxx±íʾͨµÀÊý£¬EºóÃæµÄX±íʾµÄÊÇÅÌλÊý£¬G XY±íʾµÄÊÇÎÞÏßÀàÐÍ +#define DS_72XXHXH_SH_21 2220 // 72XXHXH_SH_21 +#define DS_72XXHXH_SH_31 2221 // 72XXHXH_SH_31 +#define DS_73XXHXH_SH_31 2222 // 73XXHXH_SH_31 +#define DS_81XXHXH_SH_31 2223 // 81XXHXH_SH_31 +#define DS_71XXHXH_SH_21 2224 // 71XXHXH_SH_21 +#define DS_71XXHXH_SH_31 2225 // 71XXHXH_SH_31 +#define DS_NBXX_N_E1_X 2226 //±ãЯʽÖ÷»ú +#define DS_96XXN_FX 2230 +#define DS_86XXN_FX 2231 +#define DS_96XXXN_HX 2232 //96ϵÁиßÐÔÄÜÉ豸 + + +#define DS_86XXN_I 2233 //DS_86XXN_I +#define DS_77XX_N_I 2234 //DS_77XX_N_I +#define DS_76XX_N_I 2235 //DS_76XX_N_I +#define DS_78XX_N_I 2236 //DS_78XX_N_I +#define DS_96XXXN_IX 2237 //DS-96XXX_N_I£¨DS-96128N-I16¡¢DS-96128N-I24¡¢DS-96256N-I16¡¢DS-96256N-I24£© + +#define DS_90XXHXH_XT 2238 //DS_90XXHXH_XT£¨DS-9016HQH-XT£© + +#define DS_NVR_ALL 2239 //NVRÉ豸ͳһÀàÐÍÂ룬ºóÐøËùÓÐNVR²úÆ·£¨°üÀ¨ÒѶ¨ÒåϵÁУ©¶¼Ê¹ÓÃDS_NVR_ALL +#define DS_DVR_ALL 2240 //DVRÉ豸ͳһÀàÐÍÂ룬ºóÐøËùÓÐDVR²úÆ·£¨°üÀ¨ÒѶ¨ÒåϵÁУ©¶¼Ê¹ÓÃDS_DVR_ALL + +//PCNVR +#define PCNVR_IVMS_4200 2301 // PCNVR_IVMS_4200 + + +//ÖÇÄÜ·ÖÎöÒÇ +#define IVMS_6200_TP 2401 //IVMS-6200 ½»Í¨ÓÕµ¼·ÖÎöÒÇ +#define IVMS_6200_TF 2402 //IVMS-6200 ½»Í¨È¡Ö¤·ÖÎöÒÇ +#define IVMS_6200_D 2403 //iVMS-6200(/D) +#define IDS_81XXAHW_ST 2405 //iDS-81xxAHW-ST +#define IDS_81XXAHW_SP 2406 //iDS-81xxAHW-SP +#define IDS_81XXAHWL_ST 2407 //iDS-81xxAHWL-ST +#define IDS_81XXAHWL_SP 2408 //iDS-81xxAHWL-SP +#define IDS_9616N_H8 2409 //iDS_9616N_H8 +#define IVMS_6200_SMD 2500 //IVMS_6200_SMD +//HISI3531ƽ̨»ìºÏATM DVR£¬ ÆäÖÐL±íʾ´øÒº¾§ÆÁ£¬P±íʾ´øpoe +#define DS_81XXAHW_ST 2501 +#define DS_81XXAHW_SP 2502 +#define DS_81XXAHWL_ST 2503 +#define DS_81XXAHWL_SP 2504 + +//TVI ATM +#define DS_81XXAHGH_E4 2601 //DS_81XXAHGH_E4 + +/************************************************************************/ +/* ´«ÊäÓëÏÔʾ²úÆ·É豸ÀàÐÍstart£¨²»°üº¬ÀϵÄÉ豸ÀàÐÍ£© */ +/************************************************************************/ + +/** B20ϵÁУ¨4001-4100£© */ + +#define DS_6904UD_AIOE_H_CLASS 4002 //B20Ò»Ìå»ú +#define DS_6402HFH_B21B_CLASS 4005 //B21 ±àÂë +#define DS_6902UD_B21H_CLASS 4006 //B21 HDMI½âÂë +#define DS_6902UD_B21D_CLASS 4007 //B21 DVI½âÂë +#define DS_6902UD_B21V_CLASS 4008 //B21 VGA½âÂë +#define DS_6904UD_B20D_CLASS 4010 //B20 DVI½âÂë +#define DS_6904UD_B20V_CLASS 4011 //B20 VGA½âÂë +#define DS_B30_MCU 4012 //B30Ö÷¿Ø°å +#define DS_B30_SW 4013 //B30½»»»°å +#define DS_B30_04XI 4014 //B30±àÂëÊäÈë°å +#define DS_B30_04XO 4015 //B30½âÂëÊä³ö°å +#define DS_B31 4016 //B31Ò»Ìå»ú + +//B21Ò»Ìå»úÉ豸ÐͺŠ+#define DS_AIOH_MCU_NP 4042 //Ö÷¿Ø°å +#define DS_6404HFH_AIOH_D 4043 //4·DVIÊäÈë°å +#define DS_6908UD_AIOH_D 4044 //4·DVIÊä³ö°å +#define DS_6908UD_AIOH_H 4045 //4·HDMIÊä³ö°å + +//½âÂëÒ»Ìå»úÉ豸ÐͺŠ+#define DS_69XXUD_B 4046 //½âÂëÒ»Ìå»ú +#define DS_6404HFH_I 4047 //4·DVIÊäÈë°å +#define DS_6904UD_O 4048 //8·HDMIÊä³ö°å + + +//¼¯ÖÐʽƴ¿ØÆ÷ +#define DS_C12L_0204H 4060 //¾­¼ÃÐÍСÐÍÆ´¿ØÆ÷ + +//ARÒ»Ìå»ú 4101 - 4120 £¨20£© +#define DS_D1A24FDI 4101 //AR½ÌÓýÒ»Ìå»ú + +//½âÂëÆ÷5001-5050 +#define DS_69XXHD 5001 //69XXHD½âÂëÆ÷ +#define DS_69UD_V2 5002 //69UD³¬¸ßÇå½âÂëÆ÷V2 +#define DS_69UD_T 5003 //6ÊäÈ볬¸ßÇå½âÂëÆ÷ +#define DS_6AUD 5004 //³¬¸ßÇå½âÂëÆ÷ÍøÂç°æ + +//תÂëÆ÷ 5401 - 5450 £¨50£© +#define DS_68VTG 5401 //×ÛºÏתÂëÍø¹Ø + +//ÊÓƵ»áÒéÉ豸 5571 - 5590 £¨20£© +#define DS_65VT0010 5571 //Ò»ÌåʽÖÕ¶Ë +#define DS_65VM_MCU 5572 //¸ßÃܶÈMCUÖ÷¿Ø°å +#define DS_65VM_MPC 5573 //¸ßÃܶÈMCUýÌå×ÊÔ´°å +#define DS_65VT2XXYR_SF 5574 //˾·¨ÌáѶÖÕ¶Ë +#define DS_65VT0XXY 5575 //ÊÓƵ»áÒé´óÖÕ¶Ë +#define DS_65VT0010Z 5576 //ÖÇÄÜÒ»ÌåʽÖÕ¶Ë +#define DS_65VT0050Z 5577 //ÖÇÄÜ·ÖÌåʽÖÕ¶Ë +#define DS_65VS0XXXS 5878 //opensips·þÎñÆ÷É豸 +#define DS_65VS0XXXM 5579 //ÊÓƵ»áÒé»á¿Øƽ̨É豸 +#define DS_65VM00XX_X 5580 //ÊÓƵ»áÒéX86ϵͳMCU +#define DS_65VA800_BOX 5581 //ÊÓƵ»áÒéÂó¿Ë·ç +#define DS_65VT0020S 5582 //Ò»Ìåʽµ¥Ä¿ÖÇÄÜ»áÒéÖÕ¶Ë +#define DS_65VT0020D 5583 //Ò»Ìåʽ˫ĿÖÇÄÜ»áÒéÖÕ¶Ë +#define DS_65VM00XX_G 5584 //ÊÓƵ»áÒéMCU·þÎñÆ÷ +#define DS_65VM0000_GPU 5585 //ÊÓƵ»áÒéýÌå´¦Àí¿¨ +#define DS_65VTA011 5586 //µ¥Ä¿¸ß¼¯³ÉÖÕ¶Ë +#define DS_65VCP1100M_S 5587 //4Kµ¥Ä¿¸ú×ÙÏà»ú(ÖÇÄÜ»áÒéÖÕ¶Ë) +#define Z_MINISMC_01 5588 //4K USBÏà»ú + +#define DS_65VCAXX 5590 //¸ß¼¯³ÉÉãÏñ»ú + +#define DS_65VTR00X0 5791 //·ÖÌåʽÐÅ´´»áÒéÖÕ¶Ë +#define DS_65VA800AM_S 5792 //ÊÓƵ»áÒéÁÐÕóÂó¿Ë·ç +#define DS_65VAM0100UB 5793 //ÊÓƵ»áÒéÂó¿Ë·çÑïÉùÆ÷ +#define DS_65VA800SW 5794 //ÒôƵת»»Æ÷ +#define DS_65VTA22XX_X 5795 //SmartEye A2200 +#define DS_65VCAXXXX 5796 //Smart Meeting Bar + +//ÊÓƵÔÆÄ£·½£¨Y10ϵÁУ© +#define DS_Y10_MCU 5771 //Ö÷¿Ø°å +#define DS_Y10_SW1 5772 //½»»»°å +#define DS_6516UD_Y10D 5773 //8·DVIÏÔʾ½Ó¿Ú½âÂë°å +#define DS_6532UD_Y10D 5774 //16·DVIÏÔʾ½Ó¿Ú½âÂë°å +#define DS_6E2724_Y10 5775 //24¸öÍòÕ×½Ó¿Ú±àÂë½ÓÈë°å +#define DS_68SAA_AA_Y10 5776 //˫·2620¡¢ÄÚ´æ32GÒµÎñ°å +#define DS_68SBA_AA_Y10 5777 //˫·2630¡¢ÄÚ´æ32GÒµÎñ°å +#define DS_68SCA_AA_Y10 5778 //˫·2650¡¢ÄÚ´æ32GÒµÎñ°å +#define DS_68GPU_A1_Y10 5779 //P4ÏÔ¿¨°æ +#define DS_CPU_SERVER 5780 //CPU·þÎñ°å +#define DS_GPU_SERVER 5781 //GPU·þÎñ°å +#define DS_BIGDATA_SERVER 5782 //´óÊý¾Ý·þÎñ°å + + +//°²¼àÒ»Ìå»úϵÁÐ +#define DS_B80_MCU 5821//Ö÷¿Ø°å +#define DS_B80_SW 5822//½»»»°å +#define DS_B80_SR_01 5823//·þÎñ°å +#define DS_B80_AI04 5824//ÖÇÄÜ·ÖÎö°å£¬Ö§³Ö4··ÖÎöÄÜÁ¦ +#define DS_B80_ST 5825//´æ´¢°å£¬Ö§³Ö4¸ö2.5´ç2TÓ²ÅÌ +#define DS_B80_D04 5826//Êý¾Ý²É¼¯ÒµÎñ°å +#define DS_B80_BNC08 5827//±êÇå±àÂë°å +#define DS_B80_SDI08 5828//¸ßÇå±àÂë°å +#define DS_B80_VP 5829//תÂë/ºÏÂë°å +#define DS_B80_VO02 5830//ÊÓƵÊä³ö°å +#define DS_B81_MCU 5831//B81Ö÷¿ØÄ£¿é +#define DS_B81_AI 5832//B81ÖÇÄÜ·ÖÎöÄ£¿é +#define DS_B81_TVI 5833//B81 Ä£ÄâÊÓƵÊäÈëÄ£¿é£¨TVI/BNC£© +#define DS_B81_APL 5834//B81·þÎñÄ£¿é X86ƽ̨ +#define DS_B81_D08T 5835//B81 Éú²úÊý¾Ý²É¼¯Ä£¿é +#define DS_B85 5836//B85СÐÍÎïÁªÍøÖ÷»ú +#define DS_B86 5837//B86ÎïÁªÖпØÖ÷»ú +#define AX_GW100_V16A00M 5838//B81Ö÷»ú£¨·Ç¸ôÀ룩£¬OEMÉ豸 +#define DS_B81_AT_M 5839//B81Ö÷»ú£¨·Ç¸ôÀ룩 + +//Íø¹ØÀà +#define DS_3LGCX 5841//ͨÓÃÎïÁªÍø¹Ø +#define DS_3LGRX 5842//LoRaÍø¹Ø +#define DS_3LGT4 5843 //µçÌÝÍø¹ØÉ豸 +#define DS_3LGT40_N 5844 //NB-IoTµçÌÝÍø¹Ø +#define DS_3LGS_I 5845 //ÖÇÄÜÍø¹Ø + + +//½»»»»ú +#define DS_3E11XX 5681 //°ÙÕ×½»»»»ú +#define DS_3E13XX 5682 //ǧÕ×ÉÏÐн»»»»ú +#define DS_3E15XX 5683 //ǧÕ×½»»»»ú +#define DS_3E11XXP 5684 //°ÙÕ×POE½»»»»ú +#define DS_3E13XXP 5685 //ǧÕ×ÉÏÐÐPOE½»»»»ú +#define DS_3E15XXP 5686 //ǧÕ×POE½»»»»ú +#define DS_3E1520U 5687 //USB³äµç¹ñ +#define DS_3EODM_H 5688 //»ªÈý½»»»»ú +#define DS_3EODM_W 5689 //ºãï½»»»»ú +#define DS_3T1XXX 5690 //DS-3T1XXXϵÁн»»»»ú +#define DS_3E2XXX 5861 //¶þ²ãÈ«Íø¹Ü½»»»»ú +#define DS_3E2XXXP 5862 //¶þ²ãÈ«Íø¹Ü½»»»»ú-POE +#define DS_3E3XXX 5863 //Èý²ãÈ«Íø¹Ü½»»»»ú +#define DS_3E3XXXP 5864 //Èý²ãÈ«Íø¹Ü½»»»»ú-POE + +//¹âÏËÊÕ·¢Æ÷ +#define DS_3D01R_NM 5691 //ÊÕ·¢Æ÷½ÓÊÕ¿¨ +#define DS_3D01T_NM 5692 //ÊÕ·¢Æ÷·¢ËÍ»ú +#define DS_3K02_RNM 5693 //ÊÕ·¢Æ÷Íø¹Ü¿¨ + + +/************************************************************************/ +/* ´«ÊäÓëÏÔʾ²úÆ·É豸ÀàÐÍend£¨²»°üº¬ÀϵÄÉ豸ÀàÐÍ£© */ +/************************************************************************/ + +#define IDS_90XX_HXH_XX_S 6001 //³¬ÄÔÈËÌåDVR²úÆ· +#define IDS_90XX_HXH_XX_FA 6002 //³¬ÄÔÈËÁ³DVR²úÆ· + +#define DS_81XX_SHXL_K4 6101 //KY2017ƽ̨ÉóѶ»úDS-8104SHFH£¨L£©-K4/4P + +#define DS_8116THFHL_F4 6201 //±ê׼ͥÉóÖ÷»úDS-8116THFHL-F4 + +#define DS_81XXAHQ_E4 6301 //DS_81XXAHQ_E4(TVI ATM) +#define IDS_81XXAHQ_E4 6302 //IDS_81XXAHQ_E4(ÖÇÄÜTVI ATM) + +#define IDS_86XX_NX_A 7501 //³¬ÄÔÖÇÄÜATM NVR(iDS-8632NX-I8/A) +#define IDS_96XX_NX_S 7502 //ÈËÌ峬ÄÔÖÇÄÜNVR +#define IDS_96XX_NX_V 7503 //³¬ÄÔ¼ÓÓÍÕ¾NVR +#define IDS_96XX_NX_FA 7504 //ÈËÁ³³¬ÄÔÖÇÄÜNVR iDS-9632NX-I8/FA +#define IDS_86XX_NX_IX_B 7505 //86ϵÁа²È«Ã±¼ì²âNVR²úÆ· +#define IDS_67XX_NX_S_X 7506 //ÈËÁ³³¬ÄÔÖÇÄÜ°²¼ì²úÆ·NVR(IDS_67XX_NX/S_X) +#define NP_ST204_X_ 7507 //µÚ¶þ´úÖÇÄÜ°²¼ì·ÖÎöÒÇ£¨NP_ST204_S:NP_ST204_D:NP_ST204_D_4G£© +#define NP_ST_ANJIAN 7508 //°²¼ì»ú + +#define IDS_ECDXX_HE 8001//ѧÉúÈýÄ¿Ïà»ú +#define IDS_ECDXX_HT 8002//½ÌʦÈýÄ¿Ïà»ú + +#define IDS_ECDXX_E 8101//4K°ëÇò + +#define IDS_EPTXX_HF 8201//¶þ´úÈËÁ³×¥ÅÄ»ú + + +#define DS_2CD69XXX_I 8351 //3200WÈ«¾°Æ´½ÓIPCÐͺŠ+#define DS_TRIXX 8471 //³¬¸ßƵ¹Ì¶¨Ê½¶Á¿¨Æ÷DS_TRI900 + +#define DS_K1F600_D6EXX 10501 //¶à¹¦Äܲɼ¯ÒÇ +#define DS_K1T341 10502 //¾­ÏúÈËÁ³ÃŽû +#define DS_K1T641XXX 10503 //ÖжËͨÓÃÈËÁ³ÃŽû +#define DS_K1T642XXX 10504 //ÖжËͨÓÃÈËÁ³ÃŽû +#define DS_K1T601 10505 //¾ÆµêÈËÁ³²úÆ· +#define DS_K1T672XXX 10506 //ÊÒÄÚ7´ç³¬±¡¿îÈËÁ³ÃŽû²úÆ· +#define DS_K56A0X 10507 //°²×¿ÖжËÈËÖ¤ +#define DS_K56Q_F70 10508 //µÍ¶ËÈËÁ³×é¼þ£¨¾­ÏúÐÍ) +#define DS_K1T6Q_F70M 10509 //F70ϵÁÐÈËÁ³Ê¶±ðÒ»Ìå»ú£¨¾­ÏúÐÍ) +#define DS_K1T6Q_F40X 10510 //F40ϵÁÐÈËÁ³Ê¶±ðÒ»Ìå»ú£¨¾­ÏúÐÍ) +#define DS_K5604A_XXX 10511 //ÖеͶËÈËÁ³×é¼þ +#define DS_K1A330X 10512 //³¬µÍ¶ËÈËÁ³¿¼ÇÚ»ú£¨¾­ÏúÐÍ) +#define DS_K1T804A 10513 //¾­¼ÃÐÍÖ¸ÎÆÃŽûÒ»Ìå»ú +#define DS_K1T202 10514 //¾­¼ÃÐÍÖ¸ÎÆÃŽûÒ»Ìå»ú +#define DS_K1T343MX 10515 //ÈËÁ³ÃŽûÒ»Ìå»ú£¨¾­ÏúÐÍ) +#define DS_K1T331W_D 10516 //µÍ¶ËÈËÁ³ÃŽû¿¼ÇÚÒ»Ìå»ú£¨DS-K1T331W(D)£© +#define DS_K1T671WX_D 10517 //ÈËÁ³ÃŽûÒ»Ìå»ú£¨DS-K1T671M(D) DS-K1T671MW(D) DS-K1T671MG(D)£© +#define DS_K1T680X 10518 //8.0´çÊÒÄÚÍâÈËÁ³ÃŽû£¨DS-K1T680M DS-K1T680D£© +#define DS_K1T640A 10519 //ÖÇÄÜÃŽûÒ»Ìå»ú£¨DS-K1T640AM DS-K1T640AMW£© +#define DS_K1F600U_D6E_X 10520 //¶à¹¦Äܲɼ¯ÒÇ(DS-K1F600U-D6E DS-K1F600U-D6E-F DS-K1F600U-D6E-IF) +#define DS_K1T671AMX 10521 //ÈËÁ³ÃŽûÒ»Ìå»ú(DS-K1T671AM DS-K1T671AMW DS-K1T671AM-5G) +#define DS_VISITORXX 10530 //·Ã¿Í»ú +#define DS_FACE_PAYMENT_TERMINALXX 10531 //ÈËÁ³Ïû·Ñ»ú +#define DS_K1T341B_T 10532 //ÈËÁ³ÃŽûÒ»Ìå»ú,Ö§³Ö²âΣ¨DS-K1T341BMWI-T DS-K1T341BMI-T£© +#define DS_K1T343 10533 //F1Proƽ̨4.3´çÈËÁ³ÃŽûÒ»Ìå»ú£¨¾­Ïú£©£¨DS-K1T343M/MX/MW/MWX/MF/MFX/MFW/MFWX/EX/EWX/EFX/EFWX,D10,D10W/F/FW£© +#define DS_K1T673 10534 //F1Plusƽ̨7´çÈËÁ³ÃŽûÒ»Ìå»ú£¨ÐÐÒµ£©(DS_K1T673M/MG/MW/TMW/TMG/DX/DWX/TDX/TDWX/TDGX) +#define DS_K1T981 10535 //ºçĤʶ±ðÒ»Ìå»ú +#define DS_K5680X 10536 //K5680ϵÁÐ8´ç×ÀÃæÈËÖ¤É豸 +#define DS_K5022A_X 10537 //5022AϵÁа²×¿·Ã¿Í»ú +#define DS_K1T342 10538 //F1Proƽ̨4.3´çÈËÁ³ÃŽûÒ»Ìå»ú£¨¾­Ïú£©£¨DS-K1T342M/MX/MW/MWX/MF/MFX/MFW/MFWX/EX/EWX/EFWX/DX/DWX,D11,D11S/Pro/Plus£© +#define DS_K1T690 10539 //DS_K1T690 +#define DS_K1T340 10540 //DS_K1T340 +#define DS_K1T6QT_F72 10541 //F72ϵÁÐÈËÁ³Ê¶±ðÒ»Ìå»ú£¨¾­ÏúÐÍ) +#define DS_K1T641A 10542 //F1Plusƽ̨4.3´çÈËÁ³ÃŽûÒ»Ìå»úl£¬641ϵÁÐ +#define DS_K1TACS 10543 //ÃŽû²úÆ·´óÀàÖµ£¬ÓÃÓÚISAPIµÇ¼ÊÇÔÚÉ豸ÐÅÏ¢½á¹¹ÌåµÄwDevType×ֶηµ»Ø +#define DS_K1T6_GS3 10544 //ÐÐÒµÈËÁ³Ê¶±ðÒ»Ìå»úDS-K1T6-GS3ϵÁÐ +#define DS_K1T6Q_F41_3XF 10545 //¾­ÏúÈËÁ³Ê¶±ðÒ»Ìå»úDS_K1T6Q_F41_3XFϵÁÐ +#define DS_K56A1X 10546 //K56A1ϵÁÐ×ÀÃæÈËÖ¤É豸 +#define DS_K1T320MFW 10547 //F2 Proƽ̨2.4´ç³¬µÍ¶Ë¾­ÏúÈËÁ³ÃŽû»úÒ»Ìå»ú +#define DS_K5033X 10548 //5033ϵÁа²×¿×ÀÃæʽ·Ã¿Í»ú + +#define DS_K1T681X 10550 //A2Sƽ̨8´çÈËÁ³ÃŽûÒ»Ìå»ú£¨DS-K1T681M ¡¢DS-K1T681MW¡¢ DS-K1T681MG¡¢ DS-K1T681M-3DµÈ£© +#define DS_K5670X 10551 //F2proµÍ¶Ë7´ç¹¤µØÃ÷íøK5670ϵÁÐ + +//·Ã¿Í»ú10530£¬10601-10650 +#define DS_K3501 10601 //¾­Ïú·Ã¿Í»úK3501ϵÁÐ +//Ïû·Ñ»ú10531£¬10651-10700 +#define DS_K6600X 10651 //K6600ϵÁÐÉ̳¬ÊÕÒø»ú + +//ÖÇÄܹñ10701-10750 +#define DS_KL_CABINET 10701 //ÖÇÄܹñ²úÆ·´óÀàÖµ£¬ÓÃÓÚISAPIµÇ¼ÊÇÔÚÉ豸ÐÅÏ¢½á¹¹ÌåµÄwDevType×ֶηµ»Ø + +//ÌÝ¿ØÖ÷»ú10751-10800 + +//ÈËԱͨµÀ10801-10850 +#define DS_K3B961 10801 //ÈËԱͨµÀ²úÆ·´óÀàÖµ£¬ÓÃÓÚISAPIµÇ¼ÊÇÔÚÉ豸ÐÅÏ¢½á¹¹ÌåµÄwDevType×ֶηµ»Ø + +#define DS_KBS6XXX_WX 11001 //ÒôÏäDS-KBS6100-WV/DS-KBS6101-W/DS-KBS6100-W/DS-KBS6101-W/DS-KBS6200-W/DS-KBS6201-W +#define DS_KBC6XXX_X 11002 //ÒôÖùDS-KBC6300/DS-KBC6600 +#define DS_KBI6000_P 11003 //Ñ°ºô»°Í²DS-KBI6000-P +#define DS_KBA6XXX 11004 //¹¦·ÅÉ豸(À©ÒôÆ÷)DS-KBA6120/DS-KBA6240/DS-KBA6360/DS-KBA6650/DS-KBA6400-2/DS-KBA6800-2 + +#define DS_IEXX_E_J 11501 //¼àËùÖÇÄÜ·þÎñÆ÷ + +#define IDS_67XX_NX_A 12501 //67ϵÁÐNVS²úÆ·(iDS-6704NX/A) +#define IDS_67XX_NX_L 12502 //67ϵÁм²¥NVS²úÆ· +#define IDS_ENIXX_XHE 12503 //¼²¥NVSÐÐҵרҵ²úÆ· +#define IDS_67XX_NX_V 12504 //³¬ÄÔ¼ÓÓÍÕ¾NVS +#define IDS_67XX_NX_B 12505 //67ϵÁа²È«Ã±¼ì²âNVS²úÆ· + +//ÖÇÄÜÖÐÐÄÀàÉ豸 +#define DS_IE63XX_E_FA 13001 //Á³Æ×µ¥»ú +#define DS_DS_GPKIA 13002 //ÁÔÓ¥·þÎñÆ÷ +#define DS_DS_PURE 13003 //Á³Æ×´¿·ÖÎö +#define DS_DS_FS 13004 //ÈËÁ³¾²Ì¬Êý¾Ý·þÎñÆ÷ +#define DS_DS_FD 13005 //×¥Åļì²â·þÎñÆ÷ +#define DS_DS_BLADE 13006 //µ¶·æ +#define DS_DS_HMCP 13007 //Ä£ÐͶԱȷþÎñÆ÷ + +//ÖÇÄÜËøÉ豸 +#define DS_LNX_RF 13501 //ÖÇÄÜËøºÐ×Ó + +//À×´ïÉ豸 13551-14000£¨500£© +#define DS_PA_RADAR 13551 //PAÀ×´ï +#define DS_PERIMETER_RADAR 13552 //ÖܽçÀ×´ï +#define DS_SECURITY_RADAR 13553 //120Ã×°²·ÀÀ×´ï +#define DS_IMAGING_RADAR_PANEL 13554 //³ÉÏñÀ×´ïÖ÷»ú + +//Ïû·ÀÉ豸 14001-14500£¨500£© +#define DS_N1104X 14001 //Ïû·ÀÍø¹Ø +#define DS_N1103X 14002 //Óû§ÐÅÏ¢´«ÊäÉ豸 +#define NP_FSC201 14003 //ÓÃË®É豸 +#define NP_FDC240 14004 //×éºÏʽµçÆø»ðÔÖ̽²âÆ÷ +#define DS_N1107 14005 //ÎïÁªÍøÍø¹Ø +#define NP_FAXXX 14006 //Ïû·À·ÖÎöÒÇ +#define NP_FVY100 14007 //ÊÓƵÑ̸Р+#define NP_FVW100 14008 //°²ÏûÖÇÄÜÏà»ú +#define NP_FVG100 14009 //°²ÏûÁª¶¯Ïà»ú +#define NP_FVY300 14010 //¾­¼ÃÐÍÊÓƵÑ̸Р+#define NP_FVR212_P 14011 //ÈýºÏÒ»»ðÔÖ̽²âÆ÷ +#define NP_FVR213_P 14012 //ÈýºÏÒ»»ðÔÖ̽²âÆ÷(×ÔÑÐ) + +//°²¼ìÉ豸 14501-15000£¨500£© +#define NP_ST204_X 14501 //µÚ¶þ´úÖÇÄÜ°²¼ì·ÖÎöÒÇ +#define ISD_SG2XXL_X 14502 //°²¼ìÃÅ(ISD-SG206L ISD-SG218L ISD-SG218L-F) +#define ISD_SL300T 14503 //ÒºÌå·ÖÎöÒÇ + +//Ä£ÄâºÍÒôƵÉ豸 15001-15500£¨500£© +#define IPA 15001 +/**********************É豸ÀàÐÍ end***********************/ +/**********************É豸´óÀà begin**********************/ + +/* dvrÏà¹Ø 1-50 */ +#define DEV_CLASS_DVR 1 //ÆÕͨdvrÀàÐÍ +#define DEV_CLASS_INTERROGATION 2 //ÉóѶ»ú +#define DEV_CLASS_SIMPLE_TRAIL 3 //¼òÒ×Í¥ÉóÖ÷»ú +#define DEV_CLASS_TRAIL 4 //±ê׼ͥÉóÖ÷»ú +#define DEV_CLASS_RECORD_PLAY 5 //¼²¥Ö÷»ú +#define DEV_CLASS_ATM 6 //ATM»ú + +/* dvsÏà¹Ø 51-100 */ +#define DEV_CLASS_DVS 51 //ÆÕͨdvs + +/* nvrÏà¹Ø 101-150 */ +#define DEV_CLASS_NVR 101 //ÆÕͨnvr + +/* ipcÏà¹Ø 151-200 */ +#define DEV_CLASS_GUN 151 //ipcǹ»ú +#define DEV_CLASS_BALL 152 //ipcÇò»ú +#define DEV_CLASS_SNAP 153 //×¥ÅÄ»ú +#define DEV_CLASS_INTELLI_TILT 154 //ÖÇÄÜÔÆ̨ +#define DEV_CLASS_FISH_EYE 155 //ÓãÑÛ +#define DEV_CLASS_2DP_Z 156 //´óÓ¥ÑÛ +#define DEV_CLASS_2DP 157 //СӥÑÛ +#define DEV_CLASS_PT 158 //È«¾°Ï¸½ÚÏà»ú +#define DEV_CLASS_TRI 159 //³¬¸ßƵ¹Ì¶¨Ê½¶Á¿¨Æ÷ + +/* CVRÏà¹Ø 201 - 250*/ +#define DEV_CLASS_CVR 201 //CVR + +/* ´«ÏÔÏà¹Ø 251 - 300*/ +#define DEV_CLASS_B20 251 //´«ÏÔB20ϵÁÐ +#define DEV_CLASS_B10 252 //´«ÏÔB10ϵÁÐ +#define DEV_CLASS_DECODER 253 //½âÂëÆ÷ +#define DEV_CLASS_MATRIXMANAGEDEVICE 254 //¾ØÕó½ÓÈëÍø¹Ø +#define DEV_CLASS_OTICAL 255 //¹â¶Ë»ú +#define DEV_CLASS_CODESPITTER 256 //Âë·ÖÆ÷ +#define DEV_CLASS_ALARMHOST 257 //ÐÐÒµ±¨¾¯Ö÷»ú +#define DEV_CLASS_MOVING_RING 258 //¶¯»·É豸 +#define DEV_CLASS_CVCS 259 //¼¯ÖÐʽ¶àÆÁ¿ØÖÆÆ÷ +#define DEV_CLASS_DVCS 260 //·Ö²¼Ê½¶àÆÁ¿ØÖÆÆ÷ +#define DEV_CLASS_TRANSCODER 261 //תÂëÆ÷ +#define DEV_CLASS_LCD_SCREEN 262 //LCDÆÁÄ» +#define DEV_CLASS_LED_SCREEN 263 //LEDÆÁÄ» +#define DEV_CLASS_MATRIX 264 //¾ØÕó +#define DEV_CLASS_CONFERENCE_SYSTEM 265 //ÊÓƵ»áÒéÉ豸 +#define DEV_CLASS_INFORMATION_RELEASE_EQUIPMENT 266 //ÐÅÏ¢·¢²¼É豸 +#define DEV_CLASS_NET_GAP 267 //ÍøÕ¢ +#define DEV_CLASS_MERGE 268 //ºÏÂëÆ÷ +#define DEV_CLASS_REAR_PROJECTION 269 //±³Í¶ÏÔʾÉ豸 +#define DEV_CLASS_SWITCH 270 //½»»»»ú +#define DEV_CLASS_FIBER_CONVERTER 271 //¹âÏËÊÕ·¢Æ÷ +#define DEV_CLASS_SCREEN_SERVER 272 //ÆÁÄ»·þÎñÆ÷ +#define DEV_CLASS_SCE_SERVER 273 //×¥ÆÁ·þÎñÆ÷ +#define DEV_CLASS_WIRELESS_TRANS 274 //ÎÞÏß´«ÊäÉ豸 +#define DEV_CLASS_Y10_SERIES 275 //Y10ϵÁÐ +#define DEV_CLASS_SAFETY_MAVHINE 276 //°²¼àÒ»Ìå»ú +#define DEV_CLASS_IOTGATEWAY 277 //ÎïÁªÍø¹ØÀà +#define DEV_CLASS_NET_MANAGEMENT_EQUIPMENT 278 //ÍøÂçÉ豸¹ÜÀíÀà +#define DEV_CLASS_PUBLISH_SIGNAGE 279 //µç×Ó°àÅÆ +#define DEV_CLASS_AR_MACHINE 280 //ARÒ»Ìå»ú +/* ±¨¾¯Ö÷»úÏà¹Ø 301 - 350*/ +#define DEV_CLASS_VIDEO_ALARM_HOST 301 //ÊÓƵ±¨¾¯Ö÷»ú +#define DEV_CLASS_NET_ALARM_HOST 302 //ÍøÂ籨¾¯Ö÷»ú +#define DEV_CLASS_ONE_KEY_ALARM 303 //Ò»¼üʽ±¨¾¯²úÆ· +#define DEV_CLASS_WIRELESS_ALARM_HOST 304 //ÎÞÏß±¨¾¯Ö÷»ú +#define DEV_CLASS_ALARM_MODULE 305 //±¨¾¯Ä£¿é +#define DEV_CLASS_HOME_ALARM_HOST 306 //¼ÒÓñ¨¾¯Ö÷»ú +#define DEV_CLASS_HYBRID_ALARM_HOST 307 //»ìºÏ±¨¾¯Ö÷»ú +#define DEV_CLASS_NETWORK_RECEIVER 308 //ÍøÂç½Ó¾¯»ú²úÆ· + +/* ÃŽûÏà¹Ø 351 - 400*/ +#define DEV_CLASS_ACCESS_CONTROL 351 //ÃŽû²úÆ· +#define DEV_CLASS_VISITOR 352 //·Ã¿Í»ú²úÆ· +#define DEV_CLASS_FACE_PAYMENT_TERMINALXX 353 //ÈËÁ³Ïû·Ñ»ú²úÆ· +#define DEV_CLASS_CABINET 354 //ÖÇÄܹñ +#define DEV_CLASS_LADDER_CONTROL 355 //ÌÝ¿ØÖ÷»ú +#define DEV_CLASS_PERSONNEL_CHANNEL 356 //ÈËԱͨµÀ + +/* ¿ÉÊÓ¶Ô½² 401 - 450*/ +#define DEV_CLASS_VIDEO_INTERCOM 401 //¿ÉÊÓ¶Ô½² + +/* ÎÞÈË»ú 451 - 500*/ +#define DEV_CLASS_UMMANNED_AERIAL_VEHICLE 451 //ÎÞÈË»ú²úÆ· + +/* Òƶ¯²úÆ·: 501-550*/ +#define DEV_CLASS_MOBILE 501 //Òƶ¯²úÆ· + +/* Òƶ¯³µÔØÉ豸: 551-600*/ +#define DEV_CLASS_MOBILE_VEHICLE 551 //Òƶ¯³µÔØÉ豸 + +//ÖÇÄÜ·ÖÎöÒÇ£º601-650 +#define DEV_CLASS_INTELLIGENT_ANALYZER 601 //ÖÇÄÜ·ÖÎöÒÇ + +//ÖÇÄܽ»Í¨·þÎñÆ÷£º651-700 +#define DEV_CLASS_INTELLIGENT_TRAFFIC_SERVER 651 //ÖÇÄܽ»Í¨·þÎñÆ÷ +#define DS_TP2200_EC 652 //¾­¼ÃÐÍ»ú¹ñ¼à²âÒÇ + +/* nvsÏà¹Ø 701-750 */ +#define DEV_CLASS_NVS 701 //ÆÕͨnvs + +/*ÓÐÔ´RFIDϵÁÐ 751-800*/ +#define DS_TRI21A_1_P 751 //ÓÐÔ´RFID¶ÁÈ¡Æ÷ + +/* Êý¾ÝÖÐÐÄÉ豸801-850 */ +#define DS_CLASS_FA 801 //Á³Æ×µ¥»ú +#define DS_CLASS_PURE 802 //Á³Æ×´¿·ÖÎö +#define DS_CLASS_FS 803 //ÈËÁ³¾²Ì¬Êý¾Ý·þÎñÆ÷ +#define DS_CLASS_FD 804 //×¥Åļì²â·þÎñÆ÷ +#define DS_CLASS_HAWK 805 //ÁÔÓ¥·þÎñÆ÷ +#define DS_CLASS_BLADE 806 //µ¶·æ +#define DS_CLASS_HMCP 807 //Ä£ÐͶԱȷþÎñÆ÷ + +/* ÖÇÄÜËøÏà¹Ø 851 - 900*/ +#define DEV_CLASS_SMART_LOCK 851 //ÖÇÄÜËøºÐ×Ó + +/* À×´ïÏà¹Ø 901 - 950*/ +#define DEV_CLASS_RADAR 901 //À×´ï²úÆ· + +/* ÖÇ»ÛÏû·ÀÏà¹Ø 951 - 1000*/ +#define DEV_CLASS_FIRE_CONTROL 951 //Ïû·À²úÆ· + +/* °²¼ìÏà¹Ø 1001 - 1050*/ +#define DEV_CLASS_SECURITY_CHECK 1001 //°²¼ì²úÆ· + +#define DEV_CLASS_CONFERENCE_TABLET 1051 //»áÒéƽ°å + +#define DEV_CLASS_JUDICIAL_TABLET 1101 //˾·¨Æ½°å + +/*È«¾°Ï¸½ÚÏà»ú£º 8451-8470*/ +#define iDS_PT 8451 //È«¾°Ï¸½ÚÏà»ú + +/*ÍøÂç½Ó¾¯»ú²úÆ· 9851 - 9900*/ +#define DS_XCM1_IP 9851 //ÍøÂç½Ó¾¯»ú + +/* ÆäËûÉ豸ÀàÐÍ 65534 */ +#define DEV_CLASS_DEFAULT 65534 //ĬÈÏÉ豸ÀàÐÍ +/**********************É豸´óÀà end**********************/ + +/******************************ÄÜÁ¦¼¯»ñÈ¡*********************************/ +//ÄÜÁ¦»ñÈ¡ÃüÁî +#define DEVICE_SOFTHARDWARE_ABILITY 0x001 //É豸ÈíÓ²¼þÄÜÁ¦ +#define DEVICE_NETWORK_ABILITY 0x002 //É豸ÍøÂçÄÜÁ¦ +#define DEVICE_ENCODE_ALL_ABILITY 0x003 //É豸ËùÓбàÂëÄÜÁ¦ +#define DEVICE_ENCODE_CURRENT 0x004 //É豸µ±Ç°±àÂëÄÜÁ¦ +#define IPC_FRONT_PARAMETER 0x005 //ipcÇ°¶Ë²ÎÊý1.0 +#define IPC_UPGRADE_DESCRIPTION 0x006 //ipcÉý¼¶ÐÅÏ¢ +#define DEVICE_RAID_ABILITY 0x007 //RAIDÄÜÁ¦ +#define DEVICE_ENCODE_ALL_ABILITY_V20 0x008 //É豸ËùÓбàÂëÄÜÁ¦2.0 +#define IPC_FRONT_PARAMETER_V20 0x009 //ipcÇ°¶Ë²ÎÊý2.0 +#define DEVICE_ALARM_ABILITY 0x00a //¸¨Öú±¨¾¯ÄÜÁ¦ +#define DEVICE_DYNCHAN_ABILITY 0x00b //É豸Êý×ÖͨµÀÄÜÁ¦ +#define DEVICE_USER_ABILITY 0x00c //É豸Óû§¹ÜÀí²ÎÊýÄÜÁ¦ +#define DEVICE_NETAPP_ABILITY 0x00d //É豸ÍøÂçÓ¦ÓòÎÊýÄÜÁ¦ +#define DEVICE_VIDEOPIC_ABILITY 0x00e //É豸ͼÏñ²ÎÊýÄÜÁ¦ +#define DEVICE_JPEG_CAP_ABILITY 0x00f //É豸JPEGץͼÄÜÁ¦ +#define DEVICE_SERIAL_ABILITY 0x010 //RS232ºÍRS485´®¿ÚÄÜÁ¦ +#define DEVICE_ABILITY_INFO 0x011 //É豸ͨÓÃÄÜÁ¦ÀàÐÍ£¬¾ßÌåÄÜÁ¦¸ù¾Ý·¢Ë͵ÄÄÜÁ¦½ÚµãÀ´Çø·Ö +#define STREAM_ABILITY 0x012 //Á÷ÄÜÁ¦ +#define SYSTEM_MANAGEMENT_ABILITY 0x013 //É豸ϵͳ¹ÜÀíÄÜÁ¦ +#define IP_VIEW_DEV_ABILITY 0x014 //IP¿ÉÊÓ¶Ô½²·Ö»úÄÜÁ¦ +#define VCA_DEV_ABILITY 0x100 //É豸ÖÇÄÜ·ÖÎöµÄ×ÜÄÜÁ¦ +#define VCA_CHAN_ABILITY 0x110 //ÐÐΪ·ÖÎöÄÜÁ¦ +#define TRANSFER_ABILITY 0x120 +#define MATRIXDECODER_ABILITY 0x200 //¶à·½âÂëÆ÷ÏÔʾ¡¢½âÂëÄÜÁ¦ +#define VIDEOPLATFORM_ABILITY 0x210 //ÊÓƵ×ÛºÏƽ̨ÄÜÁ¦¼¯ +#define VIDEOPLATFORM_SBUCODESYSTEM_ABILITY 0x211 //ÊÓƵ×ÛºÏƽ̨±àÂë×ÓϵͳÄÜÁ¦¼¯ +#define WALL_ABILITY 0x212 //µçÊÓǽÄÜÁ¦¼¯ +#define MATRIX_ABILITY 0x213 //SDI¾ØÕóÄÜÁ¦ +#define DECODECARD_ABILITY 0x220 //½âÂ뿨·þÎñÆ÷ÄÜÁ¦¼¯ +#define VIDEOPLATFORM_ABILITY_V40 0x230 //ÊÓƵ×ÛºÏƽ̨ÄÜÁ¦¼¯ +#define MATRIXMANAGEDEVICE_ABILITY 0x240 //¾ØÕó½ÓÈëÍø¹ØÄÜÁ¦¼¯ +#define MATRIXDECODER_ABILITY_V41 0x260 //½âÂëÆ÷ÄÜÁ¦¼¯ +#define DECODER_ABILITY 0x261 //½âÂëÆ÷xmlÄÜÁ¦¼¯ +#define DECODECARD_ABILITY_V41 0x270 //½âÂ뿨·þÎñÆ÷ÄÜÁ¦¼¯V41 +#define CODECARD_ABILITY 0x271 //±àÂ뿨ÄÜÁ¦¼¯ +#define SNAPCAMERA_ABILITY 0x300 //×¥ÅÄ»úÄÜÁ¦¼¯ +#define ITC_TRIGGER_MODE_ABILITY 0x301 //ÖÇÄÜIPCÉ豸µÄ´¥·¢Ä£Ê½ÄÜÁ¦ +#define COMPRESSIONCFG_ABILITY 0x400 //»ñȡѹËõ²ÎÊýÄÜÁ¦¼¯ºÏ +#define COMPRESSION_LIMIT 0x401 //»ñÈ¡Ö÷×ÓÂëÁ÷ѹËõ²ÎÊýÄÜÁ¦ÏÞÖÆ +#define PIC_CAPTURE_ABILITY 0x402 //»ñͼƬ·Ö±æÂÊÄÜÁ¦¼¯ºÏ +#define ALARMHOST_ABILITY 0x500 //ÍøÂ籨¾¯Ö÷»úÄÜÁ¦¼¯ +#define IT_DEVICE_ABILITY 0x501 //ÖÇÄܽ»Í¨ÄÜÁ¦¼¯ +#define SCREENCONTROL_ABILITY 0x600 //´óÆÁ¿ØÖÆÆ÷ÄÜÁ¦¼¯ +#define SCREENSERVER_ABILITY 0x610 //´óÆÁ·þÎñÆ÷ÄÜÁ¦¼¯ +#define FISHEYE_ABILITY 0x700 //ÓãÑÛÄÜÁ¦¼¯ +#define LCD_SCREEN_ABILITY 0x800 //LCDÆÁÄ»ÄÜÁ¦ 2013-10-12 +#define ACS_ABILITY 0x801 //ÃŽûÄÜÁ¦ +#define MERGEDEV_ABILITY 0x802 //ºÏÂëÆ÷ÄÜÁ¦¼¯ +#define CAM_FUSION_ABILITY 0x803 //Ïà»úÆ´½ÓÄÜÁ¦ +#define OPTICAL_DEV_ACCESS_ABILITY 0x805 //¹â¶Ë»ú½ÓÈëÄÜÁ¦ +#define NET_RING_ABILITY 0x806 //»·ÍøÄÜÁ¦¼¯ +#define LED_ABILITY 0x807 //LEDÆÁÄÜÁ¦¼¯ +#define PUBLISHDEV_ABILITY 0x80a //ÐÅÏ¢·¢²¼ÄÜÁ¦ +#define SCREEN_EXCHANGE_ABILITY 0x80b //ÆÁÄ»»¥¶¯ÄÜÁ¦ +#define REMOTE_NETMGR_FOT_ABILITY 0x80e //Ô¶¶ËÍø¹ÜÊÕ·¢Æ÷ÄÜÁ¦ +/************************************************* +²ÎÊýÅäÖýṹ¡¢²ÎÊý(ÆäÖÐ_V30Ϊ9000ÐÂÔö) +**************************************************/ + +//×Ó°åÒì³£ÐÅÏ¢ +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_MAINBOARD_BOOT 0x1 //Ö÷°åÆô¶¯ÀàÐÍ +//´ÎÀàÐÍ +#define EXCEPTION_MINOR_PCIE_SCAN 0x1 // pcieÁ´Â·É¨ÃèÒì³£ +#define EXCEPTION_MINOR_DOWNLOAD_SUBBOARD 0xa //ÏÂÔØ×Ó°åÍê³ÉÒì³£ + +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_SUBBOARD_BOOT 0x2 //×Ó°åÆô¶¯ÀàÐÍ +//´ÎÀàÐÍ +#define EXCEPTION_MINOR_INEXISTENCE 0x1 //PCI-Eɨ²»µ½»òµ±Ç°×Ó°å²»´æÔÚ +#define EXCEPTION_MINOR_UBOOT_DOWNLOAD 0xa // ubootÏÂÔØÒì³£ +#define EXCEPTION_MINOR_UBOOT_INIT 0xe //uboot³õʼ»¯Òì³£ +#define EXCEPTION_MINOR_ROOTFS_DOWNLOAD 0x14 //rootfs.imgÏÂÔØÒì³£ +#define EXCEPTION_MINOR_UIMAGE_DOWNLOAD 0x19 //uImageÏÂÔØÒì³£ +#define EXCEPTION_MINOR_UBOOT_SETBOOTFLAG 0x1e // ubootÆô¶¯±ê־λÖÃλÒì³£ +#define EXCEPTION_MINOR_ROOTFS_BOOT_SUBBOARD 0x23 // rootfsÆô¶¯Òì³£ +#define EXCEPTION_MINOR_NEED_FILE_FINISH 0x28 //×Ó°åËùÐèÎļþ´«ÊäÒì³£ + +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_SUBBOARD_HARDWARE 0x3 //×Ó°åÓ²¼þÀàÐÍ +//´ÎÀàÐÍ +#define EXCEPTION_MINOR_AD 0x1 //ADÒì³£ +#define EXCEPTION_MINOR_DA 0xa // DAÒì³£ +#define EXCEPTION_MINOR_TIMER 0xb //ʱÖÓÒì³£ + +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_FPGA 0x4 //FPGAÀàÐÍ +//´ÎÀàÐÍ +#define EXCEPTION_MINOR_IDLE 0x1 //ÎÞ·¨IDLE +#define EXCEPTION_MINOR_LANE 0xa // LANE OKʧ°Ü +#define EXCEPTION_MINOR_REGISTER_ALL_F 0xe //FPGA¼Ä´æÆ÷È«F +#define EXCEPTION_MINOR_MEMORY_INIT_FAIL 0x14 //FPGAÄÚ´æ³õʼ»¯Ê§°Ü +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_DSP 0x5 //DSPÀàÐÍ + +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_ARM 0x6 //ARMÀàÐÍ + +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_BACKBOARD 0x7 //±³°åÀàÐÍ +//´ÎÀàÐÍ +#define EXCEPTION_MINOR_BACKBOARD_TYPE 0x1 //»ñÈ¡±³°åÀàÐÍÒì³£ +#define EXCEPTION_MINOR_SERDES 0xa //ÊÓƵ½»»»Ð¾Æ¬ +#define EXCEPTION_MINOR_CLOCK 0xe //ʱÖÓ¹ÊÕÏ +#define EXCEPTION_MINOR_SYNCH 0x14 //ͬ²½ÐźŹÊÕÏ + +//Ö÷ÀàÐÍ +#define EXCEPTION_MAJOR_SUBBOARD_NET 0x8 //×Ó°åÍøÂç +//´ÎÀàÐÍ +#define EXCEPTION_MINOR_IP_CONFLICT 0x1 //IP³åÍ» +#define EXCEPTION_MINOR_DISCONNECT 0x14 // ¶ÏÍø + +//[add]by zengxiaole 2017-09-27 DS-19D2000-S v2.0 +#define MAX_FIRE_ALARM_ZONE 12 //×î´óÏû·ÀÖ÷»ú±¨¾¯·ÖÇø¸öÊý +#define MAX_FIRE_ALARM_POINT_ZONE 32 //×î´óÏû·ÀÖ÷»ú±¨¾¯»ðµã¸öÊý + + +typedef enum tagCharEncodeType +{ + ENUM_MEM_CHAR_ENCODE_ERR = -1, //Error + ENUM_MEM_CHAR_ENCODE_NO = 0, //Don't know. + ENUM_MEM_CHAR_ENCODE_CN = 1, //EUC-CN, GB2312 + ENUM_MEM_CHAR_ENCODE_GBK = 2, //GBK + ENUM_MEM_CHAR_ENCODE_BIG5 = 3, //BIG5 + ENUM_MEM_CHAR_ENCODE_JP = 4, //JISX0208-1, EUC-JP + ENUM_MEM_CHAR_ENCODE_KR = 5, //EUC-KR + ENUM_MEM_CHAR_ENCODE_UTF8 = 6, //UTF-8 + ENUM_MEM_CHAR_ENCODE_ISO8859_1 = 7, //ISO-8859-n: ENUM_MEM_CHAR_ENCODE_ISO8859_1 + n -1 + ENUM_MEM_CHAR_ENCODE_UNICODE = 8, //Unicode +}CHAR_ENCODE_TYPE; + + +///////////////////////////////////////////////////////////////////////// +//Уʱ½á¹¹²ÎÊý +typedef struct +{ + DWORD dwYear; //Äê + DWORD dwMonth; //Ô + DWORD dwDay; //ÈÕ + DWORD dwHour; //ʱ + DWORD dwMinute; //·Ö + DWORD dwSecond; //Ãë +}NET_DVR_TIME, *LPNET_DVR_TIME; + +typedef struct tagNET_DVR_TIME_V30 +{ + WORD wYear; + BYTE byMonth; + BYTE byDay; + BYTE byHour; + BYTE byMinute; + BYTE bySecond; + BYTE byISO8601; /*ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ */ + WORD wMilliSec; //ºÁÃ룬¾«¶È²»¹»£¬Ä¬ÈÏΪ0 + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø, byISO8601Ϊ1ʱÓÐЧ + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø£¬byISO8601Ϊ1ʱÓÐЧ +}NET_DVR_TIME_V30, *LPNET_DVR_TIME_V30; + +typedef struct tagNET_DVR_TIME_SEARCH +{ + WORD wYear; //Ä꣬É豸OSDʱ¼ä + BYTE byMonth; //Ô£¬É豸OSDʱ¼ä + BYTE byDay; //ÈÕ£¬É豸OSDʱ¼ä + BYTE byHour; //ʱ£¬É豸OSDʱ¼ä + BYTE byMinute; //·Ö£¬É豸OSDʱ¼ä + BYTE bySecond; //Ã룬É豸OSDʱ¼ä + char cTimeDifferenceH; //Óë¹ú¼Ê±ê׼ʱ¼äµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14 + char cTimeDifferenceM; //Óë¹ú¼Ê±ê׼ʱ¼äµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45 + BYTE byLocalOrUTC; //0-ʱ²îÎÞЧ£¬É豸±¾µØʱ¼ä£¬¼´É豸OSDʱ¼ä 1-ʱ²îÓÐЧ + WORD wMillisecond; //ºÁÃ룬¾«¶È²»¹»£¬Ä¬ÈÏΪ0 +}NET_DVR_TIME_SEARCH, *LPNET_DVR_TIME_SEARCH; + +typedef struct tagNET_DVR_TIME_SEARCH_COND +{ + WORD wYear; //Äê + BYTE byMonth; //Ô + BYTE byDay; //ÈÕ + BYTE byHour; //ʱ + BYTE byMinute; //·Ö + BYTE bySecond; //Ãë + BYTE byLocalOrUTC; //0-ʱ²îÎÞЧ£¬É豸±¾µØʱ¼ä£¬¼´É豸OSDʱ¼ä 1-ʱ²îÓÐЧ + WORD wMillisecond; //ºÁÃ룬¾«¶È²»¹»£¬Ä¬ÈÏΪ0 + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø£¬byLocalOrUTCΪ1ʱÓÐЧ + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬+±íʾ¶«Çø£¬byLocalOrUTCΪ1ʱÓÐЧ +}NET_DVR_TIME_SEARCH_COND, *LPNET_DVR_TIME_SEARCH_COND; + + +typedef struct tagNET_DVR_TIME_V50 +{ + WORD wYear; //Äê + BYTE byMonth; //Ô + BYTE byDay; //ÈÕ + BYTE byHour; //ʱ + BYTE byMinute; //·Ö + BYTE bySecond; //Ãë + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + WORD wMillisecond; //ºÁÃ룬¾«¶È²»¹»£¬Ä¬ÈÏΪ0 + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø£¬byISO8601Ϊ1ʱÓÐЧ + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬+±íʾ¶«Çø£¬byISO8601Ϊ1ʱÓÐЧ +}NET_DVR_TIME_V50, *LPNET_DVR_TIME_V50; + + + +typedef struct tagNET_DVR_CALIBRATE_TIME +{ + DWORD dwSize; + NET_DVR_TIME struTime; + WORD wMilliSec; + BYTE byRes[14]; +}NET_DVR_CALIBRATE_TIME,*LPNET_DVR_CALIBRATE_TIME; + +#define MAX_TIMESIGN_LEN 32 //×Ô¶¨ÒåУʱ±ê¼ÇÐÅÏ¢³¤¶È +typedef struct tagNET_DVR_TIMESIGN_CFG +{ + DWORD dwSize; + BYTE byCustomSetTimeSign[MAX_TIMESIGN_LEN/*32*/];//×Ô¶¨ÒåУʱ±ê¼Ç + BYTE byRes[96]; +}NET_DVR_TIMESIGN_CFG,*LPNET_DVR_TIMESIGN_CFG; + + +typedef struct tagNET_DVR_TIME_EX +{ + WORD wYear; + BYTE byMonth; + BYTE byDay; + BYTE byHour; + BYTE byMinute; + BYTE bySecond; + BYTE byRes; +}NET_DVR_TIME_EX,*LPNET_DVR_TIME_EX; + +//ʱ¼ä¶Î(×ӽṹ) +typedef struct +{ + //¿ªÊ¼Ê±¼ä + BYTE byStartHour; + BYTE byStartMin; + //½áÊøʱ¼ä + BYTE byStopHour; + BYTE byStopMin; +}NET_DVR_SCHEDTIME, *LPNET_DVR_SCHEDTIME; + +/*É豸±¨¾¯ºÍÒì³£´¦Àí·½Ê½*/ +/*É豸±¨¾¯ºÍÒì³£´¦Àí·½Ê½*/ +#define NOACTION 0x0 /*ÎÞÏìÓ¦*/ +#define WARNONMONITOR 0x1 /*¼àÊÓÆ÷ÉϾ¯¸æ*/ +#define WARNONAUDIOOUT 0x2 /*ÉùÒô¾¯¸æ*/ +#define UPTOCENTER 0x4 /*ÉÏ´«ÖÐÐÄ*/ +#define TRIGGERALARMOUT 0x8 /*´¥·¢±¨¾¯Êä³ö*/ +#define TRIGGERCATPIC 0x10 /*´¥·¢×¥Í¼²¢ÉÏ´«E-mail*/ +#define SEND_PIC_FTP 0x200 /*ץͼ²¢ÉÏ´«ftp*/ + +typedef struct tagNET_DVR_STRUCTHEAD +{ + WORD wLength; //½á¹¹³¤¶È + BYTE byVersion ; /*¸ßµÍ4λ·Ö±ð´ú±í¸ßµÍ°æ±¾£¬ºóÐø¸ù¾Ý°æ±¾ºÍ³¤¶È½øÐÐÀ©Õ¹£¬²»Í¬µÄ°æ±¾µÄ³¤¶È½øÐÐÏÞÖÆ*/ + BYTE byRes; +}NET_DVR_STRUCTHEAD, *LPNET_DVR_STRUCTHEAD; + +typedef struct tagNET_DVR_HANDLEEXCEPTION_V41 +{ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x400: Ðé½»Õì²â Áª¶¯ ¾Û½¹Ä£Ê½£¨Ìṩ¿ÉÅäÖÃÏԭÏÈÉ豸×Ô¶¯Íê³É£©IPC5.1.0*/ + /*0x800: PTZÁª¶¯¸ú×Ù(Çò»ú¸ú×ÙÄ¿±ê)*/ + /*0x4000:°×¹âµÆ±¨¾¯*/ + /*0x10000:¶ÌÐű¨¾¯*/ + /*0x20000:ָʾµÆ±¨¾¯*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊý + DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; //´¥·¢±¨¾¯Í¨µÀ + BYTE byRes[64]; //±£Áô +}NET_DVR_HANDLEEXCEPTION_V41, *LPNET_DVR_HANDLEEXCEPTION_V41; + +typedef struct tagNET_DVR_HANDLEEXCEPTION_V40 +{ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x80: ±¨¾¯´¥·¢Â¼Ïñ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö) */ + /*0x100: ±¨¾¯´¥·¢ÔÆ̨ԤÖõã (Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x400: Ðé½»Õì²â Áª¶¯ ¾Û½¹Ä£Ê½£¨Ìṩ¿ÉÅäÖÃÏԭÏÈÉ豸×Ô¶¯Íê³É£©IPC5.1.0*/ + /*0x800: PTZÁª¶¯¸ú×Ù(Çò»ú¸ú×ÙÄ¿±ê)*/ + /*0x1000:ץͼÉÏ´«µ½ÔÆ*/ + /*0x2000:¶ÌÐű¨¾¯*/ + /*0x4000:°×¹âµÆ±¨¾¯*/ + /*0x8000:ÓïÒô±¨¾¯*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelAlarmOutChanNum; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý ʵ¼ÊÖ§³ÖÊý + DWORD dwRelAlarmOut[MAX_CHANNUM_V30]; //´¥·¢±¨¾¯Í¨µÀ + BYTE byWhiteLightDurationTime;//°×¹âµÆÉÁ˸³ÖÐøʱ³¤£¬1~60s(µ±¿ªÆôÁË°×¹âµÆ±¨¾¯Ê±ÉúЧ) + BYTE byBrightness;//°×¹âµÆÁÁ¶È£¬·¶Î§0-100£¬Ä¬ÈÏ50 + BYTE byAudioType;//ÉùÒô±¨¾¯ÀàÐÍ + BYTE byTimes;//ÉùÒô±¨¾¯´ÎÊý£¬·¶Î§£º0-9£¬Ä¬ÈÏ2, 0xff-³ÖÐø + BYTE byRes[60]; //±£Áô +}NET_DVR_HANDLEEXCEPTION_V40, *LPNET_DVR_HANDLEEXCEPTION_V40; + +//±¨¾¯ºÍÒì³£´¦Àí½á¹¹(×ӽṹ)(¶à´¦Ê¹ÓÃ)(9000À©Õ¹) +typedef struct +{ + DWORD dwHandleType; /*´¦Àí·½Ê½,´¦Àí·½Ê½µÄ"»ò"½á¹û*/ + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x2000:¶ÌÐű¨¾¯*/ + BYTE byRelAlarmOut[MAX_ALARMOUT_V30]; + //±¨¾¯´¥·¢µÄÊä³öͨµÀ,±¨¾¯´¥·¢µÄÊä³ö,Ϊ1±íʾ´¥·¢¸ÃÊä³ö +}NET_DVR_HANDLEEXCEPTION_V30, *LPNET_DVR_HANDLEEXCEPTION_V30; + +//±¨¾¯ºÍÒì³£´¦Àí½á¹¹(×ӽṹ)(¶à´¦Ê¹ÓÃ) +typedef struct +{ + DWORD dwHandleType; /*´¦Àí·½Ê½,´¦Àí·½Ê½µÄ"»ò"½á¹û*/ + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: Jpegץͼ²¢ÉÏ´«EMail*/ + BYTE byRelAlarmOut[MAX_ALARMOUT]; //±¨¾¯´¥·¢µÄÊä³öͨµÀ,±¨¾¯´¥·¢µÄÊä³ö,Ϊ1±íʾ´¥·¢¸ÃÊä³ö +}NET_DVR_HANDLEEXCEPTION, *LPNET_DVR_HANDLEEXCEPTION; + +//DVRÉ豸²ÎÊý +typedef struct +{ + DWORD dwSize; + BYTE sDVRName[NAME_LEN]; //DVRÃû³Æ + DWORD dwDVRID; //DVR ID,ÓÃÓÚÒ£¿ØÆ÷ //V1.4(0-99), V1.5(0-255) + DWORD dwRecycleRecord; //ÊÇ·ñÑ­»·Â¼Ïñ,0:²»ÊÇ; 1:ÊÇ + //ÒÔϲ»¿É¸ü¸Ä + BYTE sSerialNumber[SERIALNO_LEN]; //ÐòÁкŠ+ DWORD dwSoftwareVersion; //Èí¼þ°æ±¾ºÅ,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwSoftwareBuildDate; //Èí¼þÉú³ÉÈÕÆÚ,0xYYYYMMDD + DWORD dwDSPSoftwareVersion; //DSPÈí¼þ°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwDSPSoftwareBuildDate; // DSPÈí¼þÉú³ÉÈÕÆÚ,0xYYYYMMDD + DWORD dwPanelVersion; // Ç°Ãæ°å°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwHardwareVersion; // Ó²¼þ°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + BYTE byAlarmInPortNum; //DVR±¨¾¯ÊäÈë¸öÊý + BYTE byAlarmOutPortNum; //DVR±¨¾¯Êä³ö¸öÊý + BYTE byRS232Num; //DVR 232´®¿Ú¸öÊý + BYTE byRS485Num; //DVR 485´®¿Ú¸öÊý + BYTE byNetworkPortNum; //ÍøÂç¿Ú¸öÊý + BYTE byDiskCtrlNum; //DVR Ó²ÅÌ¿ØÖÆÆ÷¸öÊý + BYTE byDiskNum; //DVR Ó²Å̸öÊý + BYTE byDVRType; //DVRÀàÐÍ, 1:DVR 2:ATM DVR 3:DVS ...... + BYTE byChanNum; //DVR ͨµÀ¸öÊý + BYTE byStartChan; //ÆðʼͨµÀºÅ,ÀýÈçDVS-1,DVR - 1 + BYTE byDecordChans; //DVR ½âÂë·Êý + BYTE byVGANum; //VGA¿ÚµÄ¸öÊý + BYTE byUSBNum; //USB¿ÚµÄ¸öÊý + BYTE byAuxoutNum; //¸¨¿ÚµÄ¸öÊý + BYTE byAudioNum; //ÓïÒô¿ÚµÄ¸öÊý + BYTE byIPChanNum; //×î´óÊý×ÖͨµÀÊý +}NET_DVR_DEVICECFG, *LPNET_DVR_DEVICECFG; + +/* +IPµØÖ· +*/ +typedef struct +{ + char sIpV4[16]; /* IPv4µØÖ· */ + BYTE byIPv6[128]; /* ±£Áô */ +}NET_DVR_IPADDR, *LPNET_DVR_IPADDR; + +typedef union tagNET_DVR_IPADDR_UNION +{ + char szIPv4[16]; //IPv4µØÖ· + char szIPv6[256]; //IPv6µØÖ· +}NET_DVR_IPADDR_UNION, *LPNET_DVR_IPADDR_UNION; + +typedef struct tagNET_DVR_ADDRESS +{ + NET_DVR_IPADDR struIP; //IPµØÖ· + WORD wPort; //¶Ë¿ÚºÅ + BYTE byRes[2]; +}NET_DVR_ADDRESS, *LPNET_DVR_ADDRESS; + +/* +ÍøÂçÊý¾Ý½á¹¹(×ӽṹ)(9000À©Õ¹) +*/ +typedef struct +{ + NET_DVR_IPADDR struDVRIP; //DVR IPµØÖ· + NET_DVR_IPADDR struDVRIPMask; //DVR IPµØÖ·ÑÚÂë + DWORD dwNetInterface; //ÍøÂç½Ó¿Ú1-10MBase-T 2-10MBase-TÈ«Ë«¹¤ 3-100MBase-TX 4-100MÈ«Ë«¹¤ 5-10M/100M×ÔÊÊÓ¦ + WORD wDVRPort; //¶Ë¿ÚºÅ + WORD wMTU; //Ôö¼ÓMTUÉèÖã¬Ä¬ÈÏ1500¡£ + BYTE byMACAddr[MACADDR_LEN]; // ÎïÀíµØÖ· + BYTE byEthernetPortNo; //Íø¿ÚºÅ£¬0-ÎÞЧ£¬1-Íø¿Ú0£¬2-Íø¿Ú1ÒÔ´ËÀàÍÆ£¬Ö»¶Á + BYTE byRes[1]; //±£Áô +}NET_DVR_ETHERNET_V30, *LPNET_DVR_ETHERNET_V30; + +/* +ÍøÂçÊý¾Ý½á¹¹(×ӽṹ) +*/ +typedef struct +{ + char sDVRIP[16]; //DVR IPµØÖ· + char sDVRIPMask[16]; //DVR IPµØÖ·ÑÚÂë + DWORD dwNetInterface; //ÍøÂç½Ó¿Ú 1-10MBase-T 2-10MBase-TÈ«Ë«¹¤ 3-100MBase-TX 4-100MÈ«Ë«¹¤ 5-10M/100M×ÔÊÊÓ¦ + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byMACAddr[MACADDR_LEN]; //·þÎñÆ÷µÄÎïÀíµØÖ· +}NET_DVR_ETHERNET; + +//pppoe½á¹¹ +typedef struct +{ + DWORD dwPPPOE; //0-²»ÆôÓÃ,1-ÆôÓà + BYTE sPPPoEUser[NAME_LEN]; //PPPoEÓû§Ãû + char sPPPoEPassword[PASSWD_LEN]; // PPPoEÃÜÂë + NET_DVR_IPADDR struPPPoEIP; //PPPoE IPµØÖ· +}NET_DVR_PPPOECFG, *LPNET_DVR_PPPOECFG; + +//ÍøÂçÅäÖýṹ(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_ETHERNET_V30 struEtherNet[MAX_ETHERNET]; //ÒÔÌ«Íø¿Ú + NET_DVR_IPADDR struRes1[2]; /*±£Áô*/ + NET_DVR_IPADDR struAlarmHostIpAddr; /* ±¨¾¯Ö÷»úIPµØÖ· */ + BYTE byRes2[4]; /* ±£Áô */ + WORD wAlarmHostIpPort; /* ±¨¾¯Ö÷»ú¶Ë¿ÚºÅ */ + BYTE byUseDhcp; /* ÊÇ·ñÆôÓÃDHCP 0xff-ÎÞЧ 0-²»ÆôÓà 1-ÆôÓÃ*/ + BYTE byIPv6Mode; //IPv6·ÖÅ䷽ʽ£¬0-·Óɹ«¸æ£¬1-ÊÖ¶¯ÉèÖã¬2-ÆôÓÃDHCP·ÖÅä + NET_DVR_IPADDR struDnsServer1IpAddr; /* ÓòÃû·þÎñÆ÷1µÄIPµØÖ· */ + NET_DVR_IPADDR struDnsServer2IpAddr; /* ÓòÃû·þÎñÆ÷2µÄIPµØÖ· */ + BYTE byIpResolver[MAX_DOMAIN_NAME]; /* IP½âÎö·þÎñÆ÷ÓòÃû»òIPµØÖ· */ + WORD wIpResolverPort; /* IP½âÎö·þÎñÆ÷¶Ë¿ÚºÅ */ + WORD wHttpPortNo; /* HTTP¶Ë¿ÚºÅ */ + NET_DVR_IPADDR struMulticastIpAddr; /* ¶à²¥×éµØÖ· */ + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ· */ + NET_DVR_PPPOECFG struPPPoE; + BYTE byEnablePrivateMulticastDiscovery; //˽ÓжಥËÑË÷£¬0~ĬÈÏ£¬1~ÆôÓã¬2-½ûÓà + BYTE byEnableOnvifMulticastDiscovery; //Onvif¶à²¥ËÑË÷£¬0~ĬÈÏ£¬1~ÆôÓã¬2-½ûÓà + BYTE byEnableDNS; //DNS×Ô¶¯Ê¹ÄÜ, 0-±£Áô£¬1-´ò¿ª£¬2-¹Ø±Õ + BYTE byRes[61]; +} NET_DVR_NETCFG_V30, *LPNET_DVR_NETCFG_V30; + +//¶àÍø¿¨ÅäÖÃÍø¿¨½á¹¹ +typedef struct +{ + NET_DVR_IPADDR struDVRIP; //DVR IPµØÖ· + NET_DVR_IPADDR struDVRIPMask; //DVR IPµØÖ·ÑÚÂë + DWORD dwNetInterface; //ÍøÂç½Ó¿Ú1-10MBase-T 2-10MBase-TÈ«Ë«¹¤ 3-100MBase-TX 4-100MÈ«Ë«¹¤ 5-10M/100M/1000M×ÔÊÊÓ¦ + BYTE byCardType; //Íø¿¨ÀàÐÍ£¬0-ÆÕͨÍø¿¨£¬1-ÄÚÍøÍø¿¨£¬2-ÍâÍøÍø¿¨ + BYTE byEnableDNS; //DNSÊÇ·ñ×Ô¶¯Ê¹ÄÜ£¬0-±£Áô£¬1-´ò¿ª, 0-¹Ø±Õ + WORD wMTU; //Ôö¼ÓMTUÉèÖã¬Ä¬ÈÏ1500¡£ + BYTE byMACAddr[MACADDR_LEN]; //ÎïÀíµØÖ·£¬Ö»ÓÃÓÚÏÔʾ + BYTE byEthernetPortNo; //Íø¿ÚºÅ£¬0-ÎÞЧ£¬1-Íø¿Ú0£¬2-Íø¿Ú1ÒÔ´ËÀàÍÆ£¬Ö»¶Á + BYTE bySilkScreen; //Ë¿Ó¡ÐÅÏ¢£¬0-ÎÞЧ£¬1-GE1£¬2-GE2£¬3-G1£¬4-G2£¬Ö»¶Á + BYTE byUseDhcp; /* ÊÇ·ñÆôÓÃDHCP */ + BYTE byRes3[3]; + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ· */ + NET_DVR_IPADDR struDnsServer1IpAddr; /* ÓòÃû·þÎñÆ÷1µÄIPµØÖ· */ + NET_DVR_IPADDR struDnsServer2IpAddr; /* ÓòÃû·þÎñÆ÷2µÄIPµØÖ· */ +}NET_DVR_ETHERNET_MULTI, *LPNET_DVR_ETHERNET_MULTI; + +//¶àÍø¿¨ÍøÂçÅäÖýṹ +typedef struct +{ + DWORD dwSize; + BYTE byDefaultRoute; //ĬÈÏ·ÓÉ£¬0±íʾstruEtherNet[0]£¬1±íʾstruEtherNet[1] + BYTE byNetworkCardNum; //É豸ʵ¼Ê¿ÉÅäÖõÄÍø¿¨ÊýÄ¿ + BYTE byWorkMode; //0-ÆÕͨ¶àÍø¿¨Ä£Ê½£¬1-ÄÚÍâÍø¸ôÀëģʽ + BYTE byRes; //±£Áô + NET_DVR_ETHERNET_MULTI struEtherNet[MAX_NETWORK_CARD]; //ÒÔÌ«Íø¿Ú + NET_DVR_IPADDR struManageHost1IpAddr; /* Ö÷¹ÜÀíÖ÷»úIPµØÖ· */ + NET_DVR_IPADDR struManageHost2IpAddr; /* ¸¨¹ÜÀíÖ÷»úIPµØÖ· */ + NET_DVR_IPADDR struAlarmHostIpAddr; /* ±¨¾¯Ö÷»úIPµØÖ· */ + WORD wManageHost1Port; /* Ö÷¹ÜÀíÖ÷»ú¶Ë¿ÚºÅ */ + WORD wManageHost2Port; /* ¸¨¹ÜÀíÖ÷»ú¶Ë¿ÚºÅ */ + WORD wAlarmHostIpPort; /* ±¨¾¯Ö÷»ú¶Ë¿ÚºÅ */ + BYTE byIpResolver[MAX_DOMAIN_NAME]; /* IP½âÎö·þÎñÆ÷ÓòÃû»òIPµØÖ· */ + WORD wIpResolverPort; /* IP½âÎö·þÎñÆ÷¶Ë¿ÚºÅ */ + WORD wDvrPort; //ͨѶ¶Ë¿Ú ĬÈÏ8000 + WORD wHttpPortNo; /* HTTP¶Ë¿ÚºÅ */ + WORD wDvrPort2; //ͨѶ¶Ë¿Ú2 + BYTE byRes2[4]; + NET_DVR_IPADDR struMulticastIpAddr; /* ¶à²¥×éµØÖ· */ + NET_DVR_PPPOECFG struPPPoE; + BYTE byRes3[24]; +}NET_DVR_NETCFG_MULTI, *LPNET_DVR_NETCFG_MULTI; + +//ÍøÂçÅäÖýṹ +typedef struct +{ + DWORD dwSize; + NET_DVR_ETHERNET struEtherNet[MAX_ETHERNET]; /* ÒÔÌ«Íø¿Ú */ + char sManageHostIP[16]; //Ô¶³Ì¹ÜÀíÖ÷»úµØÖ· + WORD wManageHostPort; //Ô¶³Ì¹ÜÀíÖ÷»ú¶Ë¿ÚºÅ + char sIPServerIP[16]; //IPServer·þÎñÆ÷µØÖ· + char sMultiCastIP[16]; //¶à²¥×éµØÖ· + char sGatewayIP[16]; //Íø¹ØµØÖ· + char sNFSIP[16]; //NFSÖ÷»úIPµØÖ· + BYTE sNFSDirectory[PATHNAME_LEN];//NFSĿ¼ + DWORD dwPPPOE; //0-²»ÆôÓÃ,1-ÆôÓà + BYTE sPPPoEUser[NAME_LEN]; //PPPoEÓû§Ãû + char sPPPoEPassword[PASSWD_LEN];// PPPoEÃÜÂë + char sPPPoEIP[16]; //PPPoE IPµØÖ·(Ö»¶Á) + WORD wHttpPort; //HTTP¶Ë¿ÚºÅ +}NET_DVR_NETCFG, *LPNET_DVR_NETCFG; + +//ÍøÂçÅäÖýṹ(V50) +typedef struct tagNET_DVR_NETCFG_V50 +{ + DWORD dwSize; + NET_DVR_ETHERNET_V30 struEtherNet[MAX_ETHERNET]; //ÒÔÌ«Íø¿Ú + NET_DVR_IPADDR struRes1[2]; /*±£Áô*/ + NET_DVR_IPADDR struAlarmHostIpAddr; /* ±¨¾¯Ö÷»úIPµØÖ· */ + BYTE byRes2[4]; /* ±£Áô */ + WORD wAlarmHostIpPort; /* ±¨¾¯Ö÷»ú¶Ë¿ÚºÅ */ + BYTE byUseDhcp; /* ÊÇ·ñÆôÓÃDHCP 0xff-ÎÞЧ 0-²»ÆôÓà 1-ÆôÓÃ*/ + BYTE byIPv6Mode; //IPv6·ÖÅ䷽ʽ£¬0-·Óɹ«¸æ£¬1-ÊÖ¶¯ÉèÖã¬2-ÆôÓÃDHCP·ÖÅä + NET_DVR_IPADDR struDnsServer1IpAddr; /* ÓòÃû·þÎñÆ÷1µÄIPµØÖ· */ + NET_DVR_IPADDR struDnsServer2IpAddr; /* ÓòÃû·þÎñÆ÷2µÄIPµØÖ· */ + BYTE byIpResolver[MAX_DOMAIN_NAME]; /* IP½âÎö·þÎñÆ÷ÓòÃû»òIPµØÖ· */ + WORD wIpResolverPort; /* IP½âÎö·þÎñÆ÷¶Ë¿ÚºÅ */ + WORD wHttpPortNo; /* HTTP¶Ë¿ÚºÅ */ + NET_DVR_IPADDR struMulticastIpAddr; /* ¶à²¥×éµØÖ· */ + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ· */ + NET_DVR_PPPOECFG struPPPoE; + BYTE byEnablePrivateMulticastDiscovery; //˽ÓжಥËÑË÷£¬0~ĬÈÏ£¬1~ÆôÓã¬2-½ûÓà + BYTE byEnableOnvifMulticastDiscovery; //Onvif¶à²¥ËÑË÷£¬0~ĬÈÏ£¬1~ÆôÓã¬2-½ûÓà + WORD wAlarmHost2IpPort; /* ±¨¾¯Ö÷»ú2¶Ë¿ÚºÅ */ + NET_DVR_IPADDR struAlarmHost2IpAddr; /* ±¨¾¯Ö÷»ú2 IPµØÖ· */ + BYTE byEnableDNS; //DNSʹÄÜ, 0-¹Ø±Õ£¬1-´ò¿ª + BYTE byRes[599]; +}NET_DVR_NETCFG_V50, *LPNET_DVR_NETCFG_V50; + +//sipÅäÖà +typedef struct tagNET_DVR_SIP_CFG +{ + DWORD dwSize; + BYTE byEnableAutoLogin; //ʹÄÜ×Ô¶¯×¢²á£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byLoginStatus; //×¢²á״̬£¬0-δע²á£¬1-ÒÑ×¢²á£¬´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byRes1[2]; + NET_DVR_IPADDR stuServerIP; //SIP·þÎñÆ÷IP + WORD wServerPort; //SIP·þÎñÆ÷¶Ë¿Ú + BYTE byRes2[2]; + BYTE byUserName[NAME_LEN]; //×¢²áÓû§Ãû + BYTE byPassWord[PASSWD_LEN]; //×¢²áÃÜÂë + BYTE byLocalNo[MAX_NUMBER_LEN]; + BYTE byDispalyName[MAX_NAME_LEN]; //É豸ÏÔʾÃû³Æ + WORD wLocalPort; //±¾µØ¶Ë¿Ú + BYTE byLoginCycle; //×¢²áÖÜÆÚ£¬1-99·ÖÖÓ + BYTE byType;//0-IP/IPV6,1-ÓòÃû + BYTE byDomainName[MAX_DOMAIN_NAME]; //ÓòÃû + BYTE byRes[64]; +}NET_DVR_SIP_CFG, *LPNET_DVR_SIP_CFG; + +typedef struct tagNET_DVR_SIP_CFG_V50 +{ + DWORD dwSize; + BYTE byEnableAutoLogin; //ʹÄÜ×Ô¶¯×¢²á£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byLoginStatus; //×¢²á״̬£¬0-δע²á£¬1-ÒÑ×¢²á£¬´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byRes1[2]; + NET_DVR_IPADDR stuServerIP; //SIP·þÎñÆ÷IP + WORD wServerPort; //SIP·þÎñÆ÷¶Ë¿Ú + BYTE byRes2[2]; + BYTE byUserName[NAME_LEN]; //×¢²áÓû§Ãû + BYTE byPassWord[PASSWD_LEN]; //×¢²áÃÜÂë + BYTE byLocalNo[MAX_NUMBER_LEN]; + BYTE byDispalyName[MAX_NAME_LEN]; //É豸ÏÔʾÃû³Æ + WORD wLocalPort; //±¾µØ¶Ë¿Ú + BYTE byLoginCycle; //×¢²áÖÜÆÚ£¬1-99·ÖÖÓ + BYTE byRes3; + BYTE bySIPServerDomain[MAX_DOMAIN_NAME]; //sip·þÎñÆ÷ÓòÃû£¨IPºÍÓòÃûÖ»ÐèÒªÌîÆäÒ»£¬¶¼ÓÐֵʱIPÓÅÏÈ£© + NET_DVR_IPADDR stuSTUNServerIP; // STUN·þÎñÆ÷IP + BYTE bySTUNServerDomain[MAX_DOMAIN_NAME]; //STUN·þÎñÆ÷ÓòÃû £¨IPºÍÓòÃûÖ»ÐèÒªÌîÆäÒ»£¬¶¼ÓÐֵʱIPÓÅÏÈ£© + WORD wSTUNServerPort; // STUN·þÎñÆ÷¶Ë¿Ú + BYTE byRes4[2]; + NET_DVR_IPADDR stuProxyServerIP; //´úÀí·þÎñÆ÷IP + BYTE byProxyServerDomain[MAX_DOMAIN_NAME]; //´úÀí·þÎñÆ÷ÓòÃû £¨IPºÍÓòÃûÖ»ÐèÒªÌîÆäÒ»£¬¶¼ÓÐֵʱIPÓÅÏÈ£© + WORD wProxyServerPort; // ´úÀí·þÎñÆ÷¶Ë¿Ú + BYTE byNetWork; //±íʾÍøÂçÀàÐÍ£¬0-ÎÞЧ£¬1-ÓÐÏßÍøÂç1£¬ 2-ÓÐÏßÍøÂç2£¬3-ÎÞÏßÍøÂç + BYTE byRes5; + BYTE byCalledTargetName[NET_SDK_MAX_CALLEDTARGET_NAME]; + BYTE byRes[224]; +}NET_DVR_SIP_CFG_V50, *LPNET_DVR_SIP_CFG_V50; + +//IP¿ÉÊÓ¶Ô½²·Ö»úÅäÖà +typedef struct tagNET_DVR_IP_VIEW_DEVCFG +{ + DWORD dwSize; + BYTE byDefaultRing; //ĬÈÏÁåÒô£¬·¶Î§1-6 + BYTE byRingVolume; //ÁåÒôÒôÁ¿£¬·¶Î§0-9 + BYTE byInputVolume; //ÊäÈëÒôÁ¿Öµ£¬·¶Î§0-6 + BYTE byOutputVolume; //Êä³öÒôÁ¿Öµ£¬·¶Î§0-9 + WORD wRtpPort; //Rtp¶Ë¿Ú + BYTE byRes1[2]; + DWORD dwPreviewDelayTime; //Ô¤ÀÀÑÓʱÅäÖã¬0-30Ãë + BYTE byRes2[64]; +}NET_DVR_IP_VIEW_DEVCFG,*LPNET_DVR_IP_VIEW_DEVCFG; + +//Ip¿ÉÊÓ¶Ô½²ÒôƵÏà¹Ø²ÎÊýÅäÖà +typedef struct tagNET_DVR_IP_VIEW_AUDIO_CFG +{ + DWORD dwSize; + BYTE byAudioEncPri1; //ÒôƵ±àÂëÓÅÏȼ¶1£¬0-G722£¬1-G711_U£¬2-G711_A£¬ 5-MPEG2,6-G726£¬7-AAC + BYTE byAudioEncPri2; //ÒôƵ±àÂëÓÅÏȼ¶2£¬µ±sip·þÎñÆ÷²»Ö§³ÖÒôƵ±àÂë1ʱ»áʹÓÃÒôƵ±àÂë2£¬0-G722£¬1-G711_U£¬2-G711_A£¬ 5-MPEG2,6-G726£¬7-AAC + WORD wAudioPacketLen1; //ÒôƵ±àÂë1Êý¾Ý°ü³¤¶È + WORD wAudioPacketLen2; //ÒôƵ±àÂë2Êý¾Ý°ü³¤¶È + BYTE byRes[30]; +}NET_DVR_IP_VIEW_AUDIO_CFG,*LPNET_DVR_IP_VIEW_AUDIO_CFG; + +//IP·Ö»úºô½Ð¶Ô½²²ÎÊýÅäÖýṹÌå +typedef struct tagNET_DVR_IP_VIEW_CALL_CFG +{ + DWORD dwSize ; + BYTE byEnableAutoResponse; //ʹÄÜ×Ô¶¯Ó¦´ð,0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byAudoResponseTime; //×Ô¶¯Ó¦´ðʱ¼ä£¬0-30Ãë + BYTE byRes1[2]; + BYTE byEnableAlarmNumber1; //Æô¶¯±¨¾¯ºÅÂë1£¬0-²»Æô¶¯£¬1-Æô¶¯ + BYTE byRes2[3]; + BYTE byAlarmNumber1[MAX_NUMBER_LEN]; //ºô½ÐºÅÂë1 + BYTE byEnableAlarmNumber2; //Æô¶¯±¨¾¯ºÅÂë2£¬0-²»Æô¶¯£¬1-Æô¶¯ + BYTE byRes3[3]; + BYTE byAlarmNumber2[MAX_NUMBER_LEN]; //ºô½ÐºÅÂë2£¬ºô½ÐºÅÂë1ʧ°Ü»á³¢ÊÔºô½ÐºÅÂë2 + BYTE byRes4[72]; +}NET_DVR_IP_VIEW_CALL_CFG,*LPNET_DVR_IP_VIEW_CALL_CFG; + +//ͨµÀͼÏó½á¹¹ +//Òƶ¯Õì²â(×ӽṹ)(°´×鷽ʽÀ©Õ¹) +typedef struct +{ + DWORD dwMaxRecordChanNum; //É豸֧³ÖµÄ×î´ó¹ØÁªÂ¼ÏñͨµÀÊý-Ö»¶Á + DWORD dwCurRecordChanNum; //µ±Ç°Êµ¼ÊÒÑÅäÖõĹØÁªÂ¼ÏñͨµÀÊý + DWORD dwRelRecordChan[MAX_CHANNUM_V30]; /* ʵ¼Ê´¥·¢Â¼ÏñͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0 - MAX_CHANNUM_V30-1ÓÐЧ£¬Èç¹ûÖмäÓöµ½0xffffffff,ÔòºóÐøÎÞЧ*/ + BYTE byRes[64]; //±£Áô +}NET_DVR_RECORDCHAN, *LPNET_DVR_RECORDCHAN; + +//Òƶ¯Õì²â(×ӽṹ)(9000À©Õ¹) +typedef struct +{ + BYTE byMotionScope[64][96]; /*Õì²âÇøÓò,0-96λ,±íʾ64ÐÐ,¹²ÓÐ96*64¸öСºê¿é,Ϊ1±íʾÊÇÒƶ¯Õì²âÇøÓò,0-±íʾ²»ÊÇ*/ + BYTE byMotionSensitive; /*Òƶ¯Õì²âÁéÃô¶È, 0 - 5,Ô½¸ßÔ½ÁéÃô,oxff¹Ø±Õ*/ + BYTE byEnableHandleMotion; /* ÊÇ·ñ´¦ÀíÒƶ¯Õì²â 0£­·ñ 1£­ÊÇ*/ + BYTE byEnableDisplay; /*ÆôÓÃÒƶ¯Õì²â¸ßÁÁÏÔʾ£¬0-·ñ£¬1-ÊÇ*/ + char reservedData; + NET_DVR_HANDLEEXCEPTION_V30 struMotionHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; /* ±¨¾¯´¥·¢µÄ¼ÏóͨµÀ*/ +}NET_DVR_MOTION_V30, *LPNET_DVR_MOTION_V30; + +//Òƶ¯Õì²â(×ӽṹ) +typedef struct +{ + BYTE byMotionScope[18][22]; /*Õì²âÇøÓò,¹²ÓÐ22*18¸öСºê¿é,Ϊ1±íʾ¸Äºê¿éÊÇÒƶ¯Õì²âÇøÓò,0-±íʾ²»ÊÇ*/ + BYTE byMotionSensitive; /*Òƶ¯Õì²âÁéÃô¶È, 0 - 5,Ô½¸ßÔ½ÁéÃô,0xff¹Ø±Õ*/ + BYTE byEnableHandleMotion; /* ÊÇ·ñ´¦ÀíÒƶ¯Õì²â */ + BYTE byEnableDisplay; /*ÆôÓÃÒƶ¯Õì²â¸ßÁÁÏÔʾ£¬0-·ñ£¬1-ÊÇ*/ + char reservedData; + NET_DVR_HANDLEEXCEPTION strMotionHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];//²¼·Àʱ¼ä + BYTE byRelRecordChan[MAX_CHANNUM]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ +}NET_DVR_MOTION, *LPNET_DVR_MOTION; + +//ÕÚµ²±¨¾¯(×ӽṹ)(9000À©Õ¹) ÇøÓò´óС704*576 +typedef struct +{ + DWORD dwEnableHideAlarm; /* ÊÇ·ñÆô¶¯ÕÚµ²±¨¾¯ ,0-·ñ,1-µÍÁéÃô¶È 2-ÖÐÁéÃô¶È 3-¸ßÁéÃô¶È*/ + WORD wHideAlarmAreaTopLeftX; /* ÕÚµ²ÇøÓòµÄx×ø±ê */ + WORD wHideAlarmAreaTopLeftY; /* ÕÚµ²ÇøÓòµÄy×ø±ê */ + WORD wHideAlarmAreaWidth; /* ÕÚµ²ÇøÓòµÄ¿í */ + WORD wHideAlarmAreaHeight; /*ÕÚµ²ÇøÓòµÄ¸ß*/ + NET_DVR_HANDLEEXCEPTION_V30 strHideAlarmHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä +}NET_DVR_HIDEALARM_V30, *LPNET_DVR_HIDEALARM_V30; +//ÕÚµ²±¨¾¯(×ӽṹ) ÇøÓò´óС704*576 +typedef struct +{ + DWORD dwEnableHideAlarm; /* ÊÇ·ñÆô¶¯ÕÚµ²±¨¾¯ ,0-·ñ,1-µÍÁéÃô¶È 2-ÖÐÁéÃô¶È 3-¸ßÁéÃô¶È*/ + WORD wHideAlarmAreaTopLeftX; /* ÕÚµ²ÇøÓòµÄx×ø±ê */ + WORD wHideAlarmAreaTopLeftY; /* ÕÚµ²ÇøÓòµÄy×ø±ê */ + WORD wHideAlarmAreaWidth; /* ÕÚµ²ÇøÓòµÄ¿í */ + WORD wHideAlarmAreaHeight; /*ÕÚµ²ÇøÓòµÄ¸ß*/ + NET_DVR_HANDLEEXCEPTION strHideAlarmHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];//²¼·Àʱ¼ä +}NET_DVR_HIDEALARM, *LPNET_DVR_HIDEALARM; + +//ÐźŶªÊ§±¨¾¯(×ӽṹ)(9000À©Õ¹) +typedef struct +{ + BYTE byEnableHandleVILost; /* ÊÇ·ñ´¦ÀíÐźŶªÊ§±¨¾¯ */ + NET_DVR_HANDLEEXCEPTION_V30 strVILostHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä +}NET_DVR_VILOST_V30, *LPNET_DVR_VILOST_V30; + +//ÐźŶªÊ§±¨¾¯(×ӽṹ) +typedef struct +{ + BYTE byEnableHandleVILost; /* ÊÇ·ñ´¦ÀíÐźŶªÊ§±¨¾¯ */ + NET_DVR_HANDLEEXCEPTION strVILostHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];//²¼·Àʱ¼ä +}NET_DVR_VILOST, *LPNET_DVR_VILOST; + +//ÕÚµ²ÇøÓò(×ӽṹ) +typedef struct +{ + WORD wHideAreaTopLeftX; /* ÕÚµ²ÇøÓòµÄx×ø±ê */ + WORD wHideAreaTopLeftY; /* ÕÚµ²ÇøÓòµÄy×ø±ê */ + WORD wHideAreaWidth; /* ÕÚµ²ÇøÓòµÄ¿í */ + WORD wHideAreaHeight; /*ÕÚµ²ÇøÓòµÄ¸ß*/ +}NET_DVR_SHELTER, *LPNET_DVR_SHELTER; + +typedef struct +{ + BYTE byBrightness; /*ÁÁ¶È,0-255*/ + BYTE byContrast; /*¶Ô±È¶È,0-255*/ + BYTE bySaturation; /*±¥ºÍ¶È,0-255*/ + BYTE byHue; /*É«µ÷,0-255*/ +}NET_DVR_COLOR, *LPNET_DVR_COLOR; + +typedef struct +{ + BYTE byRed; //RGBÑÕÉ«Èý·ÖÁ¿ÖеĺìÉ« + BYTE byGreen; //RGBÑÕÉ«Èý·ÖÁ¿ÖеÄÂÌÉ« + BYTE byBlue; //RGBÑÕÉ«Èý·ÖÁ¿ÖеÄÀ¶É« + BYTE byRes; //±£Áô +}NET_DVR_RGB_COLOR, *LPNET_DVR_RGB_COLOR; + +//×ø±êÖµ¹éÒ»»¯,¸¡µãÊýֵΪµ±Ç°»­ÃæµÄ°Ù·Ö±È´óС, ¾«¶ÈΪСÊýµãºóÈýλ +//µã×ø±ê½á¹¹ +typedef struct tagNET_VCA_POINT +{ + float fX; // XÖá×ø±ê, 0.000~1 + float fY; //YÖá×ø±ê, 0.000~1 +}NET_VCA_POINT, *LPNET_VCA_POINT; + +//ͨµÀͼÏó½á¹¹(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + BYTE sChanName[NAME_LEN]; + DWORD dwVideoFormat; /* Ö»¶Á ÊÓƵÖÆʽ 1-NTSC 2-PAL*/ + BYTE byReservedData[64];/*±£Áô*/ + DWORD dwShowChanName; // Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾͨµÀÃû³Æ,0-²»ÏÔʾ,1-ÏÔʾ ÇøÓò´óС704*576 + WORD wShowNameTopLeftX; /* ͨµÀÃû³ÆÏÔʾλÖõÄx×ø±ê */ + WORD wShowNameTopLeftY; /* ͨµÀÃû³ÆÏÔʾλÖõÄy×ø±ê */ + //ÊÓƵÐźŶªÊ§±¨¾¯ + NET_DVR_VILOST_V30 struVILost; + NET_DVR_VILOST_V30 struRes; /*±£Áô*/ + // BYTE byRes1[328]; + //Òƶ¯Õì²â + NET_DVR_MOTION_V30 struMotion; + //ÕÚµ²±¨¾¯ + NET_DVR_HIDEALARM_V30 struHideAlarm; + //ÕÚµ² ÇøÓò´óС704*576 + DWORD dwEnableHide; /* ÊÇ·ñÆô¶¯ÕÚµ² ,0-·ñ,1-ÊÇ*/ + NET_DVR_SHELTER struShelter[MAX_SHELTERNUM]; + //OSD + DWORD dwShowOsd;// Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾOSD,0-²»ÏÔʾ,1-ÏÔʾ ÇøÓò´óС704*576 + WORD wOSDTopLeftX; /* OSDµÄx×ø±ê */ + WORD wOSDTopLeftY; /* OSDµÄy×ø±ê */ + BYTE byOSDType; /* OSDÀàÐÍ(Ö÷ÒªÊÇÄêÔÂÈÕ¸ñʽ) */ + /* 0: XXXX-XX-XX ÄêÔÂÈÕ */ + /* 1: XX-XX-XXXX ÔÂÈÕÄê */ + /* 2: XXXXÄêXXÔÂXXÈÕ */ + /* 3: XXÔÂXXÈÕXXXXÄê */ + /* 4: XX-XX-XXXX ÈÕÔÂÄê*/ + /* 5: XXÈÕXXÔÂXXXXÄê */ + /*6: xx/xx/xxxx(ÔÂ/ÈÕ/Äê) */ + /*7: xxxx/xx/xx(Äê/ÔÂ/ÈÕ) */ + /*8: xx/xx/xxxx(ÈÕ/ÔÂ/Äê)*/ + BYTE byDispWeek; /* ÊÇ·ñÏÔʾÐÇÆÚ */ + BYTE byOSDAttrib; /* OSDÊôÐÔ:͸Ã÷£¬ÉÁ˸ */ + /* 1: ͸Ã÷,ÉÁ˸ */ + /* 2: ͸Ã÷,²»ÉÁ˸ */ + /* 3: ÉÁ˸,²»Í¸Ã÷ */ + /* 4: ²»Í¸Ã÷,²»ÉÁ˸ */ + BYTE byHourOSDType; /* OSDСʱÖÆ:0-24СʱÖÆ,1-12СʱÖÆ */ + BYTE byFontSize;//×ÖÌå´óС£¬16*16(ÖÐ)/8*16(Ó¢)£¬1-32*32(ÖÐ)/16*32(Ó¢)£¬2-64*64(ÖÐ)/32*64(Ó¢) 3-48*48(ÖÐ)/24*48(Ó¢) 4-24*24(ÖÐ)/12*24(Ó¢) 5-96*96(ÖÐ)/48*96(Ó¢) 6-128*128(ÖÐ)/64*128(Ó¢) 7-80*80(ÖÐ)/40*80(Ó¢) 8-112*112(ÖÐ)/56*112(Ó¢) 0xff-×ÔÊÊÓ¦(adaptive) + BYTE byOSDColorType; //0-ĬÈÏ£¨ºÚ°×£©£»1-×Ô¶¨Ò壻2-¹´±ß + /*µ±¶ÔÆ뷽ʽѡÔñ¹ú±êģʽʱ£¬¿ÉÒÔ·Ö±ð¶ÔÓÒϽǡ¢×óϽÇÁ½¸öÇøÓò×ö×Ö·ûµþ¼Ó¡£ + ÓÒϽÇÇøÓò£º + ¹²Ö§³Ö6ÐÐ×Ö·ûµþ¼Ó£¬¿ÉÒÔͨ¹ýNET_DVR_SET_SHOWSTRING_V30×Ö·ûµþ¼Ó½Ó¿Ú£¬¶ÔÓ¦NET_DVR_SHOWSTRINGINFO½á¹¹ÌåÊý×éÖеĵÚ0ÖÁµÚ5¸öϱêµÄÖµ¡£µþ¼Ó×Ö·ûµÄ·½Ê½Îª´Óϵ½Éϵķ½Ê½¡£ + ×óϽÇÇøÓò£º + ¹²Ö§³Ö2ÐÐ×Ö·ûµþ¼Ó£¬¿ÉÒÔͨ¹ýNET_DVR_SET_SHOWSTRING_V30×Ö·ûµþ¼Ó½Ó¿Ú£¬¶ÔÓ¦NET_DVR_SHOWSTRINGINFO½á¹¹ÌåÊý×éÖеĵÚ6ºÍµÚ7¸öϱêµÄÖµ¡£µþ¼Ó×Ö·ûµÄ·½Ê½Îª´Óϵ½Éϵķ½Ê½¡£ + */ + BYTE byAlignment;//¶ÔÆ뷽ʽ 0-×ÔÊÊÓ¦£¬1-ÓÒ¶ÔÆë, 2-×ó¶ÔÆë,3-¹ú±êģʽ, 4-È«²¿ÓÒ¶ÔÆë(°üº¬µþ¼Ó×Ö·û¡¢Ê±¼äÒÔ¼°±êÌâµÈËùÓÐOSD×Ö·û)£¬5-È«²¿×ó¶ÔÆë(°üº¬µþ¼Ó×Ö·û¡¢Ê±¼äÒÔ¼°±êÌâµÈËùÓÐOSD×Ö·û) + BYTE byOSDMilliSecondEnable;//ÊÓƵµþ¼Óʱ¼äÖ§³ÖºÁÃ룻0~²»µþ¼Ó, 1-µþ¼Ó + NET_DVR_RGB_COLOR struOsdColor;//OSDÑÕÉ« + DWORD dwBoundary; //±ß½çÖµ£¬×ó¶ÔÆ룬ÓÒ¶ÔÆëÒÔ¼°¹ú±êģʽµÄ±ß½çÖµ£¬0-±íʾĬÈÏÖµ£¬µ¥Î»£ºÏñËØ + NET_DVR_RGB_COLOR struOsdBkColor; //×Ô¶¨ÒåOSD±³¾°É« + BYTE byOSDBkColorMode; //OSD±³¾°É«Ä£Ê½£¬0-ĬÈÏ£¬1-×Ô¶¨ÒåOSD±³¾°É« + BYTE byUpDownBoundary; //ÉÏÏÂ×îС±ß½çֵѡÏµ¥Î»Îª×Ö·û¸öÊý£¨·¶Î§ÊÇ£¬0,1,2£©, ¹ú±êģʽÏÂÎÞЧ¡£byAlignment=3¸Ã×Ö¶ÎÎÞЧ£¬Í¨¹ýdwBoundary½øÐб߽çÅäÖã¬.byAlignment²»µÈÓÚ3µÄÇé¿öÏ£¬ byUpDownBoundary/byLeftRightBoundaryÅäÖóɹ¦ºó£¬dwBoundaryÖµ½«²»ÉúЧ + BYTE byLeftRightBoundary; //×óÓÒ×îС±ß½çֵѡÏµ¥Î»Îª×Ö·û¸öÊý£¨·¶Î§ÊÇ£¬0,1,2£©, ¹ú±êģʽÏÂÎÞЧ¡£byAlignment=3¸Ã×Ö¶ÎÎÞЧ£¬Í¨¹ýdwBoundary½øÐб߽çÅäÖã¬.byAlignment²»µÈÓÚ3µÄÇé¿öÏ£¬ byUpDownBoundary/byLeftRightBoundaryÅäÖóɹ¦ºó£¬dwBoundaryÖµ½«²»ÉúЧ + BYTE byAngleEnabled;//OSDÊÇ·ñµþ¼Ó¸©Ñö½ÇÐÅÏ¢,0~²»µþ¼Ó, 1-µþ¼Ó + WORD wTiltAngleTopLeftX; /* ¸©Ñö½ÇÐÅÏ¢ÏÔʾλÖõÄx×ø±ê */ + WORD wTiltAngleTopLeftY; /* ¸©Ñö½ÇÐÅÏ¢ÏÔʾλÖõÄy×ø±ê */ + BYTE byRes[40]; +}NET_DVR_PICCFG_V30, *LPNET_DVR_PICCFG_V30; + +//ͨµÀͼÏó½á¹¹SDK_V14À©Õ¹ +typedef struct +{ + DWORD dwSize; + BYTE sChanName[NAME_LEN]; + DWORD dwVideoFormat; /* Ö»¶Á ÊÓƵÖÆʽ 1-NTSC 2-PAL*/ + BYTE byBrightness; /*ÁÁ¶È,0-255*/ + BYTE byContrast; /*¶Ô±È¶È,0-255*/ + BYTE bySaturation; /*±¥ºÍ¶È,0-255 */ + BYTE byHue; /*É«µ÷,0-255*/ + //ÏÔʾͨµÀÃû + DWORD dwShowChanName; // Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾͨµÀÃû³Æ,0-²»ÏÔʾ,1-ÏÔʾ ÇøÓò´óС704*576 + WORD wShowNameTopLeftX; /* ͨµÀÃû³ÆÏÔʾλÖõÄx×ø±ê */ + WORD wShowNameTopLeftY; /* ͨµÀÃû³ÆÏÔʾλÖõÄy×ø±ê */ + //ÐźŶªÊ§±¨¾¯ + NET_DVR_VILOST struVILost; + //Òƶ¯Õì²â + NET_DVR_MOTION struMotion; + //ÕÚµ²±¨¾¯ + NET_DVR_HIDEALARM struHideAlarm; + //ÕÚµ² ÇøÓò´óС704*576 + DWORD dwEnableHide; /* ÊÇ·ñÆô¶¯ÕÚµ² ,0-·ñ,1-ÊÇ*/ + NET_DVR_SHELTER struShelter[MAX_SHELTERNUM]; + //OSD + DWORD dwShowOsd;// Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾOSD,0-²»ÏÔʾ,1-ÏÔʾ ÇøÓò´óС704*576 + WORD wOSDTopLeftX; /* OSDµÄx×ø±ê */ + WORD wOSDTopLeftY; /* OSDµÄy×ø±ê */ + BYTE byOSDType; /* OSDÀàÐÍ(Ö÷ÒªÊÇÄêÔÂÈÕ¸ñʽ) */ + /* 0: XXXX-XX-XX ÄêÔÂÈÕ */ + /* 1: XX-XX-XXXX ÔÂÈÕÄê */ + /* 2: XXXXÄêXXÔÂXXÈÕ */ + /* 3: XXÔÂXXÈÕXXXXÄê */ + /* 4: XX-XX-XXXX ÈÕÔÂÄê*/ + /* 5: XXÈÕXXÔÂXXXXÄê */ + /*6: xx/xx/xxxx(ÔÂ/ÈÕ/Äê) */ + /*7: xxxx/xx/xx(Äê/ÔÂ/ÈÕ) */ + /*8: xx/xx/xxxx(ÈÕ/ÔÂ/Äê)*/ + BYTE byDispWeek; /* ÊÇ·ñÏÔʾÐÇÆÚ */ + BYTE byOSDAttrib; /* OSDÊôÐÔ:͸Ã÷£¬ÉÁ˸ */ + /* 1: ͸Ã÷,ÉÁ˸ */ + /* 2: ͸Ã÷,²»ÉÁ˸ */ + /* 3: ÉÁ˸,²»Í¸Ã÷ */ + /* 4: ²»Í¸Ã÷,²»ÉÁ˸ */ + BYTE byHourOsdType; /* OSDСʱÖÆ:0-24СʱÖÆ,1-12СʱÖÆ */ +}NET_DVR_PICCFG_EX, *LPNET_DVR_PICCFG_EX; + +//ͨµÀͼÏó½á¹¹(SDK_V13¼°Ö®Ç°°æ±¾) +typedef struct +{ + DWORD dwSize; + BYTE sChanName[NAME_LEN]; + DWORD dwVideoFormat; /* Ö»¶Á ÊÓƵÖÆʽ 1-NTSC 2-PAL*/ + BYTE byBrightness; /*ÁÁ¶È,0-255*/ + BYTE byContrast; /*¶Ô±È¶È,0-255*/ + BYTE bySaturation; /*±¥ºÍ¶È,0-255 */ + BYTE byHue; /*É«µ÷,0-255*/ + //ÏÔʾͨµÀÃû + DWORD dwShowChanName; // Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾͨµÀÃû³Æ,0-²»ÏÔʾ,1-ÏÔʾ ÇøÓò´óС704*576 + WORD wShowNameTopLeftX; /* ͨµÀÃû³ÆÏÔʾλÖõÄx×ø±ê */ + WORD wShowNameTopLeftY; /* ͨµÀÃû³ÆÏÔʾλÖõÄy×ø±ê */ + //ÐźŶªÊ§±¨¾¯ + NET_DVR_VILOST struVILost; + //Òƶ¯Õì²â + NET_DVR_MOTION struMotion; + //ÕÚµ²±¨¾¯ + NET_DVR_HIDEALARM struHideAlarm; + //ÕÚµ² ÇøÓò´óС704*576 + DWORD dwEnableHide; /* ÊÇ·ñÆô¶¯ÕÚµ² ,0-·ñ,1-ÊÇ*/ + WORD wHideAreaTopLeftX; /* ÕÚµ²ÇøÓòµÄx×ø±ê */ + WORD wHideAreaTopLeftY; /* ÕÚµ²ÇøÓòµÄy×ø±ê */ + WORD wHideAreaWidth; /* ÕÚµ²ÇøÓòµÄ¿í */ + WORD wHideAreaHeight; /*ÕÚµ²ÇøÓòµÄ¸ß*/ + //OSD + DWORD dwShowOsd;// Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾOSD,0-²»ÏÔʾ,1-ÏÔʾ ÇøÓò´óС704*576 + WORD wOSDTopLeftX; /* OSDµÄx×ø±ê */ + WORD wOSDTopLeftY; /* OSDµÄy×ø±ê */ + BYTE byOSDType; /* OSDÀàÐÍ(Ö÷ÒªÊÇÄêÔÂÈÕ¸ñʽ) */ + /* 0: XXXX-XX-XX ÄêÔÂÈÕ */ + /* 1: XX-XX-XXXX ÔÂÈÕÄê */ + /* 2: XXXXÄêXXÔÂXXÈÕ */ + /* 3: XXÔÂXXÈÕXXXXÄê */ + /* 4: XX-XX-XXXX ÈÕÔÂÄê*/ + /* 5: XXÈÕXXÔÂXXXXÄê */ + /*6: xx/xx/xxxx(ÔÂ/ÈÕ/Äê) */ + /*7: xxxx/xx/xx(Äê/ÔÂ/ÈÕ) */ + /*8: xx/xx/xxxx(ÈÕ/ÔÂ/Äê)*/ + BYTE byDispWeek; /* ÊÇ·ñÏÔʾÐÇÆÚ */ + BYTE byOSDAttrib; /* OSDÊôÐÔ:͸Ã÷£¬ÉÁ˸ */ + /* 1: ͸Ã÷,ÉÁ˸ */ + /* 2: ͸Ã÷,²»ÉÁ˸ */ + /* 3: ÉÁ˸,²»Í¸Ã÷ */ + /* 4: ²»Í¸Ã÷,²»ÉÁ˸ */ + char reservedData2; +}NET_DVR_PICCFG, *LPNET_DVR_PICCFG; + +typedef enum _BITRATE_ENCODE_INDEX_ +{ + BITRATE_ENCODE_def = 0, + BITRATE_ENCODE_8kps = 1, + BITRATE_ENCODE_16kps = 2, + BITRATE_ENCODE_32kps = 3, + BITRATE_ENCODE_64kps = 4, + BITRATE_ENCODE_128kps = 5, + BITRATE_ENCODE_192kps = 6, + BITRATE_ENCODE_40kps = 7, + BITRATE_ENCODE_48kps = 8, + BITRATE_ENCODE_56kps = 9, + BITRATE_ENCODE_80kps = 10, + BITRATE_ENCODE_96kps = 11, + BITRATE_ENCODE_112kps = 12, + BITRATE_ENCODE_144kps = 13, + BITRATE_ENCODE_160kps = 14, + BITRATE_ENCODE_224kps = 15, + BITRATE_ENCODE_256kps = 16, + BITRATE_ENCODE_320kps = 17 +}BITRATE_ENCODE_INDEX; + +//ÂëÁ÷ѹËõ²ÎÊý(×ӽṹ)(9000À©Õ¹) +typedef struct +{ + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ 0-ÊÓƵÁ÷, 1-¸´ºÏÁ÷, ±íʾʼþѹËõ²ÎÊýʱ×î¸ßλ±íʾÊÇ·ñÆôÓÃѹËõ²ÎÊý + /*·Ö±æÂÊ0-DCIF 1-CIF, 2-QCIF, 3-4CIF, + 4-2CIF 5£¨±£Áô£©, 6-QVGA(320*240), 7-QQVGA(160*120), + 12-384*288 13-576*576, + 16-VGA£¨640*480£©, 17-UXGA£¨1600*1200£©, 18-SVGA(800*600), 19-HD720p(1280*720£©, + 20-XVGA, 21-HD900p, 22-1360*1024, 23-1536*1536, + 24-1920*1920, 27-HD1080i, + 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048, + 32-2448*1200, 33-2448*800, 34-XGA£¨1024*768£©£¬ 35-SXGA£¨1280*1024£©, + 36-WD1(960*576/960*480), 37-1080i, 38-WSXGA(1440*900), 39-HD_F(1920*1080/1280*720), + 40-HD_H(1920*540/1280*360), 41-HD_Q(960*540/630*360), 42-2336*1744, 43-1920*1456, + 44-2592*2048, 45-3296*2472, 46-1376*768, 47-1366*768, + 48-1360*768, 49-WSXGA+, 50-720*720, 51-1280*1280, + 52-2048*768, 53-2048*2048, 54-2560*2048, 55-3072*2048, + 56-2304*1296 57-WXGA(1280*800), 58-1600*600, 59-1600*900, + 60-2752*2208, 61-±£Áô, 62-4000*3000, 63-4096*2160, + 64-3840*2160, 65-4000*2250, 66-3072*1728, 67-2592*1944, + 68-2464*1520, 69-1280*1920, 70-2560*1440, 71-1024*1024, + 72-160*128, 73-324*240, 74-324*256, 75-336*256, + 76-640*512, 77-2720*2048, 78-384*256, 79-384*216, + 80-320*256, 81-320*180, 82-320*192, 83-512*384, + 84-325*256, 85-256*192, 86-640*360, 87-1776x1340, + 88-1936x1092, 89-2080x784, 90-2144x604, 91-1920*1200, + 92-4064*3040, 93-3040*3040, 94-3072*2304, 95-3072*1152, + 96-2560*2560, 97-2688*1536, 98-2688*1520, 99-3072*3072, + 100-3392*2008, 101-4000*3080, 102-960*720, 103-1024*1536, + 104-704*1056, 105-352*528, 106-2048*1530, 107-2560*1600, + 108-2800*2100, 109-4088*4088, 110-4000*3072, 111-960*1080(1080p Lite) + 112-640*720(half 720p), 113-640*960, 114-320*480, 115-3840*2400, + 116-3840*1680, 117-2560*1120, 118-704*320, 119-1200*1920, + 120-480*768, 121-768*480, 122-320*512, 123-512*320, + 124-4096*1800, 125-1280*560, 126-2400*3840, 127-480*272, + 128-512*272, 129-2592*2592, 130-1792*2880, 131-1600*2560, + 132-2720*1192, 133-3MP(1920*1536/2048*1536)£¬ 134-5MP(2560*1944)£¬ + 135-2560*960, 136-2064*1544 137-4096*1200, + 138-3840*1080 139-2720*800 140-512*232 141-704*200, + 142-512*152, 143-2048*896 144-2048*600 145-1280*376, + 146-2592*1520, 147-2592*1536, 148-3072*8192, 149-768*2048, + 150-8208*3072, 151-4096*1536, 152-6912*2800, 153-3456*1400 + 154-480*720, 155-800*450, 156-480*270, 157-2560*1536, + 160-3264*2448, 161-288*320, 162-144*176, 163-480*640, + 164-240*320, 165-120*160, 166-576*720, 167-720*1280, + 168-576*960, 169-2944*1656, 170-432*240, 171-2160*3840, + 172-1080*1920, 173-7008*1080, 174-3504*540, 175-1752*270, + 176-876*135, 177-4096*1440, 178-4096*1080, 179-1536*864, + 180-180*240, 181-360*480, 182-540*720, 183-720*960, + 184-960*1280, 185-1080*1440, + 186-3200*1800, 187-1752*272, 188-872*136, 189-1280*1440, + 190-3520*544, 191-1728*256, 192-864*128, 193-5470*3684, + 194-2560*750, 195-1600*480, 196-1024*300, 197-848*480, + 198-8160*3616, 199-8160*2304, 200-4064*2560, 201-1400*1050, + 202-2688*1512, 203-704*288, 204-1560*656, 205-3072*1280, + 206-4320*1808, 207-6120*2560, 208-1280*960, 209-3000*3000, + 210-2032*3616, 211-7680*4320, 212-5760*3240, 213-3264*1836, + 214-2712*1536, 215-1080*720(ռλ£¬Î´²âÊÔ), 216-360x640(ռλ£¬Î´²âÊÔ),217-1440*812, + 218-8160*2416, 219-5760*1712, 220-4080*1200, 221-6144*2560, + 222-1568*656, 223-4096*1808, 224-2720*1200, 225-2896*848 + 226-2048*608 227-3840*1120 228-2720*784 229-1920*560, + 230-1360*400 231-704*208 232-496*144 233-352*128, + 234-512*240 235-512*160 236-368*128 237-256*128 + 238-2048*592 239-1456*416 240-1024*304 241-1280*368 + 242-912*256 243-640*192 244-252*112 £¨Î´Ê¹Óã© 245-(576*704[PÖÆ]/480*704[NÖÆ]) + + 254-±íʾ³¬³ö¸Ã×ֶη¶Î§£¬Ê¹ÓÃNET_DVR_MULTI_STREAM_COMPRESSIONCFGÖеÄdwResolution±íʾ·Ö±æÂÊ + 0xff-Auto(ʹÓõ±Ç°ÂëÁ÷·Ö±æÂÊ) + 256-3888*1696 257-2784*1200 258-496*224 259-352*160 + 260-912*400 261-640*288 262-1456*640 263-1024*448 + 264-2896*1280 265-2544*1080 266-2736*768 267-1920*544 + 268-3840*1696 269-2880*848 270-5424*2400 271-5520*1600 + 272-848*376 273-912*272 274-1360*600 275-1456*432 + 276-2736*1200 277-5760*1696 278-8160*2400 279-5520*2400 + 280-4608*2592 281-4944*3280 282-6016*4008 283-720*480 + 284-3200*2400 285-2784*800 286-1968*848 287-1392*608 + 288-2736*1184 289-1920*848 290-2560*2880 291-1944*1212 + 292-1920*2400 293-384*384 294-768*768 295-4800*2688 + 296-6480*1080 297-8640*1440 298-4800*800 299-6720*1200 + 300-3600*600 301-4800*840 302-2400*400 303-3072*540 + 304-1440*810 305-1920*320 306-2688*480 307-1440*240 + 308-4800*1792 309-3360*1264 310-2304*880 311-3840*1440 + 312-2688*1008 313-1824*704 314-1248*496 315-1920*720 + 316-1344*496 317-912*336 318-1280*480 319-864*336 + 320-576*224 321-2704*1008 322-1904*704 323-1808*672 + 324-1264*464 325-944*336 326-2400*1344 327-2032*1440 + 328-4064*1792 329-304*112 330-960*360 331-672*240 + 332-464*160 333-896*336 334-624*224 335-640*240 + 336-448*160 337-4976*1452 338-1968*560 339-2736*784 + 340-3888*1136 341-6120*1800 342-4320*1280 343-3056*896 + 344-1776*528 345-1392*400 346-7256*1520 347-512*288 + 348-1936*1210 349-640*400 350-2688*1792 351-2464*2056 + 352-2720*1600 353-4800*1600 354-3600*1200 355-䶨Òå + 356-2400*800 357-1200*400 358-4096*3008 359-7680*4096 + 360-1080*1520 361-6656*3744 362-5120*1400 363-2560*704 + 364-2688*3040 365-1280*352 366-3376*1008 367-1688*504 + 368-5120*1440 369-1920*2160 370-4080*1808 371-4080*1152 + 372-2688*3888 373-3840*2880 374-2464*3520 375-4416*1696 + 376-1408*540 377-3456*1080 378-1728*540 379-704*1152 + 380-1408*1152 381-5120*2880 382-720*576 383-3984*1168 + 384-1920*1440 385-3840*4096 386-1920*536 387-1536*432 + 388-3072*864 389-1440*1080 390-720*540 391-960*544 + 392-720*544 393-5430*3054 394-8000*6000 395-6560*3690 + 396-2688*1944 397-960*272 398-960*368 399-960*304 + 400-3632*1632 401-1200*536 402-960*432 403-1920*3264 + 404-3040*1368 405-1704*2896 406-768*216 407-360*272 + 408-960*536 409-720*536 410-848*240 411-368*272 + 412-4096*2460 413-536*240 414-2560*1168 415-1920*864 + 416-752*336 417-752*416 418-560*416 419-592*272 + 420-448*336 421-832*464 422-624*464 423-672*304 + 424-672*368 425-496*368 426-832*368 427-592*336 + 428-8032*6032 429-4096*2464 430-8128*2304 431-1480*1664 + 432-1280*1944 433-1024*600 434-1520*2736 435-5328*3040 + 436-192*256 437-8112*2304 438-720x576 439-704*576 + 440-2560*480 441-2048*384 442-8160*3922 443-6128*1800 + */ + BYTE byResolution; + BYTE byBitrateType; //ÂëÂÊÀàÐÍ 0:±äÂëÂÊ, 1:¶¨ÂëÂÊ,0xfe:×Ô¶¯£¬ºÍÔ´Ò»Ö + BYTE byPicQuality; //ͼÏóÖÊÁ¿ 0-×îºÃ 1-´ÎºÃ 2-½ÏºÃ 3-Ò»°ã 4-½Ï²î 5-²î,×Ô¶¯£¬ºÍÔ´Ò»Ö + /*ÊÓƵÂëÂÊ 0-±£Áô 1-16K(±£Áô) 2-32K 3-48k 4-64K 5-80K 6-96K 7-128K 8-160k 9-192K 10-224K 11-256K 12-320K + 13-384K 14-448K 15-512K 16-640K 17-768K 18-896K 19-1024K 20-1280K 21-1536K 22-1792K 23-2048K + 24-3072K 25-4096K 26-8192K 27-16384K (28-30 Reserved) 31-12288K*/ + DWORD dwVideoBitrate; + DWORD dwVideoFrameRate; //Ö¡ÂÊ 0-È«²¿; 1-1/16; 2-1/8; 3-1/4; 4-1/2; 5-1; 6-2; 7-4; 8-6; 9-8; 10-10; 11-12; 12-16; 13-20; V2.0°æ±¾ÖÐмÓ14-15; 15-18; 16-22; + //17-25£»18-30£»19-35£»20-40£»21-45£»22-50£»23-55£»24-60£»25-3;26-5;27-7;28-9;29-100; 30-120;31-24;32-48,33-8.3,0xfffffffe-×Ô¶¯£¬ºÍÔ´Ò»Ö + WORD wIntervalFrameI; //IÖ¡¼ä¸ô,0xfffe ×Ô¶¯£¬ºÍÔ´Ò»Ö + BYTE byIntervalBPFrame;//0-BBPÖ¡; 1-BPÖ¡; 2-µ¥PÖ¡(2006-08-11 Ôö¼Óµ¥PÖ¡µÄÅäÖýӿڣ¬¿ÉÒÔ¸ÄÉÆʵʱÁ÷ÑÓʱÎÊÌâ)£»0xfe-×Ô¶¯£¬ºÍÔ´Ò»Ö + BYTE byres1; //±£Áô + BYTE byVideoEncType; //ÊÓƵ±àÂëÀàÐÍ 0-˽ÓÐ264£¬1-±ê×¼h264£¬2-±ê×¼mpeg4£¬7-M-JPEG£¬8-MPEG2£¬9-SVAC, 10-±ê×¼h265, 0xfe-×Ô¶¯£¨ºÍÔ´Ò»Ö£©£¬0xff-ÎÞЧ + BYTE byAudioEncType; //ÒôƵ±àÂëÀàÐÍ 0-G722;1-G711_U;2-G711_A;5-MP2L2;6-G276;7-AAC;8-PCM;12-AAC_LC;13-AAC_LD;14-Opus;15-MP3;0xff-ÎÞЧ + BYTE byVideoEncComplexity; //ÊÓƵ±àÂ븴ÔӶȣ¬0-µÍ£¬1-ÖУ¬2¸ß,0xfe:×Ô¶¯£¬ºÍÔ´Ò»Ö + BYTE byEnableSvc; //0 - ²»ÆôÓÃSVC¹¦ÄÜ£»1- ÆôÓÃSVC¹¦ÄÜ; 2-×Ô¶¯ÆôÓÃSVC¹¦ÄÜ + BYTE byFormatType; //·â×°ÀàÐÍ£¬1-ÂãÁ÷£¬2-RTP·â×°£¬3-PS·â×°£¬4-TS·â×°£¬5-˽ÓУ¬6-FLV£¬7-ASF£¬8-3GP,9-RTP+PS£¨¹ú±ê£ºGB28181£©£¬0xff-ÎÞЧ + BYTE byAudioBitRate; //ÒôƵÂëÂÊ ²Î¿¼ BITRATE_ENCODE_INDEX + BYTE byStreamSmooth;//ÂëÁ÷ƽ»¬ 1¡«100£¨1µÈ¼¶±íʾÇåÎú(Clear)£¬100±íʾƽ»¬(Smooth)£© + BYTE byAudioSamplingRate;//ÒôƵ²ÉÑùÂÊ0-ĬÈÏ,1- 16kHZ, 2-32kHZ, 3-48kHZ, 4- 44.1kHZ,5-8kHZ + BYTE bySmartCodec;///*bit0-¸ßÐÔÄܱàÂë 0-¹Ø±Õ£¬1-´ò¿ª£¬bit1 - µÍÂëÂÊģʽ 0 - ¹Ø±Õ£¬1 - ´ò¿ª*/ + BYTE byDepthMapEnable;// Éî¶ÈͼʹÄÜ¿ª¹Ø£¬0-¹Ø±Õ£¬1-´ò¿ª£»Èç¹û¿ªÆôºó£¬µÚ¶þͨµÀµÄ×ÓÂëÁ÷£¨Ë«Ä¿£©µÄÊÓƵ²ÎÊý¶¼²»ÄÜÅäÖã¬Ä¬ÈÏÊä³ö 960*540 µÄÉî¶Èͼ£» + //ƽ¾ùÂëÂÊ£¨ÔÚSmartCodecʹÄÜ¿ªÆôÏÂÉúЧ£©, 0-0K 1-16K 2-32K 3-48k 4-64K 5-80K 6-96K 7-128K 8-160k 9-192K 10-224K 11-256K 12-320K 13-384K 14-448K 15-512K 16-640K 17-768K 18-896K 19-1024K 20-1280K 21-1536K 22-1792K 23-2048K 24-2560K 25-3072K 26-4096K 27-5120K 28-6144K 29-7168K 30-8192K + //×î¸ßλ(15λ)ÖóÉ1±íʾÊÇ×Ô¶¨ÒåÂëÁ÷, 0-14λ±íʾÂëÁ÷Öµ(MIN- 0 K)¡£ + WORD wAverageVideoBitrate; +}NET_DVR_COMPRESSION_INFO_V30, *LPNET_DVR_COMPRESSION_INFO_V30; + +//ͨµÀѹËõ²ÎÊý(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_COMPRESSION_INFO_V30 struNormHighRecordPara; //¼Ïñ ¶ÔÓ¦8000µÄÆÕͨ + NET_DVR_COMPRESSION_INFO_V30 struRes;//±£Áô char reserveData[28]; + NET_DVR_COMPRESSION_INFO_V30 struEventRecordPara; //ʼþ´¥·¢Ñ¹Ëõ²ÎÊý + NET_DVR_COMPRESSION_INFO_V30 struNetPara; //Íø´«(×ÓÂëÁ÷) +}NET_DVR_COMPRESSIONCFG_V30, *LPNET_DVR_COMPRESSIONCFG_V30; + +//ÂëÁ÷ѹËõ²ÎÊý(×ӽṹ) +typedef struct +{ + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ0-ÊÓƵÁ÷,1-¸´ºÏÁ÷,±íʾѹËõ²ÎÊýʱ×î¸ßλ±íʾÊÇ·ñÆôÓÃѹËõ²ÎÊý + BYTE byResolution; //·Ö±æÂÊ0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF, 5-2QCIF(352X144)(³µÔØרÓÃ) + BYTE byBitrateType; //ÂëÂÊÀàÐÍ0:±äÂëÂÊ£¬1:¶¨ÂëÂÊ£¬2£ºµÍÂëÂÊ + BYTE byPicQuality; //ͼÏóÖÊÁ¿ 0-×îºÃ 1-´ÎºÃ 2-½ÏºÃ 3-Ò»°ã 4-½Ï²î 5-²î + DWORD dwVideoBitrate; /*ÊÓƵÂëÂÊ 0-±£Áô 1-16K(±£Áô) 2-32K 3-48k 4-64K 5-80K 6-96K 7-128K 8-160k 9-192K 10-224K 11-256K 12-320K + 13-384K 14-448K 15-512K 16-640K 17-768K 18-896K 19-1024K 20-1280K 21-1536K 22-1792K 23-2048K + 24-2560K 25-3072K 26-4096K 27-5120K 28-6144K 29-7168K 30-8192K 31-12288K*/ + DWORD dwVideoFrameRate; //Ö¡ÂÊ 0-È«²¿; 1-1/16; 2-1/8; 3-1/4; 4-1/2; 5-1; 6-2; 7-4; 8-6; 9-8; 10-10; 11-12; 12-16; 13-20; +}NET_DVR_COMPRESSION_INFO, *LPNET_DVR_COMPRESSION_INFO; + +//ͨµÀѹËõ²ÎÊý +typedef struct +{ + DWORD dwSize; + NET_DVR_COMPRESSION_INFO struRecordPara; //¼Ïñ/ʼþ´¥·¢Â¼Ïñ + NET_DVR_COMPRESSION_INFO struNetPara; //Íø´«/±£Áô +}NET_DVR_COMPRESSIONCFG, *LPNET_DVR_COMPRESSIONCFG; + +//ÂëÁ÷ѹËõ²ÎÊý(×ӽṹ)(À©Õ¹) Ôö¼ÓIÖ¡¼ä¸ô +typedef struct +{ + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ0-ÊÓƵÁ÷, 1-¸´ºÏÁ÷ + BYTE byResolution; //·Ö±æÂÊ0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF, 5-2QCIF(352X144)(³µÔØרÓÃ) + BYTE byBitrateType; //ÂëÂÊÀàÐÍ0:±äÂëÂÊ£¬1:¶¨ÂëÂÊ£¬2£ºµÍÂëÂÊ + BYTE byPicQuality; //ͼÏóÖÊÁ¿ 0-×îºÃ 1-´ÎºÃ 2-½ÏºÃ 3-Ò»°ã 4-½Ï²î 5-²î + DWORD dwVideoBitrate; /*ÊÓƵÂëÂÊ 0-±£Áô 1-16K(±£Áô) 2-32K 3-48k 4-64K 5-80K 6-96K 7-128K 8-160k 9-192K 10-224K 11-256K 12-320K + 13-384K 14-448K 15-512K 16-640K 17-768K 18-896K 19-1024K 20-1280K 21-1536K 22-1792K 23-2048K + 24-3072K 25-4096K 26-8192K 27-16384K (28-30 Reserved) 31-12288K*/ + DWORD dwVideoFrameRate; //Ö¡ÂÊ 0-È«²¿; 1-1/16; 2-1/8; 3-1/4; 4-1/2; 5-1; 6-2; 7-4; 8-6; 9-8; 10-10; 11-12; 12-16; 13-20, //V2.0Ôö¼Ó14-15, 15-18, 16-22; + WORD wIntervalFrameI; //IÖ¡¼ä¸ô + //2006-08-11 Ôö¼Óµ¥PÖ¡µÄÅäÖýӿڣ¬¿ÉÒÔ¸ÄÉÆʵʱÁ÷ÑÓʱÎÊÌâ + BYTE byIntervalBPFrame;//0-BBPÖ¡; 1-BPÖ¡; 2-µ¥PÖ¡ + BYTE byRes; +}NET_DVR_COMPRESSION_INFO_EX, *LPNET_DVR_COMPRESSION_INFO_EX; + +//ͨµÀѹËõ²ÎÊý(À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_COMPRESSION_INFO_EX struRecordPara; //¼Ïñ + NET_DVR_COMPRESSION_INFO_EX struNetPara; //Íø´« +}NET_DVR_COMPRESSIONCFG_EX, *LPNET_DVR_COMPRESSIONCFG_EX; + + +//ʱ¼ä¶Î¼Ïñ²ÎÊýÅäÖÃ(×ӽṹ) +typedef struct +{ + NET_DVR_SCHEDTIME struRecordTime; + BYTE byRecordType; //0:¶¨Ê±Â¼Ïñ£¬1:Òƶ¯Õì²â£¬2:±¨¾¯Â¼Ïñ£¬3:¶¯²â|±¨¾¯£¬4:¶¯²â&±¨¾¯, 5:ÃüÁî´¥·¢, 6: ÖÇÄܼÏñ,10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-ËùÓб¨¾¯,14-ÖÇÄܽ»Í¨Ê¼þ£¬15Ô½½çÕì²â£¬16ÇøÓòÈëÇÖÕì²â£¬17ÒôƵÒì³£Õì²â + char reservedData[3]; +}NET_DVR_RECORDSCHED, *LPNET_DVR_RECORDSCHED; + +//È«Ìì¼Ïñ²ÎÊýÅäÖÃ(×ӽṹ) +typedef struct +{ + WORD wAllDayRecord; /* ÊÇ·ñÈ«Ìì¼Ïñ 0-·ñ 1-ÊÇ*/ + BYTE byRecordType; /* ¼ÏóÀàÐÍ 0:¶¨Ê±Â¼Ïñ£¬1:Òƶ¯Õì²â£¬2:±¨¾¯Â¼Ïñ£¬3:¶¯²â|±¨¾¯£¬4:¶¯²â&±¨¾¯ 5:ÃüÁî´¥·¢, 6: ÖÇÄܼÏñ, + 10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-Òƶ¯|±¨¾¯ÊäÈë|PIR|ÎÞÏß±¨¾¯|ºô¾È±¨¾¯,14-ÖÇÄܽ»Í¨Ê¼þ,15-Ô½½çÕì²â,16-ÇøÓòÈëÇÖ,17-ÉùÒôÒì³£, + 18-³¡¾°±ä¸üÕì²â,19-ÖÇÄÜÕì²â£¨Ô½½çÕì²â|ÇøÓòÈëÇÖ|½øÈëÇøÓò|À뿪ÇøÓò|ÈËÁ³Ê¶±ð£©,20£­ÈËÁ³Õì²â, 21-POS¼Ïñ*/ + char reservedData; +}NET_DVR_RECORDDAY, *LPNET_DVR_RECORDDAY; + +//ͨµÀ¼Ïñ²ÎÊýÅäÖÃ(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + DWORD dwRecord; /*ÊÇ·ñ¼Ïñ 0-·ñ 1-ÊÇ*/ + NET_DVR_RECORDDAY struRecAllDay[MAX_DAYS]; + NET_DVR_RECORDSCHED struRecordSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + DWORD dwRecordTime; /* ¼ÏóÑÓʱ³¤¶È 0-5Ã룬 1-10Ã룬 2-30Ã룬 3-1·ÖÖÓ£¬ 4-2·ÖÖÓ£¬ 5-5·ÖÖÓ£¬ 6-10·ÖÖÓ*/ + DWORD dwPreRecordTime; /* Ԥ¼ʱ¼ä 0-²»Ô¤Â¼ 1-5Ãë 2-10Ãë 3-15Ãë 4-20Ãë 5-25Ãë 6-30Ãë 7-0xffffffff(¾¡¿ÉÄÜԤ¼) */ + DWORD dwRecorderDuration; /* ¼Ïñ±£´æµÄ×ʱ¼ä */ + BYTE byRedundancyRec; /*ÊÇ·ñÈßÓà¼Ïñ,ÖØÒªÊý¾ÝË«±¸·Ý£º0/1*/ + BYTE byAudioRec; /*¼Ïñʱ¸´ºÏÁ÷±àÂëʱÊÇ·ñ¼Ç¼ÒôƵÊý¾Ý£º¹úÍâÓд˷¨¹æ*/ + BYTE byStreamType; // 0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-Ö÷×ÓÂëÁ÷ͬʱ 3-ÈýÂëÁ÷ + BYTE byPassbackRecord; // 0:²»»Ø´«Â¼Ïñ 1£º»Ø´«Â¼Ïñ + WORD wLockDuration; // ¼ÏñËø¶¨Ê±³¤£¬µ¥Î»Ð¡Ê± 0±íʾ²»Ëø¶¨£¬0xffff±íʾÓÀ¾ÃËø¶¨£¬Â¼Ïñ¶ÎµÄʱ³¤´óÓÚËø¶¨µÄ³ÖÐøʱ³¤µÄ¼Ïñ£¬½«²»»áËø¶¨ + BYTE byRecordBackup; // 0:¼Ïñ²»´æµµ 1£ºÂ¼Ïñ´æµµ + BYTE bySVCLevel; //SVC³éÖ¡ÀàÐÍ£º0-²»³é£¬1-³é¶þ·ÖÖ®Ò» 2-³éËÄ·ÖÖ®Èý + BYTE byRecordManage; //¼Ïñµ÷¶È£¬0-ÆôÓ㬠1-²»ÆôÓÃ; ÆôÓÃʱ½øÐж¨Ê±Â¼Ïñ£»²»ÆôÓÃʱ²»½øÐж¨Ê±Â¼Ïñ£¬µ«ÊǼÏñ¼Æ»®ÈÔÔÚʹÓ㬱ÈÈçÒƶ¯Õì²â£¬»Ø´«¶¼»¹ÔÚ°´ÕâÌõ¼Ïñ¼Æ»®½øÐÐ + BYTE byExtraSaveAudio; //ÒôƵµ¥¶ÀÁí´æ0-·Çµ¥¶ÀÁí´æ£¬1-µ¥¶ÀÁí´æ + /*¿ªÆôÖÇÄܼÏñ¹¦Äܺó£¬Ëã·¨¿âÊÇ×Ô¶¯ÆôÓÃÖÇÄܼÏñËã·¨£¬Æ书ÄÜΪÈô¼ÏñÖÐÎÞÄ¿±ê³öÏÖ£¬»á½µµÍÂëÂÊ¡¢Ö¡ÂÊ£¬¶øÄ¿±ê³öÏÖʱÓÖ»Ö¸´È«ÂëÂʼ°Ö¡ÂÊ£¬´Ó¶ø´ïµ½¼õÉÙ×ÊÔ´ÏûºÄµÄÄ¿µÄ*/ + BYTE byIntelligentRecord;//ÊÇ·ñ¿ªÆôÖÇÄܼÏñ¹¦ÄÜ 0-·ñ 1-ÊÇ + BYTE byReserve; +}NET_DVR_RECORD_V30, *LPNET_DVR_RECORD_V30; + +//ʱ¼ä¶Î¼Ïñ²ÎÊýÅäÖÃ(×ӽṹ) +typedef struct +{ + NET_DVR_SCHEDTIME struRecordTime; + /*¼ÏñÀàÐÍ£¬0:¶¨Ê±Â¼Ïñ£¬1:Òƶ¯Õì²â£¬2:±¨¾¯Â¼Ïñ£¬3:¶¯²â|±¨¾¯£¬4:¶¯²â&±¨¾¯ 5:ÃüÁî´¥·¢, + 6-ÖÇÄܱ¨¾¯Â¼Ïñ£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ,14-ÖÇÄܽ»Í¨Ê¼þ, + 15-Ô½½çÕì²â,16-ÇøÓòÈëÇÖ,17-ÉùÒôÒì³£,18-³¡¾°±ä¸üÕì²â, + 19-ÖÇÄÜÕì²â(Ô½½çÕì²â|ÇøÓòÈëÇÖ|ÈËÁ³Õì²â|ÉùÒôÒì³£|³¡¾°±ä¸üÕì²â),20£­ÈËÁ³Õì²â,21-POS¼Ïñ, + 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-»Ò¶È±¨¾¯*/ + BYTE byRecordType; + BYTE byRes[31]; +}NET_DVR_RECORDSCHED_V40, *LPNET_DVR_RECORDSCHED_V40; + +//È«Ìì¼Ïñ²ÎÊýÅäÖÃ(×ӽṹ) +typedef struct +{ + BYTE byAllDayRecord; /* ÊÇ·ñÈ«Ìì¼Ïñ 0-·ñ 1-ÊÇ*/ + /*¼ÏñÀàÐÍ£¬0:¶¨Ê±Â¼Ïñ£¬1:Òƶ¯Õì²â£¬2:±¨¾¯Â¼Ïñ£¬3:¶¯²â|±¨¾¯£¬4:¶¯²â&±¨¾¯ 5:ÃüÁî´¥·¢, + 6-ÖÇÄܱ¨¾¯Â¼Ïñ£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ,14-ÖÇÄܽ»Í¨Ê¼þ, + 15-Ô½½çÕì²â,16-ÇøÓòÈëÇÖ,17-ÉùÒôÒì³£,18-³¡¾°±ä¸üÕì²â, + 19-ÖÇÄÜÕì²â(Ô½½çÕì²â|ÇøÓòÈëÇÖ|ÈËÁ³Õì²â|ÉùÒôÒì³£|³¡¾°±ä¸üÕì²â),20£­ÈËÁ³Õì²â,21-POS¼Ïñ, + 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-»Ò¶È±¨¾¯*/ + BYTE byRecordType; + BYTE byRes[62]; +}NET_DVR_RECORDDAY_V40, *LPNET_DVR_RECORDDAY_V40; + +typedef struct +{ + DWORD dwSize; + DWORD dwRecord; /*ÊÇ·ñ¼Ïñ 0-·ñ 1-ÊÇ*/ + NET_DVR_RECORDDAY_V40 struRecAllDay[MAX_DAYS]; + NET_DVR_RECORDSCHED_V40 struRecordSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + DWORD dwRecordTime; /* ¼ÏóÑÓʱ³¤¶È 0-5Ã룬 1-10Ã룬 2-30Ã룬 3-1·ÖÖÓ£¬ 4-2·ÖÖÓ£¬ 5-5·ÖÖÓ£¬ 6-10·ÖÖÓ*/ + DWORD dwPreRecordTime; /* Ԥ¼ʱ¼ä 0-²»Ô¤Â¼ 1-5Ãë 2-10Ãë 3-15Ãë 4-20Ãë 5-25Ãë 6-30Ãë 7-0xffffffff(¾¡¿ÉÄÜԤ¼) */ + DWORD dwRecorderDuration; /* ¼Ïñ±£´æµÄ×ʱ¼ä */ + BYTE byRedundancyRec; /*ÊÇ·ñÈßÓà¼Ïñ,ÖØÒªÊý¾ÝË«±¸·Ý£º0/1*/ + BYTE byAudioRec; /*¼Ïñʱ¸´ºÏÁ÷±àÂëʱÊÇ·ñ¼Ç¼ÒôƵÊý¾Ý£º¹úÍâÓд˷¨¹æ*/ + BYTE byStreamType; // 0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-Ö÷×ÓÂëÁ÷ͬʱ 3-ÈýÂëÁ÷ + BYTE byPassbackRecord; // 0:²»»Ø´«Â¼Ïñ 1£º»Ø´«Â¼Ïñ + WORD wLockDuration; // ¼ÏñËø¶¨Ê±³¤£¬µ¥Î»Ð¡Ê± 0±íʾ²»Ëø¶¨£¬0xffff±íʾÓÀ¾ÃËø¶¨£¬Â¼Ïñ¶ÎµÄʱ³¤´óÓÚËø¶¨µÄ³ÖÐøʱ³¤µÄ¼Ïñ£¬½«²»»áËø¶¨ + BYTE byRecordBackup; // 0:¼Ïñ²»´æµµ 1£ºÂ¼Ïñ´æµµ + BYTE bySVCLevel; //SVC³éÖ¡ÀàÐÍ£º0-²»³é£¬1-³é¶þ·ÖÖ®Ò» 2-³éËÄ·ÖÖ®Èý + BYTE byRecordManage; //¼Ïñµ÷¶È£¬0-ÆôÓ㬠1-²»ÆôÓÃ; ÆôÓÃʱ½øÐж¨Ê±Â¼Ïñ£»²»ÆôÓÃʱ²»½øÐж¨Ê±Â¼Ïñ£¬µ«ÊǼÏñ¼Æ»®ÈÔÔÚʹÓ㬱ÈÈçÒƶ¯Õì²â£¬»Ø´«¶¼»¹ÔÚ°´ÕâÌõ¼Ïñ¼Æ»®½øÐÐ + BYTE byExtraSaveAudio;//ÒôƵµ¥¶À´æ´¢ + /*¿ªÆôÖÇÄܼÏñ¹¦Äܺó£¬Ëã·¨¿âÊÇ×Ô¶¯ÆôÓÃÖÇÄܼÏñËã·¨£¬Æ书ÄÜΪÈô¼ÏñÖÐÎÞÄ¿±ê³öÏÖ£¬»á½µµÍÂëÂÊ¡¢Ö¡ÂÊ£¬¶øÄ¿±ê³öÏÖʱÓÖ»Ö¸´È«ÂëÂʼ°Ö¡ÂÊ£¬´Ó¶ø´ïµ½¼õÉÙ×ÊÔ´ÏûºÄµÄÄ¿µÄ*/ + BYTE byIntelligentRecord;//ÊÇ·ñ¿ªÆôÖÇÄܼÏñ¹¦ÄÜ 0-·ñ 1-ÊÇ + BYTE byRes[125]; +}NET_DVR_RECORD_V40, *LPNET_DVR_RECORD_V40; + +//ͨµÀ¼Ïñ²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + DWORD dwRecord; /*ÊÇ·ñ¼Ïñ 0-·ñ 1-ÊÇ*/ + NET_DVR_RECORDDAY struRecAllDay[MAX_DAYS]; + NET_DVR_RECORDSCHED struRecordSched[MAX_DAYS][MAX_TIMESEGMENT]; + DWORD dwRecordTime; /* ¼Ïóʱ¼ä³¤¶È */ + DWORD dwPreRecordTime; /* Ԥ¼ʱ¼ä 0-²»Ô¤Â¼ 1-5Ãë 2-10Ãë 3-15Ãë 4-20Ãë 5-25Ãë 6-30Ãë 7-0xffffffff(¾¡¿ÉÄÜԤ¼) */ +}NET_DVR_RECORD, *LPNET_DVR_RECORD; + +//ÔÆ̨ЭÒé±í½á¹¹ÅäÖà +typedef struct +{ + DWORD dwType; /*½âÂëÆ÷ÀàÐÍÖµ*/ + BYTE byDescribe[DESC_LEN]; /*½âÂëÆ÷µÄÃèÊö·û£¬ºÍ8000ÖеÄÒ»ÖÂ*/ +}NET_DVR_PTZ_PROTOCOL; + +typedef struct +{ + DWORD dwSize; + NET_DVR_PTZ_PROTOCOL struPtz[PTZ_PROTOCOL_NUM];/*×î´ó200ÖÐPTZЭÒé*/ + DWORD dwPtzNum; /*ÓÐЧµÄptzЭÒéÊýÄ¿£¬´Ó0¿ªÊ¼(¼´¼ÆËãʱ¼Ó1)*/ + BYTE byRes[8]; +}NET_DVR_PTZCFG, *LPNET_DVR_PTZCFG; + +/***************************ÔÆ̨ÀàÐÍ(end)******************************/ +typedef struct tagNET_DVR_SERIALSTART_V40 //͸Ã÷ͨµÀ +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwSerialType; //´®¿ÚºÅ£¨1-232´®¿Ú£¬2-485´®¿Ú£© + BYTE bySerialNum; //´®¿Ú±àºÅ + BYTE byRes[255]; +}NET_DVR_SERIALSTART_V40,*LPNET_DVR_SERIALSTART_V40; + +//ͨµÀ½âÂëÆ÷(ÔÆ̨)²ÎÊýÅäÖà À©Õ¹ +typedef struct tagNET_DVR_DECODERCFG_V40 +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwBaudRate; //²¨ÌØÂÊ 0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k; + BYTE byDataBit; //Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ; + BYTE byStopBit; //ֹͣλ 0£­1룬1£­2λ + BYTE byParity; //УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé + BYTE byFlowcontrol; //0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + WORD wDecoderType; //½âÂëÆ÷ÀàÐÍ*/ + WORD wDecoderAddress; //½âÂëÆ÷µØÖ·£¬0-255 + BYTE bySetPreset [MAX_PRESET_V30]; //Ô¤ÖõãÊÇ·ñÉèÖÃ,0-ûÓÐÉèÖÃ,1-ÉèÖà + BYTE bySetCruise[MAX_CRUISE_V30]; //Ѳº½ÊÇ·ñÉèÖÃ: 0-ûÓÐÉèÖÃ,1-ÉèÖà + BYTE bySetTrack [MAX_TRACK_V30]; //¹ì¼£ÊÇ·ñÉèÖÃ,0-ûÓÐÉèÖÃ,1-ÉèÖà + BYTE bySerialNO; //´®¿Ú±àºÅ + BYTE byWorkMode; /*¹¤×÷ģʽ£¬ 1-¾ØÕó´®¿Ú¿ØÖÆ£¬2-ÆÁÄ»¿ØÖÆ£¬3-͸Ã÷ͨµÀģʽ 4-PPPģʽ 5-¿ØÖÆ̨ģʽ 6-´®¿ÚÖ±Á¬ 7-¼üÅÌ¿ØÖÆ 8-¼à¿Ø°å¹ÜÀí 9-¿ØÖÆÔÆ̨ 12-LEDÏÔʾ£¬13-´¥·¢×¥ÅÄÊý¾Ý´«Êä*/ + BYTE byRes[254]; //±£Áô +}NET_DVR_DECODERCFG_V40,*LPNET_DVR_DECODERCFG_V40; + +typedef struct tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO +{ + float fMaxTemperature;//×î¸ßΣ¬¾«È·µ½Ð¡Êýµãºóһλ + float fMinTemperature;//×îµÍΣ¬¾«È·µ½Ð¡Êýµãºóһλ + float fAverageTemperature;//ƽ¾ùΣ¬¾«È·µ½Ð¡Êýµãºóһλ + NET_VCA_POINT struHighestPoint; //×î¸ßζÈλÖÃ×ø±ê + NET_VCA_POINT struLowestPoint; //×îµÍζÈλÖÃ×ø±ê + BYTE byIsFreezedata;//ÊÇ·ñÊý¾Ý¶³½á 0-·ñ 1-ÊÇ + BYTE byRes[15]; +}NET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO, *LPNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO; + +//ͨµÀ½âÂëÆ÷(ÔÆ̨)²ÎÊýÅäÖÃ(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + DWORD dwBaudRate;//²¨ÌØÂÊ(bps)£¬0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k; + BYTE byDataBit;// Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ; + BYTE byStopBit;// ֹͣλ 0£­1룬1£­2λ; + BYTE byParity;// УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé; + BYTE byFlowcontrol;// 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + WORD wDecoderType;//½âÂëÆ÷ÀàÐÍ, ´Ó0¿ªÊ¼£¬¶ÔÓ¦ptzЭÒéÁбí´ÓNET_DVR_IPC_PROTO_LISTµÃµ½ + WORD wDecoderAddress; /*½âÂëÆ÷µØÖ·:0 - 255*/ + BYTE bySetPreset[MAX_PRESET_V30]; /* Ô¤ÖõãÊÇ·ñÉèÖÃ,0-ûÓÐÉèÖÃ,1-ÉèÖÃ*/ + BYTE bySetCruise[MAX_CRUISE_V30]; /* Ѳº½ÊÇ·ñÉèÖÃ: 0-ûÓÐÉèÖÃ,1-ÉèÖà */ + BYTE bySetTrack[MAX_TRACK_V30]; /* ¹ì¼£ÊÇ·ñÉèÖÃ,0-ûÓÐÉèÖÃ,1-ÉèÖÃ*/ +}NET_DVR_DECODERCFG_V30, *LPNET_DVR_DECODERCFG_V30; + +//ͨµÀ½âÂëÆ÷(ÔÆ̨)²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + DWORD dwBaudRate; //²¨ÌØÂÊ(bps)£¬0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k; + BYTE byDataBit; // Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ; + BYTE byStopBit; // ֹͣλ 0£­1룬1£­2λ; + BYTE byParity; // УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé; + BYTE byFlowcontrol; // 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + WORD wDecoderType; //½âÂëÆ÷ÀàÐÍ NET_DVR_IPC_PROTO_LISTÖеõ½ + WORD wDecoderAddress; /*½âÂëÆ÷µØÖ·:0 - 255*/ + BYTE bySetPreset[MAX_PRESET]; /* Ô¤ÖõãÊÇ·ñÉèÖÃ,0-ûÓÐÉèÖÃ,1-ÉèÖÃ*/ + BYTE bySetCruise[MAX_CRUISE]; /* Ѳº½ÊÇ·ñÉèÖÃ: 0-ûÓÐÉèÖÃ,1-ÉèÖà */ + BYTE bySetTrack[MAX_TRACK]; /* ¹ì¼£ÊÇ·ñÉèÖÃ,0-ûÓÐÉèÖÃ,1-ÉèÖÃ*/ +}NET_DVR_DECODERCFG, *LPNET_DVR_DECODERCFG; + +//ppp²ÎÊýÅäÖÃ(×ӽṹ) +typedef struct +{ + NET_DVR_IPADDR struRemoteIP; //Ô¶¶ËIPµØÖ· + NET_DVR_IPADDR struLocalIP; //±¾µØIPµØÖ· + char sLocalIPMask[16]; //±¾µØIPµØÖ·ÑÚÂë + BYTE sUsername[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + BYTE byPPPMode; //PPPģʽ, 0£­Ö÷¶¯£¬1£­±»¶¯ + BYTE byRedial; //ÊÇ·ñ»Ø²¦ £º0-·ñ,1-ÊÇ + BYTE byRedialMode; //»Ø²¦Ä£Ê½,0-Óɲ¦ÈëÕßÖ¸¶¨,1-Ô¤Öûز¦ºÅÂë + BYTE byDataEncrypt; //Êý¾Ý¼ÓÃÜ,0-·ñ,1-ÊÇ + DWORD dwMTU; //MTU + char sTelephoneNumber[PHONENUMBER_LEN]; //µç»°ºÅÂë +}NET_DVR_PPPCFG_V30, *LPNET_DVR_PPPCFG_V30; + +//ppp²ÎÊýÅäÖÃ(×ӽṹ) +typedef struct +{ + char sRemoteIP[16]; //Ô¶¶ËIPµØÖ· + char sLocalIP[16]; //±¾µØIPµØÖ· + char sLocalIPMask[16]; //±¾µØIPµØÖ·ÑÚÂë + BYTE sUsername[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + BYTE byPPPMode; //PPPģʽ, 0£­Ö÷¶¯£¬1£­±»¶¯ + BYTE byRedial; //ÊÇ·ñ»Ø²¦ £º0-·ñ,1-ÊÇ + BYTE byRedialMode; //»Ø²¦Ä£Ê½,0-Óɲ¦ÈëÕßÖ¸¶¨,1-Ô¤Öûز¦ºÅÂë + BYTE byDataEncrypt; //Êý¾Ý¼ÓÃÜ,0-·ñ,1-ÊÇ + DWORD dwMTU; //MTU + char sTelephoneNumber[PHONENUMBER_LEN]; //µç»°ºÅÂë +}NET_DVR_PPPCFG, *LPNET_DVR_PPPCFG; + +//RS232´®¿Ú²ÎÊýÅäÖÃ(9000À©Õ¹) +typedef struct +{ + DWORD dwBaudRate; /*²¨ÌØÂÊ(bps)£¬0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k;*/ + BYTE byDataBit; /* Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ */ + BYTE byStopBit; /* ֹͣλ 0£­1룬1£­2λ */ + BYTE byParity; /* УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé */ + BYTE byFlowcontrol; /* 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø */ + DWORD dwWorkMode; //¹¤×÷ģʽ£¬0£­232´®¿ÚÓÃÓÚPPP²¦ºÅ£¬1£­232´®¿ÚÓÃÓÚ²ÎÊý¿ØÖÆ£¬2£­Í¸Ã÷ͨµÀ 3- ptzģʽ,ÉóѶÎÂʪ¶È´«¸ÐÆ÷, 4-±¨¾¯ºÐģʽ 5-¾ØÕó´®¿Ú¿ØÖÆ 6-ÆÁÄ»¿ØÖÆ 7-´®¿ÚÖ±Á¬ 8-¼üÅÌ¿ØÖÆ 9-¼à¿Ø°å¹ÜÀí 10-¿ØÖÆÔÆ̨ +}NET_DVR_SINGLE_RS232; + +typedef struct tagNET_DVR_USB_RS232 +{ + DWORD dwBaudRate; /*²¨ÌØÂÊ(bps)£¬0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k;*/ + BYTE byDataBit; /* Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ */ + BYTE byStopBit; /* ֹͣλ 0£­1룬1£­2λ */ + BYTE byParity; /* УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé */ + BYTE byFlowcontrol; /* 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø */ + BYTE byVirtualSerialPort; //ÐéÄâ´®¿Ú±àºÅ + BYTE byRes[3]; +}NET_DVR_USB_RS232,*LPNET_DVR_USB_RS232; + +//RS232´®¿Ú²ÎÊýÅäÖÃ(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_SINGLE_RS232 struRs232[MAX_SERIAL_PORT];/*×¢Ò⣺´Ë½á¹¹ÐÞ¸ÄÁË£¬Ô­À´Êǵ¥¸ö½á¹¹£¬ÏÖÔÚÐÞ¸ÄΪÁËÊý×é½á¹¹*/ + NET_DVR_PPPCFG_V30 struPPPConfig; +}NET_DVR_RS232CFG_V30, *LPNET_DVR_RS232CFG_V30; + +//RS232´®¿Ú²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + DWORD dwBaudRate;//²¨ÌØÂÊ(bps)£¬0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k; + BYTE byDataBit;// Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ; + BYTE byStopBit;// ֹͣλ 0£­1룬1£­2λ; + BYTE byParity;// УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé; + BYTE byFlowcontrol;// 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + DWORD dwWorkMode;// ¹¤×÷ģʽ£¬0£­Õ­´ø´«Êä(232´®¿ÚÓÃÓÚPPP²¦ºÅ)£¬1£­¿ØÖÆ̨(232´®¿ÚÓÃÓÚ²ÎÊý¿ØÖÆ)£¬2£­Í¸Ã÷ͨµÀ + NET_DVR_PPPCFG struPPPConfig; +}NET_DVR_RS232CFG, *LPNET_DVR_RS232CFG; + + +typedef struct +{ + DWORD dwEnablePresetChan; /*ÆôÓÃÔ¤ÖõãµÄͨµÀ, 0xfffffff±íʾ²»µ÷ÓÃÔ¤Öõã*/ + DWORD dwPresetPointNo; /*µ÷ÓÃÔ¤ÖõãͨµÀ¶ÔÓ¦µÄÔ¤ÖõãÐòºÅ, 0xfffffff±íʾ²»µ÷ÓÃÔ¤Öõ㡣*/ +}NET_DVR_PRESETCHAN_INFO, LPNET_DVR_PRESETCHAN_INFO; + +typedef struct +{ + DWORD dwEnableCruiseChan; /*ÆôÓÃѲº½µÄͨµÀ*/ + DWORD dwCruiseNo; /*Ѳº½Í¨µÀ¶ÔÓ¦µÄѲº½±àºÅ, 0xfffffff±íʾÎÞЧ*/ +}NET_DVR_CRUISECHAN_INFO, LPNET_DVR_CRUISECHAN_INFO; + +typedef struct +{ + DWORD dwEnablePtzTrackChan; /*ÆôÓÃÔÆ̨¹ì¼£µÄͨµÀ*/ + DWORD dwPtzTrackNo; /*ÔÆ̨¹ì¼£Í¨µÀ¶ÔÓ¦µÄ±àºÅ, 0xfffffff±íʾÎÞЧ*/ +}NET_DVR_PTZTRACKCHAN_INFO, LPNET_DVR_PTZTRACKCHAN_INFO; + +typedef struct tagNET_DVR_PTZ_NOTIFICATION_COND +{ + DWORD dwSize; + /* + 0-facedetection, + 1-vehicleDetection, + 2-scenechangedetection, + 3-LineDetection, + 4-regionEntrance, + 5-regionExiting, + 6-loitering, + 7-group, + 8-rapidMove, + 9-parking, + 10-unattendedBaggage, + 11-attendedBaggage, + 12-audioDetection, + 13-PIR, + 14-defocusDetection + 15-temperature, + 16-fireDetection, + 17-thermometry, + 18-shipsDetection + 19-fieldDetection + 20-blockListFaceContrast + 21-allowListFaceContrast + 22- humanRecognition + 23- faceContrast + */ + WORD byEventType; + BYTE byRes[2]; + DWORD dwChannel; + BYTE byRes1[128]; +}NET_DVR_PTZ_NOTIFICATION_COND, *LPNET_DVR_PTZ_NOTIFICATION_COND; + +typedef struct tagNET_DVR_PTZ_NOTIFICATION_CFG +{ + DWORD dwSize; + DWORD dwEnablePresetChanNum; //µ±Ç°ÒÑÆôÓÃÔ¤ÖõãµÄÊýÄ¿ + NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; //ÆôÓõÄÔ¤ÖõãÐÅÏ¢(¹ØÁªÁª¶¯ÀàÐÍ ptz) + DWORD dwEnableCruiseChanNum; //µ±Ç°ÒÑÆôÓÃѲº½µÄͨµÀÊýÄ¿ + NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; //ÆôÓÃѲº½¹¦ÄÜͨµÀµÄÐÅÏ¢(¹ØÁªÁª¶¯ÀàÐÍ ptz) + DWORD dwEnablePtzTrackChanNum; //µ±Ç°ÒÑÆôÓÃÔÆ̨¹ì¼£µÄͨµÀÊýÄ¿ + NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; //µ÷ÓÃÔÆ̨¹ì¼£µÄͨµÀÐÅÏ¢(¹ØÁªÁª¶¯ÀàÐÍ ptz) + BYTE byRes1[1024]; +}NET_DVR_PTZ_NOTIFICATION_CFG, *LPNET_DVR_PTZ_NOTIFICATION_CFG; + + +typedef struct tagNET_DVR_PTZ_NOTIFICATION +{ + DWORD dwSize; + /* + 0-facedetection, + 1-vehicleDetection, + 2-scenechangedetection, + 3-LineDetection, + 4-regionEntrance, + 5-regionExiting, + 6-loitering, + 7-group, + 8-rapidMove, + 9-parking, + 10-unattendedBaggage, + 11-attendedBaggage, + 12-audioDetection, + 13-PIR, + 14-defocusDetection£¬ + 15-temperature, + 16-fireDetection, + 17-thermometry, + 18-shipsDetection + 19-fieldDetection + 20-blockListFaceContrast + 21-allowListFaceContrast + 22- humanRecognition + */ + WORD byEventType; + BYTE byRes[62]; + DWORD dwEnablePresetChanNum; //µ±Ç°ÒÑÆôÓÃÔ¤ÖõãµÄÊýÄ¿ + NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; //ÆôÓõÄÔ¤ÖõãÐÅÏ¢(¹ØÁªÁª¶¯ÀàÐÍ ptz) + DWORD dwEnableCruiseChanNum; //µ±Ç°ÒÑÆôÓÃѲº½µÄͨµÀÊýÄ¿ + NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; //ÆôÓÃѲº½¹¦ÄÜͨµÀµÄÐÅÏ¢(¹ØÁªÁª¶¯ÀàÐÍ ptz) + DWORD dwEnablePtzTrackChanNum; //µ±Ç°ÒÑÆôÓÃÔÆ̨¹ì¼£µÄͨµÀÊýÄ¿ + NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; //µ÷ÓÃÔÆ̨¹ì¼£µÄͨµÀÐÅÏ¢(¹ØÁªÁª¶¯ÀàÐÍ ptz) + BYTE byRes1[1024]; +}NET_DVR_PTZ_NOTIFICATION, *LPNET_DVR_PTZ_NOTIFICATION; + +#define NET_SDK_MAX_EVENT_NUM 64 //×éºÏʼþ×î´óÖ§³Ö¸öÊý + +//±¨¾¯ÊäÈë²ÎÊýÅäÖÃ(256·NVRÀ©Õ¹) +typedef struct tagNET_DVR_ALARMINCFG_V40 +{ + DWORD dwSize; + BYTE sAlarmInName[NAME_LEN]; /* Ãû³Æ */ + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ,0£º³£¿ª,1£º³£±Õ + BYTE byAlarmInHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byChannel; // ±¨¾¯ÊäÈë´¥·¢ÖÇÄÜʶ±ðͨµÀ + BYTE byInputType; //ÊäÈëÀàÐÍ 0-¿ª¹ØÁ¿·½Ê½ 1-ÐźÅÁ¿·½Ê½ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x1000:ץͼÉÏ´«µ½ÔÆ*/ + /*0x2000:¶ÌÐű¨¾¯*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelAlarmOutChanNum; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý ʵ¼ÊÖ§³ÖÊý + DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; //´¥·¢±¨¾¯Í¨µÀ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + /*´¥·¢µÄ¼ÏñͨµÀ*/ + DWORD dwMaxRecordChanNum; //É豸֧³ÖµÄ×î´ó¹ØÁªÂ¼ÏñͨµÀÊý-Ö»¶Á + DWORD dwCurRecordChanNum; //µ±Ç°Êµ¼ÊÒÑÅäÖõĹØÁªÂ¼ÏñͨµÀÊý + DWORD dwRelRecordChan[MAX_CHANNUM_V40]; /* ʵ¼Ê´¥·¢Â¼ÏñͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0 - dwCurRecordChanNum -1ÓÐЧ£¬Èç¹ûÖмäÓöµ½0xffffffff,ÔòºóÐøÎÞЧ*/ + DWORD dwMaxEnablePtzCtrlNun; //×î´ó¿ÉÆôÓõÄÔÆ̨¿ØÖÆ×ÜÊý(Ö»¶Á) + DWORD dwEnablePresetChanNum; //µ±Ç°ÒÑÆôÓÃÔ¤ÖõãµÄÊýÄ¿ + NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; //ÆôÓõÄÔ¤ÖõãÐÅÏ¢ + BYTE byPresetDurationTime[MAX_CHANNUM_V40];//Ô¤ÖõãÍ£Áôʱ¼ä ·¶Î§0-20s£¬Ä¬ÈÏ10s£» + BYTE byRes2[4]; /*±£Áô*/ + DWORD dwEnableCruiseChanNum; //µ±Ç°ÒÑÆôÓÃѲº½µÄͨµÀÊýÄ¿ + NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; //ÆôÓÃѲº½¹¦ÄÜͨµÀµÄÐÅÏ¢ + DWORD dwEnablePtzTrackChanNum; //µ±Ç°ÒÑÆôÓÃѲº½µÄͨµÀÊýÄ¿ + NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; //µ÷ÓÃÔÆ̨¹ì¼£µÄͨµÀÐÅÏ¢ + WORD wEventType[NET_SDK_MAX_EVENT_NUM/*64*/]; /*×éºÏʼþÀàÐÍ£¬Ã¿Ò»¸öλ¶ÔÓ¦Ò»¸öʼþÀàÐÍ*/ + BYTE byRes[128]; +}NET_DVR_ALARMINCFG_V40, *LPNET_DVR_ALARMINCFG_V40; + +//±¨¾¯ÊäÈë²ÎÊýÅäÖÃ(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + BYTE sAlarmInName[NAME_LEN]; /* Ãû³Æ */ + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ,0£º³£¿ª,1£º³£±Õ + BYTE byAlarmInHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byChannel; // ±¨¾¯ÊäÈë´¥·¢ÖÇÄÜʶ±ðͨµÀ + BYTE byInputType; //ÊäÈëÀàÐÍ 0-¿ª¹ØÁ¿·½Ê½ 1-ÐźÅÁ¿·½Ê½ + NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byEnablePreset[MAX_CHANNUM_V30]; /* ÊÇ·ñµ÷ÓÃÔ¤Öõã 0-·ñ,1-ÊÇ*/ + BYTE byPresetNo[MAX_CHANNUM_V30]; /* µ÷ÓõÄÔÆ̨ԤÖõãÐòºÅ,Ò»¸ö±¨¾¯ÊäÈë¿ÉÒÔµ÷Óöà¸öͨµÀµÄÔÆ̨ԤÖõã, 0xff±íʾ²»µ÷ÓÃÔ¤Öõ㡣*/ + BYTE byRes2[192]; /*±£Áô*/ + BYTE byEnableCruise[MAX_CHANNUM_V30]; /* ÊÇ·ñµ÷ÓÃѲº½ 0-·ñ,1-ÊÇ*/ + BYTE byCruiseNo[MAX_CHANNUM_V30]; /* Ѳº½ */ + BYTE byEnablePtzTrack[MAX_CHANNUM_V30]; /* ÊÇ·ñµ÷Óù켣 0-·ñ,1-ÊÇ*/ + BYTE byPTZTrack[MAX_CHANNUM_V30]; /* µ÷ÓõÄÔÆ̨µÄ¹ì¼£ÐòºÅ */ + BYTE byRes3[16]; +}NET_DVR_ALARMINCFG_V30, *LPNET_DVR_ALARMINCFG_V30; + + +typedef struct tagNET_DVR_ALARMINFO_FIXED_HEADER +{ + /*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-POCÒì³£,28-Ïà»úÊÓ½ÇÒì³££¬ + 30-ȱÉÙSD¿¨,32-ÔÆ̨¶ÂתÒì³££¬34-Òì³£ÖØÆô*/ + DWORD dwAlarmType;//±¨¾¯ÀàÐÍ + NET_DVR_TIME_EX struAlarmTime; //·¢Éú±¨¾¯µÄʱ¼ä + union + { + BYTE byUnionLen[116]; //·Ö³öÈ¥8¸ö×Ö½ÚÓÃÓÚÀ©Õ¹Ê±Çø + struct + { + DWORD dwAlarmInputNo; //·¢Éú±¨¾¯µÄ±¨¾¯ÊäÈëͨµÀºÅ£¬Ò»´ÎÖ»ÓÐÒ»¸ö + DWORD dwTrigerAlarmOutNum; /*´¥·¢µÄ±¨¾¯Êä³ö¸öÊý£¬ÓÃÓÚºóÃæ¼ÆËã±ä³¤Êý¾Ý²¿·ÖÖÐËùÓд¥·¢µÄ±¨¾¯Êä³öͨµÀºÅ£¬ËÄ×Ö½Ú±íʾһ¸ö*/ + DWORD dwTrigerRecordChanNum; /*´¥·¢µÄ¼ÏñͨµÀ¸öÊý£¬ÓÃÓÚºóÃæ¼ÆËã±ä³¤Êý¾Ý²¿·ÖÖÐËùÓд¥·¢µÄ¼ÏñͨµÀºÅ£¬ËÄ×Ö½Ú±íʾһ¸ö*/ + }struIOAlarm; // ±¨¾¯ÀàÐÍdwAlarmTypeΪ0ʱÓÐЧ + struct + { + DWORD dwAlarmChanNum; /*·¢Éú±¨¾¯Í¨µÀÊý¾Ý¸öÊý£¬ÓÃÓÚºóÃæ¼ÆËã±ä³¤Êý¾Ý²¿·ÖÖÐËùÓз¢ÉúµÄ±¨¾¯Í¨µÀºÅ£¬ËÄ×Ö½Ú±íʾһ¸ö*/ + DWORD dwPicLen;//JpegͼƬ³¤¶È + BYTE byPicURL; //ͼƬÊý¾Ý²ÉÓÃURL·½Ê½ 0-¶þ½øÖÆͼƬÊý¾Ý£¬1-ͼƬÊý¾Ý×ßURL·½Ê½ + BYTE byTarget; /*0-²»Çø·Öʶ±ðÄ¿±ê£¬1-ʶ±ðÄ¿±êΪÈË£¬2-ʶ±ðÄ¿±êΪ³µ*/ + BYTE byRes1[2]; //±£Áô +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pDataBuff; //±¨¾¯Í¼Æ¬»òÕßͼƬURL +#else + char* pDataBuff; //±¨¾¯Í¼Æ¬»òÕßͼƬURL + BYTE byRes3[4]; +#endif + }struAlarmChannel; // dwAlarmTypeΪ2£¬3£¬6£¬9£¬10¡¢13»ò28ʱÓÐЧ + struct + { + DWORD dwAlarmHardDiskNum; /*·¢Éú±¨¾¯µÄÓ²ÅÌÊý¾Ý³¤¶È£¬ÓÃÓÚºóÃæ¼ÆËã±ä³¤Êý¾Ý²¿·ÖÖÐËùÓз¢Éú±¨¾¯µÄÓ²Å̺ţ¬ËĽڱíʾһ¸ö*/ + }struAlarmHardDisk; // dwAlarmTypeΪ1,4,5ʱÓÐЧ + struct + { + BYTE bySubAlarmType; //±¨¾¯×ÓÀàÐÍ£¬1-Ò»¼üÑÓ³Ù¼Ïñ£» + BYTE byRes1[3]; //±£Áô + NET_DVR_TIME_EX struRecordEndTime; //¼²¥½áÊøʱ¼ä + }struRecordingHost; //¼²¥Ö÷»úרÓñ¨¾¯ + struct + { + float fVoltageValue;//µçÔ´µçѹֵ,µ¥Î»V,¾«È·µ½0.1 + BYTE byVoltageAlarmType; //µçÔ´µçѹ±¨¾¯ÀàÐÍ£¬0-µçÔ´µçѹ¹ý¸ß£¬1-µçÔ´µçѹ¹ýµÍ + BYTE byRes1[3]; //±£Áô×Ö½Ú + }struVoltageInstable; //dwAlarmType=31ʱÓÐЧ + + struct + { + float fTemperature;//´«¸ÐÆ÷ζȣ¬¾«È·µ½Ð¡Êýµãºó1λ + DWORD dwCustomInfoLength; //×Ô¶¨ÒåÐÅÏ¢³¤¶È + BYTE* pCustomInfo; //×Ô¶¨ÒåÐÅÏ¢ + BYTE byType; //ÔÆ̨¶ÂתÀàÐÍ 1-ˮƽ¶Âת 2-´¹Ö±¶Âת + BYTE byDeicingEnabled; // ÔÆ̨³ý±ù¼ÓÈÈʹÄÜ 0-¹Ø±Õ 1-¿ªÆô + BYTE byRes2[2]; //±£Áô + DWORD dwChannel; //ͨµÀºÅ + }struPTLocking; //ÔÆ̨¶ÂתÒì³£ dwAlarmType=32ʱÓÐЧ + + struct + { + BYTE byExceptionType; //Òì³£ÀàÐÍ,0-±£Áô, 1- ÈÕÖ¾´æ´¢Òì³££¬2-ÈÕÖ¾ÅÌÂú + }struLogException; //dwAlarmType=33ʱÓÐЧ,ÈÕÖ¾Òì³£ÐÅÏ¢ + + struct + { + NET_DVR_TIME_EX struAlarmTime; //ÖØÆôʱ¼ä£¬É豸±¾µØʱ¼ä + BYTE byExceptionType; //ÖØÆô¾ßÌåÀàÐÍ 0-±£Áô 1- Ïß³Ì 2-ÎÞÂëÁ÷ µ±Ç°0¡¢1¡¢2 ÒÔÍâΪÆäËû + BYTE byRes1[3]; //±£Áô×Ö½Ú + }struAbnormalReboot; //Òì³£ÖØÆô dwAlarmType=34ʱÓÐЧ + + }uStruAlarm; + DWORD* pRes; //ÓÃÓÚ¼æÈÝ64λϽṹÌå×Ö½Ú²»¶ÔÆëÎÊÌâ + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byRes; //±£Áô + WORD wDevInfoIvmsChannel; //Ôö¼Óºó¶Ë͸´«Ç°¶ËʱµÄͨµÀºÅ + BYTE byRes2[2]; //±£Áô +}NET_DVR_ALRAM_FIXED_HEADER, *LPNET_DVR_ALARM_FIXED_HEADER; + +//ÉÏ´«±¨¾¯ÐÅÏ¢(256·NVRÀ©Õ¹) +typedef struct NET_DVR_ALARMINFO_V40 +{ + NET_DVR_ALRAM_FIXED_HEADER struAlarmFixedHeader; //±¨¾¯¹Ì¶¨²¿·Ö + DWORD* pAlarmData; //±¨¾¯¿É±ä²¿·ÖÄÚÈÝ +}NET_DVR_ALARMINFO_V40, *LPNET_DVR_ALARMINFO_V40; + +//±¨¾¯ÊäÈë²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + BYTE sAlarmInName[NAME_LEN]; /* Ãû³Æ */ + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ,0£º³£¿ª,1£º³£±Õ + BYTE byAlarmInHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byChannel; // ±¨¾¯ÊäÈë´¥·¢ÖÇÄÜʶ±ðͨµÀ + BYTE byRes; + NET_DVR_HANDLEEXCEPTION struAlarmHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];//²¼·Àʱ¼ä + BYTE byRelRecordChan[MAX_CHANNUM]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byEnablePreset[MAX_CHANNUM]; /* ÊÇ·ñµ÷ÓÃÔ¤Öõã 0-·ñ,1-ÊÇ*/ + BYTE byPresetNo[MAX_CHANNUM]; /* µ÷ÓõÄÔÆ̨ԤÖõãÐòºÅ,Ò»¸ö±¨¾¯ÊäÈë¿ÉÒÔµ÷Óöà¸öͨµÀµÄÔÆ̨ԤÖõã, 0xff±íʾ²»µ÷ÓÃÔ¤Öõ㡣*/ + BYTE byEnableCruise[MAX_CHANNUM]; /* ÊÇ·ñµ÷ÓÃѲº½ 0-·ñ,1-ÊÇ*/ + BYTE byCruiseNo[MAX_CHANNUM]; /* Ѳº½ */ + BYTE byEnablePtzTrack[MAX_CHANNUM]; /* ÊÇ·ñµ÷Óù켣 0-·ñ,1-ÊÇ*/ + BYTE byPTZTrack[MAX_CHANNUM]; /* µ÷ÓõÄÔÆ̨µÄ¹ì¼£ÐòºÅ */ +}NET_DVR_ALARMINCFG, *LPNET_DVR_ALARMINCFG; + +//Ä£Äⱨ¾¯ÊäÈë²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + BYTE byEnableAlarmHandle; //´¦Àí±¨¾¯ÊäÈë + BYTE byRes1[3]; + BYTE byAlarmInName[NAME_LEN]; //Ä£Äⱨ¾¯ÊäÈëÃû³Æ + WORD wAlarmInUpper; //Ä£ÄâÊäÈëµçѹÉÏÏÞ£¬Êµ¼ÊÖµ³Ë10£¬·¶Î§0~360 + WORD wAlarmInLower; //Ä£ÄâÊäÈëµçѹÏÂÏÞ£¬Êµ¼ÊÖµ³Ë10£¬·¶Î§0~360 + NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±»´¥·¢µÄ¼ÏñͨµÀ + BYTE byRes2[100]; +}NET_DVR_ANALOG_ALARMINCFG, *LPNET_DVR_ANALOG_ALARMINCFG; + +//ÉÏ´«±¨¾¯ÐÅÏ¢(9000À©Õ¹) +typedef struct +{ + DWORD dwAlarmType;/*0-ÐźÅÁ¿±¨¾¯,1-Ó²ÅÌÂú,2-ÐźŶªÊ§,3£­Òƶ¯Õì²â,4£­Ó²ÅÌδ¸ñʽ»¯,5-¶ÁдӲÅ̳ö´í,6-ÕÚµ²±¨¾¯,7-ÖÆʽ²»Æ¥Åä, 8-·Ç·¨·ÃÎÊ, 9-ÊÓƵÐźÅÒì³£, + 10-¼ÏñÒì³£,11- ÖÇÄܳ¡¾°±ä»¯,12-ÕóÁÐÒì³£,13-Ç°¶Ë/¼Ïñ·Ö±æÂʲ»Æ¥Åä,14-ÉêÇë½âÂë×ÊԴʧ°Ü,15-ÖÇÄÜÕì²â, 16-POE¹©µçÒì³£±¨¾¯,17-ÉÁ¹âµÆÒì³£, + 18-´ÅÅÌÂú¸ººÉÒì³£±¨¾¯,19-ÒôƵ¶ªÊ§£¬20-¿ªÆô¼Ïñ£¬21-¹Ø±Õ¼Ïñ£¬22-³µÁ¾¼ì²âËã·¨Òì³££¬23-Âö³å±¨¾¯,24-ÈËÁ³¿âÓ²ÅÌÒì³£,25-ÈËÁ³¿â±ä¸ü,26-ÈËÁ³¿âͼƬ±ä¸ü,27-POCÒì³£ + 28-Ïà»úÊÓ½ÇÒì³£,29-µçÁ¿µÍ£¬30-ȱÉÙSD¿¨*/ + DWORD dwAlarmInputNumber;/*±¨¾¯ÊäÈë¶Ë¿Ú*/ + BYTE byAlarmOutputNumber[MAX_ALARMOUT_V30];/*´¥·¢µÄÊä³ö¶Ë¿Ú£¬Îª1±íʾ¶ÔÓ¦Êä³ö*/ + BYTE byAlarmRelateChannel[MAX_CHANNUM_V30];/*´¥·¢µÄ¼ÏñͨµÀ£¬Îª1±íʾ¶ÔӦ¼Ïñ, dwAlarmRelateChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + BYTE byChannel[MAX_CHANNUM_V30];/*dwAlarmTypeΪ2»ò3,6,9,10,14,19,28ʱ£¬±íʾÄĸöͨµÀ£¬dwChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + BYTE byDiskNumber[MAX_DISKNUM_V30];/*dwAlarmTypeΪ1,4,5ʱ,±íʾÄĸöÓ²ÅÌ, dwDiskNumber[0]¶ÔÓ¦µÚ1¸öÓ²ÅÌ*/ + #ifdef SDK_CHEZAI + NET_DVR_ADDIT_POSITION GPS_pos; /* GPS¶¨Î»ÐÅÏ¢ */ + #endif +}NET_DVR_ALARMINFO_V30, *LPNET_DVR_ALARMINFO_V30; + +typedef struct tagNET_DVR_ALARM_HOT_SPARE +{ + DWORD dwSize; //½á¹¹Ìå + DWORD dwExceptionCase; //±¨¾¯Ô­Òò 0-ÍøÂçÒì³£ + NET_DVR_IPADDR struDeviceIP; //²úÉúÒì³£µÄÉ豸IPµØÖ· + BYTE byRes[256]; //±£Áô +}NET_DVR_ALARM_HOT_SPARE, *LPNET_DVR_ALARM_HOT_SPARE; + +typedef struct +{ + DWORD dwAlarmType;/*0-ÐźÅÁ¿±¨¾¯,1-Ó²ÅÌÂú,2-ÐźŶªÊ§,3£­Òƶ¯Õì²â,4£­Ó²ÅÌδ¸ñʽ»¯,5-¶ÁдӲÅ̳ö´í,6-ÕÚµ²±¨¾¯,7-ÖÆʽ²»Æ¥Åä, 8-·Ç·¨·ÃÎÊ, 9-ÊÓƵÐźÅÒì³££¬10-¼ÏñÒì³£ 11- ÖÇÄܳ¡¾°±ä»¯*/ + DWORD dwAlarmInputNumber;/*±¨¾¯ÊäÈë¶Ë¿Ú*/ + DWORD dwAlarmOutputNumber[MAX_ALARMOUT];/*´¥·¢µÄÊä³ö¶Ë¿Ú£¬ÄÄһλΪ1±íʾ¶ÔÓ¦ÄÄÒ»¸öÊä³ö*/ + DWORD dwAlarmRelateChannel[MAX_CHANNUM];/*´¥·¢µÄ¼ÏñͨµÀ£¬ÄÄһλΪ1±íʾ¶ÔÓ¦ÄÄһ·¼Ïñ, dwAlarmRelateChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + DWORD dwChannel[MAX_CHANNUM];/*dwAlarmTypeΪ2»ò3,6,9,10ʱ£¬±íʾÄĸöͨµÀ£¬dwChannel[0]λ¶ÔÓ¦µÚ1¸öͨµÀ*/ + DWORD dwDiskNumber[MAX_DISKNUM];/*dwAlarmTypeΪ1,4,5ʱ,±íʾÄĸöÓ²ÅÌ, dwDiskNumber[0]λ¶ÔÓ¦µÚ1¸öÓ²ÅÌ*/ +}NET_DVR_ALARMINFO, *LPNET_DVR_ALARMINFO; + +////////////////////////////////////////////////////////////////////////////////////// +//IPC½ÓÈë²ÎÊýÅäÖà +/* IPÉ豸½á¹¹ */ +typedef struct +{ + DWORD dwEnable; /* ¸ÃIPÉ豸ÊÇ·ñÆôÓà */ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + NET_DVR_IPADDR struIP; /* IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE byRes[34]; /* ±£Áô */ +}NET_DVR_IPDEVINFO, *LPNET_DVR_IPDEVINFO; + +#define DEV_ID_LEN 32 //É豸ID³¤¶È + +//ipc½ÓÈëÉ豸ÐÅÏ¢À©Õ¹£¬Ö§³ÖipÉ豸µÄÓòÃûÌí¼Ó +typedef struct tagNET_DVR_IPDEVINFO_V31 +{ + BYTE byEnable; //¸ÃIPÉ豸ÊÇ·ñÓÐЧ + BYTE byProType; //ЭÒéÀàÐÍ£¬0-˽ÓÐЭÒ飬1-ËÉÏÂЭÒ飬2-Ë÷Äá + BYTE byEnableQuickAdd; // 0 ²»Ö§³Ö¿ìËÙÌí¼Ó 1 ʹÓÿìËÙÌí¼Ó + // ¿ìËÙÌí¼ÓÐèÒªÉ豸IPºÍЭÒéÀàÐÍ£¬ÆäËûÐÅÏ¢ÓÉÉ豸ĬÈÏÖ¸¶¨ + BYTE byCameraType; //ͨµÀ½ÓÈëµÄÏà»úÀàÐÍ£¬ÖµÎª 0-ÎÞÒâÒ壬1-ÀÏʦ¸ú×Ù£¬2-ѧÉú¸ú×Ù£¬3-ÀÏʦȫ¾°£¬4-ѧÉúÈ«¾°£¬5-¶àýÌ壬6¨C½Ìʦ¶¨Î»,7-ѧÉú¶¨Î»,8-°åÊ鶨λ,9-°åÊéÏà»ú + BYTE sUserName[NAME_LEN]; //Óû§Ãû + BYTE sPassword[PASSWD_LEN]; //ÃÜÂë + BYTE byDomain[MAX_DOMAIN_NAME]; //É豸ÓòÃû + NET_DVR_IPADDR struIP; //IPµØÖ· + WORD wDVRPort; // ¶Ë¿ÚºÅ + BYTE szDeviceID[DEV_ID_LEN]; //É豸ID + BYTE byEnableTiming; //0-±£Áô£¬1-²»ÆôÓÃNVR¶ÔIPC×Ô¶¯Ð£Ê±£¬2-ÆôÓÃNVR¶ÔIPC×Ô¶¯Ð£Ê± + BYTE byCertificateValidation;//Ö¤ÊéÑéÖ¤ + // byCertificateValidation:bit0: 0-²»ÆôÓÃÖ¤ÊéÑéÖ¤ 1-ÆôÓÃÖ¤ÊéÑéÖ¤ + // byCertificateValidation:bit1: 0-²»ÆôÓÃĬÈÏͨÐÅ¶Ë¿Ú 1-ÆôÓÃĬÈÏͨÐÅ¶Ë¿Ú +}NET_DVR_IPDEVINFO_V31, *LPNET_DVR_IPDEVINFO_V31; + +/* IPͨµÀÆ¥Åä²ÎÊý */ +typedef struct +{ + BYTE byEnable; /* ¸ÃͨµÀÊÇ·ñÔÚÏß */ + BYTE byIPID; //IPÉ豸IDµÍ8룬µ±É豸IDΪ0ʱ±íʾͨµÀ²»¿ÉÓà + BYTE byChannel; /* ͨµÀºÅ */ + BYTE byIPIDHigh; // IPÉ豸IDµÄ¸ß8λ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP/auto(¾ßÌåÓÐÉ豸¾ö¶¨)£¬1-UDP 2-¶à²¥ 3-½öTCP 4-auto + BYTE byGetStream; /* ÊÇ·ñ¶Ô¸ÃͨµÀÈ¡Á÷£¬0-ÊÇ£¬1-·ñ*/ + BYTE byres[30]; /* ±£Áô */ +} NET_DVR_IPCHANINFO, *LPNET_DVR_IPCHANINFO; + +/* IP½ÓÈëÅäÖýṹ */ +typedef struct +{ + DWORD dwSize; /* ½á¹¹´óС */ + NET_DVR_IPDEVINFO struIPDevInfo[MAX_IP_DEVICE]; /* IPÉ豸 */ + BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; /* Ä£ÄâͨµÀÊÇ·ñÆôÓ㬴ӵ͵½¸ß±íʾ1-32ͨµÀ£¬0±íʾÎÞЧ 1ÓÐЧ */ + NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; /* IPͨµÀ */ +}NET_DVR_IPPARACFG, *LPNET_DVR_IPPARACFG; +/* À©Õ¹IP½ÓÈëÅäÖýṹ */ +typedef struct tagNET_DVR_IPPARACFG_V31 +{ + DWORD dwSize; /* ½á¹¹´óС */ + NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE]; /* IPÉ豸 */ + BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; /* Ä£ÄâͨµÀÊÇ·ñÆôÓ㬴ӵ͵½¸ß±íʾ1-32ͨµÀ£¬0±íʾÎÞЧ 1ÓÐЧ */ + NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; /* IPͨµÀ */ +}NET_DVR_IPPARACFG_V31, *LPNET_DVR_IPPARACFG_V31; + +typedef struct tagNET_DVR_IPSERVER_STREAM +{ + BYTE byEnable; // ÊÇ·ñÔÚÏß + BYTE byRes[3]; // ±£Áô×Ö½Ú + NET_DVR_IPADDR struIPServer; //IPServer µØÖ· + WORD wPort; //IPServer ¶Ë¿Ú + WORD wDvrNameLen; // DVR Ãû³Æ³¤¶È + BYTE byDVRName[NAME_LEN]; // DVRÃû³Æ + WORD wDVRSerialLen; // ÐòÁкų¤¶È + WORD byRes1[2]; // ±£Áô×Ö½Ú + BYTE byDVRSerialNumber[SERIALNO_LEN]; // DVRÐòÁкų¤¶È + BYTE byUserName[NAME_LEN]; // DVR µÇ½Óû§Ãû + BYTE byPassWord[PASSWD_LEN]; // DVRµÇ½ÃÜÂë + BYTE byChannel; // DVR ͨµÀ + BYTE byRes2[11]; // ±£Áô×Ö½Ú +}NET_DVR_IPSERVER_STREAM, *LPNET_DVR_IPSERVER_STREAM; + +//Á÷ýÌå·þÎñÆ÷»ù±¾ÅäÖà +typedef struct tagNET_DVR_STREAM_MEDIA_SERVER_CFG +{ + BYTE byValid; /*ÊÇ·ñ¿ÉÓÃ*/ + BYTE byRes1[3]; + NET_DVR_IPADDR struDevIP; + WORD wDevPort; /*Á÷ýÌå·þÎñÆ÷¶Ë¿Ú*/ + BYTE byTransmitType; /*´«ÊäЭÒéÀàÐÍ 0-TCP£¬1-UDP*/ + BYTE byRes2[69]; +}NET_DVR_STREAM_MEDIA_SERVER_CFG,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG; + +//É豸ͨµÀÐÅÏ¢ +typedef struct tagNET_DVR_DEV_CHAN_INFO +{ + NET_DVR_IPADDR struIP; //DVR IPµØÖ· + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byChannel; //ͨµÀºÅ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byFactoryType; /*Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡*/ + BYTE byDeviceType; //É豸ÀàÐÍ(ÊÓƵ×ÛºÏƽ̨ÖÇÄÜ°åʹÓÃ)£¬1-½âÂëÆ÷£¨´Ëʱ¸ù¾ÝÊÓƵ×ÛºÏƽ̨ÄÜÁ¦¼¯ÖÐbyVcaSupportChanMode×Ö¶ÎÀ´¾ö¶¨ÊÇʹÓýâÂëͨµÀ»¹ÊÇÏÔʾͨµÀ£©£¬2-±àÂëÆ÷ + BYTE byDispChan;//ÏÔʾͨµÀºÅ,ÖÇÄÜÅäÖÃʹÓà + BYTE bySubDispChan;//ÏÔʾͨµÀ×ÓͨµÀºÅ£¬ÖÇÄÜÅäÖÃʱʹÓà + BYTE byResolution; //; 1-CIF 2-4CIF 3-720P 4-1080P 5-500w´óÆÁ¿ØÖÆÆ÷ʹÓ㬴óÆÁ¿ØÖÆÆ÷»á¸ù¾Ý¸Ã²ÎÊý·ÖÅä½âÂë×ÊÔ´ + BYTE byRes[2]; + BYTE byDomain[MAX_DOMAIN_NAME]; //É豸ÓòÃû + BYTE sUserName[NAME_LEN]; //¼à¿ØÖ÷»úµÇ½ÕʺŠ+ BYTE sPassword[PASSWD_LEN]; //¼à¿ØÖ÷»úÃÜÂë +}NET_DVR_DEV_CHAN_INFO,*LPNET_DVR_DEV_CHAN_INFO; + +//Ö±½Óͨ¹ýÁ÷ýÌåÈ¡Á÷ +typedef struct tagNET_DVR_PU_STREAM_CFG +{ + DWORD dwSize; + NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg; + NET_DVR_DEV_CHAN_INFO struDevChanInfo; +}NET_DVR_PU_STREAM_CFG,*LPNET_DVR_PU_STREAM_CFG; + +typedef struct tagNET_DVR_DDNS_STREAM_CFG +{ + BYTE byEnable; // ÊÇ·ñÆôÓà + BYTE byRes1[3]; + NET_DVR_IPADDR struStreamServer; //Á÷ýÌå·þÎñÆ÷µØÖ· + WORD wStreamServerPort; //Á÷ýÌå·þÎñÆ÷¶Ë¿Ú + BYTE byStreamServerTransmitType; //Á÷ýÌå´«ÊäЭÒéÀàÐÍ 0-TCP£¬1-UDP + BYTE byRes2; + NET_DVR_IPADDR struIPServer; //IPSERVERµØÖ· + WORD wIPServerPort; //IPserver¶Ë¿ÚºÅ + BYTE byRes3[2]; + BYTE sDVRName[NAME_LEN]; //DVRÃû³Æ + WORD wDVRNameLen; // DVRÃû³Æ³¤¶È + WORD wDVRSerialLen; // ÐòÁкų¤¶È + BYTE sDVRSerialNumber[SERIALNO_LEN]; // DVRÐòÁкŠ+ BYTE sUserName[NAME_LEN]; // DVR µÇ½Óû§Ãû + BYTE sPassWord[PASSWD_LEN]; // DVRµÇ½ÃÜÂë + WORD wDVRPort; //DVR¶Ë¿ÚºÅ + BYTE byRes4[2]; + BYTE byChannel; // DVR ͨµÀ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byFactoryType; //Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡ +}NET_DVR_DDNS_STREAM_CFG, *LPNET_DVR_DDNS_STREAM_CFG; + +#define URL_LEN 240 //URL³¤¶È +typedef struct tagNET_DVR_PU_STREAM_URL +{ + BYTE byEnable; + BYTE strURL[URL_LEN]; + BYTE byTransPortocol ; // ´«ÊäЭÒéÀàÐÍ 0-tcp 1-UDP + WORD wIPID; //É豸IDºÅ£¬wIPID = iDevInfoIndex + iGroupNO*64 +1 + BYTE byChannel; //ͨµÀºÅ + BYTE byRes[7]; +}NET_DVR_PU_STREAM_URL, *LPNET_DVR_PU_STREAM_URL; + +typedef struct tagNET_DVR_HKDDNS_STREAM +{ + BYTE byEnable; // ÊÇ·ñÔÚÏß + BYTE byRes[3]; // ±£Áô×Ö½Ú + BYTE byDDNSDomain[64]; // hiDDNS·þÎñÆ÷ + WORD wPort; // hiDDNS ¶Ë¿Ú + WORD wAliasLen; // ±ðÃû³¤¶È + BYTE byAlias[NAME_LEN]; // ±ðÃû + WORD wDVRSerialLen; // ÐòÁкų¤¶È + BYTE byRes1[2]; // ±£Áô×Ö½Ú + BYTE byDVRSerialNumber[SERIALNO_LEN]; // DVRÐòÁкŠ+ BYTE byUserName[NAME_LEN]; // DVR µÇ½Óû§Ãû + BYTE byPassWord[PASSWD_LEN]; // DVRµÇ½ÃÜÂë + BYTE byChannel; // DVRͨµÀ + BYTE byRes2[11]; // ±£Áô×Ö +}NET_DVR_HKDDNS_STREAM, *LPNET_DVR_HKDDNS_STREAM; + +typedef struct tagNET_DVR_IPCHANINFO_V40 +{ + BYTE byEnable; /* ¸ÃͨµÀÊÇ·ñÔÚÏß */ + BYTE byRes1; + WORD wIPID; //IPÉ豸ID + DWORD dwChannel; //ͨµÀºÅ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP£¬2- ¶à²¥£¬3-RTSP£¬0xff- auto(×Ô¶¯) + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byFactoryType; /*Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡*/ + BYTE byRes; + BYTE strURL[URL_LEN/*240*/]; /*RTSPЭÒéÈ¡Á÷URL £¨½öRTSPЭÒéʱÓÐЧ£©*/ +}NET_DVR_IPCHANINFO_V40,*LPNET_DVR_IPCHANINFO_V40; + +// °îŵCVR +#define MAX_ID_COUNT 256 +#define MAX_STREAM_ID_COUNT 1024 +#define STREAM_ID_LEN 32 +#define PLAN_ID_LEN 32 +#define DEVICE_NO_LEN 24 +#define MAX_VOLUMENAME_LEN 32 //¼Ïñ¾íÃû³Æ +#define MAX_VAG_CHANNO_LEN 32 //VAGЭÒéÈ¡Á÷ʱͨµÀºÅ±àÂ볤¶È + +#define MAX_STREAM_ID_NUM 30 //×î´óÁ÷IDÊýÄ¿ + +// Á÷ÐÅÏ¢ - 72×Ö½Ú³¤ +typedef struct tagNET_DVR_STREAM_INFO +{ + DWORD dwSize; + BYTE byID[STREAM_ID_LEN]; //IDÊý¾Ý + DWORD dwChannel; //¹ØÁªÉ豸ͨµÀ£¬µÈÓÚ0xffffffffʱ£¬±íʾ²»¹ØÁª + BYTE byRes[32]; //±£Áô +}NET_DVR_STREAM_INFO, *LPNET_DVR_STREAM_INFO; + +typedef struct tagNET_DVR_RTSP_PROTOCAL_CFG +{ + BYTE byEnable; + BYTE byLocalBackUp; //ÊÇ·ñ±¾µØ±¸·Ý + BYTE byRes[2]; + BYTE strURL[URL_LEN_V40]; + DWORD dwProtocalType; //ЭÒéÀàÐÍ + BYTE sUserName[NAME_LEN]; //É豸µÇ½Óû§Ãû + BYTE sPassWord[PASSWD_LEN]; // É豸µÇ½ÃÜÂë + BYTE byAddress[MAX_DOMAIN_NAME]; //Ç°¶ËIP»òÕßÓòÃû,ÐèÒªÉ豸½âÎö + //½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓÐ'.'ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· + WORD wPort; + BYTE byRes1[122]; //±£Áô +}NET_DVR_RTSP_PROTOCAL_CFG, *LPNET_DVR_RTSP_PROTOCAL_CFG; + +typedef union tagNET_DVR_GET_STREAM_UNION +{ + NET_DVR_IPCHANINFO struChanInfo; /*IPͨµÀÐÅÏ¢*/ + NET_DVR_IPSERVER_STREAM struIPServerStream; // IPServerÈ¥Á÷ + NET_DVR_PU_STREAM_CFG struPUStream; // ͨ¹ýÇ°¶ËÉ豸»ñÈ¡Á÷ýÌåÈ¥Á÷ + NET_DVR_DDNS_STREAM_CFG struDDNSStream; //ͨ¹ýIPServerºÍÁ÷ýÌåÈ¡Á÷ + NET_DVR_PU_STREAM_URL struStreamUrl; //ͨ¹ýÁ÷ýÌåµ½urlÈ¡Á÷ + NET_DVR_HKDDNS_STREAM struHkDDNSStream; //ͨ¹ýhiDDNSȥȡÁ÷ + NET_DVR_IPCHANINFO_V40 struIPChan; //Ö±½Ó´ÓÉ豸ȡÁ÷£¨À©Õ¹£© +}NET_DVR_GET_STREAM_UNION, *LPNET_DVR_GET_STREAM_UNION; + +typedef enum +{ + NET_SDK_IP_DEVICE = 0, + NET_SDK_STREAM_MEDIA, + NET_SDK_IPSERVER, + NET_SDK_DDNS_STREAM_CFG, + NET_SDK_STREAM_MEDIA_URL, + NET_SDK_HKDDNS, + NET_SDK_IP_DEVICE_ADV, + NET_SDK_IP_DEVICE_V40, + NET_SDK_RTSP +}GET_STREAM_TYPE; + +typedef struct tagNET_DVR_STREAM_MODE +{ + BYTE byGetStreamType; //È¡Á÷·½Ê½GET_STREAM_TYPE£¬0-Ö±½Ó´ÓÉ豸ȡÁ÷£¬1-´ÓÁ÷ýÌåÈ¡Á÷¡¢2-ͨ¹ýIPServer»ñµÃipµØÖ·ºóÈ¡Á÷,3.ͨ¹ýIPServerÕÒµ½É豸£¬ÔÙͨ¹ýÁ÷ýÌåÈ¥É豸µÄÁ÷ + //4-ͨ¹ýÁ÷ýÌåÓÉURLȥȡÁ÷,5-ͨ¹ýhkDDNSÈ¡Á÷£¬6-Ö±½Ó´ÓÉ豸ȡÁ÷(À©Õ¹)£¬Ê¹ÓÃNET_DVR_IPCHANINFO_V40½á¹¹, 7-ͨ¹ýRTSPЭÒ鷽ʽ½øÐÐÈ¡Á÷ + BYTE byRes[3]; //±£Áô×Ö½Ú + NET_DVR_GET_STREAM_UNION uGetStream; // ²»Í¬È¡Á÷·½Ê½½á¹¹Ìå +}NET_DVR_STREAM_MODE, *LPNET_DVR_STREAM_MODE; + +//À©Õ¹IP½ÓÈëÅäÖÃÉ豸 +typedef struct tagNET_DVR_IPPARACFG_V40 +{ + DWORD dwSize; /* ½á¹¹´óС */ + DWORD dwGroupNum; // É豸֧³ÖµÄ×Ü×éÊý + DWORD dwAChanNum; //×î´óÄ£ÄâͨµÀ¸öÊý + DWORD dwDChanNum; //Êý×ÖͨµÀ¸öÊý + DWORD dwStartDChan; //ÆðʼÊý×ÖͨµÀ + BYTE byAnalogChanEnable[MAX_CHANNUM_V30]; /* Ä£ÄâͨµÀÊÇ·ñÆôÓ㬴ӵ͵½¸ß±íʾ1-64ͨµÀ£¬0±íʾÎÞЧ 1ÓÐЧ */ + NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE_V40]; /* IPÉ豸 */ + NET_DVR_STREAM_MODE struStreamMode[MAX_CHANNUM_V30]; + BYTE byRes2[20]; // ±£Áô×Ö½Ú +}NET_DVR_IPPARACFG_V40, *LPNET_DVR_IPPARACFG_V40; + + +//ΪCVRÀ©Õ¹µÄ±¨¾¯ÀàÐÍ +typedef struct tagNET_DVR_ALARMINFO_DEV +{ + DWORD dwAlarmType; //0-±àÂëÆ÷(ͨµÀ)ÐźÅÁ¿±¨¾¯£»1-˽Óоí¶þË𻵣»2- NVR·þÎñÍ˳ö£» + //3-±àÂëÆ÷״̬Òì³££»4-ϵͳʱÖÓÒì³££»5-¼Ïñ¾íÊ£ÓàÈÝÁ¿¹ýµÍ£» + //6-±àÂëÆ÷(ͨµÀ)Òƶ¯Õì²â±¨¾¯£»7-±àÂëÆ÷(ͨµÀ)ÕÚµ²±¨¾¯¡££»8-¼Ïñ¶ªÊ§±¨¾¯; 9-ÊÓƵʵʱ¼à²â±¨¾¯; 10-×ÊԴʹÓÃÂʸ澯; 11- CVR×Ô¶¯ÐÞ¸´Òì³££¬ 12-¼ÏñÒì³£ + NET_DVR_TIME struTime; //±¨¾¯Ê±¼ä + BYTE byRes[32]; //±£Áô + DWORD dwNumber; //ÊýÄ¿ + WORD *pNO; //dwNumber¸öWORD; ÿ¸öWORD±íʾһ¸öͨµÀºÅ£¬»òÕß´ÅÅ̺Å, ÎÞЧʱΪ0 +}NET_DVR_ALARMINFO_DEV, *LPNET_DVR_ALARMINFO_DEV; + +/* ±¨¾¯Êä³ö²ÎÊý */ +typedef struct +{ + BYTE byIPID; /* IPÉ豸IDÈ¡Öµ1- MAX_IP_DEVICE */ + BYTE byAlarmOut; /* ±¨¾¯Êä³öºÅ */ + BYTE byRes[18]; /* ±£Áô */ +}NET_DVR_IPALARMOUTINFO, *LPNET_DVR_IPALARMOUTINFO; + +/* IP±¨¾¯Êä³öÅäÖýṹ */ +typedef struct +{ + DWORD dwSize; /* ½á¹¹´óС */ + NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT];/* IP±¨¾¯Êä³ö */ +}NET_DVR_IPALARMOUTCFG, *LPNET_DVR_IPALARMOUTCFG; + +/* IP±¨¾¯Êä³ö²ÎÊý */ +typedef struct tagNET_DVR_IPALARMOUTINFO_V40 +{ + DWORD dwIPID; /* IPÉ豸ID */ + DWORD dwAlarmOut; /* IPÉ豸ID¶ÔÓ¦µÄ±¨¾¯Êä³öºÅ */ + BYTE byRes[32]; /* ±£Áô */ +}NET_DVR_IPALARMOUTINFO_V40, *LPNET_DVR_IPALARMOUTINFO_V40;/*±¨¾¯Êä³ö²ÎÊý*/ + +typedef struct tagNET_DVR_IPALARMOUTCFG_V40 +{ + DWORD dwSize; //½á¹¹Ì峤¶È + DWORD dwCurIPAlarmOutNum; + NET_DVR_IPALARMOUTINFO_V40 struIPAlarmOutInfo[MAX_IP_ALARMOUT_V40];/*IP±¨¾¯Êä³ö*/ + BYTE byRes[256]; +}NET_DVR_IPALARMOUTCFG_V40, *LPNET_DVR_IPALARMOUTCFG_V40; /*IP±¨¾¯Êä³ö*/ + +/* ±¨¾¯ÊäÈë²ÎÊý */ +typedef struct +{ + BYTE byIPID; /* IPÉ豸IDÈ¡Öµ1- MAX_IP_DEVICE */ + BYTE byAlarmIn; /* ±¨¾¯ÊäÈëºÅ */ + BYTE byRes[18]; /* ±£Áô */ +}NET_DVR_IPALARMININFO, *LPNET_DVR_IPALARMININFO; + +/* IP±¨¾¯ÊäÈëÅäÖýṹ */ +typedef struct +{ + DWORD dwSize; /* ½á¹¹´óС */ + NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN];/* IP±¨¾¯ÊäÈë */ +}NET_DVR_IPALARMINCFG, *LPNET_DVR_IPALARMINCFG; + +/* IP±¨¾¯ÊäÈë²ÎÊý */ +typedef struct tagNET_DVR_IPALARMININFO_V40 +{ + DWORD dwIPID; /* IPÉ豸ID */ + DWORD dwAlarmIn; /* IPÉ豸ID¶ÔÓ¦µÄ±¨¾¯ÊäÈëºÅ */ + BYTE byRes[32]; /* ±£Áô */ +}NET_DVR_IPALARMININFO_V40, *LPNET_DVR_IPALARMININFO_V40; /* ±¨¾¯ÊäÈë²ÎÊý */ + +typedef struct tagNET_DVR_IPALARMINCFG_V40 +{ + DWORD dwSize; //½á¹¹Ì峤¶È + DWORD dwCurIPAlarmInNum; //µ±Ç°±¨¾¯ÊäÈë¿ÚÊý + NET_DVR_IPALARMININFO_V40 struIPAlarmInInfo[MAX_IP_ALARMIN_V40];/* IP±¨¾¯ÊäÈë*/ + BYTE byRes[256]; +}NET_DVR_IPALARMINCFG_V40, *LPNET_DVR_IPALARMINCFG_V40; /*IP±¨¾¯ÊäÈë×ÊÔ´*/ + +//ipc alarm info +typedef struct tagNET_DVR_IPALARMINFO +{ + NET_DVR_IPDEVINFO struIPDevInfo[MAX_IP_DEVICE]; /* IPÉ豸 */ + BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; /* Ä£ÄâͨµÀÊÇ·ñÆôÓã¬0-δÆôÓà 1-ÆôÓà */ + NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; /* IPͨµÀ */ + NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; /* IP±¨¾¯ÊäÈë */ + NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; /* IP±¨¾¯Êä³ö */ +}NET_DVR_IPALARMINFO, *LPNET_DVR_IPALARMINFO; + +//ipcÅäÖøı䱨¾¯ÐÅÏ¢À©Õ¹ 9000_1.1 +typedef struct tagNET_DVR_IPALARMINFO_V31 +{ + NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE]; /* IPÉ豸 */ + BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; /* Ä£ÄâͨµÀÊÇ·ñÆôÓã¬0-δÆôÓà 1-ÆôÓà */ + NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; /* IPͨµÀ */ + NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; /* IP±¨¾¯ÊäÈë */ + NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; /* IP±¨¾¯Êä³ö */ +}NET_DVR_IPALARMINFO_V31, *LPNET_DVR_IPALARMINFO_V31; + +typedef struct tagNET_DVR_IPALARMINFO_V40 +{ + NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE_V40]; // IPÉ豸 + BYTE byAnalogChanEnable[MAX_CHANNUM_V30]; /* Ä£ÄâͨµÀÊÇ·ñÆôÓã¬0-δÆôÓà 1-ÆôÓà */ + NET_DVR_IPCHANINFO struIPChanInfo[MAX_CHANNUM_V30]; /* IPͨµÀ */ + NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; /* IP±¨¾¯ÊäÈë */ + NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; /* IP±¨¾¯Êä³ö */ + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_DVR_IPALARMINFO_V40, *LPNET_DVR_IPALARMINFO_V40; + +typedef enum _HD_STAT_ +{ + HD_STAT_OK = 0, /* Õý³£ */ + HD_STAT_UNFORMATTED = 1, /* δ¸ñʽ»¯ */ + HD_STAT_ERROR = 2, /* ´íÎó */ + HD_STAT_SMART_FAILED = 3, /* SMART״̬ */ + HD_STAT_MISMATCH = 4, /* ²»Æ¥Åä */ + HD_STAT_IDLE = 5, /* ÐÝÃß*/ + NET_HD_STAT_OFFLINE = 6, /* ÍøÂçÅÌ´¦ÓÚδÁ¬½Ó״̬ */ + HD_RIADVD_EXPAND = 7, /* ÐéÄâ´ÅÅÌ¿ÉÀ©ÈÝ */ + HD_STAT_REPARING = 10, /* Ó²ÅÌÕýÔÚÐÞ¸´(9000 2.0) */ + HD_STAT_FORMATING = 11, /* Ó²ÅÌÕýÔÚ¸ñʽ»¯(9000 2.0) */ +}HD_STAT; + + +//±¾µØÓ²ÅÌÐÅÏ¢ÅäÖà +typedef struct +{ + DWORD dwHDNo; /*Ó²Å̺Å, È¡Öµ0~MAX_DISKNUM_V30-1*/ + DWORD dwCapacity; /*Ó²ÅÌÈÝÁ¿(²»¿ÉÉèÖÃ)*/ + DWORD dwFreeSpace; /*Ó²ÅÌÊ£Óà¿Õ¼ä(²»¿ÉÉèÖÃ)*/ + DWORD dwHdStatus; //Ó²ÅÌ״̬(²»¿ÉÉèÖÃ) HD_STAT 0-Õý³£, 1-δ¸ñʽ»¯, 2-´íÎó, 3-SMART״̬, + //4-²»Æ¥Åä, 5-ÐÝÃß 6-ÍøÂçÓ²Å̲»ÔÚÏß 7-ÐéÄâ´ÅÅÌ¿ÉÀ©ÈÝ 10-Ó²ÅÌÕýÔÚÐÞ¸´ + //11-Ó²ÅÌÕýÔÚ¸ñʽ»¯ 12-Ó²ÅÌÕýÔڵȴý¸ñʽ»¯ 13-Ó²ÅÌÒÑжÔØ 14-±¾µØÓ²Å̲»´æÔÚ + //15-ÕýÔÚɾ³ý(ÍøÂçÓ²ÅÌ),16-ÒÑËø¶¨ + BYTE byHDAttr; /*0-ÆÕͨ, 1-ÈßÓà; 2-Ö»¶Á 3-´æµµ£¨CVRרÓã©£¬4-²»¿É¶Áд*/ + BYTE byHDType; /*0-±¾µØÓ²ÅÌ,1-ESATAÓ²ÅÌ,2-NASÓ²ÅÌ,3-iSCSIÓ²ÅÌ 4-ArrayÐéÄâ´ÅÅÌ,5-SD¿¨,6-minSAS*/ + BYTE byDiskDriver; // Öµ ´ú±íÆäASCII×Ö·û + BYTE byRes1; + DWORD dwHdGroup; /*ÊôÓÚÄĸöÅÌ×é 1-MAX_HD_GROUP*/ + BYTE byRecycling; // ÊÇ·ñÑ­»·ÀûÓà 0£º²»Ñ­»·ÀûÓã¬1£ºÑ­»·ÀûÓà + BYTE bySupportFormatType; /*µ±Ç°Ó²ÅÌËùÖ§³ÖµÄ¸ñʽ»¯ÀàÐÍ,Ö»¶Á¡£µ±Ç°¸Ã½Úµã½öÖ§³ÖbyHDType=5(SD¿¨)ʱ; + ÈôbySupportFormatType=0,Ôò´ú±íÉ豸½«ÒÔ×ÔÉíµÄĬÈÏÀàÐÍÀ´¸ñʽ»¯Ó²ÅÌ; + bySupportFormatType:bit0: 0-´ú±í²»Ö§³ÖFAT32¸ñʽ»¯ÀàÐÍ,1-´ú±íÖ§³Ö; + bySupportFormatType:bit1: 0-´ú±í²»Ö§³ÖEXT4¸ñʽ»¯ÀàÐÍ,1-´ú±íÖ§³Ö;*/ + BYTE byFormatType; /*µ±Ç°Ó²Å̸ñʽ»¯ÀàÐÍÅäÖÃ: 0-É豸ĬÈϸñʽ»¯ÀàÐÍ,1-Ö¸¶¨FAT32¸ñʽ»¯(byHDType=5(SD¿¨)ʱÉúЧ), + 2-Ö¸¶¨EXT4¸ñʽ»¯(byHDType=5(SD¿¨)ʱÉúЧ)*/ + BYTE byRes2; + DWORD dwStorageType; //°´Î»±íʾ 0-²»Ö§³Ö ·Ç0-Ö§³Ö + // dwStorageType & 0x1 ±íʾÊÇ·ñÊÇÆÕͨ¼ÏñרÓô洢ÅÌ + // dwStorageType & 0x2 ±íʾÊÇ·ñÊdzé֡¼ÏñרÓô洢ÅÌ + // dwStorageType & 0x4 ±íʾÊÇ·ñÊÇͼƬ¼ÏñרÓô洢ÅÌ + + DWORD dwPictureCapacity; //Ó²ÅÌͼƬÈÝÁ¿(²»¿ÉÉèÖÃ)£¬µ¥Î»:MB + DWORD dwFreePictureSpace; //Ê£ÓàͼƬ¿Õ¼ä(²»¿ÉÉèÖÃ)£¬µ¥Î»:MB + BYTE byRes3[104]; +}NET_DVR_SINGLE_HD, *LPNET_DVR_SINGLE_HD; + +typedef struct +{ + DWORD dwSize; + DWORD dwHDCount; /*Ó²ÅÌÊý(²»¿ÉÉèÖÃ)*/ + NET_DVR_SINGLE_HD struHDInfo[MAX_DISKNUM_V30];//Ó²ÅÌÏà¹Ø²Ù×÷¶¼ÐèÒªÖØÆô²ÅÄÜÉúЧ£» +}NET_DVR_HDCFG, *LPNET_DVR_HDCFG; + +//±¾µØÓ²ÅÌÐÅÏ¢ÅäÖà +typedef struct +{ + DWORD dwHDNo; /*Ó²Å̺Å, È¡Öµ0~MAX_DISKNUM_V30-1*/ + DWORD dwCapacity; /*Ó²ÅÌÈÝÁ¿(²»¿ÉÉèÖÃ)*/ + DWORD dwFreeSpace; /*Ó²ÅÌÊ£Óà¿Õ¼ä(²»¿ÉÉèÖÃ)*/ + DWORD dwHdStatus; //Ó²ÅÌ״̬(²»¿ÉÉèÖÃ) HD_STAT 0-Õý³£, 1-δ¸ñʽ»¯, 2-´íÎó, 3-SMART״̬, + //4-²»Æ¥Åä, 5-ÐÝÃß 6-ÍøÂçÓ²Å̲»ÔÚÏß 7-ÐéÄâ´ÅÅÌ¿ÉÀ©ÈÝ 10-Ó²ÅÌÕýÔÚÐÞ¸´ + //11-Ó²ÅÌÕýÔÚ¸ñʽ»¯ 12-Ó²ÅÌÕýÔڵȴý¸ñʽ»¯ 13-Ó²ÅÌÒÑжÔØ 14-±¾µØÓ²Å̲»´æÔÚ + //15-ÕýÔÚɾ³ý(ÍøÂçÓ²ÅÌ),16-ÒÑËø¶¨,17-¾¯¸æ£¨Ëæʱ»á±ä³É»µÅÌ£©,18-»µÅÌ£¨ÒѾ­Ë𻵵ÄÓ²ÅÌ£©,19-Òþ»¼ÅÌ£¨³öÏÖÒì³£±»Ìß³öÕóÁУ¬±ÈÈç³öÏÖ»µÉÈÇø£©,20-δÈÏÖ¤£¨Î´¼ì²â£¬ÐèÒªµ½CVRÖжԴÅÅ̽øÐмì²â£© + //21-δÔÚ¼²¥Ö÷»úÖиñʽ»¯ + BYTE byHDAttr; /*0-ÆÕͨ, 1-ÈßÓà; 2-Ö»¶Á£¬3-´æµµ£¬4-²»¿É¶Áд*/ + BYTE byHDType; /*0-±¾µØÓ²ÅÌ,1-ESATAÓ²ÅÌ,2-NASÓ²ÅÌ,3-iSCSIÓ²ÅÌ 4-ArrayÐéÄâ´ÅÅÌ,5-SD¿¨,6-minSAS*/ + BYTE byDiskDriver; // Öµ ´ú±íÆäASCII×Ö·û + BYTE byGenusGruop; //Êô×飺0-±£Áô£¬1-ÕóÁУ¬2-´æ´¢³Ø£¬3-ÕóÁÐÌßÅÌ£¬4-δ³õʼ»¯£¬5-ÎÞЧÅÌ£¬6-ÇøÓòÈȱ¸£¬7-È«¾ÖÈȱ¸£¬Ö»¶Á + DWORD dwHdGroup; /*ÊôÓÚÄĸöÅÌ×é 1-MAX_HD_GROUP*/ + BYTE byRecycling; // ÊÇ·ñÑ­»·ÀûÓà 0£º²»Ñ­»·ÀûÓã¬1£ºÑ­»·ÀûÓà + BYTE bySupportFormatType; /*µ±Ç°Ó²ÅÌËùÖ§³ÖµÄ¸ñʽ»¯ÀàÐÍ,Ö»¶Á¡£µ±Ç°¸Ã½Úµã½öÖ§³ÖbyHDType=5(SD¿¨)ʱ; + ÈôbySupportFormatType=0,Ôò´ú±íÉ豸½«ÒÔ×ÔÉíµÄĬÈÏÀàÐÍÀ´¸ñʽ»¯Ó²ÅÌ; + bySupportFormatType:bit0: 0-´ú±í²»Ö§³ÖFAT32¸ñʽ»¯ÀàÐÍ,1-´ú±íÖ§³Ö; + bySupportFormatType:bit1: 0-´ú±í²»Ö§³ÖEXT4¸ñʽ»¯ÀàÐÍ,1-´ú±íÖ§³Ö;*/ + BYTE byFormatType; /*µ±Ç°Ó²Å̸ñʽ»¯ÀàÐÍÅäÖÃ: 0-É豸ĬÈϸñʽ»¯ÀàÐÍ,1-Ö¸¶¨FAT32¸ñʽ»¯(byHDType=5(SD¿¨)ʱÉúЧ), + 2-Ö¸¶¨EXT4¸ñʽ»¯(byHDType=5(SD¿¨)ʱÉúЧ)*/ + BYTE byRes2; + DWORD dwStorageType; //°´Î»±íʾ 0-²»Ö§³Ö ·Ç0-Ö§³Ö + // dwStorageType & 0x1 ±íʾÊÇ·ñÊÇÆÕͨ¼ÏñרÓô洢ÅÌ + // dwStorageType & 0x2 ±íʾÊÇ·ñÊdzé֡¼ÏñרÓô洢ÅÌ + // dwStorageType & 0x4 ±íʾÊÇ·ñÊÇͼƬ¼ÏñרÓô洢ÅÌ + + DWORD dwPictureCapacity; //Ó²ÅÌͼƬÈÝÁ¿(²»¿ÉÉèÖÃ)£¬µ¥Î»:MB + DWORD dwFreePictureSpace; //Ê£ÓàͼƬ¿Õ¼ä(²»¿ÉÉèÖÃ)£¬µ¥Î»:MB + BYTE byDiskLocation[NET_SDK_DISK_LOCATION_LEN/*16*/];//Ó²ÅÌλÖ㬾ßÌå¸ñʽ¼û±¸×¢£¬Ö»¶Á + BYTE bySupplierName[NET_SDK_SUPPLIER_NAME_LEN/*32*/];//¹©Ó¦ÉÌÃû³Æ£¬Ö»¶Á + BYTE byDiskModel[NET_SDK_DISK_MODEL_LEN /*64*/];//Ó²ÅÌÐͺţ¬Ö»¶Á + char szHDLocateIP[SDK_MAX_IP_LEN];//´ÅÅÌËùÔÚIPÐÅÏ¢ + BYTE byRes3[80]; +}NET_DVR_SINGLE_HD_V50, *LPNET_DVR_SINGLE_HD_V50; + +typedef struct +{ + DWORD dwSize; + DWORD dwHDCount; /*Ó²ÅÌÊý(²»¿ÉÉèÖÃ)*/ + NET_DVR_SINGLE_HD_V50 struHDInfoV50[MAX_DISKNUM_V30];//Ó²ÅÌÏà¹Ø²Ù×÷¶¼ÐèÒªÖØÆô²ÅÄÜÉúЧ£» + BYTE byRes[128]; +}NET_DVR_HDCFG_V50, *LPNET_DVR_HDCFG_V50; + +typedef struct tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO +{ + DWORD dwSize; + BYTE byHDVolumeNo; /*Ó²Å̾íID(²»¿ÉÉèÖÃ)*/ + BYTE byType; /*Ó²Å̾íÀàÐÍ:0-¼Ïñ¾í£¨ÓÃÓÚ±£´æ¼Ïñ£©£¬1-´æµµ¾í£¨ÓÃÓڴ浵¼Ïñ£¬Ï·¢Â¼Ïñ¼Æ»®Ê±£¬²»ÄܹØÁª´æµµ¾í£©, + 2-Îļþ¾í£¨Ö»ÓÃÓÚ´æ´¢¿Í»§¶ËÉÏ´«µÄÎļþ£¬Ï·¢Â¼Ïñ¼Æ»®Ê±£¬²»ÄܹØÁªÎļþ¾í£¬ÐèÒª¹ýÂ˵ô£©3-ͼƬ¾í£¨Ö»ÓÃÓÚ´æ´¢¿Í»§¶ËÉÏ´«µÄͼƬ£©*/ + BYTE byRes1[2]; + DWORD dwCapacity; /*Ó²Å̾íÈÝÁ¿£¬µ¥Î»MB(²»¿ÉÉèÖÃ)*/ + DWORD dwFreeSpace; /*Ó²Å̾íÊ£Óà¿Õ¼ä£¬µ¥Î»MB(²»¿ÉÉèÖÃ) */ + BYTE byHDVolumeName[NET_SDK_DISK_VOLUME_LEN/*36*/]; /*Ó²Å̾íÃû³Æ(²»¿ÉÉèÖÃ)*/ + BYTE byLoopCover; /*ÊÇ·ñÑ­»·¸²¸Ç£º0-·ÇÑ­»·¸²¸Ç£¬1-Ñ­»·¸²¸Ç£¨Ó²Å̾íÂúÁËÖ®ºó£¬Ñ­»·¸²¸Ç×îÀϵļÏñ£©*/ + BYTE byRes[63]; +}NET_DVR_HARD_DISK_SINGLE_VOLUME_INFO, *LPNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO; + +typedef struct tagNET_DVR_HARD_DISK_VOLUME_INFO +{ + DWORD dwSize; + DWORD dwHDVolumeCount; /*µ±Ç°Ó²Å̾í×ÜÊý(²»¿ÉÉèÖÃ)*/ + NET_DVR_HARD_DISK_SINGLE_VOLUME_INFO struSingleVolumeInfo[NET_SDK_MAX_DISK_VOLUME/*33*/]; /*µ¥¸öÓ²Å̾íÐÅÏ¢*/ + BYTE byRes[128]; +}NET_DVR_HARD_DISK_VOLUME_INFO, *LPNET_DVR_HARD_DISK_VOLUME_INFO; + +//±¾µØÅÌ×éÐÅÏ¢ÅäÖÃÀ©Õ¹ +typedef struct tagNET_DVR_SINGLE_HDGROUP_V40 +{ + DWORD dwHDGroupNo; /*ÅÌ×éºÅ(²»¿ÉÉèÖÃ) 1-MAX_HD_GROUP*/ + DWORD dwRelRecordChan[MAX_CHANNUM_V40]; //´¥·¢µÄ¼ÏñͨµÀ£¬°´Öµ±íʾ£¬Óöµ½0xffffffffʱºóÐøÊÓΪÎÞЧ + BYTE byRes[64]; /* ±£Áô */ +}NET_DVR_SINGLE_HDGROUP_V40, *LPNET_DVR_SINGLE_HDGROUP_V40; + +typedef struct tagNET_DVR_HDGROUP_CFG_V40 +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwMaxHDGroupNum; //É豸֧³ÖµÄ×î´óÅÌ×éÊý-Ö»¶Á + DWORD dwCurHDGroupNum; /*µ±Ç°ÅäÖõÄÅÌ×éÊý*/ + NET_DVR_SINGLE_HDGROUP_V40 struHDGroupAttr[MAX_HD_GROUP]; //Ó²ÅÌÏà¹Ø²Ù×÷¶¼ÐèÒªÖØÆô²ÅÄÜÉúЧ£» + BYTE byRes[128]; //±£Áô +}NET_DVR_HDGROUP_CFG_V40, *LPNET_DVR_HDGROUP_CFG_V40; + +//±¾µØÅÌ×éÐÅÏ¢ÅäÖà +typedef struct +{ + DWORD dwHDGroupNo; /*ÅÌ×éºÅ(²»¿ÉÉèÖÃ) 1-MAX_HD_GROUP*/ + BYTE byHDGroupChans[MAX_CHANNUM_V30]; /*ÅÌ×é¶ÔÓ¦µÄ¼ÏñͨµÀ, 0-±íʾ¸ÃͨµÀ²»Â¼Ï󵽸ÃÅÌ×飬1-±íʾ¼Ï󵽸ÃÅÌ×é*/ + BYTE byRes[8]; +}NET_DVR_SINGLE_HDGROUP, *LPNET_DVR_SINGLE_HDGROUP; + +typedef struct +{ + DWORD dwSize; + DWORD dwHDGroupCount; /*ÅÌ×é×ÜÊý(²»¿ÉÉèÖÃ)*/ + NET_DVR_SINGLE_HDGROUP struHDGroupAttr[MAX_HD_GROUP];//Ó²ÅÌÏà¹Ø²Ù×÷¶¼ÐèÒªÖØÆô²ÅÄÜÉúЧ£» +}NET_DVR_HDGROUP_CFG, *LPNET_DVR_HDGROUP_CFG; + + +//ÅäÖÃËõ·Å²ÎÊýµÄ½á¹¹ +typedef struct +{ + DWORD dwSize; + DWORD dwMajorScale; /* Ö÷ÏÔʾ 0-²»Ëõ·Å£¬1-Ëõ·Å*/ + DWORD dwMinorScale; /* ¸¨ÏÔʾ 0-²»Ëõ·Å£¬1-Ëõ·Å*/ + DWORD dwRes[2]; +}NET_DVR_SCALECFG, *LPNET_DVR_SCALECFG; + + + +//DVR±¨¾¯Êä³ö(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + BYTE sAlarmOutName[NAME_LEN]; /* Ãû³Æ */ + DWORD dwAlarmOutDelay; /* Êä³ö±£³Öʱ¼ä(-1ΪÎÞÏÞ£¬ÊÖ¶¯¹Ø±Õ) */ + //0-5Ãë,1-10Ãë,2-30Ãë,3-1·ÖÖÓ,4-2·ÖÖÓ,5-5·ÖÖÓ,6-10·ÖÖÓ,7-ÊÖ¶¯,8-1Ãë,9-2Ãë,10-3Ãë,11-4Ãë + NET_DVR_SCHEDTIME struAlarmOutTime[MAX_DAYS][MAX_TIMESEGMENT_V30];/* ±¨¾¯Êä³ö¼¤»îʱ¼ä¶Î */ + BYTE byAlarmOutHandle; /* ÊÇ·ñ´¦Àí 0-´¦Àí 1-²»´¦Àí*/ + BYTE byNormalSatus; /* ³£Ì¬ 0-³£¿ª 1-³£±Õ*/ + BYTE byRes[14]; +}NET_DVR_ALARMOUTCFG_V30, *LPNET_DVR_ALARMOUTCFG_V30; + +//DVR±¨¾¯Êä³ö +typedef struct +{ + DWORD dwSize; + BYTE sAlarmOutName[NAME_LEN]; /* Ãû³Æ */ + DWORD dwAlarmOutDelay; /* Êä³ö±£³Öʱ¼ä(-1ΪÎÞÏÞ£¬ÊÖ¶¯¹Ø±Õ) */ + //0-5Ãë,1-10Ãë,2-30Ãë,3-1·ÖÖÓ,4-2·ÖÖÓ,5-5·ÖÖÓ,6-10·ÖÖÓ,7-ÊÖ¶¯, 8-1Ãë, 9-3Ãë + NET_DVR_SCHEDTIME struAlarmOutTime[MAX_DAYS][MAX_TIMESEGMENT];/* ±¨¾¯Êä³ö¼¤»îʱ¼ä¶Î */ +}NET_DVR_ALARMOUTCFG, *LPNET_DVR_ALARMOUTCFG; + +//DVR±¾µØÔ¤ÀÀ²ÎÊý(9000À©Õ¹) +/*Çл»ÊÇÖ¸ÔÚµ±Ç°Ô¤ÀÀģʽÏÂÇл»ÏÔʾ»­Ã棬¶ø²»ÊÇÇл»Ô¤ÀÀģʽ¡£±ÈÈçbyPreviewNumberΪ0£¨1»­Ã棩£¬bySwitchSeq[0][0] = 1,bySwitchSeq[0][1] = 2,bySwitchSeq[0][2] = 3 +Ôò±¾µØ»­ÃæÒ»Ö±ÊÇ1»­Ã棬ȻºóÔÚÊä³ö»­Ãæ°´1,2,3ͨµÀ˳ÐòÇл»*/ +typedef struct +{ + DWORD dwSize; + BYTE byPreviewNumber;//Ô¤ÀÀģʽ,0-1»­Ãæ,1-4»­Ãæ,2-9»­Ãæ,3-16»­Ãæ,0xff:×î´ó»­Ãæ + BYTE byEnableAudio;//ÊÇ·ñÉùÒôÔ¤ÀÀ,0-²»Ô¤ÀÀ,1-Ô¤ÀÀ + WORD wSwitchTime;//Çл»Ê±¼ä,0-²»Çл»,1-5s,2-10s,3-20s,4-30s,5-60s,6-120s,7-300s + BYTE bySwitchSeq[MAX_PREVIEW_MODE][MAX_WINDOW_V30];//Çл»Ë³Ðò,Èç¹ûlSwitchSeq[i]Ϊ 0xff±íʾ²»Óà + BYTE byRes[24]; +}NET_DVR_PREVIEWCFG_V30, *LPNET_DVR_PREVIEWCFG_V30; + +//DVR±¾µØÔ¤ÀÀ²ÎÊý +typedef struct +{ + DWORD dwSize; + BYTE byPreviewNumber;//Ô¤ÀÀÊýÄ¿,0-1»­Ãæ,1-4»­Ãæ,2-9»­Ãæ,3-16»­Ãæ,0xff:×î´ó»­Ãæ + BYTE byEnableAudio;//ÊÇ·ñÉùÒôÔ¤ÀÀ,0-²»Ô¤ÀÀ,1-Ô¤ÀÀ + WORD wSwitchTime;//Çл»Ê±¼ä,0-²»Çл»,1-5s,2-10s,3-20s,4-30s,5-60s,6-120s,7-300s + BYTE bySwitchSeq[MAX_WINDOW];//Çл»Ë³Ðò,Èç¹ûlSwitchSeq[i]Ϊ 0xff±íʾ²»Óà +}NET_DVR_PREVIEWCFG, *LPNET_DVR_PREVIEWCFG; + +//DVRÊÓƵÊä³ö +typedef struct +{ + WORD wResolution; /* ·Ö±æÂÊ */ + WORD wFreq; /* Ë¢ÐÂƵÂÊ */ + DWORD dwBrightness; /* ÁÁ¶È */ +}NET_DVR_VGAPARA; + +/* +* MATRIXÊä³ö²ÎÊý½á¹¹ +*/ +typedef struct +{ + WORD wOrder[MAX_ANALOG_CHANNUM]; /* Ô¤ÀÀ˳Ðò, 0xff±íʾÏàÓ¦µÄ´°¿Ú²»Ô¤ÀÀ */ + WORD wSwitchTime; /* Ô¤ÀÀÇл»Ê±¼ä */ + BYTE res[14]; +}NET_DVR_MATRIXPARA_V30, *LPNET_DVR_MATRIXPARA_V30; + +typedef struct +{ + WORD wDisplayLogo; /* ÏÔʾÊÓƵͨµÀºÅ */ + WORD wDisplayOsd; /* ÏÔʾʱ¼ä */ +}NET_DVR_MATRIXPARA; + +typedef struct +{ + BYTE byVideoFormat; /* Êä³öÖÆʽ,0-PAL,1-NTSC */ + BYTE byMenuAlphaValue; /* ²Ëµ¥Óë±³¾°Í¼Ïó¶Ô±È¶È */ + WORD wScreenSaveTime; /* ÆÁÄ»±£»¤Ê±¼ä 0-´Ó²»,1-1·ÖÖÓ,2-2·ÖÖÓ,3-5·ÖÖÓ,4-10·ÖÖÓ,5-20·ÖÖÓ,6-30·ÖÖÓ */ + WORD wVOffset; /* ÊÓƵÊä³öÆ«ÒÆ */ + WORD wBrightness; /* ÊÓƵÊä³öÁÁ¶È */ + BYTE byStartMode; /* Æô¶¯ºóÊÓƵÊä³öģʽ(0:²Ëµ¥,1:Ô¤ÀÀ)*/ + BYTE byEnableScaler; /* ÊÇ·ñÆô¶¯Ëõ·Å (0-²»Æô¶¯, 1-Æô¶¯)*/ +}NET_DVR_VOOUT; + +//DVRÊÓƵÊä³ö(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_VOOUT struVOOut[MAX_VIDEOOUT_V30]; + NET_DVR_VGAPARA struVGAPara[MAX_VGA_V30]; /* VGA²ÎÊý */ + NET_DVR_MATRIXPARA_V30 struMatrixPara[MAX_MATRIXOUT]; /* MATRIX²ÎÊý */ + BYTE byRes[16]; +}NET_DVR_VIDEOOUT_V30, *LPNET_DVR_VIDEOOUT_V30; + +//DVRÊÓƵÊä³ö +typedef struct +{ + DWORD dwSize; + NET_DVR_VOOUT struVOOut[MAX_VIDEOOUT]; + NET_DVR_VGAPARA struVGAPara[MAX_VGA]; /* VGA²ÎÊý */ + NET_DVR_MATRIXPARA struMatrixPara; /* MATRIX²ÎÊý */ +}NET_DVR_VIDEOOUT, *LPNET_DVR_VIDEOOUT; + + +//µ¥Óû§²ÎÊý(×ӽṹ)(À©Õ¹) +typedef struct tagNET_DVR_USER_INFO_V40 +{ + BYTE sUserName[NAME_LEN]; /* Óû§ÃûÖ»ÄÜÓÃ16×Ö½Ú */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + BYTE byLocalRight[MAX_RIGHT]; /* ±¾µØȨÏÞ */ + /*Êý×é0: ±¾µØ¿ØÖÆÔÆ̨*/ + /*Êý×é1: ±¾µØÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: ±¾µØ»Ø·Å*/ + /*Êý×é3: ±¾µØÉèÖòÎÊý*/ + /*Êý×é4: ±¾µØ²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: ±¾µØ¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: ±¾µØ²é¿´²ÎÊý */ + /*Êý×é7: ±¾µØ¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é8: ±¾µØ±¸·Ý */ + /*Êý×é9: ±¾µØ¹Ø»ú/ÖØÆô */ + BYTE byRemoteRight[MAX_RIGHT];/* Ô¶³ÌȨÏÞ */ + /*Êý×é0: Ô¶³Ì¿ØÖÆÔÆ̨*/ + /*Êý×é1: Ô¶³ÌÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: Ô¶³Ì»Ø·Å */ + /*Êý×é3: Ô¶³ÌÉèÖòÎÊý*/ + /*Êý×é4: Ô¶³Ì²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: Ô¶³Ì¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: Ô¶³Ì·¢ÆðÓïÒô¶Ô½²*/ + /*Êý×é7: Ô¶³ÌÔ¤ÀÀ*/ + /*Êý×é8: Ô¶³ÌÇëÇ󱨾¯ÉÏ´«¡¢±¨¾¯Êä³ö*/ + /*Êý×é9: Ô¶³Ì¿ØÖÆ£¬±¾µØÊä³ö*/ + /*Êý×é10: Ô¶³Ì¿ØÖÆ´®¿Ú*/ + /*Êý×é11: Ô¶³Ì²é¿´²ÎÊý */ + /*Êý×é12: Ô¶³Ì¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é13: Ô¶³Ì¹Ø»ú/ÖØÆô */ + DWORD dwNetPreviewRight[MAX_CHANNUM_V40]; /* Ô¶³Ì¿ÉÒÔÔ¤ÀÀµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalRecordRight[MAX_CHANNUM_V40]; /* ±¾µØ¿ÉÒÔ¼ÏñµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetRecordRight[MAX_CHANNUM_V40]; /* Ô¶³Ì¿ÉÒÔ¼ÏñµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPlaybackRight[MAX_CHANNUM_V40]; /* ±¾µØ¿ÉÒԻطŵÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetPlaybackRight[MAX_CHANNUM_V40]; /* Ô¶³Ì¿ÉÒԻطŵÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPTZRight[MAX_CHANNUM_V40]; /* ±¾µØ¿ÉÒÔPTZµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetPTZRight[MAX_CHANNUM_V40]; /* Ô¶³Ì¿ÉÒÔPTZµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalBackupRight[MAX_CHANNUM_V40]; /* ±¾µØ±¸·ÝȨÏÞͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + NET_DVR_IPADDR struUserIP; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN]; /* ÎïÀíµØÖ· */ + BYTE byPriority; /* ÓÅÏȼ¶£¬0xff-ÎÞ£¬0--µÍ£¬1--ÖУ¬2--¸ß */ + /* ÎÞ¡­¡­±íʾ²»Ö§³ÖÓÅÏȼ¶µÄÉèÖà + µÍ¡­¡­Ä¬ÈÏȨÏÞ:°üÀ¨±¾µØºÍÔ¶³Ì»Ø·Å,±¾µØºÍÔ¶³Ì²é¿´ÈÕÖ¾ºÍ + ״̬,±¾µØºÍÔ¶³Ì¹Ø»ú/ÖØÆô + ÖС­¡­°üÀ¨±¾µØºÍÔ¶³Ì¿ØÖÆÔÆ̨,±¾µØºÍÔ¶³ÌÊÖ¶¯Â¼Ïñ,±¾µØºÍ + Ô¶³Ì»Ø·Å,ÓïÒô¶Ô½²ºÍÔ¶³ÌÔ¤ÀÀ¡¢±¾µØ±¸·Ý,±¾µØ/Ô¶³Ì¹Ø»ú/ÖØÆô + ¸ß¡­¡­¹ÜÀíÔ± */ + BYTE byAlarmOnRight; // ±¨¾¯ÊäÈë¿Ú²¼·ÀȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byAlarmOffRight; // ±¨¾¯ÊäÈë¿Ú³··ÀȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byBypassRight; // ±¨¾¯ÊäÈë¿ÚÅÔ·ȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byRes1[2]; //ËÄ×Ö½Ú¶ÔÆë + BYTE byPublishRight[MAX_RIGHT]; //ÐÅÏ¢·¢²¼×¨ÓÐȨÏÞ + /*Êý×é0: ËزÄÉóºËȨÏÞ*/ + /*Êý×é1: ½ÚÄ¿ÉóºËȨÏÞ*/ + /*Êý×é2: ÈÕ³ÌÉóºËȨÏÞ*/ + /*Êý×é3: ÉÏ´«ËزÄȨÏÞ*/ + /*Êý×é4: н¨½ÚĿȨÏÞ*/ + /*Êý×é5: н¨ÈÕ³ÌȨÏÞ*/ + /*Êý×é6: ÐÅÏ¢²¥·ÅȨÏÞ*/ + /*Êý×é7: Öն˹ÜÀíȨÏÞ*/ + /*Êý×é8: ÉÌÒµÖÇÄÜȨÏÞ*/ + BYTE byRes[84]; +}NET_DVR_USER_INFO_V40, *LPNET_DVR_USER_INFO_V40; + +//µ¥Óû§²ÎÊý(×ӽṹ)(À©Õ¹) +typedef struct tagNET_DVR_USER_INFO_V51 +{ + BYTE sUserName[NAME_LEN/*32*/]; /* Óû§ÃûÖ»ÄÜÓÃ16×Ö½Ú */ + BYTE sPassword[PASSWD_LEN/*16*/]; /* ÃÜÂë */ + BYTE byLocalRight[MAX_RIGHT/*32*/]; /* ±¾µØȨÏÞ */ + /*Êý×é0: ±¾µØ¿ØÖÆÔÆ̨*/ + /*Êý×é1: ±¾µØÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: ±¾µØ»Ø·Å*/ + /*Êý×é3: ±¾µØÉèÖòÎÊý*/ + /*Êý×é4: ±¾µØ²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: ±¾µØ¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: ±¾µØ²é¿´²ÎÊý */ + /*Êý×é7: ±¾µØ¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é8: ±¾µØ±¸·Ý */ + /*Êý×é9: ±¾µØ¹Ø»ú/ÖØÆô */ + /*Êý×é10: ±¾µØÔ¤ÀÀ */ + BYTE byRemoteRight[MAX_RIGHT/*32*/];/* Ô¶³ÌȨÏÞ */ + /*Êý×é0: Ô¶³Ì¿ØÖÆÔÆ̨*/ + /*Êý×é1: Ô¶³ÌÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: Ô¶³Ì»Ø·Å */ + /*Êý×é3: Ô¶³ÌÉèÖòÎÊý*/ + /*Êý×é4: Ô¶³Ì²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: Ô¶³Ì¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: Ô¶³Ì·¢ÆðÓïÒô¶Ô½²*/ + /*Êý×é7: Ô¶³ÌÔ¤ÀÀ*/ + /*Êý×é8: Ô¶³ÌÇëÇ󱨾¯ÉÏ´«¡¢±¨¾¯Êä³ö*/ + /*Êý×é9: Ô¶³Ì¿ØÖÆ£¬±¾µØÊä³ö*/ + /*Êý×é10: Ô¶³Ì¿ØÖÆ´®¿Ú*/ + /*Êý×é11: Ô¶³Ì²é¿´²ÎÊý */ + /*Êý×é12: Ô¶³Ì¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é13: Ô¶³Ì¹Ø»ú/ÖØÆô */ + DWORD dwNetPreviewRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔÔ¤ÀÀµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalRecordRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒÔ¼ÏñµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetRecordRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔ¼ÏñµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPlaybackRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒԻطŵÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetPlaybackRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒԻطŵÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPTZRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒÔPTZµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetPTZRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔPTZµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalBackupRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ±¸·ÝȨÏÞͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPreviewRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØÔ¤ÀÀȨÏÞͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + NET_DVR_IPADDR struUserIP; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN/*6*/]; /* ÎïÀíµØÖ· */ + BYTE byPriority; /* ÓÅÏȼ¶£¬0xff-ÎÞ£¬0--µÍ£¬1--ÖУ¬2--¸ß */ + /* ÎÞ¡­¡­±íʾ²»Ö§³ÖÓÅÏȼ¶µÄÉèÖà + µÍ¡­¡­Ä¬ÈÏȨÏÞ:°üÀ¨±¾µØºÍÔ¶³Ì»Ø·Å,±¾µØºÍÔ¶³Ì²é¿´ÈÕÖ¾ºÍ + ״̬,±¾µØºÍÔ¶³Ì¹Ø»ú/ÖØÆô + ÖС­¡­°üÀ¨±¾µØºÍÔ¶³Ì¿ØÖÆÔÆ̨,±¾µØºÍÔ¶³ÌÊÖ¶¯Â¼Ïñ,±¾µØºÍ + Ô¶³Ì»Ø·Å,ÓïÒô¶Ô½²ºÍÔ¶³ÌÔ¤ÀÀ¡¢±¾µØ±¸·Ý,±¾µØ/Ô¶³Ì¹Ø»ú/ÖØÆô¸ß¡­¡­¹ÜÀíÔ± */ + BYTE byAlarmOnRight; // ±¨¾¯ÊäÈë¿Ú²¼·ÀȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byAlarmOffRight; // ±¨¾¯ÊäÈë¿Ú³··ÀȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byBypassRight; // ±¨¾¯ÊäÈë¿ÚÅÔ·ȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byRes1[2]; //ËÄ×Ö½Ú¶ÔÆë + BYTE byPublishRight[MAX_RIGHT/*32*/]; //ÐÅÏ¢·¢²¼×¨ÓÐȨÏÞ + /*Êý×é0: ËزÄÉóºËȨÏÞ*/ + /*Êý×é1: ½ÚÄ¿ÉóºËȨÏÞ*/ + /*Êý×é2: ÈÕ³ÌÉóºËȨÏÞ*/ + /*Êý×é3: ÉÏ´«ËزÄȨÏÞ*/ + /*Êý×é4: н¨½ÚĿȨÏÞ*/ + /*Êý×é5: н¨ÈÕ³ÌȨÏÞ*/ + /*Êý×é6: ÐÅÏ¢²¥·ÅȨÏÞ*/ + /*Êý×é7: Öն˹ÜÀíȨÏÞ*/ + /*Êý×é8: ÉÌÒµÖÇÄÜȨÏÞ*/ + DWORD dwPasswordValidity; //ÃÜÂëÓÐЧÆÚ,½ö¹ÜÀíÔ±Óû§¿ÉÒÔÐÞ¸Ä,µ¥Î»£ºÌ죬Ìî0±íʾÓÀ¾ÃÉúЧ + BYTE byKeypadPassword[PASSWD_LEN/*16*/]; //¼üÅÌÃÜÂë + BYTE byUserOperateType; //Óû§²Ù×÷ÀàÐÍ£¬1-ÍøÂçÓû§£¬2-¼üÅÌÓû§£¬3-ÍøÂçÓû§+¼üÅÌÓû§ + BYTE byRes[1007]; +}NET_DVR_USER_INFO_V51, *LPNET_DVR_USER_INFO_V51; + +typedef struct tagNET_DVR_USER_V51 +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwMaxUserNum; //É豸֧³ÖµÄ×î´óÓû§Êý-Ö»¶Á + NET_DVR_USER_INFO_V51 struUser[MAX_USERNUM_V30/*32*/]; /* Óû§²ÎÊý */ + char sloginPassword[PASSWD_LEN/*16*/]; /* µÇ½ÃÜÂëÈ·ÈÏ */ + BYTE byRes[240]; //±£Áô +}NET_DVR_USER_V51, *LPNET_DVR_USER_V51; + +//µ¥Óû§²ÎÊý(×ӽṹ)(À©Õ¹) +typedef struct tagNET_DVR_USER_INFO_V52 +{ + BYTE sUserName[NAME_LEN/*32*/]; /* Óû§ÃûÖ»ÄÜÓÃ16×Ö½Ú */ + BYTE sPassword[PASSWD_LEN/*16*/]; /* ÃÜÂë */ + BYTE byLocalRight[MAX_RIGHT/*32*/]; /* ±¾µØȨÏÞ */ + /*Êý×é0: ±¾µØ¿ØÖÆÔÆ̨*/ + /*Êý×é1: ±¾µØÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: ±¾µØ»Ø·Å*/ + /*Êý×é3: ±¾µØÉèÖòÎÊý*/ + /*Êý×é4: ±¾µØ²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: ±¾µØ¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: ±¾µØ²é¿´²ÎÊý */ + /*Êý×é7: ±¾µØ¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é8: ±¾µØ±¸·Ý */ + /*Êý×é9: ±¾µØ¹Ø»ú/ÖØÆô */ + /*Êý×é10: ±¾µØÔ¤ÀÀ */ + BYTE byRemoteRight[MAX_RIGHT/*32*/];/* Ô¶³ÌȨÏÞ */ + /*Êý×é0: Ô¶³Ì¿ØÖÆÔÆ̨*/ + /*Êý×é1: Ô¶³ÌÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: Ô¶³Ì»Ø·Å */ + /*Êý×é3: Ô¶³ÌÉèÖòÎÊý*/ + /*Êý×é4: Ô¶³Ì²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: Ô¶³Ì¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: Ô¶³Ì·¢ÆðÓïÒô¶Ô½²*/ + /*Êý×é7: Ô¶³ÌÔ¤ÀÀ*/ + /*Êý×é8: Ô¶³ÌÇëÇ󱨾¯ÉÏ´«¡¢±¨¾¯Êä³ö*/ + /*Êý×é9: Ô¶³Ì¿ØÖÆ£¬±¾µØÊä³ö*/ + /*Êý×é10: Ô¶³Ì¿ØÖÆ´®¿Ú*/ + /*Êý×é11: Ô¶³Ì²é¿´²ÎÊý */ + /*Êý×é12: Ô¶³Ì¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é13: Ô¶³Ì¹Ø»ú/ÖØÆô */ + DWORD dwNetPreviewRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔÔ¤ÀÀµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalRecordRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒÔ¼ÏñµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetRecordRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔ¼ÏñµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPlaybackRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒԻطŵÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetPlaybackRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒԻطŵÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPTZRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒÔPTZµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetPTZRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔPTZµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalBackupRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ±¸·ÝȨÏÞͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalPreviewRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØÔ¤ÀÀȨÏÞͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalDoubleVerificationPlaybackRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒÔ¶þ´ÎÈÏÖ¤»Ø·ÅµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwLocalDoubleVerificationBackupRight[MAX_CHANNUM_V40/*512*/]; /* ±¾µØ¿ÉÒÔ¶þ´ÎÈÏÖ¤±¸·ÝµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + DWORD dwNetDoubleVerificationPlaybackRight[MAX_CHANNUM_V40/*512*/]; /* Ô¶³Ì¿ÉÒÔ¶þ´ÎÈÏÖ¤»Ø·ÅµÄͨµÀ£¬´ÓÇ°Íùºó˳ÐòÅÅÁУ¬Óöµ½0xffffffffºóÐø¾ùΪÎÞЧ*/ + NET_DVR_IPADDR struUserIP; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN/*6*/]; /* ÎïÀíµØÖ· */ + BYTE byPriority; /* ÓÅÏȼ¶£¬0xff-ÎÞ£¬0--µÍ£¬1--ÖУ¬2--¸ß */ + /* ÎÞ¡­¡­±íʾ²»Ö§³ÖÓÅÏȼ¶µÄÉèÖà + µÍ¡­¡­Ä¬ÈÏȨÏÞ:°üÀ¨±¾µØºÍÔ¶³Ì»Ø·Å,±¾µØºÍÔ¶³Ì²é¿´ÈÕÖ¾ºÍ + ״̬,±¾µØºÍÔ¶³Ì¹Ø»ú/ÖØÆô + ÖС­¡­°üÀ¨±¾µØºÍÔ¶³Ì¿ØÖÆÔÆ̨,±¾µØºÍÔ¶³ÌÊÖ¶¯Â¼Ïñ,±¾µØºÍ + Ô¶³Ì»Ø·Å,ÓïÒô¶Ô½²ºÍÔ¶³ÌÔ¤ÀÀ¡¢±¾µØ±¸·Ý,±¾µØ/Ô¶³Ì¹Ø»ú/ÖØÆô¸ß¡­¡­¹ÜÀíÔ± */ + BYTE byAlarmOnRight; // ±¨¾¯ÊäÈë¿Ú²¼·ÀȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byAlarmOffRight; // ±¨¾¯ÊäÈë¿Ú³··ÀȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byBypassRight; // ±¨¾¯ÊäÈë¿ÚÅÔ·ȨÏÞ 1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byRes1[2]; //ËÄ×Ö½Ú¶ÔÆë + BYTE byPublishRight[MAX_RIGHT/*32*/]; //ÐÅÏ¢·¢²¼×¨ÓÐȨÏÞ + /*Êý×é0: ËزÄÉóºËȨÏÞ*/ + /*Êý×é1: ½ÚÄ¿ÉóºËȨÏÞ*/ + /*Êý×é2: ÈÕ³ÌÉóºËȨÏÞ*/ + /*Êý×é3: ÉÏ´«ËزÄȨÏÞ*/ + /*Êý×é4: н¨½ÚĿȨÏÞ*/ + /*Êý×é5: н¨ÈÕ³ÌȨÏÞ*/ + /*Êý×é6: ÐÅÏ¢²¥·ÅȨÏÞ*/ + /*Êý×é7: Öն˹ÜÀíȨÏÞ*/ + /*Êý×é8: ÉÌÒµÖÇÄÜȨÏÞ*/ + DWORD dwPasswordValidity; //ÃÜÂëÓÐЧÆÚ,½ö¹ÜÀíÔ±Óû§¿ÉÒÔÐÞ¸Ä,µ¥Î»£ºÌ죬Ìî0±íʾÓÀ¾ÃÉúЧ + BYTE byKeypadPassword[PASSWD_LEN/*16*/]; //¼üÅÌÃÜÂë + BYTE byUserOperateType; //Óû§²Ù×÷ÀàÐÍ£¬1-ÍøÂçÓû§£¬2-¼üÅÌÓû§£¬3-ÍøÂçÓû§+¼üÅÌÓû§ + BYTE byRes[1007]; +}NET_DVR_USER_INFO_V52, *LPNET_DVR_USER_INFO_V52; + +typedef struct tagNET_DVR_USER_V52 +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwMaxUserNum; //É豸֧³ÖµÄ×î´óÓû§Êý-Ö»¶Á + NET_DVR_USER_INFO_V52 struUser[MAX_USERNUM_V30/*32*/]; /* Óû§²ÎÊý */ + char sloginPassword[PASSWD_LEN/*16*/]; /* µÇ½ÃÜÂëÈ·ÈÏ */ + BYTE byRes[240]; //±£Áô +}NET_DVR_USER_V52, *LPNET_DVR_USER_V52; + +//µ¥Óû§²ÎÊý(×ӽṹ)(9000À©Õ¹) +typedef struct +{ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + BYTE byLocalRight[MAX_RIGHT]; /* ±¾µØȨÏÞ */ + /*Êý×é0: ±¾µØ¿ØÖÆÔÆ̨*/ + /*Êý×é1: ±¾µØÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: ±¾µØ»Ø·Å*/ + /*Êý×é3: ±¾µØÉèÖòÎÊý*/ + /*Êý×é4: ±¾µØ²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: ±¾µØ¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: ±¾µØ²é¿´²ÎÊý */ + /*Êý×é7: ±¾µØ¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é8: ±¾µØ±¸·Ý */ + /*Êý×é9: ±¾µØ¹Ø»ú/ÖØÆô */ + BYTE byRemoteRight[MAX_RIGHT];/* Ô¶³ÌȨÏÞ */ + /*Êý×é0: Ô¶³Ì¿ØÖÆÔÆ̨*/ + /*Êý×é1: Ô¶³ÌÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: Ô¶³Ì»Ø·Å */ + /*Êý×é3: Ô¶³ÌÉèÖòÎÊý*/ + /*Êý×é4: Ô¶³Ì²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: Ô¶³Ì¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: Ô¶³Ì·¢ÆðÓïÒô¶Ô½²*/ + /*Êý×é7: Ô¶³ÌÔ¤ÀÀ*/ + /*Êý×é8: Ô¶³ÌÇëÇ󱨾¯ÉÏ´«¡¢±¨¾¯Êä³ö*/ + /*Êý×é9: Ô¶³Ì¿ØÖÆ£¬±¾µØÊä³ö*/ + /*Êý×é10: Ô¶³Ì¿ØÖÆ´®¿Ú*/ + /*Êý×é11: Ô¶³Ì²é¿´²ÎÊý */ + /*Êý×é12: Ô¶³Ì¹ÜÀíÄ£ÄâºÍIP camera */ + /*Êý×é13: Ô¶³Ì¹Ø»ú/ÖØÆô */ + BYTE byNetPreviewRight[MAX_CHANNUM_V30]; /* Ô¶³Ì¿ÉÒÔÔ¤ÀÀµÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byLocalPlaybackRight[MAX_CHANNUM_V30]; /* ±¾µØ¿ÉÒԻطŵÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byNetPlaybackRight[MAX_CHANNUM_V30]; /* Ô¶³Ì¿ÉÒԻطŵÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byLocalRecordRight[MAX_CHANNUM_V30]; /* ±¾µØ¿ÉÒÔ¼ÏñµÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byNetRecordRight[MAX_CHANNUM_V30]; /* Ô¶³Ì¿ÉÒÔ¼ÏñµÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byLocalPTZRight[MAX_CHANNUM_V30]; /* ±¾µØ¿ÉÒÔPTZµÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byNetPTZRight[MAX_CHANNUM_V30]; /* Ô¶³Ì¿ÉÒÔPTZµÄͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + BYTE byLocalBackupRight[MAX_CHANNUM_V30]; /* ±¾µØ±¸·ÝȨÏÞͨµÀ 0-ÓÐȨÏÞ£¬1-ÎÞȨÏÞ*/ + NET_DVR_IPADDR struUserIP; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN]; /* ÎïÀíµØÖ· */ + BYTE byPriority; /* ÓÅÏȼ¶£¬0xff-ÎÞ£¬0--µÍ£¬1--ÖУ¬2--¸ß */ + /* + ÎÞ¡­¡­±íʾ²»Ö§³ÖÓÅÏȼ¶µÄÉèÖà + µÍ¡­¡­Ä¬ÈÏȨÏÞ:°üÀ¨±¾µØºÍÔ¶³Ì»Ø·Å,±¾µØºÍÔ¶³Ì²é¿´ÈÕÖ¾ºÍ״̬,±¾µØºÍÔ¶³Ì¹Ø»ú/ÖØÆô + ÖС­¡­°üÀ¨±¾µØºÍÔ¶³Ì¿ØÖÆÔÆ̨,±¾µØºÍÔ¶³ÌÊÖ¶¯Â¼Ïñ,±¾µØºÍÔ¶³Ì»Ø·Å,ÓïÒô¶Ô½²ºÍÔ¶³ÌÔ¤ÀÀ + ±¾µØ±¸·Ý,±¾µØ/Ô¶³Ì¹Ø»ú/ÖØÆô + ¸ß¡­¡­¹ÜÀíÔ± + */ + BYTE byAlarmOnRight; // ±¨¾¯ÊäÈë¿Ú²¼·ÀȨÏÞ + BYTE byAlarmOffRight; // ±¨¾¯ÊäÈë¿Ú³··ÀȨÏÞ + BYTE byBypassRight; // ±¨¾¯ÊäÈë¿ÚÅÔ·ȨÏÞ + BYTE byRes[14]; +}NET_DVR_USER_INFO_V30, *LPNET_DVR_USER_INFO_V30; + +//µ¥Óû§²ÎÊý(SDK_V15À©Õ¹)(×ӽṹ) +typedef struct +{ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + DWORD dwLocalRight[MAX_RIGHT]; /* ȨÏÞ */ + /*Êý×é0: ±¾µØ¿ØÖÆÔÆ̨*/ + /*Êý×é1: ±¾µØÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: ±¾µØ»Ø·Å*/ + /*Êý×é3: ±¾µØÉèÖòÎÊý*/ + /*Êý×é4: ±¾µØ²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: ±¾µØ¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + DWORD dwLocalPlaybackRight; /* ±¾µØ¿ÉÒԻطŵÄͨµÀ bit0 -- channel 1*/ + DWORD dwRemoteRight[MAX_RIGHT]; /* ȨÏÞ */ + /*Êý×é0: Ô¶³Ì¿ØÖÆÔÆ̨*/ + /*Êý×é1: Ô¶³ÌÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: Ô¶³Ì»Ø·Å */ + /*Êý×é3: Ô¶³ÌÉèÖòÎÊý*/ + /*Êý×é4: Ô¶³Ì²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: Ô¶³Ì¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: Ô¶³Ì·¢ÆðÓïÒô¶Ô½²*/ + /*Êý×é7: Ô¶³ÌÔ¤ÀÀ*/ + /*Êý×é8: Ô¶³ÌÇëÇ󱨾¯ÉÏ´«¡¢±¨¾¯Êä³ö*/ + /*Êý×é9: Ô¶³Ì¿ØÖÆ£¬±¾µØÊä³ö*/ + /*Êý×é10: Ô¶³Ì¿ØÖÆ´®¿Ú*/ + DWORD dwNetPreviewRight; /* Ô¶³Ì¿ÉÒÔÔ¤ÀÀµÄͨµÀ bit0 -- channel 1*/ + DWORD dwNetPlaybackRight; /* Ô¶³Ì¿ÉÒԻطŵÄͨµÀ bit0 -- channel 1*/ + char sUserIP[16]; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN]; /* ÎïÀíµØÖ· */ +}NET_DVR_USER_INFO_EX, *LPNET_DVR_USER_INFO_EX; + +//µ¥Óû§²ÎÊý(×ӽṹ) +typedef struct +{ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + DWORD dwLocalRight[MAX_RIGHT]; /* ȨÏÞ */ + /*Êý×é0: ±¾µØ¿ØÖÆÔÆ̨*/ + /*Êý×é1: ±¾µØÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: ±¾µØ»Ø·Å*/ + /*Êý×é3: ±¾µØÉèÖòÎÊý*/ + /*Êý×é4: ±¾µØ²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: ±¾µØ¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + DWORD dwRemoteRight[MAX_RIGHT]; /* ȨÏÞ */ + /*Êý×é0: Ô¶³Ì¿ØÖÆÔÆ̨*/ + /*Êý×é1: Ô¶³ÌÊÖ¶¯Â¼Ïó*/ + /*Êý×é2: Ô¶³Ì»Ø·Å */ + /*Êý×é3: Ô¶³ÌÉèÖòÎÊý*/ + /*Êý×é4: Ô¶³Ì²é¿´×´Ì¬¡¢ÈÕÖ¾*/ + /*Êý×é5: Ô¶³Ì¸ß¼¶²Ù×÷(Éý¼¶£¬¸ñʽ»¯£¬ÖØÆô£¬¹Ø»ú)*/ + /*Êý×é6: Ô¶³Ì·¢ÆðÓïÒô¶Ô½²*/ + /*Êý×é7: Ô¶³ÌÔ¤ÀÀ*/ + /*Êý×é8: Ô¶³ÌÇëÇ󱨾¯ÉÏ´«¡¢±¨¾¯Êä³ö*/ + /*Êý×é9: Ô¶³Ì¿ØÖÆ£¬±¾µØÊä³ö*/ + /*Êý×é10: Ô¶³Ì¿ØÖÆ´®¿Ú*/ + char sUserIP[16]; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN]; /* ÎïÀíµØÖ· */ +}NET_DVR_USER_INFO, *LPNET_DVR_USER_INFO; + +//DVRÓû§²ÎÊý(À©Õ¹) +typedef struct tagNET_DVR_USER_V40 +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwMaxUserNum; //É豸֧³ÖµÄ×î´óÓû§Êý-Ö»¶Á + NET_DVR_USER_INFO_V40 struUser[MAX_USERNUM_V30]; /* Óû§²ÎÊý */ +}NET_DVR_USER_V40,*LPNET_DVR_USER_V40; +typedef struct tagNET_DVR_USER_V50 +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwMaxUserNum; //É豸֧³ÖµÄ×î´óÓû§Êý-Ö»¶Á + NET_DVR_USER_INFO_V40 struUser[MAX_USERNUM_V30]; /* Óû§²ÎÊý */ + char sloginPassword[PASSWD_LEN/*16*/]; /* µÇ½ÃÜÂëÈ·ÈÏ */ + BYTE byRes[240]; //±£Áô +}NET_DVR_USER_V50, *LPNET_DVR_USER_V50; +//DVRÓû§²ÎÊý(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_USER_INFO_V30 struUser[MAX_USERNUM_V30]; +}NET_DVR_USER_V30, *LPNET_DVR_USER_V30; + +//DVRÓû§²ÎÊý(SDK_V15À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_USER_INFO_EX struUser[MAX_USERNUM]; +}NET_DVR_USER_EX, *LPNET_DVR_USER_EX; + +//DVRÓû§²ÎÊý +typedef struct +{ + DWORD dwSize; + NET_DVR_USER_INFO struUser[MAX_USERNUM]; +}NET_DVR_USER, *LPNET_DVR_USER; + +typedef struct tagNET_DVR_EXCEPTION_V40 +{ + DWORD dwSize ; //½á¹¹Ìå´óС + DWORD dwMaxGroupNum ; //É豸֧³ÖµÄ×î´ó×éÊý + NET_DVR_HANDLEEXCEPTION_V41 struExceptionHandle[MAX_EXCEPTIONNUM_V30]; + BYTE byRes[128]; //±£Áô +}NET_DVR_EXCEPTION_V40,*LPNET_DVR_EXCEPTION_V40; /*Òì³£²ÎÊýÅäÖÃÀ©Õ¹½á¹¹Ìå*/ + +//DVRÒì³£²ÎÊý(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_HANDLEEXCEPTION_V30 struExceptionHandleType[MAX_EXCEPTIONNUM_V30]; + /*Êý×é0-ÅÌÂú,1- Ó²Å̳ö´í,2-ÍøÏ߶Ï,3-¾ÖÓòÍøÄÚIP µØÖ·³åÍ», 4-·Ç·¨·ÃÎÊ, 5-ÊäÈë/Êä³öÊÓƵÖÆʽ²»Æ¥Åä, 6-ÊÓƵÐźÅÒì³£, 7-¼ÏñÒì³£ 8-ÕóÁÐÒì³££¬9-Ç°¶Ë/¼Ïñ·Ö±æÂʲ»Æ¥ÅäÒì³££¬10-Ðгµ³¬ËÙ(³µÔØרÓÃ) 11-Èȱ¸Òì³££¨N+1ʹÓã©12-ζȣ¬13-×ÓϵͳÒì³££¬14-·çÉÈÒì³£, 15-POE¹©µçÒì³£, 16-POCÒì³£,Êý×é17-µçÔ´µçѹ²¨¶¯Òì³£*/ +}NET_DVR_EXCEPTION_V30, *LPNET_DVR_EXCEPTION_V30; + + + +//DVRÒì³£²ÎÊý +typedef struct +{ + DWORD dwSize; + NET_DVR_HANDLEEXCEPTION struExceptionHandleType[MAX_EXCEPTIONNUM]; + /*Êý×é0-ÅÌÂú,1- Ó²Å̳ö´í,2-ÍøÏ߶Ï,3-¾ÖÓòÍøÄÚIP µØÖ·³åÍ»,4-·Ç·¨·ÃÎÊ, 5-ÊäÈë/Êä³öÊÓƵÖÆʽ²»Æ¥Åä, 6-ÊÓƵÐźÅÒì³£*/ +}NET_DVR_EXCEPTION, *LPNET_DVR_EXCEPTION; + +//ͨµÀ״̬(9000À©Õ¹) +typedef struct +{ + BYTE byRecordStatic; //ͨµÀÊÇ·ñÔÚ¼Ïñ,0-²»Â¼Ïñ,1-¼Ïñ + BYTE bySignalStatic; //Á¬½ÓµÄÐźÅ״̬,0-Õý³£,1-ÐźŶªÊ§ + BYTE byHardwareStatic;//ͨµÀÓ²¼þ״̬,0-Õý³£,1-Òì³£,ÀýÈçDSPËÀµô + BYTE byRes1; //±£Áô + DWORD dwBitRate;//ʵ¼ÊÂëÂÊ + DWORD dwLinkNum;//¿Í»§¶ËÁ¬½ÓµÄ¸öÊý + NET_DVR_IPADDR struClientIP[MAX_LINK];//¿Í»§¶ËµÄIPµØÖ· + DWORD dwIPLinkNum;//Èç¹û¸ÃͨµÀΪIP½ÓÈ룬ÄÇô±íʾIP½ÓÈ뵱ǰµÄÁ¬½ÓÊý + BYTE byExceedMaxLink; // ÊÇ·ñ³¬³öÁ˵¥Â·6·Á¬½ÓÊý 0 - 䳬³ö, 1-³¬³ö + BYTE byRes[3]; // ±£Áô×Ö½Ú + DWORD dwAllBitRate; //ËùÓÐʵ¼ÊÂëÂÊÖ®ºÍ + DWORD dwChannelNo; //µ±Ç°µÄͨµÀºÅ£¬0xffffffff±íʾÎÞЧ +}NET_DVR_CHANNELSTATE_V30, *LPNET_DVR_CHANNELSTATE_V30; + +//ͨµÀ״̬ +typedef struct +{ + BYTE byRecordStatic; //ͨµÀÊÇ·ñÔÚ¼Ïñ,0-²»Â¼Ïñ,1-¼Ïñ + BYTE bySignalStatic; //Á¬½ÓµÄÐźÅ״̬,0-Õý³£,1-ÐźŶªÊ§ + BYTE byHardwareStatic;//ͨµÀÓ²¼þ״̬,0-Õý³£,1-Òì³£,ÀýÈçDSPËÀµô + char reservedData; //±£Áô + DWORD dwBitRate;//ʵ¼ÊÂëÂÊ + DWORD dwLinkNum;//¿Í»§¶ËÁ¬½ÓµÄ¸öÊý + DWORD dwClientIP[MAX_LINK];//¿Í»§¶ËµÄIPµØÖ· +}NET_DVR_CHANNELSTATE, *LPNET_DVR_CHANNELSTATE; + +//Ó²ÅÌ״̬ +typedef struct +{ + DWORD dwVolume;//Ó²Å̵ÄÈÝÁ¿ + DWORD dwFreeSpace;//Ó²Å̵ÄÊ£Óà¿Õ¼ä + DWORD dwHardDiskStatic; //Ó²Å̵Ä״̬,°´Î»:1-ÐÝÃß,2-²»Õý³£,3-ÐÝÃßÓ²Å̳ö´í,4-δ¸ñʽ»¯, 5-δÁ¬½Ó״̬(ÍøÂçÓ²ÅÌ),6-Ó²ÅÌÕýÔÚ¸ñʽ»¯,7-Ó²ÅÌÂú(먦ÆôÑ­»·¸²¸ÇµÄÇé¿öÏÂ),8-ÆäËûÒì³££¨´ýÉ豸¶Ëͳ¼Æ£© +}NET_DVR_DISKSTATE, *LPNET_DVR_DISKSTATE; + +typedef struct tagNET_DVR_WORKSTATE_V40 +{ + DWORD dwSize ; //½á¹¹Ìå´óС + DWORD dwDeviceStatic; //É豸µÄ״̬,0-Õý³£,1-CPUÕ¼ÓÃÂÊÌ«¸ß,³¬¹ý85%,2-Ó²¼þ´íÎó,ÀýÈç´®¿ÚËÀµô + NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; //Ó²ÅÌ״̬,Ò»´Î×î¶àÖ»ÄÜ»ñÈ¡33¸öÓ²ÅÌÐÅÏ¢ + NET_DVR_CHANNELSTATE_V30 struChanStatic[MAX_CHANNUM_V40/*512*/];//ͨµÀµÄ״̬£¬´ÓÇ°Íùºó˳ÐòÅÅÁÐ + DWORD dwHasAlarmInStatic[MAX_ALARMIN_V40/*512*/]; //Óб¨¾¯µÄ±¨¾¯ÊäÈë¿Ú£¬°´Öµ±íʾ£¬°´Ï±êֵ˳ÐòÅÅÁУ¬ÖµÎª0xffffffffʱµ±Ç°¼°ºóÐøÖµÎÞЧ + DWORD dwHasAlarmOutStatic[MAX_ALARMOUT_V40/*512*/]; //Óб¨¾¯Êä³öµÄ±¨¾¯Êä³ö¿Ú£¬°´Öµ±íʾ£¬°´Ï±êֵ˳ÐòÅÅÁУ¬ÖµÎª0xffffffffʱµ±Ç°¼°ºóÐøÖµÎÞЧ + DWORD dwLocalDisplay; //±¾µØÏÔʾ״̬,0-Õý³£,1-²»Õý³£ + BYTE byAudioInChanStatus[MAX_AUDIO_V30/*2*/]; //°´Î»±íʾÓïÒôͨµÀµÄ״̬ 0-δʹÓã¬1-ʹÓÃÖУ¬µÚ0λ±íʾµÚ1¸öÓïÒôͨµÀ + BYTE byRes1[2]; + float fHumidity; //´«¸ÐÆ÷»ñÖªµÄʪ¶È,·¶Î§:0.0 ~100.0 + float fTemperature; //´«¸ÐÆ÷»ñÖªµÄζȣ¬·¶Î§£º-20.0 ~ 90.0 + BYTE byRes[116]; //±£Áô +}NET_DVR_WORKSTATE_V40, *LPNET_DVR_WORKSTATE_V40; /*É豸¹¤×÷״̬À©Õ¹½á¹¹Ìå*/ + +typedef struct tagNET_DVR_GETWORKSTATE_COND +{ + DWORD dwSize ; //½á¹¹Ì峤¶È + BYTE byFindHardByCond; /*0-²éÕÒÈ«²¿´ÅÅÌ(µ«Ò»´Î×î¶àÖ»ÄܲéÕÒ33¸ö)£¬´ËʱdwFindHardStatusNumÎÞЧ*/ + BYTE byFindChanByCond ; /*0-²éÕÒÈ«²¿Í¨µÀ£¬´ËʱdwFindChanNumÎÞЧ*/ + BYTE byRes1[2] ;//±£Áô + DWORD dwFindHardStatus[MAX_DISKNUM_V30/*33*/] ; /*Òª²éÕÒµÄÓ²Å̺ţ¬°´Öµ±íʾ£¬¸ÃÖµ²ÉÓÃ˳ÐòÅÅÁУ¬ Óöµ½0xffffffffÔòÈÏΪºóÐøÎÞЧ */ + DWORD dwFindChanNo[MAX_CHANNUM_V40/*512*/] ; /*Òª²éÕÒµÄͨµÀºÅ£¬°´Öµ±íʾ£¬¸ÃÖµ²ÉÓÃ˳ÐòÅÅÁУ¬ Óöµ½0xffffffffÔòÈÏΪºóÐøÎÞЧ */ + BYTE byRes[64] ; //±£Áô +}NET_DVR_GETWORKSTATE_COND, *LPNET_DVR_GETWORKSTATE_COND; + +//DVR¹¤×÷״̬(9000À©Õ¹) +typedef struct +{ + DWORD dwDeviceStatic; //É豸µÄ״̬,0-Õý³£,1-CPUÕ¼ÓÃÂÊÌ«¸ß,³¬¹ý85%,2-Ó²¼þ´íÎó,ÀýÈç´®¿ÚËÀµô + NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; + NET_DVR_CHANNELSTATE_V30 struChanStatic[MAX_CHANNUM_V30];//ͨµÀµÄ״̬ + BYTE byAlarmInStatic[MAX_ALARMIN_V30]; //±¨¾¯¶Ë¿ÚµÄ״̬,0-ûÓб¨¾¯,1-Óб¨¾¯ + BYTE byAlarmOutStatic[MAX_ALARMOUT_V30]; //±¨¾¯Êä³ö¶Ë¿ÚµÄ״̬,0-ûÓÐÊä³ö,1-Óб¨¾¯Êä³ö + DWORD dwLocalDisplay;//±¾µØÏÔʾ״̬,0-Õý³£,1-²»Õý³£ + BYTE byAudioChanStatus[MAX_AUDIO_V30];//±íʾÓïÒôͨµÀµÄ״̬ 0-δʹÓã¬1-ʹÓÃÖÐ, 0xffÎÞЧ + BYTE byRes[10]; +}NET_DVR_WORKSTATE_V30, *LPNET_DVR_WORKSTATE_V30; + +//DVR¹¤×÷״̬ +typedef struct +{ + DWORD dwDeviceStatic; //É豸µÄ״̬,0-Õý³£,1-CPUÕ¼ÓÃÂÊÌ«¸ß,³¬¹ý85%,2-Ó²¼þ´íÎó,ÀýÈç´®¿ÚËÀµô + NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM]; + NET_DVR_CHANNELSTATE struChanStatic[MAX_CHANNUM];//ͨµÀµÄ״̬ + BYTE byAlarmInStatic[MAX_ALARMIN]; //±¨¾¯¶Ë¿ÚµÄ״̬,0-ûÓб¨¾¯,1-Óб¨¾¯ + BYTE byAlarmOutStatic[MAX_ALARMOUT]; //±¨¾¯Êä³ö¶Ë¿ÚµÄ״̬,0-ûÓÐÊä³ö,1-Óб¨¾¯Êä³ö + DWORD dwLocalDisplay;//±¾µØÏÔʾ״̬,0-Õý³£,1-²»Õý³£ +}NET_DVR_WORKSTATE, *LPNET_DVR_WORKSTATE; + + + +//ÈÕÖ¾ÐÅÏ¢(9000À©Õ¹) +typedef struct +{ + NET_DVR_TIME strLogTime; + DWORD dwMajorType; //Ö÷ÀàÐÍ 1-±¨¾¯; 2-Òì³£; 3-²Ù×÷; 0xff-È«²¿ + DWORD dwMinorType;//´ÎÀàÐÍ 0-È«²¿; + BYTE sPanelUser[MAX_NAMELEN]; //²Ù×÷Ãæ°åµÄÓû§Ãû + BYTE sNetUser[MAX_NAMELEN];//ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr;//Ô¶³ÌÖ÷»úµØÖ· + DWORD dwParaType;//²ÎÊýÀàÐÍ,9000É豸MINOR_START_VT/MINOR_STOP_VTʱ£¬±íʾÓïÒô¶Ô½²µÄ¶Ë×ӺŠ+ DWORD dwChannel;//ͨµÀºÅ + DWORD dwDiskNumber;//Ó²Å̺Š+ DWORD dwAlarmInPort;//±¨¾¯ÊäÈë¶Ë¿Ú + DWORD dwAlarmOutPort;//±¨¾¯Êä³ö¶Ë¿Ú + DWORD dwInfoLen; + char sInfo[LOG_INFO_LEN]; +}NET_DVR_LOG_V30, *LPNET_DVR_LOG_V30; + +//ÈÕÖ¾ÐÅÏ¢ +typedef struct +{ + NET_DVR_TIME strLogTime; + DWORD dwMajorType; //Ö÷ÀàÐÍ 1-±¨¾¯; 2-Òì³£; 3-²Ù×÷; 0xff-È«²¿ + DWORD dwMinorType;//´ÎÀàÐÍ 0-È«²¿; + BYTE sPanelUser[MAX_NAMELEN]; //²Ù×÷Ãæ°åµÄÓû§Ãû + BYTE sNetUser[MAX_NAMELEN];//ÍøÂç²Ù×÷µÄÓû§Ãû + char sRemoteHostAddr[16];//Ô¶³ÌÖ÷»úµØÖ· + DWORD dwParaType;//²ÎÊýÀàÐÍ + DWORD dwChannel;//ͨµÀºÅ + DWORD dwDiskNumber;//Ó²Å̺Š+ DWORD dwAlarmInPort;//±¨¾¯ÊäÈë¶Ë¿Ú + DWORD dwAlarmOutPort;//±¨¾¯Êä³ö¶Ë¿Ú +}NET_DVR_LOG, *LPNET_DVR_LOG; + + +typedef struct tagNET_DVR_FIND_LOG_COND +{ + DWORD dwSelectMode; // 0£­È«²¿£»1£­°´ÀàÐÍ£»2£­°´Ê±¼ä£»3£­°´Ê±¼äºÍÀàÐÍ + DWORD dwMainType; //ÈÕÖ¾Ö÷ÀàÐÍ + DWORD dwSubType; //ÈÕÖ¾´ÎÀàÐÍ + NET_DVR_TIME_V50 struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V50 struEndTime; //½áÊøʱ¼ä + BOOL bOnlySmart; //ÊÇ·ñÖ»ËÑË÷´øS.M.A.R.TÐÅÏ¢µÄÈÕÖ¾ + BYTE byRes[128]; +}NET_DVR_FIND_LOG_COND, *LPNET_DVR_FIND_LOG_COND; + + +typedef struct +{ + NET_DVR_TIME_V50 struLogTime; //ÈÕÖ¾·¢ÉúµÄʱ¼ä + DWORD dwMajorType; //Ö÷ÀàÐÍ 1-±¨¾¯; 2-Òì³£; 3-²Ù×÷; 0xff-È«²¿ + DWORD dwMinorType; //´ÎÀàÐÍ 0-È«²¿; + BYTE sPanelUser[MAX_NAMELEN];//²Ù×÷Ãæ°åµÄÓû§Ãû + BYTE sNetUser[MAX_NAMELEN]; //ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr; //Ô¶³ÌÖ÷»úµØÖ· + DWORD dwParaType; //²ÎÊýÀàÐÍ,9000É豸MINOR_START_VT/MINOR_STOP_VTʱ£¬±íʾÓïÒô¶Ô½²µÄ¶Ë×ӺŠ+ DWORD dwChannel; //ͨµÀºÅ + DWORD dwDiskNumber; //Ó²Å̺Š+ DWORD dwAlarmInPort; //±¨¾¯ÊäÈë¶Ë¿Ú + DWORD dwAlarmOutPort; //±¨¾¯Êä³ö¶Ë¿Ú + DWORD dwInfoLen; + char sInfo[LOG_INFO_LEN]; + BYTE byRes[128]; +}NET_DVR_LOG_V50, *LPNET_DVR_LOG_V50; + + +/************************DVRÈÕÖ¾ end***************************/ + +/************************¶¯»·±¨¾¯¹ÜÀíÖ÷»úÈÕÖ¾²éÕÒ begin************************************************/ +typedef struct tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM +{ + WORD wMajorType; // Ö÷ÀàÐÍ + WORD wMinorType; // ´ÎÀàÐÍ + NET_DVR_TIME struStartTime; // ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struEndTime; // ½áÊøʱ¼ä + BYTE byRes[8]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_SEARCH_LOG_PARAM, LPNET_DVR_ALARMHOST_SEARCH_LOG_PARAM; + +typedef struct tagNET_DVR_ALARMHOST_LOG_RET +{ + NET_DVR_TIME struLogTime; // ÈÕ־ʱ¼ä + BYTE sUserName[NAME_LEN]; // ²Ù×÷Óû§ + NET_DVR_IPADDR struIPAddr; // ²Ù×÷IPµØÖ· + WORD wMajorType; // Ö÷ÀàÐÍ + WORD wMinorType; // ´ÎÀàÐÍ + WORD wParam; // ²Ù×÷²ÎÊý + BYTE byRes[10]; + DWORD dwInfoLen; // ÃèÊöÐÅÏ¢³¤¶È + char sInfo[LOG_INFO_LEN]; // ÃèÊöÐÅÏ¢ +}NET_DVR_ALARMHOST_LOG_RET, *LPNET_DVR_ALARMHOST_LOG_RET; + +/*************************¶¯»·±¨¾¯¹ÜÀíÖ÷»úÈÕÖ¾²éÕÒ end***********************************************/ + +//±¨¾¯Êä³ö״̬(9000À©Õ¹) +typedef struct +{ + BYTE Output[MAX_ALARMOUT_V30]; +}NET_DVR_ALARMOUTSTATUS_V30, *LPNET_DVR_ALARMOUTSTATUS_V30; + +//±¨¾¯Êä³ö״̬ +typedef struct +{ + BYTE Output[MAX_ALARMOUT]; +}NET_DVR_ALARMOUTSTATUS, *LPNET_DVR_ALARMOUTSTATUS; + +//½»Ò×ÐÅÏ¢ +typedef struct +{ + USHORT m_Year; + USHORT m_Month; + USHORT m_Day; + USHORT m_Hour; + USHORT m_Minute; + USHORT m_Second; + BYTE DeviceName[24]; //É豸Ãû³Æ + DWORD dwChannelNumer; //ͨµÀºÅ + BYTE CardNumber[32]; //¿¨ºÅ + char cTradeType[12]; //½»Ò×ÀàÐÍ + DWORD dwCash; //½»Ò×½ð¶î +}NET_DVR_TRADEINFO, *LPNET_DVR_TRADEINFO; + + +//ATMרÓà +/****************************ATM(begin)***************************/ +#define NCR 0 +#define DIEBOLD 1 +#define WINCOR_NIXDORF 2 +#define SIEMENS 3 +#define OLIVETTI 4 +#define FUJITSU 5 +#define HITACHI 6 +#define SMI 7 +#define IBM 8 +#define BULL 9 +#define YiHua 10 +#define LiDe 11 +#define GDYT 12 +#define Mini_Banl 13 +#define GuangLi 14 +#define DongXin 15 +#define ChenTong 16 +#define NanTian 17 +#define XiaoXing 18 +#define GZYY 19 +#define QHTLT 20 +#define DRS918 21 +#define KALATEL 22 +#define NCR_2 23 +#define NXS 24 + + +/*Ö¡¸ñʽ*/ +typedef struct +{ + BYTE code[12]; /* ´úÂë */ +}NET_DVR_FRAMETYPECODE; + + +//ATM²ÎÊý +typedef struct +{ + DWORD dwSize; + char sATMIP[16]; /* ATM IPµØÖ· */ + DWORD dwATMType; /* ATMÀàÐÍ */ + DWORD dwInputMode; /* ÊäÈ뷽ʽ 0-ÍøÂçÕìÌý 1-ÍøÂç½ÓÊÕ 2-´®¿ÚÖ±½ÓÊäÈë 3-´®¿ÚATMÃüÁîÊäÈë*/ + DWORD dwFrameSignBeginPos; /* ±¨Îıê־λµÄÆðʼλÖÃ*/ + DWORD dwFrameSignLength; /* ±¨Îıê־λµÄ³¤¶È */ + BYTE byFrameSignContent[12]; /* ±¨Îıê־λµÄÄÚÈÝ */ + DWORD dwCardLengthInfoBeginPos; /* ¿¨ºÅ³¤¶ÈÐÅÏ¢µÄÆðʼλÖà */ + DWORD dwCardLengthInfoLength; /* ¿¨ºÅ³¤¶ÈÐÅÏ¢µÄ³¤¶È */ + DWORD dwCardNumberInfoBeginPos; /* ¿¨ºÅÐÅÏ¢µÄÆðʼλÖà */ + DWORD dwCardNumberInfoLength; /* ¿¨ºÅÐÅÏ¢µÄ³¤¶È */ + DWORD dwBusinessTypeBeginPos; /* ½»Ò×ÀàÐ͵ÄÆðʼλÖà */ + DWORD dwBusinessTypeLength; /* ½»Ò×ÀàÐ͵ij¤¶È */ + NET_DVR_FRAMETYPECODE frameTypeCode[10];/* ÀàÐÍ */ +}NET_DVR_FRAMEFORMAT, *LPNET_DVR_FRAMEFORMAT; + +//ATM²ÎÊý(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_IPADDR struATMIP; /* ATM IPµØÖ· */ + DWORD dwATMType; /* ATMÀàÐÍ */ + DWORD dwInputMode; /* ÊäÈ뷽ʽ 0-ÍøÂçÕìÌý 1-ÍøÂç½ÓÊÕ 2-´®¿ÚÖ±½ÓÊäÈë 3-´®¿ÚATMÃüÁîÊäÈë*/ + DWORD dwFrameSignBeginPos; /* ±¨Îıê־λµÄÆðʼλÖÃ*/ + DWORD dwFrameSignLength; /* ±¨Îıê־λµÄ³¤¶È */ + BYTE byFrameSignContent[12]; /* ±¨Îıê־λµÄÄÚÈÝ */ + DWORD dwCardLengthInfoBeginPos; /* ¿¨ºÅ³¤¶ÈÐÅÏ¢µÄÆðʼλÖà */ + DWORD dwCardLengthInfoLength; /* ¿¨ºÅ³¤¶ÈÐÅÏ¢µÄ³¤¶È */ + DWORD dwCardNumberInfoBeginPos; /* ¿¨ºÅÐÅÏ¢µÄÆðʼλÖà */ + DWORD dwCardNumberInfoLength; /* ¿¨ºÅÐÅÏ¢µÄ³¤¶È */ + DWORD dwBusinessTypeBeginPos; /* ½»Ò×ÀàÐ͵ÄÆðʼλÖà */ + DWORD dwBusinessTypeLength; /* ½»Ò×ÀàÐ͵ij¤¶È */ + NET_DVR_FRAMETYPECODE frameTypeCode[10]; /* ÀàÐÍ */ + WORD wATMPort; /* ¿¨ºÅ²¶×½¶Ë¿ÚºÅ(ÍøÂçЭÒ鷽ʽ) (±£Áô)0xffff±íʾ¸ÃÖµÎÞЧ*/ + WORD wProtocolType; /* ÍøÂçЭÒéÀàÐÍ(±£Áô) 0xffff±íʾ¸ÃÖµÎÞЧ*/ + BYTE byRes[24]; +}NET_DVR_FRAMEFORMAT_V30, *LPNET_DVR_FRAMEFORMAT_V30; + +//SDK_V31 ATM + +/*¹ýÂËÉèÖÃ*/ +typedef struct tagNET_DVR_FILTER +{ + BYTE byEnable; //0,²»ÆôÓÃ;1,ÆôÓà + BYTE byMode; //0,ASCII;1,HEX + BYTE byFrameBeginPos; // ÐèÒª¹ýÂËÄ¿±ê×Ö·û´®ÆðʼλÖà + BYTE byRes; // ±£Áô×Ö½Ú + BYTE byFilterText[16]; //¹ýÂË×Ö·û´® + BYTE byRes2[12]; // ±£Áô×Ö½Ú +}NET_DVR_FILTER, *LPNET_DVR_FILTER; + +//Êý¾Ý°ü·ÖÎö Êý¾Ý°ü±êʶ +typedef struct tagNET_DVR_IDENTIFICAT +{ + BYTE byStartMode; //Æðʼ×Ö·ûģʽ:0,ASCII;1,HEX + BYTE byEndMode; //½áÊø×Ö·ûģʽ£º0,ASCII;1,HEX + BYTE byRes[2]; //±£Áô×Ö½Ú + NET_DVR_FRAMETYPECODE struStartCode; //Êý¾Ý°üÆðʼ±êʶ×Ö·û + NET_DVR_FRAMETYPECODE struEndCode; //Êý¾Ý°ü½áÊø±êʶ×Ö·û + BYTE byRes1[12]; //±£Áô×Ö½Ú +}NET_DVR_IDENTIFICAT, *LPNET_DVR_IDENTIFICAT; + +typedef struct tagNET_DVR_PACKAGE_LOCATION/*±¨ÎÄÐÅϢλÖÃ*/ +{ + BYTE byOffsetMode; /*±¨ÎÄλÖÃÐÅϢģʽ 0,token(×Ö·û±ê־ģʽ);1,fix£¨¹Ì¶¨Ä£Ê½£©*/ + BYTE byRes1[3]; // ±£Áô×Ö½Ú + DWORD dwOffsetPos; /*modeΪ1µÄʱºòʹÓÃ,¹Ì¶¨Æ«ÒÆ´óС*/ + NET_DVR_FRAMETYPECODE struTokenCode; /*±ê־λ*/ + BYTE byMultiplierValue; /*±ê־λ¶àÉٴγöÏÖ*/ + BYTE byEternOffset; /*¸½¼Ó×Ö·ûÆ«ÒÆÁ¿*/ + BYTE byCodeMode; /*0,ASCII;1,HEX*/ + BYTE byRes2[9]; //±£Áô×Ö½Ú +}NET_DVR_PACKAGE_LOCATION, *LPNET_DVR_PACKAGE_LOCATION; + + +typedef struct tagNET_DVR_PACKAGE_LENGTH//±¨ÎÄÐÅÏ¢³¤¶È +{ + BYTE byLengthMode; //³¤¶ÈÀàÐÍ£¬0,¿É±ä³¤¶È;1,¹Ì¶¨³¤¶È;2,×ÔÖú³¤¶È(´Ó¿¨ºÅÖлñÈ¡) + BYTE byRes1[3]; // ±£Áô×Ö½Ú + DWORD dwFixLength; //modeΪ1µÄʱºòʹÓÃ,¹Ì¶¨³¤¶È´óС + DWORD dwMaxLength; //±¨ÎÄÐÅÏ¢×î´ó³¤¶È byLengthModeΪ0ʱʹÓà + DWORD dwMinLength; //±¨ÎÄÐÅÏ¢×îС³¤¶È byLengthModeΪ0ʱʹÓà + BYTE byEndMode; //¿É±ä³¤¶È ÖÕ½á·ûģʽ 0,ASCII;1,HEX + BYTE byRes2[3]; //±£Áô×Ö½Ú + NET_DVR_FRAMETYPECODE struEndCode; //¿É±ä³¤¶ÈÖÕ½á·û + DWORD dwLengthPos; //lengthModeΪ2µÄʱºòʹÓ㬿¨ºÅ³¤¶ÈÔÚ±¨ÎÄÖеÄλÖà + DWORD dwLengthLen; //lengthModeΪ2µÄʱºòʹÓ㬿¨ºÅ³¤¶ÈµÄ³¤¶È + BYTE byRes3[8]; // ±£Áô×Ö½Ú +}NET_DVR_PACKAGE_LENGTH,* LPNET_DVR_PACKAGE_LENGTH; + +typedef struct tagNET_DVR_OSD_POSITION//OSD µþ¼ÓµÄλÖà +{ + BYTE byPositionMode; //µþ¼Ó·ç¸ñ£¬¹²2ÖÖ£»0£¬²»ÏÔʾ£»1£¬×Ô¶¨Òå + BYTE byRes1[3]; // ±£Áô×Ö½Ú + DWORD dwPosX; //x×ø±ê£¬µþ¼Ó·ç¸ñΪ×Ô¶¨ÒåʱʹÓà + DWORD dwPosY; //y×ø±ê£¬µþ¼Ó·ç¸ñΪ×Ô¶¨ÒåʱʹÓà + BYTE byRes2[8]; //±£Áô×Ö½Ú +}NET_DVR_OSD_POSITION, *LPNET_DVR_OSD_POSITION; + +typedef struct tagNET_DVR_DATE_FORMAT//ÈÕÆÚÏÔʾ¸ñʽ +{ + BYTE byMonth; //Month,0.mm;1.mmm;2.mmmm + BYTE byDay; //Day,0.dd; + BYTE byYear; //Year,0.yy;1.yyyy + BYTE byDateForm; //0~5£¬ÄêÔÂÈÕµÄÅÅÁÐ×éºÏ + BYTE byRes[20]; // ±£Áô×Ö½Ú + char chSeprator[4]; //·Ö¸ô·û + char chDisplaySeprator[4]; //ÏÔʾ·Ö¸ô·û + BYTE byDisplayForm; //0~5£¬3¸öitemµÄÅÅÁÐ×éºÏ + BYTE res[27]; // ±£Áô×Ö½Ú +}NET_DVR_DATE_FORMAT, *LPNET_DVR_DATE_FORMAT; +typedef struct tagNET_DVRT_TIME_FORMAT//ʱ¼äÏÔʾ¸ñʽ +{ + BYTE byTimeForm; //1. HH MM SS;0. HH MM + BYTE byRes1[23]; // ±£Áô×Ö½Ú + BYTE byHourMode; //0,12;1,24 + BYTE byRes2[3]; // ±£Áô×Ö½Ú + char chSeprator[4]; //±¨ÎÄ·Ö¸ô·û£¬ÔÝʱûÓà + char chDisplaySeprator[4]; //ÏÔʾ·Ö¸ô·û + BYTE byDisplayForm; //0~5£¬3¸öitemµÄÅÅÁÐ×éºÏ + BYTE byRes3[3]; // ±£Áô×Ö½Ú + BYTE byDisplayHourMode; //0,12;1,24 + BYTE byRes4[19]; // ±£Áô×Ö½Ú +}NET_DVR_TIME_FORMAT, *LPNET_DVR_TIME_FORMAT; + +typedef struct tagNET_DVR_OVERLAY_CHANNEL +{ + BYTE byChannel[64];//µþ¼ÓµÄͨµÀ ÿ¸ö×Ö½Ú±êʶһ¸öͨµÀ£¬ ÀýÈçbyChannel[0]ֵΪ1¶ÔÓ¦µþ¼ÓͨµÀ1£¬0±íʾ²»µþ¼ÓͨµÀ1¡£ + DWORD dwDelayTime; //µþ¼ÓÑÓʱʱ¼ä + BYTE byEnableDelayTime; //ÊÇ·ñÆôÓõþ¼ÓÑÓʱ + BYTE byRes[11]; // ±£Áô×Ö½Ú +}NET_DVR_OVERLAY_CHANNEL, *LPNET_DVR_OVERLAY_CHANNEL; + +// ATM ±¨ÎÄÐÐΪÐÅÏ¢ +typedef struct tagNET_DVR_ATM_PACKAGE_ACTION +{ + NET_DVR_PACKAGE_LOCATION struPackageLocation;// ±¨ÎÄλÖÃÐÅÏ¢ + NET_DVR_OSD_POSITION struOsdPosition; // OSD µþ¼ÓλÖà + NET_DVR_FRAMETYPECODE struActionCode; //½»Ò×ÀàÐÍÐÐΪÂë + NET_DVR_FRAMETYPECODE struPreCode; //µþ¼Ó×Ö·ûÇ°µÄ×Ö·û + BYTE byActionCodeMode; //½»Ò×ÀàÐÍÐÐΪÂëģʽ0,ASCII;1,HEX + BYTE byRes[7]; // ±£Áô×Ö½Ú +}NET_DVR_ATM_PACKAGE_ACTION, *LPNET_DVR_ATM_PACKAGE_ACTION; + +// ATM ±¨ÎÄDATAÐÅÏ¢ +typedef struct tagNET_DVR_ATM_PACKAGE_DATE +{ + NET_DVR_PACKAGE_LOCATION struPackageLocation;// ÈÕÆÚÔÚ±¨ÎÄÖеÄλÖÃÐÅÏ¢ + NET_DVR_DATE_FORMAT struDateForm; //ÈÕÆÚÏÔʾ¸ñʽ + NET_DVR_OSD_POSITION struOsdPosition; // OSDµþ¼ÓλÖÃÐÅÏ¢ + BYTE res[8]; // ±£Áô×Ö½Ú +}NET_DVR_ATM_PACKAGE_DATE, *LPNET_DVR_ATM_PACKAGE_DATE; + + +//ATM±¨ÎÄʱ¼äÐÅÏ¢ +typedef struct tagNET_DVR_ATM_PACKAGE_TIME +{ + NET_DVR_PACKAGE_LOCATION location; // ʱ¼äÔÚ±¨ÎÄÖеÄλÖÃÐÅÏ¢ + NET_DVR_TIME_FORMAT struTimeForm; // ʱ¼äÏÔʾ¸ñʽ + NET_DVR_OSD_POSITION struOsdPosition;// OSD µþ¼ÓλÖÃÐÅÏ¢ + BYTE byRes[8]; // ±£Áô×Ö½Ú +}NET_DVR_ATM_PACKAGE_TIME, *LPNET_DVR_ATM_PACKAGE_TIME; + + +// ATM ÆäËû±¨ÎÄÐÅÏ¢£¨¿¨ºÅ£¬½»Ò×½ð¶î£¬½»Ò×ÐòºÅ£© +typedef struct tagNET_DVR_ATM_PACKAGE_OTHERS +{ + NET_DVR_PACKAGE_LOCATION struPackageLocation; //±¨ÎÄλÖÃÐÅÏ¢ + NET_DVR_PACKAGE_LENGTH struPackageLength; //³¤¶ÈÐÅÏ¢ + NET_DVR_OSD_POSITION struOsdPosition; // OSDµþ¼ÓλÖÃÐÅÏ¢ + NET_DVR_FRAMETYPECODE struPreCode; //µþ¼Ó×Ö·ûÇ°µÄ×Ö·û + BYTE res[8]; //±£Áô×Ö½Ú +}NET_DVR_ATM_PACKAGE_OTHERS, *LPNET_DVR_ATM_PACKAGE_OTHERS; + + +//Óû§×Ô¶¨ÒåЭÒé +typedef struct tagNET_DVR_ATM_USER_DEFINE_PROTOCOL +{ + NET_DVR_IDENTIFICAT struIdentification; //±¨ÎıêÖ¾ + NET_DVR_FILTER struFilter; //Êý¾Ý°ü¹ýÂËÉèÖà + NET_DVR_ATM_PACKAGE_OTHERS struCardNoPara; //µþ¼Ó¿¨ºÅÉèÖà + NET_DVR_ATM_PACKAGE_ACTION struTradeActionPara[MAX_ACTION_TYPE]; //µþ¼Ó½»Ò×ÐÐΪÉèÖà 0-9 ÒÀ´Î¶ÔÓ¦InCard OutCard OverLay SetTime GetStatus Query WithDraw Deposit ChanPass Transfer + NET_DVR_ATM_PACKAGE_OTHERS struAmountPara; //µþ¼Ó½»Ò×½ð¶îÉèÖà + NET_DVR_ATM_PACKAGE_OTHERS struSerialNoPara; //µþ¼Ó½»Ò×ÐòºÅÉèÖà + NET_DVR_OVERLAY_CHANNEL struOverlayChan; //µþ¼ÓͨµÀÉèÖà + NET_DVR_ATM_PACKAGE_DATE struRes1; //µþ¼ÓÈÕÆÚ£¬±£Áô + NET_DVR_ATM_PACKAGE_TIME struRes2; //µþ¼Óʱ¼ä£¬±£Áô + BYTE byRes3[124]; //±£Áô +}NET_DVR_ATM_USER_DEFINE_PROTOCOL, *LPNET_DVR_ATM_USER_DEFINE_PROTOCOL; + +typedef struct tagNET_DVR_ATM_FRAMEFORMAT_V30 +{ + DWORD dwSize; //½á¹¹´óС + BYTE byEnable; /*ÊÇ·ñÆôÓÃ0,²»ÆôÓÃ;1,ÆôÓÃ*/ + BYTE byInputMode; /**ÊäÈ뷽ʽ:0-ÍøÂç¼àÌý¡¢1ÍøÂçЭÒé¡¢2-´®¿Ú¼àÌý¡¢3-´®¿ÚЭÒé*/ + BYTE byRes1[34]; //±£Áô×Ö½Ú + NET_DVR_IPADDR struAtmIp; /*ATM »úIP ÍøÂç¼àÌýʱʹÓà */ + WORD wAtmPort; /* ÍøÂçЭÒ鷽ʽʱÊÇʹÓÃ*/ + BYTE byRes2[2]; // ±£Áô×Ö½Ú + DWORD dwAtmType; /*ATMЭÒéÀàÐÍ£¬´ÓNET_DVR_ATM_PROTOCOL½á¹¹ÖлñÈ¡£¬Èç¹ûÀàÐÍΪ×Ô¶¨ÒåʱʹÓÃÓû§×Ô¶¨ÒåЭÒé*/ + NET_DVR_ATM_USER_DEFINE_PROTOCOL struAtmUserDefineProtocol; //Óû§×Ô¶¨ÒåЭÒ飬µ±ATMÀàÐÍΪ×Ô¶¨Ê±ÐèҪʹÓøö¨Òå + BYTE byRes3[8]; +}NET_DVR_ATM_FRAMEFORMAT_V30, *LPNET_DVR_ATM_FRAMEFORMAT_V30; + +//ATMЭÒéÀàÐÍ +typedef enum _ATM_PROTO_TYPE_ +{ + ATM_PROTO_NCR = 0,//NCR + ATM_PROTO_DIEBOLD = 1,//DIEBOLD + ATM_PROTO_WINCOR_NIXDORF = 2,//WINCOR-NIXDORF + ATM_PROTO_SIEMENS = 4,//SIEMENS + ATM_PROTO_OLIVETTI = 5,//OLIVETTI + ATM_PROTO_FUJITSU = 6,//FUJITSU + ATM_PROTO_HITACHI = 7,//HITACHI + ATM_PROTO_SMI = 8,//SMI + ATM_PROTO_BULL = 9,//BULL + ATM_PROTO_YIHUA = 10,//âù»¯ + ATM_PROTO_LIDE = 11,//Á¢µÂ + ATM_PROTO_GDYT = 12,//¹ãµçÔËͨ + ATM_PROTO_MINI_BANL = 13,//Mini-Banl + ATM_PROTO_GUANGLI = 14,//¹ãÀû + ATM_PROTO_DONGXIN = 15,//¶«ÐÅ + ATM_PROTO_CHENTONG = 16,//³½Í¨ + ATM_PROTO_NANTIAN = 17,//ÄÏÌì + ATM_PROTO_XIAOXING = 18,//ÏþÐÇ + ATM_PROTO_GZYY = 19,//¹ãÖÝÓùÒø + ATM_PROTO_QHTLT = 20,//ÇàºþÌ©ÀûÌØ + ATM_PROTO_DRS918 = 21,//DRS918 + ATM_PROTO_KALATEL = 22,//KALATEL + ATM_PROTO_NCR_2 = 23,//NCR_2 + ATM_PROTO_NXS = 24,//NXS + ATM_PROTO_ICBC = 25,//¹¤ÉÌÒøÐÐ + ATM_PROTO_PSBC = 26,//ÖйúÓÊÕþ´¢ÐîÒøÐÐ + ATM_PROTO_CUSTOM = 1025//×Ô¶¨Òå +}ATM_PROTO_TYPE; + +typedef struct tagNET_DVR_ATM_PROTO_TYPE +{ + DWORD dwAtmType; //ATMЭÒéÀàÐÍ£¬Í¬Ê±×÷ΪË÷ÒýÐòºÅ ATM ÅäÖÃÖеÄdwAtmType ×Ô¶¨ÒåʱΪ1025 + char chDesc[ATM_DESC_LEN]; //ATMЭÒé¼òµ¥ÃèÊö +}NET_DVR_ATM_PROTO_TYPE, *LPNET_DVR_ATM_PROTO_TYPE; //ЭÒéÐÅÏ¢Êý¾Ý½á¹¹ + +typedef struct tagNET_DVR_ATM_PROTO_LIST //ATM ЭÒéÁбí +{ + DWORD dwAtmProtoNum; // ЭÒéÁбíµÄ¸öÊý + NET_DVR_ATM_PROTO_TYPE struAtmProtoType[MAX_ATM_PROTOCOL_NUM]; //ЭÒéÁбíÐÅÏ¢ +}NET_DVR_ATM_PROTO_LIST, *LPNET_DVR_ATM_PROTO_LIST; + +typedef struct tagNET_DVR_ATM_PROTOCOL +{ + DWORD dwSize; + NET_DVR_ATM_PROTO_LIST struNetListenList; // ÍøÂç¼àÌýЭÒéÃèÊö + NET_DVR_ATM_PROTO_LIST struSerialListenList; //´®¿Ú¼àÌýЭÒéÃèÊö + NET_DVR_ATM_PROTO_LIST struNetProtoList; //ÍøÂçЭÒéÃèÊö + NET_DVR_ATM_PROTO_LIST struSerialProtoList; //´®¿ÚЭÒéÃèÊö + NET_DVR_ATM_PROTO_TYPE struCustomProto; //×Ô¶¨ÒåЭÒé +}NET_DVR_ATM_PROTOCOL, *LPNET_DVR_ATM_PROTOCOL; +// SDK_V31 + +/*****************************DS-6001D/F(begin)***************************/ +//DS-6001D Decoder +typedef struct +{ + BYTE byEncoderIP[16]; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷IP + BYTE byEncoderUser[16]; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄÓû§Ãû + BYTE byEncoderPasswd[16]; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄÃÜÂë + BYTE bySendMode; //½âÂëÉ豸Á¬½Ó·þÎñÆ÷µÄÁ¬½Óģʽ + BYTE byEncoderChannel; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄͨµÀºÅ + WORD wEncoderPort; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄ¶Ë¿ÚºÅ + BYTE reservedData[4]; //±£Áô +}NET_DVR_DECODERINFO, *LPNET_DVR_DECODERINFO; + +typedef struct +{ + BYTE byEncoderIP[16]; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷IP + BYTE byEncoderUser[16]; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄÓû§Ãû + BYTE byEncoderPasswd[16]; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄÃÜÂë + BYTE byEncoderChannel; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄͨµÀºÅ + BYTE bySendMode; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄÁ¬½Óģʽ + WORD wEncoderPort; //½âÂëÉ豸Á¬½ÓµÄ·þÎñÆ÷µÄ¶Ë¿ÚºÅ + DWORD dwConnectState; //½âÂëÉ豸Á¬½Ó·þÎñÆ÷µÄ״̬ + BYTE reservedData[4]; //±£Áô +}NET_DVR_DECODERSTATE, *LPNET_DVR_DECODERSTATE; + +/*½âÂëÉ豸¿ØÖÆÂ붨Òå*/ +#define NET_DEC_STARTDEC 1 +#define NET_DEC_STOPDEC 2 +#define NET_DEC_STOPCYCLE 3 +#define NET_DEC_CONTINUECYCLE 4 +/*Á¬½ÓµÄͨµÀÅäÖÃ*/ +typedef struct +{ + char sDVRIP[16]; /* DVR IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + BYTE byChannel; /* ͨµÀºÅ */ + BYTE byLinkMode; /* Á¬½Óģʽ */ + BYTE byLinkType; /* Á¬½ÓÀàÐÍ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ */ +}NET_DVR_DECCHANINFO, *LPNET_DVR_DECCHANINFO; + +/*ÿ¸ö½âÂëͨµÀµÄÅäÖÃ*/ +typedef struct +{ + BYTE byPoolChans; /*ÿ·½âÂëͨµÀÉϵÄÑ­»·Í¨µÀÊýÁ¿, ×î¶à4ͨµÀ 0±íʾûÓнâÂë*/ + NET_DVR_DECCHANINFO struchanConInfo[MAX_DECPOOLNUM]; + BYTE byEnablePoll; /*ÊÇ·ñÂÖѲ 0-·ñ 1-ÊÇ*/ + BYTE byPoolTime; /*ÂÖѲʱ¼ä 0-±£Áô 1-10Ãë 2-15Ãë 3-20Ãë 4-30Ãë 5-45Ãë 6-1·ÖÖÓ 7-2·ÖÖÓ 8-5·ÖÖÓ */ +}NET_DVR_DECINFO, *LPNET_DVR_DECINFO; + +/*Õû¸öÉ豸½âÂëÅäÖÃ*/ +typedef struct +{ + DWORD dwSize; + DWORD dwDecChanNum; /*½âÂëͨµÀµÄÊýÁ¿*/ + NET_DVR_DECINFO struDecInfo[MAX_DECNUM]; +}NET_DVR_DECCFG, *LPNET_DVR_DECCFG; + +//2005-08-01 +/* ½âÂëÉ豸͸Ã÷ͨµÀÉèÖà */ +typedef struct +{ + DWORD dwEnableTransPort; /* ÊÇ·ñÆô¶¯Í¸Ã÷ͨµÀ 0£­²»ÆôÓà 1£­ÆôÓÃ*/ + char sDecoderIP[16]; /* DVR IPµØÖ· */ + WORD wDecoderPort; /* ¶Ë¿ÚºÅ */ + WORD wDVRTransPort; /* ÅäÖÃÇ°¶ËDVRÊÇ´Ó485/232Êä³ö£¬1±íʾ232´®¿Ú,2±íʾ485´®¿Ú */ + char cReserve[4]; +}NET_DVR_PORTINFO, *LPNET_DVR_PORTINFO; + +typedef struct +{ + DWORD dwSize; + NET_DVR_PORTINFO struTransPortInfo[MAX_TRANSPARENTNUM]; /* Êý×é0±íʾ232 Êý×é1±íʾ485 */ +}NET_DVR_PORTCFG, *LPNET_DVR_PORTCFG; + +/* ¿ØÖÆÍøÂçÎļþ»Ø·Å */ +typedef struct +{ + DWORD dwSize; + char sDecoderIP[16]; /* DVR IPµØÖ· */ + WORD wDecoderPort; /* ¶Ë¿ÚºÅ */ + WORD wLoadMode; /* »Ø·ÅÏÂÔØģʽ 1£­°´Ãû×Ö 2£­°´Ê±¼ä */ + union + { + BYTE byFile[100]; /* »Ø·ÅµÄÎļþÃû */ + struct + { + DWORD dwChannel; + BYTE sUserName[NAME_LEN]; /*ÇëÇóÊÓƵÓû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + NET_DVR_TIME struStartTime; /* °´Ê±¼ä»Ø·ÅµÄ¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME struStopTime; /* °´Ê±¼ä»Ø·ÅµÄ½áÊøʱ¼ä */ + }bytime; + }mode_size; +}NET_DVR_PLAYREMOTEFILE, *LPNET_DVR_PLAYREMOTEFILE; + +/*µ±Ç°É豸½âÂëÁ¬½Ó״̬*/ +typedef struct +{ + DWORD dwWorkType; /*¹¤×÷·½Ê½£º1£ºÂÖѲ¡¢2£º¶¯Ì¬Á¬½Ó½âÂë¡¢3£ºÎļþ»Ø·ÅÏÂÔØ 4£º°´Ê±¼ä»Ø·ÅÏÂÔØ*/ + char sDVRIP[16]; /*Á¬½ÓµÄÉ豸ip*/ + WORD wDVRPort; /*Á¬½Ó¶Ë¿ÚºÅ*/ + BYTE byChannel; /* ͨµÀºÅ */ + BYTE byLinkMode; /* Á¬½Óģʽ */ + DWORD dwLinkType; /*Á¬½ÓÀàÐÍ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷*/ + union + { + struct + { + BYTE sUserName[NAME_LEN]; /*ÇëÇóÊÓƵÓû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + char cReserve[52]; + }userInfo; + struct + { + BYTE fileName[100]; + }fileInfo; + struct + { + DWORD dwChannel; + BYTE sUserName[NAME_LEN]; /*ÇëÇóÊÓƵÓû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + NET_DVR_TIME struStartTime; /* °´Ê±¼ä»Ø·ÅµÄ¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME struStopTime; /* °´Ê±¼ä»Ø·ÅµÄ½áÊøʱ¼ä */ + }timeInfo; + }objectInfo; +}NET_DVR_DECCHANSTATUS, *LPNET_DVR_DECCHANSTATUS; + +typedef struct +{ + DWORD dwSize; + NET_DVR_DECCHANSTATUS struDecState[MAX_DECNUM]; +}NET_DVR_DECSTATUS, *LPNET_DVR_DECSTATUS; +/*****************************DS-6001D/F(end)***************************/ + +//µ¥×Ö·û²ÎÊý(×ӽṹ) +typedef struct +{ + WORD wShowString; // Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾ×Ö·û,0-²»ÏÔʾ,1-ÏÔʾ Õû¸öÔ¤ÀÀ»­Ãæ´óС704*576,µ¥¸ö×Ö·ûµÄ´óСΪ32*32 + WORD wStringSize; /* ¸ÃÐÐ×Ö·ûµÄ³¤¶È£¬²»ÄÜ´óÓÚ44¸ö×Ö·û */ + WORD wShowStringTopLeftX; /* ×Ö·ûÏÔʾλÖõÄx×ø±ê */ + WORD wShowStringTopLeftY; /* ×Ö·ûÃû³ÆÏÔʾλÖõÄy×ø±ê */ + char sString[44]; /* ÒªÏÔʾµÄ×Ö·ûÄÚÈÝ */ +}NET_DVR_SHOWSTRINGINFO, *LPNET_DVR_SHOWSTRINGINFO; + +//µþ¼Ó×Ö·û(9000À©Õ¹) +typedef struct +{ + DWORD dwSize; + NET_DVR_SHOWSTRINGINFO struStringInfo[MAX_STRINGNUM_V30]; /* ÒªÏÔʾµÄ×Ö·ûÄÚÈÝ */ +}NET_DVR_SHOWSTRING_V30, *LPNET_DVR_SHOWSTRING_V30; + +//µþ¼Ó×Ö·ûÀ©Õ¹(8Ìõ×Ö·û) +typedef struct +{ + DWORD dwSize; + NET_DVR_SHOWSTRINGINFO struStringInfo[MAX_STRINGNUM_EX]; /* ÒªÏÔʾµÄ×Ö·ûÄÚÈÝ */ +}NET_DVR_SHOWSTRING_EX, *LPNET_DVR_SHOWSTRING_EX; + +//µþ¼Ó×Ö·û +typedef struct +{ + DWORD dwSize; + NET_DVR_SHOWSTRINGINFO struStringInfo[MAX_STRINGNUM]; /* ÒªÏÔʾµÄ×Ö·ûÄÚÈÝ */ +}NET_DVR_SHOWSTRING, *LPNET_DVR_SHOWSTRING; + +/****************************DS9000ÐÂÔö½á¹¹(begin)******************************/ +/* +EMAIL²ÎÊý½á¹¹ +*/ +typedef struct +{ + DWORD dwSize; + BYTE sAccount[NAME_LEN]; /* Õ˺Å*/ + BYTE sPassword[MAX_EMAIL_PWD_LEN]; /*ÃÜÂë */ + struct + { + BYTE sName[NAME_LEN]; /* ·¢¼þÈËÐÕÃû */ + BYTE sAddress[MAX_EMAIL_ADDR_LEN]; /* ·¢¼þÈ˵ØÖ· */ + }struSender; + BYTE sSmtpServer[MAX_EMAIL_ADDR_LEN]; /* smtp·þÎñÆ÷ */ + BYTE sPop3Server[MAX_EMAIL_ADDR_LEN]; /* pop3·þÎñÆ÷ */ + struct + { + BYTE sName[NAME_LEN]; /* ÊÕ¼þÈËÐÕÃû */ + BYTE sAddress[MAX_EMAIL_ADDR_LEN]; /* ÊÕ¼þÈ˵ØÖ· */ + }struReceiver[3]; /* ×î¶à¿ÉÒÔÉèÖÃ3¸öÊÕ¼þÈË */ + BYTE byAttachment; /* ÊÇ·ñ´ø¸½¼þ */ + BYTE bySmtpServerVerify; /* ·¢ËÍ·þÎñÆ÷ÒªÇóÉí·ÝÑéÖ¤ */ + BYTE byMailInterval; /* mail interval */ + BYTE byEnableSSL; //sslÊÇ·ñÆôÓÃ9000_1.1 + WORD wSmtpPort; //gmailµÄ465£¬ÆÕͨµÄΪ25 + BYTE byEnableTLS; /*TLSÊÇ·ñÆôÓÃ*/ + BYTE byStartTLS; /*ÊÇ·ñÆôÓÃStartTLS*/ + BYTE byRes[72]; /*±£Áô*/ +} NET_DVR_EMAILCFG_V30, *LPNET_DVR_EMAILCFG_V30; + +/* +DVRʵÏÖѲº½Êý¾Ý½á¹¹ +*/ +typedef struct +{ + DWORD dwSize; + BYTE byPresetNo[CRUISE_MAX_PRESET_NUMS]; /* Ô¤ÖõãºÅ */ + BYTE byCruiseSpeed[CRUISE_MAX_PRESET_NUMS]; /* Ѳº½ËÙ¶È */ + WORD wDwellTime[CRUISE_MAX_PRESET_NUMS]; /* Í£Áôʱ¼ä */ + BYTE byEnableThisCruise; /* ÊÇ·ñÆôÓà */ + BYTE res[15]; +}NET_DVR_CRUISE_PARA, *LPNET_DVR_CRUISE_PARA; +/****************************DS9000ÐÂÔö½á¹¹(end)******************************/ + +//ʱ¼äµã +typedef struct +{ + DWORD dwMonth; //Ô 0-11±íʾ1-12¸öÔ + DWORD dwWeekNo; //µÚ¼¸ÖÜ 0£­µÚ1ÖÜ 1£­µÚ2ÖÜ 2£­µÚ3ÖÜ 3£­µÚ4ÖÜ 4£­×îºóÒ»ÖÜ + DWORD dwWeekDate; //ÐÇÆÚ¼¸ 0£­ÐÇÆÚÈÕ 1£­ÐÇÆÚÒ» 2£­ÐÇÆÚ¶þ 3£­ÐÇÆÚÈý 4£­ÐÇÆÚËÄ 5£­ÐÇÆÚÎå 6£­ÐÇÆÚÁù + DWORD dwHour; //Сʱ ¿ªÊ¼Ê±¼ä0£­23 ½áÊøʱ¼ä1£­23 + DWORD dwMin; //·Ö 0£­59 +}NET_DVR_TIMEPOINT; + +//ÏÄÁîʱ²ÎÊý +typedef struct +{ + DWORD dwSize; + DWORD dwZoneIndex; //Ó¦ÓòãÈí¼þʹÓÃNET_DVR_NTPPARA ÖеÄcTimeDifferenceH »òcTimeDifferenceM À´ÉèÖÃʱÇø£¬´Ë´¦ÓûñÈ¡µÄÖµÌî³ä£¬²»¶ÔÓû§ÌṩÊäÈë±à¼­¿ò + BYTE byRes1[12]; //±£Áô + DWORD dwEnableDST; //ÊÇ·ñÆôÓÃÏÄʱÖÆ 0£­²»ÆôÓà 1£­ÆôÓà + BYTE byDSTBias; //ÏÄÁîʱƫÒÆÖµ£¬30min, 60min, 90min, 120min, ÒÔ·ÖÖӼƣ¬´«µÝԭʼÊýÖµ + BYTE byRes2[3]; + NET_DVR_TIMEPOINT struBeginPoint; //ÏÄʱÖÆ¿ªÊ¼Ê±¼ä + NET_DVR_TIMEPOINT struEndPoint; //ÏÄʱÖÆֹͣʱ¼ä +}NET_DVR_ZONEANDDST, *LPNET_DVR_ZONEANDDST; + +//ͼƬÖÊÁ¿ +typedef struct +{ +/*×¢Ò⣺µ±Í¼ÏñѹËõ·Ö±æÂÊΪVGAʱ£¬Ö§³Ö0=CIF, 1=QCIF, 2=D1ץͼ£¬ +µ±·Ö±æÂÊΪ3=UXGA(1600x1200), 4=SVGA(800x600), 5=HD720p(1280x720),6=VGA,7=XVGA, 8=HD900p + ½öÖ§³Öµ±Ç°·Ö±æÂʵÄץͼ*/ + + /* ¿ÉÒÔͨ¹ýÄÜÁ¦¼¯»ñÈ¡ + 0-CIF£¬ 1-QCIF£¬ 2-D1£¬ 3-UXGA(1600x1200), 4-SVGA(800x600),5-HD720p(1280x720)£¬ + 6-VGA£¬ 7-XVGA£¬ 8-HD900p£¬ 9-HD1080£¬ 10-2560*1920£¬ + 11-1600*304£¬ 12-2048*1536£¬ 13-2448*2048, 14-2448*1200£¬ 15-2448*800£¬ + 16-XGA(1024*768), 17-SXGA(1280*1024),18-WD1(960*576/960*480), 19-1080i, 20-576*576£¬ + 21-1536*1536, 22-1920*1920, 23-320*240, 24-720*720, 25-1024*768, + 26-1280*1280, 27-1600*600, 28-2048*768, 29-160*120, 55-3072*2048, + 64-3840*2160, 70-2560*1440, 75-336*256, + 78-384*256, 79-384*216, 80-320*256, 82-320*192, 83-512*384, + 127-480*272, 128-512*272, 161-288*320, 162-144*176, 163-480*640, + 164-240*320, 165-120*160, 166-576*720, 167-720*1280, 168-576*960, + 180-180*240, 181-360*480, 182-540*720, 183-720*960, 184-960*1280, + 185-1080*1440, 215-1080*720(ռλ£¬Î´²âÊÔ), 216-360x640(ռλ£¬Î´²âÊÔ),245-576*704(ռλ£¬Î´²âÊÔ) + 500-384*288, + 0xff-Auto(ʹÓõ±Ç°ÂëÁ÷·Ö±æÂÊ) + */ + WORD wPicSize; + WORD wPicQuality; /* ͼƬÖÊÁ¿ÏµÊý 0-×îºÃ 1-½ÏºÃ 2-Ò»°ã */ +}NET_DVR_JPEGPARA, *LPNET_DVR_JPEGPARA; + +//ÇøÓò¿ò½á¹¹ +typedef struct tagNET_VCA_RECT +{ + float fX; //±ß½ç¿ò×óÉϽǵãµÄXÖá×ø±ê, 0.000~1 + float fY; //±ß½ç¿ò×óÉϽǵãµÄYÖá×ø±ê, 0.000~1 + float fWidth; //±ß½ç¿òµÄ¿í¶È, 0.000~1 + float fHeight; //±ß½ç¿òµÄ¸ß¶È, 0.000~1 +}NET_VCA_RECT, *LPNET_VCA_RECT; + +typedef struct tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + DWORD dwJpegPicLen;//JpegͼƬ³¤¶È + char *pJpegPicBuff;//JpegͼƬָÕë + DWORD dwJpegPicWidth; // ͼÏñ¿í¶È + DWORD dwJpegPicHeight; //ͼÏñ¸ß¶È + DWORD dwP2PDataLen;//È«ÆÁ²âÎÂÊý¾Ý³¤¶È + char *pP2PDataBuff; //È«ÆÁ²âÎÂÊý¾ÝÖ¸Õë + BYTE byIsFreezedata;//ÊÇ·ñÊý¾Ý¶³½á 0-·ñ 1-ÊÇ + BYTE byRes1[3]; + DWORD dwVisiblePicLen;//¿É¼û¹âͼƬ³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char *pVisiblePicBuff;//¿É¼û¹âͼƬָÕë +#else + char *pVisiblePicBuff;//¿É¼û¹âͼƬָÕë + BYTE byRes2[4]; +#endif + NET_VCA_RECT struThermalValidRect;//ÈȳÉÏñÓÐЧÇøÓò + NET_VCA_RECT struVisibleValidRect;//¿É¼û¹âÓÐЧÇøÓò + BYTE byRes[208]; +}NET_DVR_JPEGPICTURE_WITH_APPENDDATA, *LPNET_DVR_JPEGPICTURE_WITH_APPENDDATA; + +//ץͼ²ÎÊý +typedef struct +{ + NET_DVR_JPEGPARA struParam; + BYTE byPicFormat; // É豸ץͼͼƬ¸ñʽ 0-Jpeg + /* + É豸ץͼÀàÐÍ: + 0-É豸ͨÓÃץͼ£¬1-Ó¥Ñ۱궨ͼƬ£¨FPJAÖØÆôˢлñȡͼƬ ×³¬Ê±3min£©,2-´ÓFlashÖлñÈ¡ÒÑ´æÔÚÓ¥Ñ۱궨ͼƬ, + 3-»ñÈ¡ÓãÑÛÏà»úÔ²ÐÎͼƬ,4-רÓøßÇåץͼ,5-»ñÈ¡ÓãÑÛÏà»ú±Ú×°È«¾°Õ¹¿ªÍ¼£¨¾ØÐÎͼ£© + */ + BYTE byCapturePicType; + BYTE bySceneID; //0-²»Ö§³Ö£¬1-³¡¾°1£¬2-³¡¾°2 ¡­¡­ + BYTE byRes[253]; +}NET_DVR_PICPARAM_V50, *LPNET_DVR_PICPARAM_V50; +/* aux video out parameter */ +//¸¨ÖúÊä³ö²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + DWORD dwAlarmOutChan; /* Ñ¡Ôñ±¨¾¯µ¯³ö´ó±¨¾¯Í¨µÀÇл»Ê±¼ä£º1»­ÃæµÄÊä³öͨµÀ: 0:Ö÷Êä³ö/1:¸¨1/2:¸¨2/3:¸¨3/4:¸¨4 */ + DWORD dwAlarmChanSwitchTime; /* :1Ãë - 10:10Ãë */ + DWORD dwAuxSwitchTime[MAX_AUXOUT]; /* ¸¨ÖúÊä³öÇл»Ê±¼ä: 0-²»Çл»,1-5s,2-10s,3-20s,4-30s,5-60s,6-120s,7-300s */ + BYTE byAuxOrder[MAX_AUXOUT][MAX_WINDOW]; /* ¸¨ÖúÊä³öÔ¤ÀÀ˳Ðò, 0xff±íʾÏàÓ¦µÄ´°¿Ú²»Ô¤ÀÀ */ +}NET_DVR_AUXOUTCFG, *LPNET_DVR_AUXOUTCFG; + + +//ntp +typedef struct +{ + BYTE sNTPServer[64]; /* Domain Name or IP addr of NTP server */ + WORD wInterval; /* adjust time interval(hours) */ + BYTE byEnableNTP; /* enable NPT client 0-no£¬1-yes*/ + signed char cTimeDifferenceH; /* Óë¹ú¼Ê±ê׼ʱ¼äµÄ СʱƫÒÆ-12 ... +13 */ + signed char cTimeDifferenceM;/* Óë¹ú¼Ê±ê׼ʱ¼äµÄ ·ÖÖÓÆ«ÒÆ0, 30, 45*/ + BYTE res1; + WORD wNtpPort; /* ntp server port 9000ÐÂÔö É豸ĬÈÏΪ123*/ + BYTE res2[8]; +}NET_DVR_NTPPARA, *LPNET_DVR_NTPPARA; + +//ddns +typedef struct +{ + BYTE sUsername[NAME_LEN]; /* DDNSÕ˺ÅÓû§Ãû/ÃÜÂë */ + BYTE sPassword[PASSWD_LEN]; + BYTE sDomainName[64]; /* ÓòÃû */ + BYTE byEnableDDNS; /*ÊÇ·ñÓ¦Óà 0-·ñ£¬1-ÊÇ*/ + BYTE res[15]; +}NET_DVR_DDNSPARA, *LPNET_DVR_DDNSPARA; + + +typedef struct +{ + BYTE byHostIndex; /* 0-˽ÓÐDDNS 1£­Dyndns 2£­PeanutHull(»¨Éú¿Ç)*/ + BYTE byEnableDDNS; /*ÊÇ·ñÓ¦ÓÃDDNS 0-·ñ£¬1-ÊÇ*/ + WORD wDDNSPort; /* DDNS¶Ë¿ÚºÅ */ + BYTE sUsername[NAME_LEN]; /* DDNSÓû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /* DDNSÃÜÂë */ + BYTE sDomainName[MAX_DOMAIN_NAME]; /* É豸Å䱸µÄÓòÃûµØÖ· */ + BYTE sServerName[MAX_DOMAIN_NAME]; /* DDNS ¶ÔÓ¦µÄ·þÎñÆ÷µØÖ·£¬¿ÉÒÔÊÇIPµØÖ·»òÓòÃû */ + BYTE byRes[16]; +}NET_DVR_DDNSPARA_EX, *LPNET_DVR_DDNSPARA_EX; + +//9000À©Õ¹ +typedef struct +{ + BYTE byEnableDDNS; + BYTE byHostIndex;/*0-IPServer 1£­Dyndns 2£­PeanutHull(»¨Éú¿Ç)£¬3- NO-IP, 4- hiDDNS*/ + BYTE byRes1[2]; + struct + { + BYTE sUsername[NAME_LEN]; /* DDNSÕ˺ÅÓû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + BYTE sDomainName[MAX_DOMAIN_NAME]; /* É豸Å䱸µÄÓòÃûµØÖ· */ + BYTE sServerName[MAX_DOMAIN_NAME]; /* DDNSЭÒé¶ÔÓ¦µÄ·þÎñÆ÷µØÖ·£¬¿ÉÒÔÊÇIPµØÖ·»òÓòÃû */ + WORD wDDNSPort; /* ¶Ë¿ÚºÅ */ + WORD wCountryID; //¹ú¼Ò±àºÅ£¬½öÔÚbyHostIndex = 4ʱÓÐЧ£¬0±íʾĬÈÏ + BYTE byStatus; /* DDNSÔËÐÐ״̬£¨Ö»¶Á£©£¬ + 0-ÎÞÒâÒå + 1-Á¬½Ó·þÎñÆ÷ʧ°Ü(connServerfail)¡¢ + 2-½âÎö·þÎñÆ÷ÏûϢʧ°Ü(solveServerMesFail)¡¢ + 3-Á¬½ÓÐÄÌø·þÎñÆ÷ʧ°Ü(connHeartSrvfail)¡¢ + 4-½âÎöÐÄÌø·þÎñÆ÷ÏûϢʧ°Ü(solveHeartSrvMesFail)¡¢ + 5-Á¬½ÓÓòÃû·þÎñÆ÷ʧ°Ü(connHostSrvfail)¡¢ + 6-½âÎöÓòÃû·þÎñÆ÷ÏûϢʧ°Ü(solveHostSrvMesFail)¡¢ + 7-DDNS״̬Õý³£(updateSuccess)¡¢ + 8-δÆôÓÃ(disable)¡¢ + 9-×¢²áÓòÃû³É¹¦(registHostSuccess)¡¢ + 10-DNS·þÎñÆ÷ÅäÖôíÎó(DNSSrvError)¡¢ + 11-ÓòÃû±»Õ¼ÓÃ(DomainConflict)¡¢ + 12-±ðÃû(ÓòÃû)²»ºÏ·¨(invalidAlias)¡¢ + 13-¼øȨʧ°Ü(authenticationFail) + 14-×¢²á·þÎñÆ÷´íÎó(registServerError) + 15-×¢²áʧ°Ü(registFail) + */ + BYTE byRes[7]; + } struDDNS[MAX_DDNS_NUMS]; + BYTE byRes2[16]; +}NET_DVR_DDNSPARA_V30, *LPNET_DVR_DDNSPARA_V30; + +//email +typedef struct +{ + BYTE sUsername[64]; /* ÓʼþÕ˺Å/ÃÜÂë */ + BYTE sPassword[64]; + BYTE sSmtpServer[64]; + BYTE sPop3Server[64]; + BYTE sMailAddr[64]; /* email */ + BYTE sEventMailAddr1[64]; /* ÉÏ´«±¨¾¯/Òì³£µÈµÄemail */ + BYTE sEventMailAddr2[64]; + BYTE res[16]; +}NET_DVR_EMAILPARA, *LPNET_DVR_EMAILPARA; + +//ÍøÂç²ÎÊýÅäÖà +typedef struct +{ + DWORD dwSize; + char sDNSIp[16]; /* DNS·þÎñÆ÷µØÖ· */ + NET_DVR_NTPPARA struNtpClientParam; /* NTP²ÎÊý */ + NET_DVR_DDNSPARA struDDNSClientParam; /* DDNS²ÎÊý */ + BYTE res[464]; /* ±£Áô */ +}NET_DVR_NETAPPCFG, *LPNET_DVR_NETAPPCFG; + +//nfs½á¹¹ÅäÖà +typedef struct +{ + char sNfsHostIPAddr[16]; + BYTE sNfsDirectory[PATHNAME_LEN]; // PATHNAME_LEN = 128 +}NET_DVR_SINGLE_NFS, *LPNET_DVR_SINGLE_NFS; + +typedef struct +{ + DWORD dwSize; + NET_DVR_SINGLE_NFS struNfsDiskParam[MAX_NFS_DISK]; +}NET_DVR_NFSCFG, *LPNET_DVR_NFSCFG; + +typedef struct tagNET_DVR_ISCSI_CFG +{ + DWORD dwSize; // ½á¹¹´óС + WORD wVrmPort; // VRM ¼àÌý¶Ë¿Ú + BYTE byEnable; // ÊÇ·ñÆôÓà ISCSI´æ´¢ + BYTE byRes[69]; // ±£Áô×Ö½Ú + NET_DVR_IPADDR struVrmAddr; // VRM ipµØÖ· 16λ + char chNvtIndexCode[64]; //nvt index Code +}NET_DVR_ISCSI_CFG, *LPNET_DVR_ISCSI_CFG; + +//Ѳº½µãÅäÖÃ(˽ÓÐIP¿ìÇòרÓÃ) +typedef struct +{ + BYTE PresetNum; //Ô¤Öõã + BYTE Dwell; //Í£Áôʱ¼ä + BYTE Speed; //ËÙ¶È + BYTE Reserve; //±£Áô +}NET_DVR_CRUISE_POINT, *LPNET_DVR_CRUISE_POINT; + +typedef struct +{ + NET_DVR_CRUISE_POINT struCruisePoint[32]; //×î´óÖ§³Ö32¸öѲº½µã +}NET_DVR_CRUISE_RET, *LPNET_DVR_CRUISE_RET; + +/************************************¶à·½âÂëÆ÷(begin)***************************************/ +typedef struct +{ + DWORD dwSize; + char sFirstDNSIP[16]; + char sSecondDNSIP[16]; + char sRes[32]; +}NET_DVR_NETCFG_OTHER, *LPNET_DVR_NETCFG_OTHER; + +typedef struct +{ + char sDVRIP[16]; /* DVR IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE byChannel; /* ͨµÀºÅ */ + BYTE byTransProtocol; /* ´«ÊäЭÒéÀàÐÍ 0-TCP, 1-UDP */ + BYTE byTransMode; /* ´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷*/ + BYTE byRes[3]; + BYTE sUserName[NAME_LEN]; /* ¼à¿ØÖ÷»úµÇ½ÕʺŠ*/ + BYTE sPassword[PASSWD_LEN]; /* ¼à¿ØÖ÷»úÃÜÂë */ +}NET_DVR_MATRIX_DECINFO, *LPNET_DVR_MATRIX_DECINFO; + +//Æô¶¯/Í£Ö¹¶¯Ì¬½âÂë +typedef struct +{ + DWORD dwSize; + NET_DVR_MATRIX_DECINFO struDecChanInfo; /* ¶¯Ì¬½âÂëͨµÀÐÅÏ¢ */ +}NET_DVR_MATRIX_DYNAMIC_DEC, *LPNET_DVR_MATRIX_DYNAMIC_DEC; + +typedef struct +{ + DWORD dwSize; + DWORD dwIsLinked; /* ½âÂëͨµÀ״̬ 0£­ÐÝÃß 1£­ÕýÔÚÁ¬½Ó 2£­ÒÑÁ¬½Ó 3-ÕýÔÚ½âÂë */ + DWORD dwStreamCpRate; /* Stream copy rate, X kbits/second */ + char cRes[64]; /* ±£Áô */ +}NET_DVR_MATRIX_DEC_CHAN_STATUS, *LPNET_DVR_MATRIX_DEC_CHAN_STATUS; + +typedef struct +{ + DWORD dwSize; + NET_DVR_MATRIX_DECINFO struDecChanInfo; /* ½âÂëͨµÀÐÅÏ¢ */ + DWORD dwDecState; /* 0-¶¯Ì¬½âÂë 1£­Ñ­»·½âÂë 2£­°´Ê±¼ä»Ø·Å 3£­°´Îļþ»Ø·Å */ + NET_DVR_TIME StartTime; /* °´Ê±¼ä»Ø·Å¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME StopTime; /* °´Ê±¼ä»Ø·Åֹͣʱ¼ä */ + char sFileName[128]; /* °´Îļþ»Ø·ÅÎļþÃû */ +}NET_DVR_MATRIX_DEC_CHAN_INFO, *LPNET_DVR_MATRIX_DEC_CHAN_INFO; + +//Á¬½ÓµÄͨµÀÅäÖà 2007-11-05 +typedef struct +{ + DWORD dwEnable; /* ÊÇ·ñÆôÓà 0£­·ñ 1£­ÆôÓÃ*/ + NET_DVR_MATRIX_DECINFO struDecChanInfo; /* ÂÖѲ½âÂëͨµÀÐÅÏ¢ */ +}NET_DVR_MATRIX_DECCHANINFO, *LPNET_DVR_MATRIX_DECCHANINFO; + +//2007-11-05 ÐÂÔöÿ¸ö½âÂëͨµÀµÄÅäÖà +typedef struct +{ + DWORD dwSize; + DWORD dwPoolTime; /*ÂÖѲʱ¼ä */ + NET_DVR_MATRIX_DECCHANINFO struchanConInfo[MAX_CYCLE_CHAN]; +}NET_DVR_MATRIX_LOOP_DECINFO, *LPNET_DVR_MATRIX_LOOP_DECINFO; + +//2007-12-22 +typedef struct +{ + BYTE baudrate; /* ²¨ÌØÂÊ */ + BYTE databits; /* Êý¾Ýλ */ + BYTE stopbits; /* ֹͣλ */ + BYTE parity; /* ÆæżУÑéλ */ + BYTE flowcontrol; /* Á÷¿Ø */ + BYTE res[3]; +}TTY_CONFIG, *LPTTY_CONFIG; + +typedef struct +{ + BYTE byTranChanEnable; /* µ±Ç°Í¸Ã÷ͨµÀÊÇ·ñ´ò¿ª 0£º¹Ø±Õ 1£º´ò¿ª */ + /* + * ¶à·½âÂëÆ÷±¾µØÓÐ1¸ö485´®¿Ú£¬1¸ö232´®¿Ú¶¼¿ÉÒÔ×÷Ϊ͸Ã÷ͨµÀ,É豸ºÅ·ÖÅäÈçÏ£º + * 0 RS485 + * 1 RS232 Console + */ + BYTE byLocalSerialDevice; /* Local serial device */ + /* + * Ô¶³Ì´®¿ÚÊä³ö»¹ÊÇÁ½¸ö,Ò»¸öRS232£¬Ò»¸öRS485 + * 1±íʾ232´®¿Ú + * 2±íʾ485´®¿Ú + */ + BYTE byRemoteSerialDevice; /* Remote output serial device */ + BYTE res1; /* ±£Áô */ + char sRemoteDevIP[16]; /* Remote Device IP */ + WORD wRemoteDevPort; /* Remote Net Communication Port */ + BYTE res2[2]; /* ±£Áô */ + TTY_CONFIG RemoteSerialDevCfg; +}NET_DVR_MATRIX_TRAN_CHAN_INFO, *LPNET_DVR_MATRIX_TRAN_CHAN_INFO; + +typedef struct +{ + DWORD dwSize; + BYTE by232IsDualChan; /* ÉèÖÃÄÄ·232͸Ã÷ͨµÀÊÇÈ«Ë«¹¤µÄ È¡Öµ1µ½MAX_SERIAL_NUM */ + BYTE by485IsDualChan; /* ÉèÖÃÄÄ·485͸Ã÷ͨµÀÊÇÈ«Ë«¹¤µÄ È¡Öµ1µ½MAX_SERIAL_NUM */ + BYTE res[2]; /* ±£Áô */ + NET_DVR_MATRIX_TRAN_CHAN_INFO struTranInfo[MAX_SERIAL_NUM];/*ͬʱ֧³Ö½¨Á¢MAX_SERIAL_NUM¸ö͸Ã÷ͨµÀ*/ +}NET_DVR_MATRIX_TRAN_CHAN_CONFIG, *LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG; + +//2007-12-24 Merry Christmas Eve... +typedef struct +{ + DWORD dwSize; + char sDVRIP[16]; /* DVR IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE byChannel; /* ͨµÀºÅ */ + BYTE byReserve; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + DWORD dwPlayMode; /* 0£­°´Îļþ 1£­°´Ê±¼ä*/ + NET_DVR_TIME StartTime; + NET_DVR_TIME StopTime; + char sFileName[128]; +}NET_DVR_MATRIX_DEC_REMOTE_PLAY, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY; + +/* Îļþ²¥·ÅÃüÁî */ +#define NET_DVR_PLAYSTART 1//¿ªÊ¼²¥·Å +#define NET_DVR_PLAYSTOP 2//Í£Ö¹²¥·Å +#define NET_DVR_PLAYPAUSE 3//ÔÝÍ£²¥·Å +#define NET_DVR_PLAYRESTART 4//»Ö¸´²¥·Å +#define NET_DVR_PLAYFAST 5//¿ì·Å +#define NET_DVR_PLAYSLOW 6//Âý·Å +#define NET_DVR_PLAYNORMAL 7//Õý³£ËÙ¶È +#define NET_DVR_PLAYSTARTAUDIO 9//´ò¿ªÉùÒô +#define NET_DVR_PLAYSTOPAUDIO 10//¹Ø±ÕÉùÒô +#define NET_DVR_PLAYSETPOS 12//¸Ä±äÎļþ»Ø·ÅµÄ½ø¶È +#define NET_DVR_RESETBUFFER 37 //Çå¿Õ¾ØÕó½âÂ뻺³åÇø£¨Ô¶³Ì»Ø·ÅÎļþ£© + +typedef struct +{ + DWORD dwSize; + DWORD dwPlayCmd; /* ²¥·ÅÃüÁî ¼ûÎļþ²¥·ÅÃüÁî*/ + DWORD dwCmdParam; /* ²¥·ÅÃüÁî²ÎÊý */ +}NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL; + +typedef struct +{ + DWORD dwSize; + DWORD dwCurMediaFileLen; /* µ±Ç°²¥·ÅµÄýÌåÎļþ³¤¶È */ + DWORD dwCurMediaFilePosition; /* µ±Ç°²¥·ÅÎļþµÄ²¥·ÅλÖà */ + DWORD dwCurMediaFileDuration; /* µ±Ç°²¥·ÅÎļþµÄ×Üʱ¼ä */ + DWORD dwCurPlayTime; /* µ±Ç°ÒѾ­²¥·ÅµÄʱ¼ä */ + DWORD dwCurMediaFIleFrames; /* µ±Ç°²¥·ÅÎļþµÄ×ÜÖ¡Êý */ + DWORD dwCurDataType; /* µ±Ç°´«ÊäµÄÊý¾ÝÀàÐÍ£¬19-ÎļþÍ·£¬20-Á÷Êý¾Ý£¬ 21-²¥·Å½áÊø±êÖ¾ */ + BYTE res[72]; +}NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS; + +//2009-4-11 added by likui ¶à·½âÂëÆ÷new +typedef struct tagNET_MATRIX_PASSIVEMODE +{ + WORD wTransProtol; //´«ÊäЭÒ飬0-TCP, 1-UDP, 2-MCAST + WORD wPassivePort; //UDP¶Ë¿Ú, TCPʱĬÈÏ + NET_DVR_IPADDR struMcastIP; //TCP,UDPʱÎÞЧ, MCASTʱΪ¶à²¥µØÖ· + BYTE byStreamType;/* Êý¾Ý²¥·Åģʽ:REAL_TIME_STREAM(1)ʵʱÁ÷,RECORD_STREAM(2)ÎļþÁ÷ */ + BYTE byRes[7]; +}NET_DVR_MATRIX_PASSIVEMODE, *LPNET_DVR_MATRIX_PASSIVEMODE; + +typedef struct tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30 +{ + BYTE byTranChanEnable; /* µ±Ç°Í¸Ã÷ͨµÀÊÇ·ñ´ò¿ª 0£º¹Ø±Õ 1£º´ò¿ª */ + BYTE byLocalSerialDevice; /* Local serial device */ + /* + * ¶à·½âÂëÆ÷±¾µØÓÐ1¸ö485´®¿Ú£¬1¸ö232´®¿Ú¶¼¿ÉÒÔ×÷Ϊ͸Ã÷ͨµÀ,É豸ºÅ·ÖÅäÈçÏ£º + * 0 RS485 + * 1 RS232 Console + * 2 Dual Scom + */ + BYTE byRemoteSerialDevice; /* Remote output serial device */ + /* + * Ô¶³Ì´®¿ÚÊä³ö»¹ÊÇÁ½¸ö,Ò»¸öRS232£¬Ò»¸öRS485 + * 1 ±íʾ232´®¿Ú + * 2 ±íʾ485´®¿Ú + */ + BYTE byRes1; /* ±£Áô */ + NET_DVR_IPADDR struRemoteDevIP; /* Remote Device IP */ + WORD wRemoteDevPort; /* Remote Net Communication Port */ + BYTE byIsEstablished; /* ͸Ã÷ͨµÀ½¨Á¢³É¹¦±êÖ¾£¬0-ûÓгɹ¦£¬1-½¨Á¢³É¹¦ */ + BYTE byRes2; /* ±£Áô */ + TTY_CONFIG RemoteSerialDevCfg; + BYTE byUsername[NAME_LEN]; + BYTE byPassword[PASSWD_LEN]; + DWORD dwLocalSerialNo; /* ±¾µØ´®¿Ú */ + DWORD dwRemoteSerialNo; /* Ô¶³Ì´®¿Ú */ + BYTE byRes3[8]; +} NET_DVR_MATRIX_TRAN_CHAN_INFO_V30,*LPNET_DVR_MATRIX_TRAN_CHAN_INFO_V30; + +typedef struct tagMATRIX_TRAN_CHAN_CONFIG +{ + DWORD dwSize; + BYTE by232IsDualChan; /* ÉèÖÃÄÄ·232͸Ã÷ͨµÀÊÇÈ«Ë«¹¤µÄ È¡Öµ1µ½MAX_SERIAL_NUM */ + BYTE by485IsDualChan; /* ÉèÖÃÄÄ·485͸Ã÷ͨµÀÊÇÈ«Ë«¹¤µÄ È¡Öµ1µ½MAX_SERIAL_NUM */ + BYTE byRes[2]; /* ±£Áô */ + NET_DVR_MATRIX_TRAN_CHAN_INFO_V30 struTranInfo[MAX_SERIAL_NUM]; /*ͬʱ֧³Ö½¨Á¢MAX_SERIAL_NUM¸ö͸Ã÷ͨµÀ*/ +}NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30,*LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30; + +typedef struct +{ + DWORD dwEnable; /* ÊÇ·ñÆôÓà 0£­·ñ 1£­ÆôÓÃ*/ + NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg; + NET_DVR_DEV_CHAN_INFO struDevChanInfo; /* ÂÖѲ½âÂëͨµÀÐÅÏ¢ */ +}NET_DVR_MATRIX_CHAN_INFO_V30,*LPNET_DVR_CYC_SUR_CHAN_ELE_V30; + +typedef struct tagMATRIX_LOOP_DECINFO_V30 +{ + DWORD dwSize; + DWORD dwPoolTime; /*ÂÖѲ¼ä¸ô*/ + NET_DVR_MATRIX_CHAN_INFO_V30 struchanConInfo[MAX_CYCLE_CHAN_V30]; + BYTE byRes[16]; +} NET_DVR_MATRIX_LOOP_DECINFO_V30,*LPNET_DVR_MATRIX_LOOP_DECINFO_V30; + + +typedef struct tagDEC_MATRIX_CHAN_INFO_V30 +{ + DWORD dwSize; + NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg; /*Á÷ýÌå·þÎñÆ÷ÅäÖÃ*/ + NET_DVR_DEV_CHAN_INFO struDevChanInfo; /* ½âÂëͨµÀÐÅÏ¢ */ + DWORD dwDecState; /* 0-¶¯Ì¬½âÂë 1£­Ñ­»·½âÂë 2£­°´Ê±¼ä»Ø·Å 3£­°´Îļþ»Ø·Å */ + NET_DVR_TIME StartTime; /* °´Ê±¼ä»Ø·Å¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME StopTime; /* °´Ê±¼ä»Ø·Åֹͣʱ¼ä */ + char sFileName[128]; /* °´Îļþ»Ø·ÅÎļþÃû */ + DWORD dwGetStreamMode; /*È¡Á÷ģʽ:1-Ö÷¶¯£¬2-±»¶¯*/ + NET_DVR_MATRIX_PASSIVEMODE struPassiveMode; + BYTE byRes[32]; +}NET_DVR_MATRIX_DEC_CHAN_INFO_V30,*LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30; + +#define MAX_RESOLUTIONNUM 64 //Ö§³ÖµÄ×î´ó·Ö±æÂÊÊýÄ¿ +typedef struct tagNET_DVR_MATRIX_ABILITY +{ + DWORD dwSize; + BYTE byDecNums; + BYTE byStartChan; + BYTE byVGANums; + BYTE byBNCNums; + BYTE byVGAWindowMode[8][12]; /*VGAÖ§³ÖµÄ´°¿Úģʽ£¬VGA1¿ÉÄÜÓÉ»ìºÏÊä³ö*/ + BYTE byBNCWindowMode[4]; /*BNCÖ§³ÖµÄ´°¿Úģʽ*/ + BYTE byDspNums; + BYTE byHDMINums;//HDMIÏÔʾͨµÀ¸öÊý£¨´Ó25¿ªÊ¼£© + BYTE byDVINums;//DVIÏÔʾͨµÀ¸öÊý£¨´Ó29¿ªÊ¼£© + BYTE byRes1[13]; + BYTE bySupportResolution[MAX_RESOLUTIONNUM];//°´ÕÕÉÏÃæµÄö¾Ù¶¨Òå,Ò»¸ö×Ö½Ú´ú±íÒ»¸ö·Ö±æÂÊÊÇ//·ñÖ§³Ö£¬1£ºÖ§³Ö£¬0£º²»Ö§³Ö + BYTE byHDMIWindowMode[4][8];//HDMIÖ§³ÖµÄ´°¿Úģʽ + BYTE byDVIWindowMode[4][8];//DVIÖ§³ÖµÄ´°¿Úģʽ + BYTE byRes2[24]; +}NET_DVR_MATRIX_ABILITY, *LPNET_DVR_MATRIX_ABILITY; +//ÉÏ´«logo½á¹¹ +typedef struct tagNET_DVR_DISP_LOGOCFG +{ + DWORD dwCorordinateX; //ͼƬÏÔʾÇøÓòX×ø±ê + DWORD dwCorordinateY; //ͼƬÏÔʾÇøÓòY×ø±ê + WORD wPicWidth; //ͼƬ¿í + WORD wPicHeight; //ͼƬ¸ß + BYTE byRes1[4]; + BYTE byFlash; //ÊÇ·ñÉÁ˸1-ÉÁ˸£¬0-²»ÉÁ˸ + BYTE byTranslucent; //ÊÇ·ñ°ë͸Ã÷1-°ë͸Ã÷£¬0-²»°ë͸Ã÷ + BYTE byRes2[6]; //±£Áô + DWORD dwLogoSize;//LOGO´óС£¬°üÀ¨BMPµÄÎļþÍ· +}NET_DVR_DISP_LOGOCFG,*LPNET_DVR_DISP_LOGOCFG; + +/*±àÂëÀàÐÍ*/ +#define NET_DVR_ENCODER_UNKOWN 0 /*δ֪±àÂë¸ñʽ*/ +#define NET_DVR_ENCODER_H264 1 /*˽ÓÐ 264*/ +#define NET_DVR_ENCODER_S264 2 /*Standard H264*/ +#define NET_DVR_ENCODER_MPEG4 3 /*MPEG4*/ +#define NET_DVR_ORIGINALSTREAM 4 /*Original Stream*/ +#define NET_DVR_PICTURE 5/*Picture*/ +#define NET_DVR_ENCODER_MJPEG 6 +#define NET_DVR_ENCODER_MPEG2 7 +#define NET_DVR_ENCODER_H265 8 +#define NET_DVR_ENCODER_SVAC 9 +#define NET_DVR_ENCODER_SMART264 10/*Smart 264*/ +#define NET_DVR_ENCODER_SMART265 11/*Smart 265*/ + +/* ´ò°ü¸ñʽ */ +#define NET_DVR_STREAM_TYPE_UNKOWN 0 /*δ֪´ò°ü¸ñʽ*/ +#define NET_DVR_STREAM_TYPE_PRIVT 1 /*˽Óиñʽ*/ +#define NET_DVR_STREAM_TYPE_TS 7 /* TS´ò°ü */ +#define NET_DVR_STREAM_TYPE_PS 8 /* PS´ò°ü */ +#define NET_DVR_STREAM_TYPE_RTP 9 /* RTP´ò°ü */ +#define NET_DVR_STREAM_TYPE_ORIGIN 10 //δ´ò°ü(ÊÓƵ×ÛºÏƽ̨½âÂë×ÓϵͳÓÃ) + +/*½âÂëͨµÀ״̬*/ +typedef struct +{ + BYTE byDecodeStatus; /*µ±Ç°×´Ì¬:0:δÆô¶¯£¬1£ºÆô¶¯½âÂë*/ + BYTE byStreamType; /*ÂëÁ÷ÀàÐÍ*/ + BYTE byPacketType; /*´ò°ü·½Ê½*/ + BYTE byRecvBufUsage; /*½ÓÊÕ»º³åʹÓÃÂÊ*/ + BYTE byDecBufUsage; /*½âÂ뻺³åʹÓÃÂÊ*/ + BYTE byFpsDecV; /*ÊÓƵ½âÂëÖ¡ÂÊ*/ + BYTE byFpsDecA; /*ÒôƵ½âÂëÖ¡ÂÊ*/ + BYTE byCpuLoad; /*DSP CPUʹÓÃÂÊ*/ + BYTE byRes1[4]; + DWORD dwDecodedV; /*½âÂëµÄÊÓƵ֡*/ + DWORD dwDecodedA; /*½âÂëµÄÒôƵ֡*/ + WORD wImgW; /*½âÂëÆ÷µ±Ç°µÄͼÏñ´óС,¿í*/ + WORD wImgH; //¸ß + BYTE byVideoFormat; /*ÊÓƵÖÆʽ:0-NON,NTSC--1,PAL--2*/ + BYTE byRes2[3]; + DWORD dwDecChan; /*»ñÈ¡È«²¿½âÂëͨµÀ״̬ʱÓÐЧ£¬ÉèÖÃʱ¿ÉÌî0*/ + BYTE byRes3[20]; +}NET_DVR_MATRIX_CHAN_STATUS, *LPNET_DVR_MATRIX_CHAN_STATUS; + +/*ÏÔʾͨµÀ״̬*/ +#define NET_DVR_MAX_DISPREGION 16 /*ÿ¸öÏÔʾͨµÀ×î¶à¿ÉÒÔÏÔʾµÄ´°¿Ú*/ +//·Ö±æÂÊ +// +typedef enum +{ + /*VGA*/ + VGA_NOT_AVALIABLE, + VGA_THS8200_MODE_SVGA_60HZ, //(800*600) + VGA_THS8200_MODE_SVGA_75HZ, //(800*600) + VGA_THS8200_MODE_XGA_60HZ, //(1024*768) + VGA_THS8200_MODE_XGA_75HZ, //(1024*768) + VGA_THS8200_MODE_SXGA_60HZ, //(1280*1024) + VGA_THS8200_MODE_720P_60HZ, //(1280*720) + VGA_THS8200_MODE_1080I_60HZ, //(1920*1080) + VGA_THS8200_MODE_1080P_30HZ, //(1920*1080) + VGA_THS8200_MODE_UXGA_30HZ, //(1600*1200) + /*HDMI*/ + HDMI_SII9134_MODE_XGA_60HZ, //(1024*768) + HDMI_SII9134_MODE_SXGA_60HZ, //(1280*1024) + HDMI_SII9134_MODE_SXGA2_60HZ, //(1280*960) + HDMI_SII9134_MODE_720P_60HZ, //(1280*720) + HDMI_SII9134_MODE_720P_50HZ, //(1280*720) + HDMI_SII9134_MODE_1080I_60HZ, //(1920*1080) + HDMI_SII9134_MODE_1080I_50HZ, //(1920*1080) + HDMI_SII9134_MODE_1080P_25HZ, //(1920*1080) + HDMI_SII9134_MODE_1080P_30HZ, //(1920*1080) + HDMI_SII9134_MODE_1080P_50HZ, //(1920*1080) + HDMI_SII9134_MODE_1080P_60HZ, //(1920*1080) + HDMI_SII9134_MODE_UXGA_60HZ, //(1600*1200) + /*DVI*/ + DVI_SII9134_MODE_XGA_60HZ, //(1024*768) + DVI_SII9134_MODE_SXGA_60HZ, //(1280*1024) + DVI_SII9134_MODE_SXGA2_60HZ, //(1280*960) + DVI_SII9134_MODE_720P_60HZ, //(1280*720) + DVI_SII9134_MODE_720P_50HZ, //(1280*720) + DVI_SII9134_MODE_1080I_60HZ, //(1920*1080) + DVI_SII9134_MODE_1080I_50HZ, //(1920*1080) + DVI_SII9134_MODE_1080P_25HZ, //(1920*1080) + DVI_SII9134_MODE_1080P_30HZ, //(1920*1080) + DVI_SII9134_MODE_1080P_50HZ, //(1920*1080) + DVI_SII9134_MODE_1080P_60HZ, //(1920*1080) + DVI_SII9134_MODE_UXGA_60HZ, //(1600*1200) + VGA_DECSVR_MODE_SXGA2_60HZ, + HDMI_DECSVR_MODE_1080P_24HZ, + DVI_DECSVR_MODE_1080P_24HZ, + YPbPr_DECSVR_MODE_720P_60HZ, + YPbPr_DECSVR_MODE_1080I_60HZ +}VGA_MODE; + +//µÍÖ¡Âʶ¨Òå +#define LOW_DEC_FPS_1_2 51 +#define LOW_DEC_FPS_1_4 52 +#define LOW_DEC_FPS_1_8 53 +#define LOW_DEC_FPS_1_16 54 + +/*ÊÓƵÖÆʽ±ê×¼*/ +typedef enum +{ + VS_NON = 0, + VS_NTSC = 1, + VS_PAL = 2 +}VIDEO_STANDARD; + +typedef struct tagNET_DVR_VGA_DISP_CHAN_CFG +{ + DWORD dwSize; + BYTE byAudio; /*ÒôƵÊÇ·ñ¿ªÆô,0-·ñ£¬1-ÊÇ*/ + BYTE byAudioWindowIdx; /*ÒôƵ¿ªÆô×Ó´°¿Ú*/ + BYTE byVgaResolution; /*VGAµÄ·Ö±æÂÊ*/ + BYTE byVedioFormat; /*1:NTSC,2:PAL,0-NULL*/ + DWORD dwWindowMode; /*»­Ãæģʽ,´ÓÄÜÁ¦¼¯»ñÈ¡,Ä¿Ç°Ö§³Ö1,2,4,9,16*/ + BYTE byJoinDecChan[MAX_WINDOWS];/*¸÷¸ö×Ó´°¿Ú¹ØÁªµÄ½âÂëͨµÀ*/ + BYTE byEnlargeStatus; /*ÊÇ·ñ´¦ÓÚ·Å´ó״̬£¬0£º²»·Å´ó£¬1£º·Å´ó*/ + BYTE byEnlargeSubWindowIndex;//·Å´óµÄ×Ó´°¿ÚºÅ + union + { + BYTE byRes[16]; + struct + { + /*¸÷¸ö×Ó´°¿Ú¶ÔÓ¦½âÂëͨµÀËù¶ÔÓ¦µÄ½âÂë×ÓϵͳµÄ²ÛλºÅ(¶ÔÓÚÊÓƵ×ÛºÏƽ̨ÖнâÂë×ÓϵͳÓÐЧ)*/ + BYTE byJoinDecoderId[MAX_WINDOWS]; + }struVideoPlatform; + struct + { + BYTE byRes[16]; + }struNotVideoPlatform; + }struDiff; + /*Çø·Ö¹²ÓÃÌ壬0-ÊÓƵ×ÛºÏƽ̨ÄÚ²¿½âÂëÆ÷ÏÔʾͨµÀÅäÖã¬1-ÆäËû½âÂëÆ÷ÏÔʾͨµÀÅäÖÃ*/ + BYTE byUnionType; + BYTE byScale; /*ÏÔʾģʽ£¬0---ÕæʵÏÔʾ£¬1---Ëõ·ÅÏÔʾ( Õë¶ÔBNC )*/ +}NET_DVR_VGA_DISP_CHAN_CFG,*LPNET_DVR_VGA_DISP_CHAN_CFG; + + +/*ÏÔʾͨµÀ״̬*/ +#define NET_DVR_MAX_DISPREGION 16 /*ÿ¸öÏÔʾͨµÀ×î¶à¿ÉÒÔÏÔʾµÄ´°¿Ú*/ +typedef struct +{ + BYTE byDispStatus; /*ÏÔʾ״̬£º0£ºÎ´ÏÔʾ£¬1£ºÆô¶¯ÏÔʾ*/ + BYTE byBVGA; /*0-BNC£¬1-VGA£¬ 2-HDMI£¬3-DVI*/ + BYTE byVideoFormat; /*ÊÓƵÖÆʽ:1:NTSC,2:PAL,0-NON*/ + BYTE byWindowMode; /*µ±Ç°»­Ãæģʽ*/ + BYTE byJoinDecChan[MAX_WINDOWS]; /*¸÷¸ö×Ó´°¿Ú¹ØÁªµÄ½âÂëͨµÀ*/ + BYTE byFpsDisp[NET_DVR_MAX_DISPREGION]; /*ÿ¸ö×Ó»­ÃæµÄÏÔʾ֡ÂÊ*/ + BYTE byScreenMode; //ÆÁĻģʽ0-ÆÕͨ 1-´óÆÁ + BYTE byRes2[31]; +}NET_DVR_DISP_CHAN_STATUS, *LPNET_DVR_DISP_CHAN_STATUS; + +#define MAX_DECODECHANNUM 32//¶à·½âÂëÆ÷×î´ó½âÂëͨµÀÊý +#define MAX_DISPCHANNUM 24//¶à·½âÂëÆ÷×î´óÏÔʾͨµÀÊý + +/*½âÂëÆ÷É豸״̬*/ +typedef struct tagNET_DVR_DECODER_WORK_STATUS +{ + DWORD dwSize; + NET_DVR_MATRIX_CHAN_STATUS struDecChanStatus[MAX_DECODECHANNUM]; /*½âÂëͨµÀ״̬*/ + NET_DVR_DISP_CHAN_STATUS struDispChanStatus[MAX_DISPCHANNUM]; /*ÏÔʾͨµÀ״̬*/ + BYTE byAlarmInStatus[MAX_ANALOG_ALARMIN]; /*±¨¾¯ÊäÈë״̬*/ + BYTE byAlarmOutStatus[MAX_ANALOG_ALARMOUT]; /*±¨¾¯Êä³ö״̬*/ + BYTE byAudioInChanStatus; /*ÓïÒô¶Ô½²×´Ì¬*/ + BYTE byRes[127]; +}NET_DVR_DECODER_WORK_STATUS,*LPNET_DVR_DECODER_WORK_STATUS; + +//2009-12-1 Ôö¼Ó±»¶¯½âÂë²¥·Å¿ØÖÆ +typedef struct tagNET_DVR_PASSIVEDECODE_CONTROL +{ + DWORD dwSize; + DWORD dwPlayCmd; /* ²¥·ÅÃüÁî ¼ûÎļþ²¥·ÅÃüÁî*/ + DWORD dwCmdParam; /* ²¥·ÅÃüÁî²ÎÊý */ + BYTE byRes[16];//Reverse +}NET_DVR_PASSIVEDECODE_CONTROL,*LPNET_DVR_PASSIVEDECODE_CONTROL; + +#define PASSIVE_DEC_PAUSE 1 /*±»¶¯½âÂëÔÝÍ£(½öÎļþÁ÷ÓÐЧ)*/ +#define PASSIVE_DEC_RESUME 2 /*»Ö¸´±»¶¯½âÂë(½öÎļþÁ÷ÓÐЧ)*/ +#define PASSIVE_DEC_FAST 3 /*¿ìËÙ±»¶¯½âÂë(½öÎļþÁ÷ÓÐЧ)*/ +#define PASSIVE_DEC_SLOW 4 /*ÂýËÙ±»¶¯½âÂë(½öÎļþÁ÷ÓÐЧ)*/ +#define PASSIVE_DEC_NORMAL 5 /*Õý³£±»¶¯½âÂë(½öÎļþÁ÷ÓÐЧ)*/ +#define PASSIVE_DEC_ONEBYONE 6 /*±»¶¯½âÂëµ¥Ö¡²¥·Å(±£Áô)*/ +#define PASSIVE_DEC_AUDIO_ON 7 /*ÒôƵ¿ªÆô*/ +#define PASSIVE_DEC_AUDIO_OFF 8 /*ÒôƵ¹Ø±Õ*/ +#define PASSIVE_DEC_RESETBUFFER 9 /*Çå¿Õ»º³åÇø*/ +//2009-12-16 Ôö¼Ó¿ØÖƽâÂëÆ÷½âÂëͨµÀËõ·Å +typedef struct tagNET_DVR_MATRIX_DECCHAN_CONTROL +{ + DWORD dwSize; + BYTE byDecChanScaleStatus;/*½âÂëͨµÀÏÔʾËõ·Å¿ØÖÆ,1±íʾËõ·ÅÏÔʾ£¬0±íʾÕæʵÏÔʾ*/ + BYTE byDecodeDelay;//½âÂëÑÓʱ£¬0-ĬÈÏ£¬1-ʵʱÐԺã¬2-ʵʱÐԽϺã¬3-ʵʱÐÔÖУ¬Á÷³©ÐÔÖУ¬4-Á÷³©ÐԽϺã¬5-Á÷³©ÐԺã¬0xff-×Ô¶¯µ÷Õû + BYTE byEnableSpartan;//³©ÏÔʹÄÜ£¬0-¹Ø£¬1-¿ª + BYTE byLowLight; //µÍÕնȡ£0-¹Ø£¬1-8´ú±íµÍÕնȵȼ¶£¬µÈ¼¶Ô½¸ßÇ¿¶ÈÔ½´ó + BYTE byNoiseReduction; //3D½µÔ룬0-¹Ø£¬1-¿ª£¬2-×Ô¶¯ + BYTE byDefog; //͸Îí£¬0-¹Ø£¬1-7´ú±í͸ÎíµÈ¼¶£¬µÈ¼¶Ô½¸ßÇ¿¶ÈÔ½´ó + BYTE byEnableVcaDec; //ÊÇ·ñÆôÓÃÖÇÄܽâÂ룬0-²»ÆôÓ㬷Ç0-ÆôÓà + BYTE byEnableAudio; //ÊÇ·ñ¿ªÆôÒôƵ£¬0-ÎÞЧ£¬1-¿ªÆô£¬2-¹Ø±Õ + DWORD dwAllCtrlType; //ËùÓÐ×Ó´°¿ÚÒ»Æð²Ù×÷µÄÀàÐÍ£¬ÉèÖÃʱÓÐЧ£¬°´Î»±íʾ + //dwAllCtrlType & 0x01,¿ªÆô¹Ø±ÕÖÇÄܽâÂë + BYTE byVolume; //volume,[0-100] + BYTE byRes[55]; +}NET_DVR_MATRIX_DECCHAN_CONTROL,*LPNET_DVR_MATRIX_DECCHAN_CONTROL; + +/************************************¶à·½âÂëÆ÷(end)***************************************/ +//2009-8-19 ÊÓƵ×ÛºÏƽ̨½Ó¿Úº¯Êý +/************************************ÊÓƵ×ÛºÏƽ̨(begin)***************************************/ +#define MAX_SUBSYSTEM_NUM 80 //Ò»¸ö¾ØÕóϵͳÖÐ×î¶à×ÓϵͳÊýÁ¿ +#define MAX_SERIALLEN 36 //×î´óÐòÁкų¤¶È +#define MAX_LOOPPLANNUM 16//×î´ó¼Æ»®Çл»×é +#define DECODE_TIMESEGMENT 4//¼Æ»®½âÂëÿÌìʱ¼ä¶ÎÊý +typedef struct tagNET_DVR_SUBSYSTEMINFO +{ + BYTE bySubSystemType;//×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬0-NULL£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byChan;//×ÓϵͳͨµÀÊý£¬¶ÔÓÚÂë·Ö×Óϵͳ£¬´ú±í485´®¿ÚÊýÁ¿£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byLoginType;//×¢²áÀàÐÍ£¬1-Ö±Á¬£¬2-DNS£¬3-»¨Éú¿Ç + BYTE byRes1[5]; + NET_DVR_IPADDR struSubSystemIP; /*IPµØÖ·£¨¿ÉÐ޸ģ©*/ + WORD wSubSystemPort; //×Óϵͳ¶Ë¿ÚºÅ£¨¿ÉÐ޸ģ© + BYTE byRes2[6]; + NET_DVR_IPADDR struSubSystemIPMask;//×ÓÍøÑÚÂë + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ·*/ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû £¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂ루´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + char sDomainName[MAX_DOMAIN_NAME];//ÓòÃû(¿ÉÐÞ¸Ä) + char sDnsAddress[MAX_DOMAIN_NAME];/*DNSÓòÃû»òIPµØÖ·*/ + BYTE sSerialNumber[SERIALNO_LEN];//ÐòÁкţ¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© +}NET_DVR_SUBSYSTEMINFO, *LPNET_DVR_SUBSYSTEMINFO; + +typedef struct tagNET_DVR_ALLSUBSYSTEMINFO +{ + DWORD dwSize; + NET_DVR_SUBSYSTEMINFO struSubSystemInfo[MAX_SUBSYSTEM_NUM]; + BYTE byRes[8]; +}NET_DVR_ALLSUBSYSTEMINFO, *LPNET_DVR_ALLSUBSYSTEMINFO; + +typedef struct tagNET_DVR_LOOPPLAN_SUBCFG +{ + DWORD dwSize; + DWORD dwPoolTime; /*ÂÖѲ¼ä¸ô£¬µ¥Î»£ºÃë*/ + NET_DVR_MATRIX_CHAN_INFO_V30 struChanConInfo[MAX_CYCLE_CHAN_V30]; + BYTE byRes[16]; +}NET_DVR_LOOPPLAN_SUBCFG,*LPNET_DVR_LOOPPLAN_SUBCFG; + +typedef struct tagNET_DVR_ALARMMODECFG +{ + DWORD dwSize; + BYTE byAlarmMode;//±¨¾¯´¥·¢ÀàÐÍ£¬1-ÂÖѲ£¬2-±£³Ö + WORD wLoopTime;//ÂÖѲʱ¼ä, µ¥Î»£ºÃë + BYTE byRes[9]; +}NET_DVR_ALARMMODECFG,*LPNET_DVR_ALARMMODECFG; + +typedef struct tagNET_DVR_CODESPLITTERINFO +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; /*Âë·ÖÆ÷IPµØÖ·*/ + WORD wPort; //Âë·ÖÆ÷¶Ë¿ÚºÅ + BYTE byRes1[6]; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë */ + BYTE byChan;//Âë·ÖÆ÷485ºÅ + BYTE by485Port;//485¿ÚµØÖ· + BYTE byRes2[14]; +} NET_DVR_CODESPLITTERINFO, *LPNET_DVR_CODESPLITTERINFO; + +typedef struct tagNET_DVR_ASSOCIATECFG +{ + BYTE byAssociateType;//¹ØÁªÀàÐÍ£¬1-±¨¾¯ + WORD wAlarmDelay;//±¨¾¯ÑÓʱ£¬0£­5Ã룻1£­10Ã룻2£­30Ã룻3£­1·ÖÖÓ£»4£­2·ÖÖÓ£»5£­5·ÖÖÓ£»6£­10·ÖÖÓ£» + BYTE byAlarmNum;//±¨¾¯ºÅ£¬¾ßÌåµÄÖµÓÉÓ¦Óø³£¬ÏàͬµÄ±¨¾¯¸³ÏàͬµÄÖµ + BYTE byRes[8]; +} NET_DVR_ASSOCIATECFG,*LPNET_DVR_ASSOCIATECFG; + +typedef struct tagNET_DVR_DYNAMICDECODE +{ + DWORD dwSize; + NET_DVR_ASSOCIATECFG struAssociateCfg;//´¥·¢¶¯Ì¬½âÂë¹ØÁª½á¹¹ + NET_DVR_PU_STREAM_CFG struPuStreamCfg;//¶¯Ì¬½âÂë½á¹¹ + BYTE byRes[8]; +}NET_DVR_DYNAMICDECODE,*LPNET_DVR_DYNAMICDECODE; + +typedef struct tagNET_DVR_DECODESCHED +{ + NET_DVR_SCHEDTIME struSchedTime;// + BYTE byDecodeType;/*0-ÎÞ£¬1-ÂÖѲ½âÂ룬2-¶¯Ì¬½âÂë*/ + BYTE byLoopGroup;//ÂÖѲ×éºÅ + BYTE byRes[6]; + NET_DVR_PU_STREAM_CFG struDynamicDec;//¶¯Ì¬½âÂë +} NET_DVR_DECODESCHED, *LPNET_DVR_DECODESCHED; + +typedef struct tagNET_DVR_PLANDECODE +{ + DWORD dwSize; + NET_DVR_DECODESCHED struDecodeSched[MAX_DAYS][DECODE_TIMESEGMENT];//ÖÜÒ»×÷Ϊ¿ªÊ¼£¬ºÍ9000Ò»Ö + BYTE byRes[8]; +} NET_DVR_PLANDECODE,*LPNET_DVR_PLANDECODE; + +//end +/************************************ÊÓƵ×ÛºÏƽ̨(end)***************************************/ +typedef struct +{ /* 12 bytes */ + DWORD dwSize; + char sUserName[32]; + char sPassWord[32]; + char sFromName[32]; /* Sender *///×Ö·û´®ÖеĵÚÒ»¸ö×Ö·ûºÍ×îºóÒ»¸ö×Ö·û²»ÄÜÊÇ"@",²¢ÇÒ×Ö·û´®ÖÐÒªÓÐ"@"×Ö·û + char sFromAddr[48]; /* Sender address */ + char sToName1[32]; /* Receiver1 */ + char sToName2[32]; /* Receiver2 */ + char sToAddr1[48]; /* Receiver address1 */ + char sToAddr2[48]; /* Receiver address2 */ + char sEmailServer[32]; /* Email server address */ + BYTE byServerType; /* Email server type: 0-SMTP, 1-POP, 2-IMTP¡­*/ + BYTE byUseAuthen; /* Email server authentication method: 1-enable, 0-disable */ + BYTE byAttachment; /* enable attachment */ + BYTE byMailinterval; /* mail interval 0-2s, 1-3s, 2-4s. 3-5s*/ +} NET_DVR_EMAILCFG, *LPNET_DVR_EMAILCFG; + +typedef struct +{ + DWORD dwSize; + NET_DVR_COMPRESSION_INFO_EX struLowCompression; //¶¨Ê±Â¼Ïñ + NET_DVR_COMPRESSION_INFO_EX struEventCompression; //ʼþ´¥·¢Â¼Ïñ +}NET_DVR_COMPRESSIONCFG_NEW, *LPNET_DVR_COMPRESSIONCFG_NEW; + +//Çò»úλÖÃÐÅÏ¢ +typedef struct +{ + WORD wAction;//»ñȡʱ¸Ã×Ö¶ÎÎÞЧ + WORD wPanPos;//ˮƽ²ÎÊý + WORD wTiltPos;//´¹Ö±²ÎÊý + WORD wZoomPos;//±ä±¶²ÎÊý +}NET_DVR_PTZPOS, *LPNET_DVR_PTZPOS; + +//Çò»ú·¶Î§ÐÅÏ¢ +typedef struct +{ + WORD wPanPosMin;//ˮƽ²ÎÊýmin + WORD wPanPosMax;//ˮƽ²ÎÊýmax + WORD wTiltPosMin;//´¹Ö±²ÎÊýmin + WORD wTiltPosMax;//´¹Ö±²ÎÊýmax + WORD wZoomPosMin;//±ä±¶²ÎÊýmin + WORD wZoomPosMax;//±ä±¶²ÎÊýmax +}NET_DVR_PTZSCOPE, *LPNET_DVR_PTZSCOPE; + +//rtspÅäÖà ipcameraרÓà +typedef struct +{ + DWORD dwSize; //³¤¶È + WORD wPort; //rtsp·þÎñÆ÷ÕìÌý¶Ë¿Ú + BYTE byReserve1[40]; //Ô¤Áô + WORD wRtspsPort; //rtsps·þÎñÆ÷ÕìÌý¶Ë¿Ú + BYTE byReserve[12]; +}NET_DVR_RTSPCFG, *LPNET_DVR_RTSPCFG; + +/********************************½Ó¿Ú²ÎÊý½á¹¹(begin)*********************************/ + +//NET_DVR_Login()²ÎÊý½á¹¹ +typedef struct +{ + BYTE sSerialNumber[SERIALNO_LEN]; //ÐòÁкŠ+ BYTE byAlarmInPortNum; //DVR±¨¾¯ÊäÈë¸öÊý + BYTE byAlarmOutPortNum; //DVR±¨¾¯Êä³ö¸öÊý + BYTE byDiskNum; //DVRÓ²Å̸öÊý + BYTE byDVRType; //DVRÀàÐÍ, 1:DVR 2:ATM DVR 3:DVS ...... + BYTE byChanNum; //DVR ͨµÀ¸öÊý + BYTE byStartChan; //ÆðʼͨµÀºÅ,ÀýÈçDVS-1,DVR - 1 +}NET_DVR_DEVICEINFO, *LPNET_DVR_DEVICEINFO; + +//NET_DVR_Login_V30()²ÎÊý½á¹¹ +typedef struct +{ + BYTE sSerialNumber[SERIALNO_LEN]; //ÐòÁкŠ+ BYTE byAlarmInPortNum; //±¨¾¯ÊäÈë¸öÊý + BYTE byAlarmOutPortNum; //±¨¾¯Êä³ö¸öÊý + BYTE byDiskNum; //Ó²Å̸öÊý + BYTE byDVRType; //É豸ÀàÐÍ, 1:DVR 2:ATM DVR 3:DVS ...... + BYTE byChanNum; //Ä£ÄâͨµÀ¸öÊý + BYTE byStartChan; //ÆðʼͨµÀºÅ,ÀýÈçDVS-1,DVR - 1 + BYTE byAudioChanNum; //ÓïÒôͨµÀÊý + BYTE byIPChanNum; //×î´óÊý×ÖͨµÀ¸öÊý£¬µÍλ + BYTE byZeroChanNum; //ÁãͨµÀ±àÂë¸öÊý //2010-01-16 + BYTE byMainProto; //Ö÷ÂëÁ÷´«ÊäЭÒéÀàÐÍ 0-private, 1-rtsp,2-ͬʱ֧³ÖprivateºÍrtsp + BYTE bySubProto; //×ÓÂëÁ÷´«ÊäЭÒéÀàÐÍ0-private, 1-rtsp,2-ͬʱ֧³ÖprivateºÍrtsp + BYTE bySupport; //ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö£¬ + //bySupport & 0x1, ±íʾÊÇ·ñÖ§³ÖÖÇÄÜËÑË÷ + //bySupport & 0x2, ±íʾÊÇ·ñÖ§³Ö±¸·Ý + //bySupport & 0x4, ±íʾÊÇ·ñÖ§³ÖѹËõ²ÎÊýÄÜÁ¦»ñÈ¡ + //bySupport & 0x8, ±íʾÊÇ·ñÖ§³Ö¶àÍø¿¨ + //bySupport & 0x10, ±íʾ֧³ÖÔ¶³ÌSADP + //bySupport & 0x20, ±íʾ֧³ÖRaid¿¨¹¦ÄÜ + //bySupport & 0x40, ±íʾ֧³ÖIPSAN Ŀ¼²éÕÒ + //bySupport & 0x80, ±íʾ֧³Örtp over rtsp + BYTE bySupport1; // ÄÜÁ¦¼¯À©³ä£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport1 & 0x1, ±íʾÊÇ·ñÖ§³Ösnmp v30 + //bySupport1 & 0x2, Ö§³ÖÇø·Ö»Ø·ÅºÍÏÂÔØ + //bySupport1 & 0x4, ÊÇ·ñÖ§³Ö²¼·ÀÓÅÏȼ¶ + //bySupport1 & 0x8, ÖÇÄÜÉ豸ÊÇ·ñÖ§³Ö²¼·Àʱ¼ä¶ÎÀ©Õ¹ + //bySupport1 & 0x10, ±íʾÊÇ·ñÖ§³Ö¶à´ÅÅÌÊý£¨³¬¹ý33¸ö£© + //bySupport1 & 0x20, ±íʾÊÇ·ñÖ§³Örtsp over http + //bySupport1 & 0x80, ±íʾÊÇ·ñÖ§³Ö³µÅÆб¨¾¯ÐÅÏ¢2012-9-28, ÇÒ»¹±íʾÊÇ·ñÖ§³ÖNET_DVR_IPPARACFG_V40½á¹¹Ìå + BYTE bySupport2; /*ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬·Ç0±íʾ֧³Ö + bySupport2 & 0x1, ±íʾ½âÂëÆ÷ÊÇ·ñÖ§³Öͨ¹ýURLÈ¡Á÷½âÂë + bySupport2 & 0x2, ±íʾ֧³ÖFTPV40 + bySupport2 & 0x4, ±íʾ֧³ÖANR + bySupport2 & 0x8, ±íʾ֧³ÖCCDµÄͨµÀ²ÎÊýÅäÖà + bySupport2 & 0x10, ±íʾ֧³Ö²¼·À±¨¾¯»Ø´«ÐÅÏ¢£¨½öÖ§³Ö×¥ÅÄ»ú±¨¾¯ ÐÂÀϱ¨¾¯½á¹¹£© + bySupport2 & 0x20, ±íʾÊÇ·ñÖ§³Öµ¥¶À»ñÈ¡É豸״̬×ÓÏî + bySupport2 & 0x40, ±íʾÊÇ·ñÊÇÂëÁ÷¼ÓÃÜÉ豸*/ + WORD wDevType; //É豸ÐͺŠ+ BYTE bySupport3; //ÄÜÁ¦¼¯À©Õ¹£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport3 & 0x1, ±íʾÊÇ·ñÖ§³ÖÅúÁ¿ÅäÖöàÂëÁ÷²ÎÊý + // bySupport3 & 0x4 ±íʾ֧³Ö°´×éÅäÖ㬠¾ßÌå°üº¬ ͨµÀͼÏñ²ÎÊý¡¢±¨¾¯ÊäÈë²ÎÊý¡¢IP±¨¾¯ÊäÈë¡¢Êä³ö½ÓÈë²ÎÊý¡¢ + // Óû§²ÎÊý¡¢É豸¹¤×÷״̬¡¢JPEGץͼ¡¢¶¨Ê±ºÍʱ¼äץͼ¡¢Ó²ÅÌÅÌ×é¹ÜÀí + //bySupport3 & 0x8Ϊ1 ±íʾ֧³ÖʹÓÃTCPÔ¤ÀÀ¡¢UDPÔ¤ÀÀ¡¢¶à²¥Ô¤ÀÀÖеÄ"ÑÓʱԤÀÀ"×Ö¶ÎÀ´ÇëÇóÑÓʱԤÀÀ£¨ºóÐø¶¼½«Ê¹ÓÃÕâÖÖ·½Ê½ÇëÇóÑÓʱԤÀÀ£©¡£¶øµ±bySupport3 & 0x8Ϊ0ʱ£¬½«Ê¹Óà "˽ÓÐÑÓʱԤÀÀ"ЭÒé¡£ + //bySupport3 & 0x10 ±íʾ֧³Ö"»ñÈ¡±¨¾¯Ö÷»úÖ÷Ҫ״̬£¨V40£©"¡£ + //bySupport3 & 0x20 ±íʾÊÇ·ñÖ§³Öͨ¹ýDDNSÓòÃû½âÎöÈ¡Á÷ + + BYTE byMultiStreamProto;//ÊÇ·ñÖ§³Ö¶àÂëÁ÷,°´Î»±íʾ,0-²»Ö§³Ö,1-Ö§³Ö,bit1-ÂëÁ÷3,bit2-ÂëÁ÷4,bit7-Ö÷ÂëÁ÷£¬bit-8×ÓÂëÁ÷ + BYTE byStartDChan; //ÆðʼÊý×ÖͨµÀºÅ,0±íʾÎÞЧ + BYTE byStartDTalkChan; //ÆðʼÊý×Ö¶Ô½²Í¨µÀºÅ£¬Çø±ðÓÚÄ£Äâ¶Ô½²Í¨µÀºÅ£¬0±íʾÎÞЧ + BYTE byHighDChanNum; //Êý×ÖͨµÀ¸öÊý£¬¸ßλ + BYTE bySupport4; //ÄÜÁ¦¼¯À©Õ¹£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport4 & 0x02 ±íʾÊÇ·ñÖ§³ÖNetSDK͸´«½Ó¿Ú£¨NET_DVR_STDXMLConfig£©Í¸´«±íµ¥¸ñʽ + //bySupport4 & 0x4±íʾÊÇ·ñÖ§³ÖÆ´¿Øͳһ½Ó¿Ú + //bySupport4 & 0x80 Ö§³ÖÉ豸ÉÏ´«ÖÐÐı¨¾¯Ê¹ÄÜ¡£±íʾÅжϵ÷ÓýӿÚÊÇ NET_DVR_PDC_RULE_CFG_V42»¹ÊÇ NET_DVR_PDC_RULE_CFG_V41 + BYTE byLanguageType;// Ö§³ÖÓïÖÖÄÜÁ¦,°´Î»±íʾ,ÿһλ0-²»Ö§³Ö,1-Ö§³Ö + // byLanguageType µÈÓÚ0 ±íʾ ÀÏÉ豸 + // byLanguageType & 0x1±íʾ֧³ÖÖÐÎÄ + // byLanguageType & 0x2±íʾ֧³ÖÓ¢ÎÄ + BYTE byVoiceInChanNum; //ÒôƵÊäÈëͨµÀÊý + BYTE byStartVoiceInChanNo; //ÒôƵÊäÈëÆðʼͨµÀºÅ 0±íʾÎÞЧ + BYTE bySupport5; //°´Î»±íʾ,0-²»Ö§³Ö,1-Ö§³Ö,bit0-Ö§³Ö¶àÂëÁ÷ + //bySupport5 &0x01±íʾ֧³ÖwEventTypeEx ,¼æÈÝdwEventType µÄʼþÀàÐÍ£¨Ö§³ÖÐÐΪʼþÀ©Õ¹£©--ÏÈռס£¬·ÀÖ¹³åÍ» + //bySupport5 &0x04±íʾÊÇ·ñÖ§³ÖʹÓÃÀ©Õ¹µÄ³¡¾°Ä£Ê½½Ó¿Ú + /* + bySupport5 &0x08 É豸·µ»Ø¸ÃÖµ±íʾÊÇ·ñÖ§³Ö¼Æ»®Â¼ÏñÀàÐÍV40½Ó¿ÚЭÒé(DVR_SET_RECORDCFG_V40/ DVR_GET_RECORDCFG_V40)(ÔÚ¸ÃЭÒéÖÐÉ豸֧³ÖÀàÐÍÀàÐÍ13µÄÅäÖÃ) + ֮ǰµÄ²¿·Ö·¢²¼µÄÉ豸£¬Ö§³Ö¼ÏñÀàÐÍ13£¬ÔòÅäÖüÏñÀàÐÍ13¡£Èç¹û²»Ö§³Ö£¬Í³Ò»×ª»»³É¼ÏñÀàÐÍ3¼æÈÝ´¦Àí¡£SDKͨ¹ýÃüÁî̽²â´¦Àí) + bySupport5 &0x10 É豸·µ»Ø¸ÄÖµ±íʾ֧³Ö³¬¹ý255¸öÔ¤Öõã + */ + BYTE bySupport6; //ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö,1-Ö§³Ö + //bySupport6 0x1 ±íʾÉ豸ÊÇ·ñÖ§³ÖѹËõ + //bySupport6 0x2 ±íʾÊÇ·ñÖ§³ÖÁ÷ID·½Ê½ÅäÖÃÁ÷À´Ô´À©Õ¹ÃüÁDVR_SET_STREAM_SRC_INFO_V40 + //bySupport6 0x4 ±íʾÊÇ·ñÖ§³ÖʼþËÑË÷V40½Ó¿Ú + //bySupport6 0x8 ±íʾÊÇ·ñÖ§³ÖÀ©Õ¹ÖÇÄÜÕì²âÅäÖÃÃüÁî + //bySupport6 0x40±íʾͼƬ²éѯ½á¹ûV40À©Õ¹ + BYTE byMirrorChanNum; //¾µÏñͨµÀ¸öÊý£¬<¼²¥Ö÷»úÖÐÓÃÓÚ±íʾµ¼²¥Í¨µÀ> + WORD wStartMirrorChanNo; //Æðʼ¾µÏñͨµÀºÅ + BYTE bySupport7; //ÄÜÁ¦,°´Î»±íʾ,0-²»Ö§³Ö,1-Ö§³Ö + // bySupport7 & 0x1 ±íʾÉ豸ÊÇ·ñÖ§³Ö INTER_VCA_RULECFG_V42 À©Õ¹ + // bySupport7 & 0x2 ±íʾÉ豸ÊÇ·ñÖ§³Ö IPC HVT ģʽÀ©Õ¹ + // bySupport7 & 0x04 ±íʾÉ豸ÊÇ·ñÖ§³Ö ·µ»ØËø¶¨Ê±¼ä + // bySupport7 & 0x08 ±íʾÉèÖÃÔÆ̨PTZλÖÃʱ£¬ÊÇ·ñÖ§³Ö´øͨµÀºÅ + // bySupport7 & 0x10 ±íʾÉ豸ÊÇ·ñÖ§³Ö˫ϵͳÉý¼¶±¸·Ý + // bySupport7 & 0x20 ±íʾÉ豸ÊÇ·ñÖ§³Ö OSD×Ö·ûµþ¼Ó V50 + // bySupport7 & 0x40 ±íʾÉ豸ÊÇ·ñÖ§³Ö Ö÷´Ó¸ú×Ù£¨´ÓÉãÏñ»ú£© + // bySupport7 & 0x80 ±íʾÉ豸ÊÇ·ñÖ§³Ö ±¨ÎļÓÃÜ + BYTE byRes2; //±£Áô +}NET_DVR_DEVICEINFO_V30, *LPNET_DVR_DEVICEINFO_V30; + +typedef struct tagNET_DVR_DEVICEINFO_V40 +{ + NET_DVR_DEVICEINFO_V30 struDeviceV30; + BYTE bySupportLock; //É豸֧³ÖËø¶¨¹¦ÄÜ£¬¸Ã×Ö¶ÎÓÉSDK¸ù¾ÝÉ豸·µ»ØÖµÀ´¸³ÖµµÄ¡£bySupportLockΪ1ʱ£¬dwSurplusLockTimeºÍbyRetryLoginTimeÓÐЧ + BYTE byRetryLoginTime; //Ê£Óà¿É³¢ÊԵǽµÄ´ÎÊý£¬Óû§Ãû£¬ÃÜÂë´íÎóʱ£¬´Ë²ÎÊýÓÐЧ + BYTE byPasswordLevel; //adminÃÜÂ밲ȫµÈ¼¶ + //0-ÎÞЧ£¬1-ĬÈÏÃÜÂ룬2-ÓÐЧÃÜÂ룬3-·çÏսϸߵÄÃÜÂë¡£µ±Óû§µÄÃÜÂëΪ³ö³§Ä¬ÈÏÃÜÂ루12345£©»òÕß·çÏսϸߵÄÃÜÂëʱ£¬Éϲã¿Í»§¶ËÐèÒªÌáʾÓû§¸ü¸ÄÃÜÂë¡£ + //4-¹ÜÀíÔ±´´½¨Ò»¸öÆÕͨÓû§ÎªÆäÉèÖÃÃÜÂ룬¸ÃÆÕͨÓû§ÕýÈ·µÇ¼É豸ºóÒªÌáʾ¡°ÇëÐ޸ijõʼµÇ¼ÃÜÂ롱£¬Î´Ð޸ĵÄÇé¿öÏ£¬Óû§Ã¿´ÎµÇÈ붼»á½øÐÐÌáÐÑ£» + //5-µ±ÆÕͨÓû§µÄÃÜÂë±»¹ÜÀíÔ±Ð޸ģ¬¸ÃÆÕͨÓû§ÔÙ´ÎÕýÈ·µÇ¼É豸ºó£¬ÐèÒªÌáʾ¡°ÇëÖØÐÂÉèÖõǼÃÜÂ롱£¬Î´Ð޸ĵÄÇé¿öÏ£¬Óû§Ã¿´ÎµÇÈ붼»á½øÐÐÌáÐÑ; + //6-¹ÜÀíÔ±´´½¨Ò»¸ö°²×°ÉÌ/²Ù×÷Ô±Óû§ÎªÆäÉèÖÃÃÜÂ룬¸ÃÓû§ÕýÈ·µÇ¼É豸ºóÒªÌáʾ¡°ÇëÐ޸ijõʼµÇ¼ÃÜÂ롱£¬Î´Ð޸ĵÄÇé¿öÏ£¬ÎÞ·¨½øÐгýÐ޸ı¾ÉíÃÜÂëÍâµÄÆäËû²Ù×÷; + BYTE byProxyType; //´úÀíÀàÐÍ£¬0-²»Ê¹ÓôúÀí, 1-ʹÓÃsocks5´úÀí, 2-ʹÓÃEHome´úÀí + DWORD dwSurplusLockTime; //Ê£Óàʱ¼ä£¬µ¥Î»Ã룬Óû§Ëø¶¨Ê±£¬´Ë²ÎÊýÓÐЧ + BYTE byCharEncodeType; //×Ö·û±àÂëÀàÐÍ0-ÎÞ×Ö·û±àÂëÐÅÏ¢(ÀÏÉ豸),1-GB2312(¼òÌåÖÐÎÄ)£¬2-GBK,3-BIG5(·±ÌåÖÐÎÄ),4-Shift_JIS(ÈÕÎÄ),5-EUC-KR(º«ÎÄ),6-UTF-8,7-21:ISO8859-1---15(Î÷Å·),22-Hebrew(Ï£²®À´Óï) + BYTE bySupportDev5;//Ö§³Öv50°æ±¾µÄÉ豸²ÎÊý»ñÈ¡£¬É豸Ãû³ÆºÍÉ豸ÀàÐÍÃû³Æ³¤¶ÈÀ©Õ¹Îª64×Ö½Ú + BYTE bySupport; //ÄÜÁ¦¼¯À©Õ¹£¬Î»Óë½á¹û£º0- ²»Ö§³Ö£¬1- Ö§³Ö + // bySupport & 0x1: ±£Áô + // bySupport & 0x2: 0-²»Ö§³Ö±ä»¯Éϱ¨ 1-Ö§³Ö±ä»¯Éϱ¨ + BYTE byLoginMode; //µÇ¼ģʽ 0-PrivateµÇ¼ 1-ISAPIµÇ¼ + DWORD dwOEMCode; + int iResidualValidity; //¸ÃÓû§ÃÜÂëÊ£ÓàÓÐЧÌìÊý£¬µ¥Î»£ºÌ죬·µ»Ø¸ºÖµ£¬±íʾÃÜÂëÒѾ­³¬ÆÚʹÓã¬ÀýÈç¡°-3±íʾÃÜÂëÒѾ­³¬ÆÚʹÓÃ3Ì족 + BYTE byResidualValidity; // iResidualValidity×Ö¶ÎÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE bySingleStartDTalkChan; //¶ÀÁ¢Òô¹ì½ÓÈëµÄÉ豸£¬Æðʼ½ÓÈëͨµÀºÅ£¬0-Ϊ±£Áô×Ö½Ú£¬ÎÞʵ¼Êº¬Ò壬Òô¹ìͨµÀºÅ²»ÄÜ´Ó0¿ªÊ¼ + BYTE bySingleDTalkChanNums; //¶ÀÁ¢Òô¹ì½ÓÈëµÄÉ豸µÄͨµÀ×ÜÊý£¬0-±íʾ²»Ö§³Ö + BYTE byPassWordResetLevel; //0-ÎÞЧ£¬1-¹ÜÀíÔ±´´½¨Ò»¸ö·Ç¹ÜÀíÔ±Óû§ÎªÆäÉèÖÃÃÜÂ룬¸Ã·Ç¹ÜÀíÔ±Óû§ÕýÈ·µÇ¼É豸ºóÒªÌáʾ¡°ÇëÐ޸ijõʼµÇ¼ÃÜÂ롱£¬Î´Ð޸ĵÄÇé¿öÏ£¬Óû§Ã¿´ÎµÇÈ붼»á½øÐÐÌáÐÑ£»2-µ±·Ç¹ÜÀíÔ±Óû§µÄÃÜÂë±»¹ÜÀíÔ±Ð޸ģ¬¸Ã·Ç¹ÜÀíÔ±Óû§ÔÙ´ÎÕýÈ·µÇ¼É豸ºó£¬ÐèÒªÌáʾ¡°ÇëÖØÐÂÉèÖõǼÃÜÂ롱£¬Î´Ð޸ĵÄÇé¿öÏ£¬Óû§Ã¿´ÎµÇÈ붼»á½øÐÐÌáÐÑ¡£ + BYTE bySupportStreamEncrypt; //ÄÜÁ¦¼¯À©Õ¹£¬Î»Óë½á¹û£º0- ²»Ö§³Ö£¬1- Ö§³Ö bySupportStreamEncrypt & 0x1:±íʾÊÇ·ñÖ§³ÖRTP/TLSÈ¡Á÷ bySupportStreamEncrypt & 0x2: ±íʾÊÇ·ñÖ§³ÖSRTP/UDPÈ¡Á÷ bySupportStreamEncrypt & 0x4: ±íʾÊÇ·ñÖ§³ÖSRTP/MULTICASTÈ¡Á÷ + BYTE byMarketType;//0-ÎÞЧ£¨Î´ÖªÀàÐÍ£©,1-¾­ÏúÐÍ£¬2-ÐÐÒµÐÍ + BYTE byTLSCap; //0-ÎÞЧ;byTLSCap & 0x1: ±íʾÊÇ·ñÖ§³ÖTLSÁ´Â·Ô¤ÀÀ;byTLSCap & 0x2: ±íʾÊÇ·ñÖ§³ÖTLSÁ´Â·»Ø·Å;byTLSCap & 0x4: ±íʾÊÇ·ñÖ§³ÖTLSÁ´Â·ÏÂÔØ; + BYTE byRes2[237]; +}NET_DVR_DEVICEINFO_V40, *LPNET_DVR_DEVICEINFO_V40; + +typedef void (CALLBACK *fLoginResultCallBack) (LONG lUserID, DWORD dwResult, LPNET_DVR_DEVICEINFO_V30 lpDeviceInfo , void* pUser); + +#define NET_DVR_DEV_ADDRESS_MAX_LEN 129 +#define NET_DVR_LOGIN_USERNAME_MAX_LEN 64 +#define NET_DVR_LOGIN_PASSWD_MAX_LEN 64 + +typedef struct +{ + char sDeviceAddress[NET_DVR_DEV_ADDRESS_MAX_LEN]; + BYTE byUseTransport; //ÊÇ·ñÆôÓÃÄÜÁ¦¼¯Í¸´«£¬0--²»ÆôÓÃ͸´«£¬Ä¬ÈÏ£¬1--ÆôÓÃ͸´« + WORD wPort; + char sUserName[NET_DVR_LOGIN_USERNAME_MAX_LEN]; + char sPassword[NET_DVR_LOGIN_PASSWD_MAX_LEN]; + fLoginResultCallBack cbLoginResult; + void *pUser; + BOOL bUseAsynLogin; + BYTE byProxyType; //0:²»Ê¹ÓôúÀí£¬1£ºÊ¹Óñê×¼´úÀí£¬2£ºÊ¹ÓÃEHome´úÀí + BYTE byUseUTCTime; //0-²»½øÐÐת»»£¬Ä¬ÈÏ,1-½Ó¿ÚÉÏÊäÈëÊä³öÈ«²¿Ê¹ÓÃUTCʱ¼ä,SDKÍê³ÉUTCʱ¼äÓëÉ豸ʱÇøµÄת»»,2-½Ó¿ÚÉÏÊäÈëÊä³öÈ«²¿Ê¹ÓÃƽ̨±¾µØʱ¼ä£¬SDKÍê³Éƽ̨±¾µØʱ¼äÓëÉ豸ʱÇøµÄת»» + BYTE byLoginMode; //0-Private 1-ISAPI 2-×ÔÊÊÓ¦ + BYTE byHttps; //0-²»ÊÊÓÃtls£¬1-ʹÓÃtls 2-×ÔÊÊÓ¦ + LONG iProxyID; //´úÀí·þÎñÆ÷ÐòºÅ£¬Ìí¼Ó´úÀí·þÎñÆ÷ÐÅϢʱ£¬Ïà¶ÔÓ¦µÄ·þÎñÆ÷Êý×éϱíÖµ + BYTE byVerifyMode; //ÈÏÖ¤·½Ê½£¬0-²»ÈÏÖ¤£¬1-Ë«ÏòÈÏÖ¤£¬2-µ¥ÏòÈÏÖ¤£»ÈÏÖ¤½öÔÚʹÓÃTLSµÄʱºòÉúЧ; + BYTE byRes3[119]; +}NET_DVR_USER_LOGIN_INFO,*LPNET_DVR_USER_LOGIN_INFO; + +//sdkÍøÂç»·¾³Ã¶¾Ù±äÁ¿£¬ÓÃÓÚÔ¶³ÌÉý¼¶ +typedef enum _SDK_NET_ENV +{ + LOCAL_AREA_NETWORK = 0, + WIDE_AREA_NETWORK +}SDK_NETWORK_ENVIRONMENT; + +//ÏÔʾģʽ +typedef enum +{ + NORMALMODE = 0, + OVERLAYMODE +}DISPLAY_MODE; + +//·¢ËÍģʽ +typedef enum +{ + PTOPTCPMODE = 0, + PTOPUDPMODE, + MULTIMODE, + RTPMODE, + RESERVEDMODE +}SEND_MODE; + +//ץͼģʽ +typedef enum +{ + BMP_MODE = 0, //BMPģʽ + JPEG_MODE = 1 //JPEGģʽ +}CAPTURE_MODE; + +//ʵʱÉùÒôģʽ +typedef enum +{ + MONOPOLIZE_MODE = 1,//¶Àռģʽ + SHARE_MODE = 2 //¹²Ïíģʽ +}REALSOUND_MODE; + +//Èí½âÂëÔ¤ÀÀ²ÎÊý +typedef struct +{ + LONG lChannel;//ͨµÀºÅ + LONG lLinkMode;//×î¸ßλ(31)Ϊ0±íʾÖ÷ÂëÁ÷£¬Îª1±íʾ×Ó£¬0£­30λ±íʾÂëÁ÷Á¬½Ó·½Ê½: 0£ºTCP·½Ê½,1£ºUDP·½Ê½,2£º¶à²¥·½Ê½,3 - RTP·½Ê½£¬4-RTP/RTSP,5-RSTP/HTTP + HWND hPlayWnd;//²¥·Å´°¿ÚµÄ¾ä±ú,ΪNULL±íʾ²»²¥·ÅͼÏó + char* sMultiCastIP;//¶à²¥×éµØÖ· + BYTE byProtoType; //Ó¦ÓòãÈ¡Á÷ЭÒ飬0-˽ÓÐЭÒ飬1-RTSPЭÒé + BYTE byRes[3]; +}NET_DVR_CLIENTINFO, *LPNET_DVR_CLIENTINFO; + +//SDK״̬ÐÅÏ¢(9000ÐÂÔö) +typedef struct +{ + DWORD dwTotalLoginNum; //µ±Ç°loginÓû§Êý + DWORD dwTotalRealPlayNum; //µ±Ç°realplay·Êý + DWORD dwTotalPlayBackNum; //µ±Ç°»Ø·Å»òÏÂÔØ·Êý + DWORD dwTotalAlarmChanNum; //µ±Ç°½¨Á¢±¨¾¯Í¨µÀ·Êý + DWORD dwTotalFormatNum; //µ±Ç°Ó²Å̸ñʽ»¯Â·Êý + DWORD dwTotalFileSearchNum; //µ±Ç°ÈÕÖ¾»òÎļþËÑË÷·Êý + DWORD dwTotalLogSearchNum; //µ±Ç°ÈÕÖ¾»òÎļþËÑË÷·Êý + DWORD dwTotalSerialNum; //µ±Ç°Í¸Ã÷ͨµÀ·Êý + DWORD dwTotalUpgradeNum; //µ±Ç°Éý¼¶Â·Êý + DWORD dwTotalVoiceComNum; //µ±Ç°ÓïÒôת·¢Â·Êý + DWORD dwTotalBroadCastNum; //µ±Ç°ÓïÒô¹ã²¥Â·Êý + DWORD dwTotalListenNum; //µ±Ç°ÍøÂç¼àÌý·Êý + DWORD dwEmailTestNum; //µ±Ç°Óʼþ¼ÆÊý·Êý + DWORD dwBackupNum; // µ±Ç°Îļþ±¸·Ý·Êý + DWORD dwTotalInquestUploadNum; //µ±Ç°ÉóѶÉÏ´«Â·Êý + DWORD dwRes[6]; +}NET_DVR_SDKSTATE, *LPNET_DVR_SDKSTATE; + +//SDK¹¦ÄÜÖ§³ÖÐÅÏ¢(9000ÐÂÔö) +typedef struct +{ + DWORD dwMaxLoginNum; //×î´óloginÓû§Êý MAX_LOGIN_USERS + DWORD dwMaxRealPlayNum; //×î´órealplay·Êý WATCH_NUM + DWORD dwMaxPlayBackNum; //×î´ó»Ø·Å»òÏÂÔØ·Êý WATCH_NUM + DWORD dwMaxAlarmChanNum; //×î´ó½¨Á¢±¨¾¯Í¨µÀ·Êý ALARM_NUM + DWORD dwMaxFormatNum; //×î´óÓ²Å̸ñʽ»¯Â·Êý SERVER_NUM + DWORD dwMaxFileSearchNum; //×î´óÎļþËÑË÷·Êý SERVER_NUM + DWORD dwMaxLogSearchNum; //×î´óÈÕÖ¾ËÑË÷·Êý SERVER_NUM + DWORD dwMaxSerialNum; //×î´ó͸Ã÷ͨµÀ·Êý SERVER_NUM + DWORD dwMaxUpgradeNum; //×î´óÉý¼¶Â·Êý SERVER_NUM + DWORD dwMaxVoiceComNum; //×î´óÓïÒôת·¢Â·Êý SERVER_NUM + DWORD dwMaxBroadCastNum; //×î´óÓïÒô¹ã²¥Â·Êý MAX_CASTNUM + DWORD dwRes[10]; +}NET_DVR_SDKABL, *LPNET_DVR_SDKABL; + +//±¨¾¯É豸ÐÅÏ¢ +typedef struct +{ + BYTE byUserIDValid; /* useridÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE bySerialValid; /* ÐòÁкÅÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE byVersionValid; /* °æ±¾ºÅÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE byDeviceNameValid; /* É豸Ãû×ÖÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE byMacAddrValid; /* MACµØÖ·ÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE byLinkPortValid; /* login¶Ë¿ÚÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE byDeviceIPValid; /* É豸IPÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + BYTE bySocketIPValid; /* socket ipÊÇ·ñÓÐЧ 0-ÎÞЧ£¬1-ÓÐЧ */ + LONG lUserID; /* NET_DVR_Login()·µ»ØÖµ, ²¼·ÀʱÓÐЧ */ + BYTE sSerialNumber[SERIALNO_LEN]; /* ÐòÁкŠ*/ + DWORD dwDeviceVersion; /* °æ±¾ÐÅÏ¢ ¸ß16λ±íʾÖ÷°æ±¾£¬µÍ16λ±íʾ´Î°æ±¾*/ + char sDeviceName[NAME_LEN]; /* É豸Ãû×Ö */ + BYTE byMacAddr[MACADDR_LEN]; /* MACµØÖ· */ + WORD wLinkPort; /* link port */ + char sDeviceIP[128]; /* IPµØÖ· */ + char sSocketIP[128]; /* ±¨¾¯Ö÷¶¯ÉÏ´«Ê±µÄsocket IPµØÖ· */ + BYTE byIpProtocol; /* IpЭÒé 0-IPV4, 1-IPV6 */ + BYTE byRes1[2]; + BYTE bJSONBroken; //JSON¶ÏÍøÐø´«±êÖ¾¡£0£º²»Ðø´«£»1£ºÐø´« + WORD wSocketPort; + BYTE byRes2[6]; +}NET_DVR_ALARMER, *LPNET_DVR_ALARMER; + +//Ó²½âÂëÏÔʾÇøÓò²ÎÊý(×ӽṹ) +typedef struct +{ + long bToScreen; + long bToVideoOut; + long nLeft; + long nTop; + long nWidth; + long nHeight; + long nReserved; +}NET_DVR_DISPLAY_PARA, *LPNET_DVR_DISPLAY_PARA; + +//Ó²½âÂëÔ¤ÀÀ²ÎÊý +typedef struct +{ + LONG lChannel;//ͨµÀºÅ + LONG lLinkMode; //×î¸ßλ(31)Ϊ0±íʾÖ÷ÂëÁ÷£¬Îª1±íʾ×Ó£¬0£­30λ±íʾÂëÁ÷Á¬½Ó·½Ê½:0£ºTCP·½Ê½,1£ºUDP·½Ê½,2£º¶à²¥·½Ê½,3 - RTP·½Ê½£¬4-µç»°Ïߣ¬5£­128k¿í´ø£¬6£­256k¿í´ø£¬7£­384k¿í´ø£¬8£­512k¿í´ø£» + char* sMultiCastIP; + NET_DVR_DISPLAY_PARA struDisplayPara; +}NET_DVR_CARDINFO, *LPNET_DVR_CARDINFO; + +//¼ÏóÎļþ²ÎÊý +typedef struct +{ + char sFileName[100];//ÎļþÃû + NET_DVR_TIME struStartTime;//ÎļþµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//ÎļþµÄ½áÊøʱ¼ä + DWORD dwFileSize;//ÎļþµÄ´óС +}NET_DVR_FIND_DATA, *LPNET_DVR_FIND_DATA; + +//¼ÏóÎļþ²ÎÊý(9000) +typedef struct +{ + char sFileName[100];//ÎļþÃû + NET_DVR_TIME struStartTime;//ÎļþµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//ÎļþµÄ½áÊøʱ¼ä + DWORD dwFileSize;//ÎļþµÄ´óС + char sCardNum[32]; + BYTE byLocked;//9000É豸֧³Ö,1±íʾ´ËÎļþÒѾ­±»Ëø¶¨,0±íʾÕý³£µÄÎļþ + BYTE byFileType; //ÎļþÀàÐÍ:0£­¶¨Ê±Â¼Ïñ,1-Òƶ¯Õì²â £¬2£­±¨¾¯´¥·¢£¬ + //3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ,7£­Õ𶯱¨¾¯£¬8-»·¾³±¨¾¯£¬9-ÖÇÄܱ¨¾¯£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯,14-ÖÇÄܽ»Í¨Ê¼þ + BYTE byRes[2]; +}NET_DVR_FINDDATA_V30, *LPNET_DVR_FINDDATA_V30; + +//¼ÏóÎļþ²ÎÊý(cvr) +typedef struct +{ + char sFileName[100];//ÎļþÃû + NET_DVR_TIME struStartTime;//ÎļþµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//ÎļþµÄ½áÊøʱ¼ä + DWORD dwFileSize;//ÎļþµÄ´óС + char sCardNum[32]; + BYTE byLocked;//9000É豸֧³Ö,1±íʾ´ËÎļþÒѾ­±»Ëø¶¨,0±íʾÕý³£µÄÎļþ + BYTE byFileType; //ÎļþÀàÐÍ:0£­¶¨Ê±Â¼Ïñ,1-Òƶ¯Õì²â £¬2£­±¨¾¯´¥·¢£¬ + //3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ,7£­Õ𶯱¨¾¯£¬8-»·¾³±¨¾¯£¬9-ÖÇÄܱ¨¾¯£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯,14-ÖÇÄܽ»Í¨Ê¼þ + BYTE byQuickSearch; //0:ÆÕͨ²éѯ½á¹û£¬1£º¿ìËÙ£¨ÈÕÀú£©²éѯ½á¹û + BYTE byRes; + DWORD dwFileIndex; //ÎļþË÷ÒýºÅ + BYTE byStreamType; + BYTE byRes1[127]; +}NET_DVR_FINDDATA_V40, *LPNET_DVR_FINDDATA_V40; + +typedef struct tagNET_DVR_FINDDATA_V50 +{ + char sFileName[100]; + NET_DVR_TIME_SEARCH struStartTime; + NET_DVR_TIME_SEARCH struStopTime; + NET_DVR_ADDRESS struAddr; //Ƭ¶ÎËùÔڵĵØÖ·ÐÅÏ¢£¬¼¯Èº»Ø·ÅʱÓõ½ + DWORD dwFileSize; //Îļþ´óС //¶ÔÓÚ´óÎļþËÑË÷ÀàÐÍʱ£¨byBigFileTypeΪ1£©£¬¸ÃÖµÎÞÒâÒå + BYTE byLocked; //ÎļþÊÇ·ñ±»Ëø¶¨£¬1£­ÎļþÒÑËø¶¨£»0£­ÎļþδËø¶¨ + BYTE byFileType; //ÎļþÀàÐÍ£¬ÓëV40Ïàͬ + BYTE byQuickSearch; //0- ÆÕͨ²éѯ½á¹û£¬1- ¿ìËÙ£¨ÈÕÀú£©²éѯ½á¹û + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ£º0- Ö÷ÂëÁ÷£¬1- ×ÓÂëÁ÷£¬2- ÂëÁ÷Èý + DWORD dwFileIndex; //ÎļþË÷ÒýºÅ + char sCardNum[32]; //¿¨ºÅ + DWORD dwTotalLenH; // ¶ÔÓÚ´óÎļþËÑË÷£¬Ê±¼ä¶ÎÄÚÊý¾Ý×ܳ¤¶È£¬¸ß32×Ö½Ú + DWORD dwTotalLenL; // ¶ÔÓÚ´óÎļþËÑË÷£¬Ê±¼ä¶ÎÄÚÊý¾Ý×ܳ¤¶È£¬µÍ32×Ö½Ú + BYTE byBigFileType; // 0ΪÆÕͨƬ¶ÎËÑË÷£¬1Ϊ´óÎļþËÑË÷ + BYTE byRes[247]; +}NET_DVR_FINDDATA_V50, *LPNET_DVR_FINDDATA_V50; + +//¼ÏóÎļþ²ÎÊý(´ø¿¨ºÅ) +typedef struct +{ + char sFileName[100];//ÎļþÃû + NET_DVR_TIME struStartTime;//ÎļþµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//ÎļþµÄ½áÊøʱ¼ä + DWORD dwFileSize;//ÎļþµÄ´óС + char sCardNum[32]; +}NET_DVR_FINDDATA_CARD, *LPNET_DVR_FINDDATA_CARD; + + +//¼ÏóÎļþ²éÕÒÌõ¼þ½á¹¹ +typedef struct +{ + LONG lChannel;//ͨµÀºÅ + DWORD dwFileType;//¼ÏóÎļþÀàÐÍ + //²»´ø¿¨ºÅ£¬0xff£­È«²¿£¬0£­¶¨Ê±Â¼Ïñ,1-Òƶ¯Õì²â £¬2£­±¨¾¯´¥·¢£¬3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ,7-ÖÇÄܼÏñ£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ£¬14-ÖÇÄܽ»Í¨Ê¼þ + //´ø¿¨ºÅ£¬0xff£­È«²¿£¬0£­¶¨Ê±Â¼Ïñ£¬1-Òƶ¯Õì²â£¬2£­½Ó½ü±¨¾¯£¬3£­³ö³®±¨¾¯£¬4£­½ø³®±¨¾¯£¬5-ÃüÁî´¥·¢£¬6£­ÊÖ¶¯Â¼Ïñ£¬7£­Õ𶯱¨¾¯£¬8-»·¾³±¨¾¯£¬9-ÖÇÄܱ¨¾¯£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ£¬14-ÖÇÄܽ»Í¨Ê¼þ + DWORD dwIsLocked;//ÊÇ·ñËø¶¨ 0-Õý³£Îļþ,1-Ëø¶¨Îļþ, 0xff±íʾËùÓÐÎļþ + DWORD dwUseCardNo;//ÊÇ·ñʹÓÿ¨ºÅ + BYTE sCardNumber[32];//¿¨ºÅ + NET_DVR_TIME struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//½áÊøʱ¼ä +}NET_DVR_FILECOND, *LPNET_DVR_FILECOND; + +//ÔÆ̨ÇøÓòÑ¡Ôñ·Å´óËõС(˽ÓÐ ¿ìÇòרÓÃ) +typedef struct +{ + int xTop; //·½¿òÆðʼµãµÄx×ø±ê + int yTop; //·½¿ò½áÊøµãµÄy×ø±ê + int xBottom; //·½¿ò½áÊøµãµÄx×ø±ê + int yBottom; //·½¿ò½áÊøµãµÄy×ø±ê + int bCounter; //±£Áô +}NET_DVR_POINT_FRAME, *LPNET_DVR_POINT_FRAME; + +//ÓïÒô¶Ô½²²ÎÊý +typedef struct tagNET_DVR_COMPRESSION_AUDIO +{ + BYTE byAudioEncType; //ÒôƵ±àÂëÀàÐÍ 0-OggVorbis(G722.1);1-G711_U;2-G711_A;5-MP2L2;6-G726;7-AAC,8-PCM;9-G722.1.C;12-AAC_LC;13-AAC_LD;14-Opus;15-MP3;16-ADPCM + BYTE byAudioSamplingRate;//ÒôƵ²ÉÑùÂÊ 0-ĬÈÏ£¬1-16kHZ£¬2-32kHZ£¬3-48kHZ, 4- 44.1kHZ,5-8kHZ + BYTE byAudioBitRate;// ÒôƵÂëÂÊ ²Î¿¼ BITRATE_ENCODE_INDEX + BYTE byres[4];//ÕâÀï±£ÁôÒôƵµÄѹËõ²ÎÊý + BYTE bySupport;//bySupport Bit0±íʾ Mp2l2Ç°4¸ö×ֽڵĺ¬Òå±íʾºóÃæÄÚÈÝÒôƵÊý¾Ý³¤¶È +}NET_DVR_COMPRESSION_AUDIO, *LPNET_DVR_COMPRESSION_AUDIO; + +//2009-7-22 + + +#define IW_ESSID_MAX_SIZE 32 +#define WIFI_WEP_MAX_KEY_COUNT 4 +#define WIFI_WEP_MAX_KEY_LENGTH 33 +#define WIFI_WPA_PSK_MAX_KEY_LENGTH 63 +#define WIFI_WPA_PSK_MIN_KEY_LENGTH 8 +#define WIFI_MAX_AP_COUNT 20 +#define WIFI_WPA_PSK_MAX_HEXKEY_LENGTH 68 //WPA16½øÖÆÃÜÔ¿×î´ó³¤¶È + +typedef struct tagNET_DVR_AP_INFO +{ + char sSsid[IW_ESSID_MAX_SIZE]; + DWORD dwMode; /* 0 mange ģʽ;1 ad-hocģʽ£¬²Î¼ûNICMODE */ + DWORD dwSecurity; /*0 ²»¼ÓÃÜ£»1 wep¼ÓÃÜ£»2 wpa-psk;3 wpa-Enterprise;4-WPA2_PSK²Î¼ûWIFISECURITY*/ + DWORD dwChannel; /*1-11±íʾ11¸öͨµÀ*/ + DWORD dwSignalStrength; /*0-100ÐźÅÓÉ×îÈõ±äΪ×îÇ¿*/ + DWORD dwSpeed; /*ËÙÂÊ,µ¥Î»ÊÇ0.01mbps*/ +}NET_DVR_AP_INFO,*LPNET_DVR_AP_INFO; + +typedef struct tagNET_DVR_AP_INFO_LIST +{ + DWORD dwSize; + DWORD dwCount; /*ÎÞÏßAPÊýÁ¿£¬²»³¬¹ý20*/ + NET_DVR_AP_INFO struApInfo[WIFI_MAX_AP_COUNT]; +}NET_DVR_AP_INFO_LIST,*LPNET_DVR_AP_INFO_LIST; + +typedef struct tagNET_DVR_WIFIETHERNET +{ + char sIpAddress[16]; /*IPµØÖ·*/ + char sIpMask[16]; /*ÑÚÂë*/ + BYTE byMACAddr[MACADDR_LEN]; /*ÎïÀíµØÖ·£¬Ö»ÓÃÀ´ÏÔʾ*/ + BYTE byCloseWifi; //ÊÇ·ñ¹Ø±ÕwifiÁ¬½Ó£¬0-²»¹Ø±Õ£¬1-¹Ø±Õ + BYTE bRes; + DWORD dwEnableDhcp; /*ÊÇ·ñÆô¶¯dhcp 0²»Æô¶¯ 1Æô¶¯*/ + DWORD dwAutoDns; /*Èç¹ûÆô¶¯dhcpÊÇ·ñ×Ô¶¯»ñÈ¡dns,0²»×Ô¶¯»ñÈ¡ 1×Ô¶¯»ñÈ¡£»¶ÔÓÚÓÐÏßÈç¹ûÆô¶¯dhcpÄ¿Ç°×Ô¶¯»ñÈ¡dns*/ + char sFirstDns[16]; /*µÚÒ»¸ödnsÓòÃû*/ + char sSecondDns[16]; /*µÚ¶þ¸ödnsÓòÃû*/ + char sGatewayIpAddr[16]; /* Íø¹ØµØÖ·*/ + BYTE bRes2[8]; +}NET_DVR_WIFIETHERNET,*LPNET_DVR_WIFIETHERNET; + +typedef struct tagNET_DVR_WIFI_CFG_EX +{ + NET_DVR_WIFIETHERNET struEtherNet; /*wifiÍø¿Ú*/ + char sEssid[IW_ESSID_MAX_SIZE]; /*SSID*/ + DWORD dwMode; /* 0 mange ģʽ;1 ad-hocģʽ£¬²Î¼û*/ + DWORD dwSecurity; /*0-²»¼ÓÃÜ;1-WEP¼ÓÃÜ;2-WPA-personal; 3-WPA-enterprise;4-WPA2-personal;5-WPA2-enterprise */ + union + { + struct + { + DWORD dwAuthentication;/*0 -¿ª·Åʽ 1-¹²Ïíʽ*/ + DWORD dwKeyLength;/* 0 -64λ£»1- 128λ£»2-152λ*/ + DWORD dwKeyType;/*0 16½øÖÆ;1 ASCI */ + DWORD dwActive;/*0 Ë÷Òý£º0---3±íʾÓÃÄÄÒ»¸öÃÜÔ¿*/ + char sKeyInfo[WIFI_WEP_MAX_KEY_COUNT][WIFI_WEP_MAX_KEY_LENGTH]; + }wep; + struct + { + DWORD dwKeyLength;/*8-63¸öASCII×Ö·û*/ + char sKeyInfo[WIFI_WPA_PSK_MAX_KEY_LENGTH]; + BYTE byEncryptType; /*WPA/WPA2ģʽϼÓÃÜÀàÐÍ,0-AES, 1-TKIP*/ + char sNewKeyInfo[WIFI_WPA_PSK_MAX_HEXKEY_LENGTH/*68*/];//ÐÂÃÜÔ¿£¨Ö§³Ö8-63¸öASCII×Ö·ûÒÔ¼°64¸öÊ®ÁùÖÆ×Ö·ûÃÜÔ¿£© + //µ±byKeyTypeΪ0ʱ£¬ÆôÓÃsKeyInfo£¬µ±byKeyTypeΪ1ʱ£¬ÆôÓÃsNewKeyInfo + //ÃÜÔ¿ÀàÐÍ£»0 ~ ÀÏÃÜÔ¿ÀàÐÍ£¨Ö»Ö§³Ö8-63¸öASCII×Ö·û£©£¬1 ~ÐÂÃÜÔ¿ÀàÐÍ£¨Ö§³Ö8-63¸öASCII×Ö·ûÒÔ¼°64¸öÊ®ÁùÖÆ×Ö·ûÃÜÔ¿£© + BYTE byKeyType; + BYTE byRes[7]; + }wpa_psk; + struct + { + BYTE byEncryptType; /*¼ÓÃÜÀàÐÍ,0-AES, 1-TKIP*/ + BYTE byAuthType; //ÈÏÖ¤ÀàÐÍ£¬0-EAP_TTLS,1-EAP_PEAP,2-EAP_TLS + BYTE byRes[2]; + union + { + struct + { + BYTE byEapolVersion; //EAPOL°æ±¾£¬0-°æ±¾1£¬1-°æ±¾2 + BYTE byAuthType; //ÄÚ²¿ÈÏÖ¤·½Ê½£¬0-PAP£¬1-MSCHAPV2 + BYTE byRes1[2]; + BYTE byAnonyIdentity [NAME_LEN]; //ÄäÃûÉí·Ý + BYTE byUserName[NAME_LEN]; //Óû§Ãû + BYTE byPassword[NAME_LEN]; //ÃÜÂë + BYTE byRes[44]; + }EAP_TTLS; //WPA-enterprise/WPA2-enterprisģʽÊÊÓà + struct + { + BYTE byEapolVersion; //EAPOL°æ±¾£¬0-°æ±¾1£¬1-°æ±¾2 + BYTE byAuthType; //ÄÚ²¿ÈÏÖ¤·½Ê½£¬0-GTC£¬1-MD5£¬2-MSCHAPV2 + BYTE byPeapVersion; //PEAP°æ±¾£¬0-°æ±¾0£¬1-°æ±¾1 + BYTE byPeapLabel; //PEAP±êÇ©£¬0-ÀϱêÇ©£¬1-бêÇ© + BYTE byAnonyIdentity[NAME_LEN]; //ÄäÃûÉí·Ý + BYTE byUserName[NAME_LEN]; //Óû§Ãû + BYTE byPassword[NAME_LEN]; //ÃÜÂë + BYTE byRes[44]; + }EAP_PEAP; //WPA-enterprise/WPA2-enterprisģʽÊÊÓà + struct + { + BYTE byEapolVersion; //EAPOL°æ±¾£¬0-°æ±¾1£¬1-°æ±¾2 + BYTE byRes1[3]; + BYTE byIdentity[NAME_LEN]; //Éí·Ý + BYTE byPrivateKeyPswd[NAME_LEN]; //˽ԿÃÜÂë + BYTE byRes[76]; + }EAP_TLS; + }auth_param; + }wpa_wpa2; //WPA-enterprise/WPA2-enterprisģʽÊÊÓà + }key; +}NET_DVR_WIFI_CFG_EX,*LPNET_DVR_WIFI_CFG_EX; + +//wifiÅäÖýṹ +typedef struct tagNET_DVR_WIFI_CFG +{ + DWORD dwSize; + NET_DVR_WIFI_CFG_EX struWifiCfg; +}NET_DVR_WIFI_CFG,*LPNET_DVR_WIFI_CFG; + +//wifiÁ¬½Ó״̬ +typedef struct tagNET_DVR_WIFI_CONNECT_STATUS +{ + DWORD dwSize; + BYTE byCurStatus; //1-ÒÑÁ¬½Ó£¬2-δÁ¬½Ó£¬3-ÕýÔÚÁ¬½Ó + BYTE byRes1[3]; //±£Áô + DWORD dwErrorCode; // byCurStatus = 2ʱÓÐЧ,1-Óû§Ãû»òÃÜÂë´íÎó,2-ÎÞ´Ë·ÓÉÆ÷,3-δ֪´íÎó + BYTE byRes[244]; +}NET_DVR_WIFI_CONNECT_STATUS,*LPNET_DVR_WIFI_CONNECT_STATUS; + +//wifi¹¤×÷ģʽ +typedef struct tagNET_DVR_WIFI_WORKMODE +{ + DWORD dwSize; + DWORD dwNetworkInterfaceMode; /*0 ×Ô¶¯Çл»Ä£Ê½¡¡1 ÓÐÏßģʽ*/ +}NET_DVR_WIFI_WORKMODE,*LPNET_DVR_WIFI_WORKMODE; + +//½á¹¹²ÎÊýºê¶¨Òå +#define VCA_MAX_POLYGON_POINT_NUM 10 //¼ì²âÇøÓò×î¶àÖ§³Ö10¸öµãµÄ¶à±ßÐÎ +#define MAX_RULE_NUM 8 //×î¶à¹æÔòÌõÊý +#define MAX_RULE_NUM_V42 16 //×î¶à¹æÔòÌõÊýÀ©Õ¹ +#define MAX_TARGET_NUM 30 //×î¶àÄ¿±ê¸öÊý +#define MAX_CALIB_PT 6 //×î´ó±ê¶¨µã¸öÊý +#define MIN_CALIB_PT 4 //×îС±ê¶¨µã¸öÊý +#define MAX_TIMESEGMENT_2 2 //×î´óʱ¼ä¶ÎÊý +#define DATA_INDEX_LEN 64 //Êý¾ÝÁ÷Ë®ºÅ +#define MAX_DEV_DATAINDEX_LEN 64 //É豸Êý¾ÝÁ÷Ë®ºÅ +#define MAX_TRAFFIC_PICTURE_NUM 8 //½»Í¨Í¼Æ¬ÊýÁ¿ +#define MAX_LICENSE_LEN 16 //³µÅƺÅ×î´ó³¤¶È +#define MAX_LICENSE_LEN_EX 32 //³µÅƺÅ×î´ó³¤¶È +#define MAX_CARDNO_LEN 48 //¿¨ºÅ×î´ó³¤¶È 2013-11-04 +#define MAX_OPERATE_INDEX_LEN 32 //²Ù×÷Êý×î´ó³¤¶È2014-03-03 +#define MAX_PLATE_NUM 3 //³µÅƸöÊý +#define MAX_MASK_REGION_NUM 4 //×î¶àËĸöÆÁ±ÎÇøÓò +#define MAX_SEGMENT_NUM 6 //ÉãÏñ»ú±ê¶¨×î´óÑù±¾ÏßÊýÄ¿ +#define MIN_SEGMENT_NUM 3 //ÉãÏñ»ú±ê¶¨×îСÑù±¾ÏßÊýÄ¿ +#define MAX_REL_SNAPCHAN_NUM 3 //×î´ó¹ØÁª×¥Í¼Í¨µÀÊý +#define MAX_PIC_SWITCH_STORAGE_SERVER 64 //ÔÆ´æ´¢·þÎñÆ÷´æ´¢µÄ×î´óͼƬÀàÐÍÊý +#define MAX_INFO_SWITCH_STORAGE_SERVER 64 //ÔÆ´æ´¢·þÎñÆ÷´æ´¢µÄ×î´ó¸½¼ÓÐÅÏ¢ÀàÐÍÊý +#define RTMP_URL_LEN 128 //RTMP URL ³¤¶È +#define MAX_ID_LEN_128 128 //·¢²¼ÎļþID³¤¶È +#define MAX_DEBUGCMD_LEN 1024 //É豸µ÷ÊÔÃüÁî×î´ó³¤¶È +#define MAX_DEBUGINFO_LEN 1400 //É豸µ÷ÊÔÐÅÏ¢×î´ó³¤¶È +#define MAX_VEHICLE_ID_LEN 32 //×î´ó³µÁ¾±êʶ³¤¶È +#define LEN_PROPERTY 128 +typedef struct +{ + DWORD dwSize; //±¾¶Î±¨Îij¤¶È, + NET_DVR_TIME_EX strStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX strStopTime; //½áÊøʱ¼ä + char sLicense[MAX_LICENSE_LEN_EX/*32*/]; //³µÅƺÅÂë + DWORD dwChannel; + BYTE byRegion; + BYTE byRes[127]; // ÇøÓòË÷ÒýÖµ 0-±£Áô£¬1-Å·ÖÞ(Europe Region)£¬2-¶íÓïÇøÓò(Russian Region)£¬3-Å·ÖÞ&¶íÂÞ˹(EU&CIS) , 4-Öж«£¨Middle East£©£¬0xff-ËùÓÐ +}NET_DVR_VEHICLE_INFO_COND, *LPNET_DVR_VEHICLE_INFO_COND; + +typedef struct +{ + DWORD dwSize; + DWORD dwIndex;//ÐòºÅ + BYTE byDeviceID[DEVICE_ID_LEN/*48*/]; //É豸±àºÅ + BYTE byBelieve;//ÖÃÐŶȣ¬0-100 + BYTE byDir;//·½Ïò£¬0-ÎÞÒâÒ壬1-·´Ïò£¬2-ÕýÏò£¬3-δ֪ + BYTE byLineID;//³µµÀºÅ + BYTE byRes1; + NET_DVR_TIME_EX struSnapTime;//×¥ÅÄʱ¼ä + char sLicense[MAX_LICENSE_LEN_EX/*32*/]; //³µÅƺÅÂë + BYTE byMonitoringSiteID[MONITORSITE_ID_LEN /*48*/]; //¼à²âµã±àºÅ + BYTE byCountry; // ¹ú¼ÒË÷ÒýÖµ£¬²ÎÕÕö¾ÙCOUNTRY_INDEX£¨²»Ö§³Ö¡±COUNTRY_ALL = 0xff, //ALL È«²¿¡±£© + BYTE byMatchingResult;//Æ¥Åä½á¹û£º0-±£Áô£¬1-ÔÊÐíÃûµ¥£¬2-½ûÖ¹Ãûµ¥£¬3-ÆäËû + BYTE byArea; //ÇøÓò£¨Ê¡·Ý£©£¬¸÷¹ú¼ÒÄÚ²¿ÇøÓòö¾Ù£¬°¢ÁªÇõ²ÎÕÕ EMI_AREA + BYTE byPlateType; //³µÅÆÀàÐÍ ²Î¿¼ VCA_PLATE_TYPE + char sDeviceName[NAME_LEN/*32*/]; //É豸Ãû³Æ + BYTE byPlateColor; //³µÅÆÑÕÉ« ²Î¿¼ VCA_PLATE_COLOR + BYTE byPlateSize; //³µÅƳߴ磬0~δ֪£¬1~long, 2~short(Öж«³µÅÆʹÓÃ) + BYTE byRes2[2]; + char sPlateCategory[MAX_CATEGORY_LEN/*8*/]; //³µÅƸ½¼ÓÐÅÏ¢, ¼´³µÅÆС×ÖÐÅÏ¢£¬(Ä¿Ç°Ö»ÓÐÖж«µØÇøÖ§³Ö) + char sPlateImageURL[URL_LEN_V40/*256*/]; //³µÅÆСͼURL + char sEffectiveTime[ISO_8601_LEN/*32*/]; //³µÅÆÐÅÏ¢ÓÐЧʱ¼ä£¬Ê¹ÓÃISO8601 time¸ñʽ£¬È磺2009-11-14T15:27Z + BYTE byRes[176]; +}NET_DVR_VEHICLE_INFO_CFG, *LPNET_DVR_VEHICLE_INFO_CFG; + +//ÖÇÄÜ¿ØÖÆÐÅÏ¢ +#define MAX_VCA_CHAN 16//×î´óÖÇÄÜͨµÀÊý +typedef struct tagNET_VCA_CTRLINFO +{ + BYTE byVCAEnable; //ÊÇ·ñ¿ªÆôÖÇÄÜ + BYTE byVCAType; //ÖÇÄÜÄÜÁ¦ÀàÐÍ£¬VCA_CHAN_ABILITY_TYPE + BYTE byStreamWithVCA; //ÂëÁ÷ÖÐÊÇ·ñ´øÖÇÄÜÐÅÏ¢ + BYTE byMode; //ģʽ£¬ATMÄÜÁ¦Ê±²ÎÕÕVCA_CHAN_MODE_TYPE ,TFSÄÜÁ¦Ê±²ÎÕÕTFS_CHAN_MODE_TYPE + BYTE byControlType; //¿ØÖÆÀàÐÍ£¬°´Î»±íʾ£¬0-·ñ£¬1-ÊÇ + // byControlType &1 ÊÇ·ñÆôÓÃ×¥ÅŦÄÜ + BYTE byPicWithVCA ;// ±¨¾¯×¥Í¼µþ¼ÓÄ¿±êÐÅÏ¢(Ä¿±ê¿ò)£º0-²»µþ¼Ó£¨Ä¬ÈÏ£©£¬1-µþ¼Ó£» + BYTE byRes[2]; //±£Áô£¬ÉèÖÃΪ0 +}NET_VCA_CTRLINFO, * LPNET_VCA_CTRLINFO; + +//ÖÇÄÜ¿ØÖÆÐÅÏ¢½á¹¹ +typedef struct tagNET_VCA_CTRLCFG +{ + DWORD dwSize; + NET_VCA_CTRLINFO struCtrlInfo[MAX_VCA_CHAN]; //¿ØÖÆÐÅÏ¢,Êý×é0¶ÔÓ¦É豸µÄÆðʼͨµÀ + BYTE byRes[16]; +}NET_VCA_CTRLCFG, * LPNET_VCA_CTRLCFG; + +//ÖÇÄÜÉ豸ÄÜÁ¦¼¯ +typedef struct tagNET_VCA_DEV_ABILITY +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byVCAChanNum; //ÖÇÄÜͨµÀ¸öÊý + BYTE byPlateChanNum; //³µÅÆͨµÀ¸öÊý + BYTE byBBaseChanNum; //ÐÐΪ»ù±¾°æ¸öÊý + BYTE byBAdvanceChanNum; //ÐÐΪ¸ß¼¶°æ¸öÊý + BYTE byBFullChanNum; //ÐÐΪÍêÕû°æ¸öÊý + BYTE byATMChanNum; //ÖÇÄÜATM¸öÊý + BYTE byPDCChanNum; //ÈËÊýͳ¼ÆͨµÀ¸öÊý + BYTE byITSChanNum; //½»Í¨Ê¼þͨµÀ¸öÊý + BYTE byBPrisonChanNum; //ÐÐΪ¼àÓü°æ(¼àÉá)ͨµÀ¸öÊý + BYTE byFSnapChanNum; //ÈËÁ³×¥ÅÄͨµÀ¸öÊý + BYTE byFSnapRecogChanNum; //ÈËÁ³×¥ÅĺÍʶ±ðͨµÀ¸öÊý + BYTE byFRetrievalChanNum; //ÈËÁ³ºó¼ìË÷¸öÊý + BYTE bySupport; //ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport & 0x1£¬±íʾÊÇ·ñÖ§³ÖÖÇÄܸú×Ù 2012-3-22 + //bySupport & 0x2£¬±íʾÊÇ·ñÖ§³Ö128·ȡÁ÷À©Õ¹2012-12-27 + BYTE byFRecogChanNum; //ÈËÁ³Ê¶±ðͨµÀ¸öÊý + BYTE byBPPerimeterChanNum; //ÐÐΪ¼àÓü°æ(Öܽç)ͨµÀ¸öÊý + BYTE byTPSChanNum; //½»Í¨ÓÕµ¼Í¨µÀ¸öÊý + BYTE byTFSChanNum; //µÀ·ΥÕÂȡ֤ͨµÀ¸öÊý + BYTE byFSnapBFullChanNum; //ÈËÁ³×¥ÅĺÍÐÐΪ·ÖÎöͨµÀ¸öÊý + BYTE byHeatMapChanNum; //ÈȶÈͼͨµÀ¸öÊý + BYTE bySmartVehicleNum; //SMARTʼþ+³µÁ¾¼ì²âͨµÀ¸öÊý + BYTE bySmartHVTNum; //SMARTʼþ+»ìÐмì²âͨµÀ¸öÊý + BYTE bySmartNum; //SMARTʼþ¸öÊý + BYTE byVehicleNum; //³µÁ¾¼ì²âͨµÀ¸öÊý + BYTE bySmartRoadDetectionNum ; // SMARTʼþ+µÀ·¼à¿ØͨµÀ¸öÊý + BYTE bySmartFaceDetectionNum ; // SMARTʼþ+ÈËÁ³Õì²âͨµÀ¸öÊý + BYTE bySmartHeatMapNum ; // SMARTʼþ+ÈȶÈͼͨµÀ¸öÊý + BYTE byHumanRecognitionNum; //ÈËÌåʶ±ðͨµÀ¸öÊý + BYTE byEdcationStudentNum; //½ÌÓý¼²¥£¨Ñ§ÉúÆðÀ´¼ì²â&&ѧÉúÈËÊýͳ¼Æ£©Ö§³ÖµÄͨµÀÊý + BYTE byRoadDetectionNum;//µÀ·¼à¿ØͨµÀ¸öÊý + BYTE byPersonDensityDetection; //ÈËÔ±Ãܶȼì²âͨµÀ¸öÊý + BYTE bySafetyHelmetDetection; //°²È«Ã±¼ì²âͨµÀ¸öÊý + BYTE byPerimeterCapture;//Öܽç×¥ÅÄͨµÀ¸öÊý + BYTE byHeelPDC;//Çãб¿ÍÁ÷ͨµÀ¸öÊý + BYTE by12MPLiveView;// Ö÷ÂëÁ÷ 1200W@20fpsÔ¤ÀÀ£¨4000*3000£© + BYTE byTeacherBehaviorDetectNum; //½ÌÓý¼²¥£¨½ÌʦÐÐΪ¼ì²â£©Ö§³ÖµÄͨµÀÊý + BYTE byMixedTargetDetection;//»ìºÏÄ¿±ê¼ì²âͨµÀ¸öÊý + BYTE byFaceContrast;//ÈËÁ³±È¶Ô¼ì²âͨµÀ¸öÊý + BYTE byCityManagement;//Öǻ۳ǹܼì²âͨµÀ¸öÊý + BYTE byMixedTargetDetectionSmart;//»ìºÏÄ¿±ê¼ì²â+Smartʼþ + BYTE byRes; +}NET_VCA_DEV_ABILITY, *LPNET_VCA_DEV_ABILITY; + + +//ÐÐΪ·ÖÎöÄÜÁ¦ÀàÐÍ +typedef enum _VCA_ABILITY_TYPE_ +{ + TRAVERSE_PLANE_ABILITY = 0x01, //´©Ô½¾¯½äÃæ + ENTER_AREA_ABILITY = 0x02, //½øÈëÇøÓò + EXIT_AREA_ABILITY = 0x04, //À뿪ÇøÓò + INTRUSION_ABILITY = 0x08, //ÈëÇÖ + LOITER_ABILITY = 0x10, //ÅÇ»² + LEFT_TAKE_ABILITY = 0x20, //ÎïÆ·ÒÅÁôÄÃÈ¡ + PARKING_ABILITY = 0x40, //Í£³µ + RUN_ABILITY = 0x80, //¿ìËÙÒƶ¯ + HIGH_DENSITY_ABILITY = 0x100, //ÈËÔ±¾Û¼¯ + LF_TRACK_ABILITY = 0x200, //Çò»ú¸ú×Ù + VIOLENT_MOTION_ABILITY = 0x400, //¾çÁÒÔ˶¯¼ì²â + REACH_HIGHT_ABILITY = 0x800, //Åʸ߼ì²â + GET_UP_ABILITY = 0x1000, //ÆðÉí¼ì²â + LEFT_ABILITY = 0x2000, //ÎïÆ·ÒÅÁô + TAKE_ABILITY = 0x4000, //ÎïÆ·ÄÃÈ¡ + LEAVE_POSITION = 0x8000, //Àë¸Ú + TRAIL_ABILITY = 0x10000, //βËæ + KEY_PERSON_GET_UP_ABILITY = 0x20000, //ÖصãÈËÔ±ÆðÉí¼ì²â + STANDUP_ABILITY = 0x40000, //ÆðÁ¢ + FALL_DOWN_ABILITY = 0x80000, //µ¹µØ + AUDIO_ABNORMAL_ABILITY = 0x100000, //ÉùÇ¿Í»±ä + ADV_REACH_HEIGHT_ABILITY = 0x200000, //ÕÛÏßÅÊ¸ß + TOILET_TARRY_ABILITY = 0x400000, //Èç²Þ³¬Ê± + YARD_TARRY_ABILITY = 0x800000, //·Å·ç³¡ÖÍÁô + ADV_TRAVERSE_PLANE_ABILITY = 0x1000000, //ÕÛÏß¾¯½äÃæ + LECTURE_ABILITY = 0x2000000, //ÊÚ¿Î + ANSWER_ABILITY = 0x4000000, //»Ø´ðÎÊÌâ + HUMAN_ENTER_ABILITY = 0x10000000, //ÈË¿¿½üATM ,Ö»ÔÚATM_PANELģʽÏÂÖ§³Ö + OVER_TIME_ABILITY = 0x20000000, //²Ù×÷³¬Ê±,Ö»ÔÚATM_PANELģʽÏÂÖ§³Ö + STICK_UP_ABILITY = 0x40000000, //ÌùÖ½Ìõ + INSTALL_SCANNER_ABILITY = 0x80000000 //°²×°¶Á¿¨Æ÷ +}VCA_ABILITY_TYPE; + +typedef enum _VCA_ABILITY_TYPE_EX_ +{ + PEOPLENUM_CHANGE_ABILITY = 0x00000002, //ÈËÊý±ä»¯¼ì²â + SPACING_CHANGE_ABILITY = 0x00000004, //¼ä¾à±ä»¯¼ì²â + EVENT_COMBINED_ABILITY = 0x00000008, //×éºÏʼþ¹æÔò + EVENT_SIT_QUIETLY = 0x00000010, //¾²×ø + EVENT_HIGH_DENSITY_STATUS_ABILITY = 0x00000020, //ÈËÔ±¾Û¼¯×´Ì¬ + EVENT_RUNNING = 0x00000040, //±¼ÅÜ + EVENT_RETENTION = 0x00000080, //ÖÍÁô + EVENT_TEACHER_WRITING = 0x00000100, //°åÊé + EVENT_FAKECARD = 0x00000200 //αÔ쿨¼ì²â +}VCA_ABILITY_TYPE_EX; + +//ÖÇÄÜͨµÀÀàÐÍ +typedef enum _VCA_CHAN_ABILITY_TYPE_ +{ + VCA_BEHAVIOR_BASE = 1, //ÐÐΪ·ÖÎö»ù±¾°æ + VCA_BEHAVIOR_ADVANCE = 2, //ÐÐΪ·ÖÎö¸ß¼¶°æ + VCA_BEHAVIOR_FULL = 3, //ÐÐΪ·ÖÎöÍêÕû°æ + VCA_PLATE = 4, //³µÅÆÄÜÁ¦ + VCA_ATM = 5, //ATMÄÜÁ¦ + VCA_PDC = 6, //ÈËÁ÷Á¿Í³¼Æ + VCA_ITS = 7, //ÖÇÄÜ ½»Í¨Ê¼þ + VCA_BEHAVIOR_PRISON = 8, //ÐÐΪ·ÖÎö¼àÓü°æ(¼àÉá) + VCA_FACE_SNAP = 9, //ÈËÁ³×¥ÅÄÄÜÁ¦ + VCA_FACE_SNAPRECOG = 10, //ÈËÁ³×¥ÅĺÍʶ±ðÄÜÁ¦ + VCA_FACE_RETRIEVAL = 11, //ÈËÁ³ºó¼ìË÷ÄÜÁ¦ + VCA_FACE_RECOG = 12, //ÈËÁ³Ê¶±ðÄÜÁ¦ + VCA_BEHAVIOR_PRISON_PERIMETER = 13, // ÐÐΪ·ÖÎö¼àÓü°æ (Öܽç) + VCA_TPS = 14, //½»Í¨ÓÕµ¼ + VCA_TFS = 15, //µÀ·ΥÕÂÈ¡Ö¤ + VCA_BEHAVIOR_FACESNAP = 16, //ÈËÁ³×¥ÅĺÍÐÐΪ·ÖÎöÄÜÁ¦ + VCA_HEATMAP = 17, //ÈȶÈͼ + VCA_SMART_VEHICLE_DETECTION = 18, // SMARTʼþ+³µÁ¾¼ì²â + VCA_SMART_HVT_DETECTION = 19, // SMARTʼþ+»ìÐмì²â + VCA_SMART_EVENT = 20, // SMARTʼþ + VCA_VEHICLE_DETECTION = 21, // ³µÁ¾¼ì²â + VCA_SMART_ROAD_DETECTION = 22, // SMARTʼþ+µÀ·¼à¿Ø + VCA_SMART_FACE_DETECTION = 23, // SMARTʼþ+ÈËÁ³Õì²â + VCA_SMART_HEATMAP = 24, // SMARTʼþ+ÈȶÈͼ + VCA_HUMAN_RECOGNITION = 25 , // ÈËÌåʶ±ð + VCA_EDUCATION_STUDENT_DETECTION = 26, //½ÌÓý¼²¥£¨Ñ§ÉúÆðÀ´¼ì²â&&ѧÉúÈËÊýͳ¼Æ£© + VCA_ROAD_DETECTION = 27, //µÀ·¼à¿Ø + VCA_PERSON_DENSITY_DETECTION = 28, //ÈËÔ±Ãܶȼì²â + VCA_PERIMETER_CAPTURE = 29, //Öܽç×¥ÅÄ + VCA_SAFETY_HELMET_DETECTION = 30, //°²È«Ã±¼ì²â + VCA_HEEL_PDC = 31, //Çãб¿ÍÁ÷ + VCA_12MPLIVE_VIEW = 32, //Ö÷ÂëÁ÷ 1200W@20fpsÔ¤ÀÀ£¨4000*3000£© + VCA_TEACHER_BEHAVIOR_DETECTION = 33, //½ÌʦÐÐΪ¼ì²â + VCA_MIXED_TARGET_DETECTION = 34, //»ìºÏÄ¿±ê¼ì²â + VCA_FACE_CONTRAST = 35, //ÈËÁ³¶Ô±È¼ì²â(ͬʱ֧³ÖÈËÁ³×¥Åļ°ÈËÁ³¶Ô±È¹¦ÄÜ£¬µ«ÊÇËã·¨ºËÐIJ»Í¬¡£Ëã·¨²ÉÓÃÈËÁ³±È¶ÔΪºËÐÄ£¬È·±£Ã¿´Î±È¶Ô³É¹¦¡£ÈôÄ¿±ê²»Êʺ϶ԱÈÔò½«ÉáÆú¶Ô¸ÃÄ¿±ê½øÐÐ×¥ÅÄ¡£) + VCA_CITY_MANAGEMENT = 36, //ÖÇ»Û³Ç¹Ü + VCA_MIXED_TARGET_DETECTION_SMART = 37 //»ìºÏÄ¿±ê¼ì²â¼ÓSmart +}VCA_CHAN_ABILITY_TYPE; + +//ÖÇÄÜATMģʽÀàÐÍ(ATMÄÜÁ¦ÌØÓÐ) +typedef enum _VCA_CHAN_MODE_TYPE_ +{ + VCA_ATM_PANEL = 0, //ATMÃæ°å + VCA_ATM_SURROUND = 1, //ATM»·¾³ + VCA_ATM_FACE = 2, //ATMÈËÁ³ + VCA_ATM_SAFETYCABIN = 3 //ATM·À»¤²Õ +}VCA_CHAN_MODE_TYPE; + +//½»Í¨È¡Ö¤TFSͨµÀģʽ(TFSÄÜÁ¦ÌØÓÐ) +typedef enum _TFS_CHAN_MODE_TYPE_ +{ + TFS_CITYROAD = 0, //TFS ³ÇÊеÀ· + TFS_FREEWAY = 1 //TFS ¸ßËÙµÀ· +}TFS_CHAN_MODE_TYPE; + +//ÐÐΪ·ÖÎö³¡¾°Ä£Ê½ +typedef enum _BEHAVIOR_SCENE_MODE_TYPE_ +{ + BEHAVIOR_SCENE_DEFAULT = 0, //ϵͳĬÈÏ + BEHAVIOR_SCENE_WALL = 1, //Χǽ + BEHAVIOR_SCENE_INDOOR = 2 //ÊÒÄÚ +}BEHAVIOR_SCENE_MODE_TYPE; + +//¼àÉáģʽ +typedef enum _BEHAVIOR_PRISON_MODE_TYPE_ +{ + BEHAVIOR_PRISON = 0, //¼àËù + BEHAVIOR_HEARING = 1, //ÉóѶÊÒ + BEHAVIOR_RECFIELD = 2 //·Å·ç³¡ +}BEHAVIOR_PRISON_MODE_TYPE,LPBEHAVIOR_PRISON_MODE_TYPE; + + +//ͨµÀÄÜÁ¦ÊäÈë²ÎÊý +typedef struct tagNET_VCA_CHAN_IN_PARAM +{ + BYTE byVCAType; //VCA_CHAN_ABILITY_TYPEö¾ÙÖµ + BYTE byMode; //ģʽ£¬ATM ÄÜÁ¦Ê±²ÎÕÕVCA_CHAN_MODE_TYPE,TFSÄÜÁ¦Ê±²ÎÕÕTFS_CHAN_MODE_TYPE,µ±VCA_TYPE Ϊ½»Í¨Ê¼þʱ²ÎÕÕTRAFFIC_SCENE_MODE + BYTE byRes[2]; //±£Áô£¬ÉèÖÃΪ0 +}NET_VCA_CHAN_IN_PARAM, *LPNET_VCA_CHAN_IN_PARAM; + + +//ÐÐΪÄÜÁ¦¼¯½á¹¹ +typedef struct tagNET_VCA_BEHAVIOR_ABILITY +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwAbilityType; //Ö§³ÖµÄÄÜÁ¦ÀàÐÍ£¬°´Î»±íʾ£¬¼ûVCA_ABILITY_TYPE¶¨Òå + BYTE byMaxRuleNum; //×î´ó¹æÔòÊý + BYTE byMaxTargetNum; //×î´óÄ¿±êÊý + BYTE bySupport; // Ö§³ÖµÄ¹¦ÄÜÀàÐÍ °´Î»±íʾ + // bySupport & 0x01 Ö§³Ö±ê¶¨¹¦ÄÜ + BYTE byRes[5]; //±£Áô£¬ÉèÖÃΪ0 + DWORD dwAbilityTypeEx; //Ö§³ÖµÄÄÜÁ¦ÀàÐÍ£¬°´Î»±íʾ£¬¼ûVCA_ABILITY_TYPE_EX¶¨Òå +}NET_VCA_BEHAVIOR_ABILITY, *LPNET_VCA_BEHAVIOR_ABILITY; + +//³¡¾°±ä¸üÊý¾Ý¸üвÎÊý +typedef struct tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM +{ + DWORD dwSize; + BYTE byIDCount; //ʵ¼ÊÁ÷IDÊý + BYTE byRes1[3]; + BYTE byStreamID[MAX_STREAM_ID_NUM][STREAM_ID_LEN]; + BYTE byRes[256]; +}NET_DVR_SCENE_CHANGE_UPDATE_PARAM, *LPNET_DVR_SCENE_CHANGE_UPDATE_PARAM; + +// ½»Í¨ÄÜÁ¦¼¯½á¹¹ +typedef struct tagNET_DVR_ITS_ABILITY +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwAbilityType; // Ö§³ÖµÄÄÜÁ¦ÁÐ±í ²ÎÕÕITS_ABILITY_TYPE + BYTE byMaxRuleNum; //×î´ó¹æÔòÊý + BYTE byMaxTargetNum; //×î´óÄ¿±êÊý + BYTE byRes[10]; // ±£Áô +}NET_DVR_ITS_ABILITY, *LPNET_DVR_ITS_ABILITY; + +/***********************************end*******************************************/ + +/************************************ÖÇÄܲÎÊý½á¹¹*********************************/ +//ÖÇÄܹ²Óýṹ +//×ø±êÖµ¹éÒ»»¯,¸¡µãÊýֵΪµ±Ç°»­ÃæµÄ°Ù·Ö±È´óС, ¾«¶ÈΪСÊýµãºóÈýλ + +//ÐÐΪ·ÖÎöʼþÀàÐÍ +typedef enum _VCA_EVENT_TYPE_ +{ + VCA_TRAVERSE_PLANE = 0x1, //´©Ô½¾¯½äÃæ + VCA_ENTER_AREA = 0x2, //Ä¿±ê½øÈëÇøÓò,Ö§³ÖÇøÓò¹æÔò + VCA_EXIT_AREA = 0x4, //Ä¿±êÀ뿪ÇøÓò,Ö§³ÖÇøÓò¹æÔò + VCA_INTRUSION = 0x8, //ÖܽçÈëÇÖ,Ö§³ÖÇøÓò¹æÔò + VCA_LOITER = 0x10, //ÅÇ»²,Ö§³ÖÇøÓò¹æÔò + VCA_LEFT_TAKE = 0x20, //ÎïÆ·ÒÅÁôÄÃÈ¡,Ö§³ÖÇøÓò¹æÔò + VCA_PARKING = 0x40, //Í£³µ,Ö§³ÖÇøÓò¹æÔò + VCA_RUN = 0x80, //¿ìËÙÒƶ¯,Ö§³ÖÇøÓò¹æÔò + VCA_HIGH_DENSITY = 0x100, //ÇøÓòÄÚÈËÔ±¾Û¼¯,Ö§³ÖÇøÓò¹æÔò + VCA_VIOLENT_MOTION = 0x200, //¾çÁÒÔ˶¯¼ì²â + VCA_REACH_HIGHT = 0x400, //Åʸ߼ì²â + VCA_GET_UP = 0x800, //ÆðÉí¼ì²â + VCA_LEFT = 0x1000, //ÎïÆ·ÒÅÁô + VCA_TAKE = 0x2000, //ÎïÆ·ÄÃÈ¡ + VCA_LEAVE_POSITION = 0x4000, //Àë¸Ú + VCA_TRAIL = 0x8000, //βËæ + VCA_KEY_PERSON_GET_UP = 0x10000, //ÖصãÈËÔ±ÆðÉí¼ì²â + VCA_STANDUP = 0x20000, //ÆðÁ¢ + VCA_FALL_DOWN = 0x80000, //µ¹µØ¼ì²â + VCA_AUDIO_ABNORMAL = 0x100000, //ÉùÇ¿Í»±ä¼ì²â + VCA_ADV_REACH_HEIGHT = 0x200000, //ÕÛÏßÅÊ¸ß + VCA_TOILET_TARRY = 0x400000, //Èç²Þ³¬Ê± + VCA_YARD_TARRY = 0x800000, //·Å·ç³¡ÖÍÁô + VCA_ADV_TRAVERSE_PLANE = 0x1000000, //ÕÛÏß¾¯½äÃæ + VCA_LECTURE = 0x2000000, //ÊÚ¿Î + VCA_ANSWER = 0x4000000, //»Ø´ðÎÊÌâ + VCA_HUMAN_ENTER = 0x10000000, //ÈË¿¿½üATM Ö»ÔÚATM_PANELģʽÏÂÖ§³Ö + VCA_OVER_TIME = 0x20000000, //²Ù×÷³¬Ê± Ö»ÔÚATM_PANELģʽÏÂÖ§³Ö + VCA_STICK_UP = 0x40000000, //ÌùÖ½Ìõ,Ö§³ÖÇøÓò¹æÔò + VCA_INSTALL_SCANNER = 0x80000000 //°²×°¶Á¿¨Æ÷,Ö§³ÖÇøÓò¹æÔò +}VCA_EVENT_TYPE; + +//ÐÐΪ·ÖÎöʼþÀàÐÍÀ©Õ¹ +typedef enum _VCA_RULE_EVENT_TYPE_EX_ +{ + ENUM_VCA_EVENT_TRAVERSE_PLANE = 1, //´©Ô½¾¯½äÃæ + ENUM_VCA_EVENT_ENTER_AREA = 2, //Ä¿±ê½øÈëÇøÓò,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_EXIT_AREA = 3, //Ä¿±êÀ뿪ÇøÓò,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_INTRUSION = 4, //ÖܽçÈëÇÖ,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_LOITER = 5, //ÅÇ»²,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_LEFT_TAKE = 6, //ÎïÆ·ÒÅÁôÄÃÈ¡,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_PARKING = 7, //Í£³µ,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_RUN = 8, //¿ìËÙÒƶ¯,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_HIGH_DENSITY = 9, //ÇøÓòÄÚÈËÔ±¾Û¼¯,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_VIOLENT_MOTION = 10, //¾çÁÒÔ˶¯¼ì²â + ENUM_VCA_EVENT_REACH_HIGHT = 11, //Åʸ߼ì²â + ENUM_VCA_EVENT_GET_UP = 12, //ÆðÉí¼ì²â + ENUM_VCA_EVENT_LEFT = 13, //ÎïÆ·ÒÅÁô + ENUM_VCA_EVENT_TAKE = 14, //ÎïÆ·ÄÃÈ¡ + ENUM_VCA_EVENT_LEAVE_POSITION = 15, //Àë¸Ú + ENUM_VCA_EVENT_TRAIL = 16, //βËæ + ENUM_VCA_EVENT_KEY_PERSON_GET_UP = 17, //ÖصãÈËÔ±ÆðÉí¼ì²â + ENUM_VCA_EVENT_STANDUP = 18, //ÆðÁ¢ + ENUM_VCA_EVENT_FALL_DOWN = 20, //µ¹µØ¼ì²â + ENUM_VCA_EVENT_AUDIO_ABNORMAL = 21, //ÉùÇ¿Í»±ä¼ì²â + ENUM_VCA_EVENT_ADV_REACH_HEIGHT = 22, //ÕÛÏßÅÊ¸ß + ENUM_VCA_EVENT_TOILET_TARRY = 23, //Èç²Þ³¬Ê± + ENUM_VCA_EVENT_YARD_TARRY = 24, //·Å·ç³¡ÖÍÁô + ENUM_VCA_EVENT_ADV_TRAVERSE_PLANE = 25, //ÕÛÏß¾¯½äÃæ + ENUM_VCA_EVENT_LECTURE = 26, //ÊڿΣ¨ÎḶ̌© + ENUM_VCA_EVENT_ANSWER = 27, //»Ø´ðÎÊÌ⣨ÎḶ̌© + ENUM_VCA_EVENT_HUMAN_ENTER = 29, //ÈË¿¿½üATM,Ö»ÔÚATM_PANELģʽÏÂÖ§³Ö + ENUM_VCA_EVENT_OVER_TIME = 30, //²Ù×÷³¬Ê±,Ö»ÔÚATM_PANELģʽÏÂÖ§³Ö + ENUM_VCA_EVENT_STICK_UP = 31, //ÌùÖ½Ìõ,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_INSTALL_SCANNER = 32, //°²×°¶Á¿¨Æ÷,Ö§³ÖÇøÓò¹æÔò + ENUM_VCA_EVENT_PEOPLENUM_CHANGE = 35, //ÈËÊý±ä»¯Ê¼þ + ENUM_VCA_EVENT_SPACING_CHANGE = 36, //¼ä¾à±ä»¯Ê¼þ + ENUM_VCA_EVENT_COMBINED_RULE = 37, //×éºÏ¹æÔòʼþ + ENUM_VCA_EVENT_SIT_QUIETLY = 38, //Ò»¶¯²»¶¯£¨¾²×ø£© Ôòʼþ + ENUM_VCA_EVENT_HIGH_DENSITY_STATUS= 39, //ÇøÓòÄÚÈËÔ±¾Û¼¯×´Ì¬ + ENUM_VCA_EVENT_RUNNING = 40, //±¼Åܼì²â + ENUM_VCA_EVENT_RETENTION = 41, //ÖÍÁô¼ì²â + ENUM_VCA_EVENT_BLACKBOARD_WRITE = 42, //°åÊé + ENUM_VCA_EVENT_SITUATION_ANALYSIS = 43, //̬ÊÆ·ÖÎö + ENUM_VCA_EVENT_PLAY_CELLPHONE = 44, //ÍæÊÖ»ú¼ì²â + ENUM_VCA_EVENT_DURATION = 45, //³ÖÐø±¨¾¯ + ENUM_VCA_EVENT_FAKECARD = 46 //αÔ쿨¼ì²â +} VCA_RULE_EVENT_TYPE_EX; + +//¾¯½äÃæ´©Ô½·½ÏòÀàÐÍ +typedef enum _VCA_CROSS_DIRECTION_ +{ + VCA_BOTH_DIRECTION, // Ë«Ïò + VCA_LEFT_GO_RIGHT, // ÓÉ×óÖÁÓÒ + VCA_RIGHT_GO_LEFT // ÓÉÓÒÖÁ×ó +}VCA_CROSS_DIRECTION; + +//Ï߽ṹ +typedef struct tagNET_VCA_LINE +{ + NET_VCA_POINT struStart; //Æðµã + NET_VCA_POINT struEnd; //ÖÕµã +}NET_VCA_LINE, *LPNET_VCA_LINE; + +//¶à±ßÐͽṹÌå +typedef struct tagNET_VCA_POLYGON +{ + DWORD dwPointNum; //ÓÐЧµã ´óÓÚµÈÓÚ3£¬ÈôÊÇ3µãÔÚÒ»ÌõÏßÉÏÈÏΪÊÇÎÞЧÇøÓò£¬Ïß½»²æÈÏΪÊÇÎÞЧÇøÓò + NET_VCA_POINT struPos[VCA_MAX_POLYGON_POINT_NUM]; //¶à±ßÐα߽çµã,×î¶àÊ®¸ö +}NET_VCA_POLYGON, *LPNET_VCA_POLYGON; + +//¾¯½äÃæ²ÎÊý +typedef struct tagNET_VCA_TRAVERSE_PLANE +{ + NET_VCA_LINE struPlaneBottom; //¾¯½äÃæµ×±ß + VCA_CROSS_DIRECTION dwCrossDirection; //´©Ô½·½Ïò: 0-Ë«Ïò£¬1-´Ó×óµ½ÓÒ£¬2-´ÓÓÒµ½×ó + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byPlaneHeight; //¾¯½äÃæ¸ß¶È + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byPriority;//ÓÅÏȼ¶,0~µÍ,1~ÖÐ,2~¸ß + BYTE byAlarmConfidence; //±¨¾¯ÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRecordConfidence; //¼ÏñÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRes2[34]; //±£Áô +}NET_VCA_TRAVERSE_PLANE, *LPNET_VCA_TRAVERSE_PLANE; + +typedef struct tagNET_VCA_SIT_QUIETLY +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + //¹æÔò´¥·¢Ë³Ðò£¬0-˳Ðò»òÄæÐò´¥·¢£¬1-˳Ðò´¥·¢ + DWORD dwDuration; //³ÖÐøʱ¼ä µ¥Î»s ·¶Î§1-3600 + BYTE byRes[4]; +} NET_VCA_SIT_QUIETLY, *LPNET_VCA_SIT_QUIETLY; + +//½øÈë/À뿪ÇøÓò²ÎÊý +typedef struct tagNET_VCA_AREA +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byPriority;//ÓÅÏȼ¶,0~µÍ,1~ÖÐ,2~¸ß + BYTE byRes[5]; +}NET_VCA_AREA, *LPNET_VCA_AREA; + +//¸ù¾Ý±¨¾¯ÑÓ³Ùʱ¼äÀ´±êʶ±¨¾¯ÖдøͼƬ£¬±¨¾¯¼ä¸ôºÍIO±¨¾¯Ò»Ö£¬1Ãë·¢ËÍÒ»¸ö¡£ +//ÈëÇÖ²ÎÊý +typedef struct tagNET_VCA_INTRUSION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //ÐÐΪʼþ´¥·¢Ê±¼äãÐÖµ: 1-120Ã룬½¨Òé5Ã룬ÅжÏÊÇÓÐЧ±¨¾¯µÄʱ¼ä ÔÚATMϵͳÖд¥·¢ÎļþãÐֵΪ 1-1000Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byRate; //Õ¼±È£ºÇøÓòÄÚËùÓÐ䱨¾¯Ä¿±ê³ß´çÄ¿±êÕ¼ÇøÓòÃæ»ýµÄ±ÈÖØ£¬¹éÒ»»¯Îª£­£» + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byPriority;//ÓÅÏȼ¶,0~µÍ,1~ÖÐ,2~¸ß + BYTE byAlarmConfidence; //±¨¾¯ÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRecordConfidence; //¼ÏñÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß +}NET_VCA_INTRUSION, *LPNET_VCA_INTRUSION; + +//ÅÇ»²²ÎÊý +typedef struct tagNET_VCA_LOITER +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢Ê±¼äãÐÖµ£º1-120Ã룬½¨Òé10Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[1]; + DWORD dwLoiterDistance; //ÐгÌ×ܾàÀëãÐÖµ£º100-5000£¬Ä¬ÈÏ1000cm +}NET_VCA_LOITER, *LPNET_VCA_LOITER; + +//ÎïÆ·ÒÅÁô/ÎïÆ·ÄÃÈ¡²ÎÊý +typedef struct tagNET_VCA_TAKE_LEFT +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢Ê±¼äãÐÖµ£º1-120Ã룬½¨Òé10Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[5]; +}NET_VCA_TAKE_LEFT, *LPNET_VCA_TAKE_LEFT; + +//Í£³µ²ÎÊý +typedef struct tagNET_VCA_PARKING +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢Ê±¼äãÐÖµ£º1-100Ã룬½¨Òé10Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[5]; +}NET_VCA_PARKING, *LPNET_VCA_PARKING; + +//¿ìËÙÒƶ¯²ÎÊý +typedef struct tagNET_VCA_RUN +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + float fRunDistance; //ÈË¿ìËÙÒƶ¯×î´ó¾àÀë, ·¶Î§: [0.1, 1.00] ÏñËØģʽ ʵ¼Êģʽ(1,20)m/s + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byMode; // 0 ÏñËØģʽ 1 ʵ¼Êģʽ + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byRes; +}NET_VCA_RUN, *LPNET_VCA_RUN; + +//ÈËÔ±¾Û¼¯²ÎÊý +typedef struct tagNET_VCA_HIGH_DENSITY +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + float fDensity; //¾Û¼¯±ÈÂÊ, ·¶Î§: [0.1, 1.0] + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes; // ±£Áô×Ö½Ú + WORD wDuration; // ´¥·¢ÈËÔ±¾Û¼¯²ÎÊý±¨¾¯ãÐÖµ 20-360s +}NET_VCA_HIGH_DENSITY, *LPNET_VCA_HIGH_DENSITY; + +//¾çÁÒÔ˶¯²ÎÊý +typedef struct tagNET_VCA_VIOLENT_MOTION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢¾çÁÒÔ˶¯±¨¾¯ãÐÖµ£º1-50Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byMode; //0-´¿ÊÓƵģʽ£¬1-ÒôÊÓƵÁªºÏģʽ£¬2-´¿ÒôƵģʽ + BYTE byRes[4]; //±£Áô +}NET_VCA_VIOLENT_MOTION, *LPNET_VCA_VIOLENT_MOTION; + +// Åʸ߲ÎÊý +typedef struct tagNET_VCA_REACH_HIGHT +{ + NET_VCA_LINE struVcaLine; //Åʸ߾¯½äÃæ + WORD wDuration; //´¥·¢Åʸ߱¨¾¯ãÐÖµ£º1-120Ãë + BYTE byRes[6]; // ±£Áô×Ö½Ú +}NET_VCA_REACH_HIGHT, *LPNET_VCA_REACH_HIGHT; + +// Æð´²²ÎÊý +typedef struct tagNET_VCA_GET_UP +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢Æð´²±¨¾¯ãÐÖµ1-100 Ãë + BYTE byMode; //ÆðÉí¼ì²âģʽ,0-´ó´²Í¨ÆÌģʽ,1-¸ßµÍÆÌģʽ,2-´ó´²Í¨ÆÌ×øÁ¢ÆðÉíģʽ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,10] + BYTE byRes[4]; //±£Áô×Ö½Ú +}NET_VCA_GET_UP, * LPNET_VCA_GET_UP; + +// ÎïÆ·ÒÅÁô +typedef struct tagNET_VCA_LEFT +{ + NET_VCA_POLYGON struRegion; // ÇøÓò·¶Î§ + WORD wDuration; // ´¥·¢ÎïÆ·ÒÅÁô±¨¾¯ãÐÖµ 10-100Ãë + BYTE bySensitivity; // ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[5]; // ±£Áô×Ö½Ú +}NET_VCA_LEFT, *LPNET_VCA_LEFT; + +// ÎïÆ·ÄÃÈ¡ +typedef struct tagNET_VCA_TAKE +{ + NET_VCA_POLYGON struRegion; // ÇøÓò·¶Î§ + WORD wDuration; // ´¥·¢ÎïÆ·ÄÃÈ¡±¨¾¯ãÐÖµ10-100Ãë + BYTE bySensitivity; // ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[5]; // ±£Áô×Ö½Ú +}NET_VCA_TAKE, *LPNET_VCA_TAKE; + +typedef struct tagNET_VCA_OVER_TIME +{ + NET_VCA_POLYGON struRegion; // ÇøÓò·¶Î§ + WORD wDuration; // ²Ù×÷±¨¾¯Ê±¼äãÐÖµ 4s-60000s + BYTE byRes[6]; // ±£Áô×Ö½Ú +}NET_VCA_OVER_TIME, *LPNET_VCA_OVER_TIME; + +typedef struct tagNET_VCA_HUMAN_ENTER +{ + DWORD dwRes[23]; //±£Áô×Ö½Ú +}NET_VCA_HUMAN_ENTER, *LPNET_VCA_HUMAN_ENTER; + +//ÌùÖ½Ìõ²ÎÊý +typedef struct tagNET_VCA_STICK_UP +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢Ê±¼äãÐÖµ£º4-60Ã룬½¨Òé10Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[5]; +}NET_VCA_STICK_UP, *LPNET_VCA_STICK_UP; + +//¶Á¿¨Æ÷²ÎÊý +typedef struct tagNET_VCA_SCANNER +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //¶Á¿¨³ÖÐøʱ¼ä£º4-60Ãë + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[5]; +}NET_VCA_SCANNER, *LPNET_VCA_SCANNER; + +//Àë¸Úʼþ +typedef struct tagNET_VCA_LEAVE_POSITION +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + WORD wLeaveDelay; //ÎÞÈ˱¨¾¯Ê±¼ä£¬µ¥Î»£ºs + WORD wStaticDelay; //˯¾õ±¨¾¯Ê±¼ä£¬µ¥Î»£ºs + BYTE byMode; //ģʽ£¬0-Àë¸Úʼþ£¬1-˯¸Úʼþ£¬2-Àë¸Ú˯¸Úʼþ£¬3-ÔÚ¸Ú£¨µ±Àë¸ÚÈËÔ±»Øµ½¸Ú룩 + BYTE byPersonType; //Öµ¸ÚÈËÊýÀàÐÍ£¬0-µ¥ÈËÖµ¸Ú£¬1-Ë«ÈËÖµ¸Ú + BYTE byOnPosition; //ÔÚ¸ÚÈËÊý£¬1-10£¬Ä¬ÈÏ1 + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] +}NET_VCA_LEAVE_POSITION, *LPNET_VCA_LEAVE_POSITION; + +//βËæ²ÎÊý +typedef struct tagNET_VCA_TRAIL +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wRes; /* ±£Áô */ + BYTE bySensitivity; /* ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] */ + BYTE byRes[5]; +}NET_VCA_TRAIL, *LPNET_VCA_TRAIL; + +//µ¹µØ²ÎÊý +typedef struct tagNET_VCA_FALL_DOWN +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; /* ´¥·¢Ê¼þãÐÖµ 1-60s*/ + BYTE bySensitivity; /* ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] */ + BYTE byHeightThreshold; //¸ß¶ÈãÐÖµ£¬·¶Î§[0,250]£¬Ä¬ÈÏ90£¬µ¥Î»£ºÀåÃ× + BYTE byRes[4]; +}NET_VCA_FALL_DOWN, *LPNET_VCA_FALL_DOWN; + +//ÆðÁ¢ +typedef struct tagNET_VCA_STANDUP +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,100] + BYTE byHeightThreshold; //¸ß¶ÈãÐÖµ£¬·¶Î§[0,250]£¬Ä¬ÈÏ130£¬µ¥Î»£ºÀåÃ× + WORD wDuration; //´¥·¢Ê¼þãÐÖµ[1,3600]£¬Ä¬ÈÏ2£¬µ¥Î»£ºÃë + BYTE byRes[4]; //±£Áô +}NET_VCA_STANDUP, *LPNET_VCA_STANDUP; + + +//ÈËÊý±ä»¯ +typedef struct tagNET_VCA_PEOPLENUM_CHANGE +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,100] + BYTE byPeopleNumThreshold; //ÈËÊýãÐÖµ£¬·¶Î§[0,5]£¬Ä¬ÈÏ1 + BYTE byDetectMode; //¼ì²â·½Ê½£¬ÓëÈËÊýãÐÖµÏà±È½Ï¡£1-´óÓÚ£¬2-СÓÚ£¬3-µÈÓÚ£¬4-²»µÈÓÚ + BYTE byNoneStateEffective; //ÎÞÈË״̬ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + WORD wDuration; //´¥·¢Ê±¼äãÐÖµ[1,3600]£¬Ä¬ÈÏ2£¬µ¥Î»£ºÃë + BYTE byPeopleNum; //´¥·¢±¨¾¯ÈËÊý£¬Ö»¶Á£¬½ö±¨¾¯Éϱ¨£¬É豸·µ»Ø0±íʾ²»Ö§³Ö±¾¹¦ÄÜÉϱ¨£¬0xff±íʾ±¨¾¯ÈËÊýΪ0 + BYTE byRes; //±£Áô +}NET_VCA_PEOPLENUM_CHANGE, *LPNET_VCA_PEOPLENUM_CHANGE; + +//¼ä¾à±ä»¯ +typedef struct tagNET_VCA_SPACING_CHANGE +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + float fSpacingThreshold; //¼ä¾àãÐÖµ£¬·¶Î§[0,10.0]£¬Ä¬ÈÏ1.0£¬µ¥Î»£ºÃ× + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,100] + BYTE byDetectMode; //¼ì²â·½Ê½£¬Óë¼ä¾àãÐÖµÏà±È½Ï¡£1-´óÓÚ£¬2-СÓÚ + WORD wDuration; //´¥·¢Ê±¼äãÐÖµ[1,3600]£¬Ä¬ÈÏ2£¬µ¥Î»£ºÃë +}NET_VCA_SPACING_CHANGE, *LPNET_VCA_SPACING_CHANGE; + + +//ÉùÇ¿Í»±ä²ÎÊý +typedef struct tagNET_VCA_AUDIO_ABNORMAL +{ + WORD wDecibel; //ÉùÒôÇ¿¶È + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,100] + BYTE byAudioMode; //ÉùÒô¼ì²âģʽ£¬0-ÁéÃô¶È¼ì²â£¬1-·Ö±´ãÐÖµ¼ì²â£¬2-ÁéÃô¶ÈÓë·Ö±´ãÐÖµ¼ì²â + BYTE byEnable; //ʹÄÜ£¬ÊÇ·ñ¿ªÆô(ÉùÇ¿Í»±ä£¬¶¸Éý) + BYTE byThreshold; //ÉùÒôãÐÖµ[1,100] + BYTE byRes[54]; //±£Áô +}NET_VCA_AUDIO_ABNORMAL, *LPNET_VCA_AUDIO_ABNORMAL; + +//ÉùÇ¿¶¸½µ 2014-03-21 +typedef struct tagNET_DVR_AUDIO_STEEP_DROP +{ + BYTE bySensitivity; /* ÁéÃô¶È²ÎÊý£¬·¶Î§[1,100] */ + BYTE byEnable; //ʹÄÜ£¬ÊÇ·ñ¿ªÆô(ÉùÇ¿Í»±ä£¬¶¸½µ) + BYTE byRes[6]; +}NET_DVR_AUDIO_STEEP_DROP, *LPNET_DVR_AUDIO_STEEP_DROP; + + +typedef struct tagNET_DVR_AUDIO_EXCEPTION +{ + DWORD dwSize; + BYTE byEnableAudioInException;//ʹÄÜ£¬ÊÇ·ñ¿ªÆô + BYTE byRes1[3]; + NET_VCA_AUDIO_ABNORMAL struAudioAbnormal; + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; //²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý ʵ¼ÊÖ§³ÖµÄÊýÁ¿ + DWORD byRelRecordChan[MAX_CHANNUM_V30]; + NET_DVR_AUDIO_STEEP_DROP struAudioSteepDrop; //ÉùÇ¿¶¸½µ + BYTE byRes2[24]; +}NET_DVR_AUDIO_EXCEPTION, *LPNET_DVR_AUDIO_EXCEPTION; + +typedef struct tagNET_VCA_TOILET_TARRY +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDelay; //Èç²Þ³¬Ê±Ê±¼ä[1,3600]£¬µ¥Î»£ºÃë + BYTE byRes[6]; +}NET_VCA_TOILET_TARRY, *LPNET_VCA_TOILET_TARRY; + +typedef struct tagNET_VCA_YARD_TARRY +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDelay; //·Å·ç³¡ÖÍÁôʱ¼ä[1,120]£¬µ¥Î»£ºÃë + BYTE byRes[6]; +}NET_VCA_YARD_TARRY, *LPNET_VCA_YARD_TARRY; + +typedef struct tagNET_VCA_ADV_REACH_HEIGHT +{ + NET_VCA_POLYGON struRegion; //ÅʸßÕÛÏß + DWORD dwCrossDirection; //¿çÔ½·½Ïò(Ïê¼ûVCA_CROSS_DIRECTION): 0-Ë«Ïò£¬1-´Ó×óµ½ÓÒ2-´ÓÓÒµ½×ó + BYTE byRes[4]; // ±£Áô×Ö½Ú +}NET_VCA_ADV_REACH_HEIGHT, * LPNET_VCA_ADV_REACH_HEIGHT; + +typedef struct tagNET_VCA_ADV_TRAVERSE_PLANE +{ + NET_VCA_POLYGON struRegion; //¾¯½äÃæÕÛÏß + DWORD dwCrossDirection; //¿çÔ½·½Ïò(Ïê¼ûVCA_CROSS_DIRECTION): 0-Ë«Ïò£¬1-´Ó×óµ½ÓÒ2-´ÓÓÒµ½×ó + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[3]; //±£Áô×Ö½Ú +} NET_VCA_ADV_TRAVERSE_PLANE,*LPNET_VCA_ADV_TRAVERSE_PLANE; + +typedef struct tagNET_VCA_PLAY_CELLPHONE +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //ÍæÊÖ»ú³¬Ê±Ê±¼ä[1,600]Ãë, ĬÈÏ20Ãë + BYTE byRes[6]; //±£Áô×Ö½Ú +}NET_VCA_PLAY_CELLPHONE, *LPNET_VCA_PLAY_CELLPHONE; + +typedef struct tagNET_VCA_LECTURE +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + WORD wDuration; //ÐÐΪʼþ´¥·¢Ê±¼äãÐÖµ: 1-10Ã룬½¨Òé1Ã룬ÅжÏÊÇÓÐЧ±¨¾¯µÄʱ¼ä + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byAlarmState;//Ö»¶Á×ֶνçÃæ²»ÏÔʾ£»0-±£Áô,1-±¨¾¯¿ªÊ¼,2-±¨¾¯½áÊø + BYTE byTrackingMode ;//¸ú×Ùģʽ£¬0-×Ô¶¯(ĬÈÏ) , 1-ˮƽ, 2-´¹Ö± + BYTE byZoomMode;//±ä±¶Ä£Ê½, 0-¹Ì¶¨(ĬÈÏ), 1-×Ô¶¯ + BYTE byZoomOver;//0-±£Áô,1-±ä±¶µ½Î»(±¨¾¯ÉÏ´«Â¼²¥Ö÷»ú£¬×÷ΪÇл»»­ÃæÅжÏÒÀ¾Ý) + BYTE byTrackStatus;//¸ú×Ù״̬ 0-±£Áô£¬1-¿ªÊ¼ÊڿΣ¨A£¬È«¾°£© 2-ÕýÔÚ¸ú×Ù£¨2,ÌØд£©£¬3 -¸ú×Ù¶ªÊ§£¨2,È«¾°£© +}NET_VCA_LECTURE, *LPNET_VCA_LECTURE; + +typedef struct tagNET_VCA_ANSWER +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity;//ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byAlarmState;//Ö»¶Á×ֶνçÃæ²»ÏÔʾ£»0-±£Áô,1-±¨¾¯¿ªÊ¼,2-±¨¾¯½áÊø + BYTE byZoomOver;//0-±£Áô,1-±ä±¶µ½Î»(±¨¾¯ÉÏ´«Â¼²¥Ö÷»ú£¬×÷ΪÇл»»­ÃæÅжÏÒÀ¾Ý) + BYTE byAnswerStudent;//0-±£Áô£¬1-ÎÞѧÉúÆðÁ¢£¬2-µ¥¸öѧÉúÆðÁ¢£¬3-¶à¸öѧÉúÆðÁ¢,4-ÒÉËÆѧÉúÆðÁ¢, 5-µ¥¸öѧÉú×߶¯ + BYTE byRes[4]; //±£Áô +}NET_VCA_ANSWER, *LPNET_VCA_ANSWER; + +//¹ØÁª¹æÔò½á¹¹Ìå +typedef struct tagNET_VCA_RELATE_RULE_PARAM +{ + BYTE byRuleID; //¹æÔòÐòºÅ 0-±íʾÎÞ + BYTE byRes; //±£Áô + WORD wEventType; //ÐÐΪʼþÀàÐÍ£¬²Î¿¼VCA_RULE_EVENT_TYPE_EXÁô +}NET_VCA_RELATE_RULE_PARAM,*LPNET_VCA_RELATE_RULE_PARAM; + +typedef struct tagNET_VCA_COMBINED_RULE_ +{ + //¹æÔò´¥·¢Ë³Ðò£¬0-˳Ðò»òÄæÐò´¥·¢£¬1-˳Ðò´¥·¢ + BYTE byRuleSequence; + BYTE byRes[7]; + DWORD dwMinInterval; //×îСʱ¼ä¼ä¸ô£¬µ¥Î»£ºÃë + DWORD dwMaxInterval; //×î´óʱ¼ä¼ä¸ô£¬µ¥Î»£ºÃë + NET_VCA_RELATE_RULE_PARAM struRule1Raram;//¹æÔò1 + NET_VCA_RELATE_RULE_PARAM struRule2Raram;//¹æÔò2 + BYTE byRes1[36]; +} NET_VCA_COMBINED_RULE, *LPNET_VCA_COMBINED_RULE; + +//°åÊéʼþ +typedef struct tagNET_VCA_BLACKBOARD_WRITE +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§£¨ÅäÖÃÇøÓò£¬±¨¾¯Öв»º¬ÓиÃÇøÓò£© + BYTE byTeacherState;//½Ìʦ״̬£»0~½ÌʦÌØд£¬1~½Ìʦȫ¾°£¬2~½²Ì¨ÎÞÈË״̬ + BYTE byWritingState;//°åÊé״̬£»0~°åÊ鿪ʼ£¬1~°åÊé½áÊø + BYTE byWritingArea;//°åÊéÇøÓò£»0~Õû¸ö°åÊ飬1~°åÊé×ó±ß£¬2~°åÊéÓÒ±ß + BYTE byRes[5]; +}NET_VCA_BLACKBOARD_WRITE, *LPNET_VCA_BLACKBOARD_WRITE; + +//ÈËÔ±¾Û¼¯×´Ì¬ +typedef struct tagNET_VCA_HIGH_DENSITY_STATUS +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + float fDensity; //¾Û¼¯±ÈÂÊ, ·¶Î§: [0.1, 1.0] + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,5] + BYTE byRes[3]; // ±£Áô×Ö½Ú +}NET_VCA_HIGH_DENSITY_STATUS, *LPNET_VCA_HIGH_DENSITY_STATUS; + +//±¼Åܼì²â +typedef struct _NET_VCA_RUNNING_ +{ + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + DWORD dwSpeed; //±¼ÅÜËٶȣ¬·¶Î§[1,10] + WORD wDuration; // ´¥·¢±¨¾¯Ê±¼äãÐÖµ + BYTE byRunMode; //±¼ÅÜģʽ£¬0-±£Áô,1£ºµ¥È˱¼ÅÜ,2:¶àÈ˱¼ÅÜ + BYTE byRes; +}NET_VCA_RUNNING, *LPNET_VCA_RUNNING; + +// ÖÍÁô¼ì²â +typedef struct tagNET_VCA_RETENTION +{ + NET_VCA_POLYGON struRegion; // ÇøÓò·¶Î§ + WORD wDuration; //´¥·¢ÖÍÁô±¨¾¯ãÐֵʱ¼ä£¨60-3600Ã룩ĬÈÏ1800Ãë + BYTE byRes[6]; // ±£Áô×Ö½Ú +}NET_VCA_RETENTION, *LPNET_VCA_RETENTION; + +// ̬ÊÆ·ÖÎö²ÎÊý +typedef struct tagNET_VCA_SITUATION_ANALYSIS +{ + NET_VCA_POLYGON struRegion; // ÇøÓò·¶Î§ + WORD wPeopleNum; //ÇøÓòÈËÊý + BYTE byRes[6]; // ±£Áô×Ö½Ú +}NET_VCA_SITUATION_ANALYSIS, *LPNET_VCA_SITUATION_ANALYSIS; + +//³ÖÐø±¨¾¯ +typedef struct _NET_VCA_DURATION_ +{ + WORD wRelationEventType; //²Î¿¼VCA_RULE_EVENT_TYPE_EX + BYTE byRes[90]; +}NET_VCA_DURATION, *LPNET_VCA_DURATION; + +//αÔ쿨¼ì²â²ÎÊý +typedef struct tagNET_VCA_FAKECARD +{ + NET_VCA_POLYGON struRegion; // ÇøÓò·¶Î§ + BYTE bySensitivity; // ÁéÃô¶È²ÎÊý£º×îС1,×î´ó5,ĬÈÏ3 + BYTE byRes[7]; // ±£Áô×Ö½Ú +}NET_VCA_FAKECARD, *LPNET_VCA_FAKECARD; + +//¾¯½äʼþ²ÎÊý +typedef union tagNET_VCA_EVENT_UNION +{ + DWORD uLen[23]; //²ÎÊý + NET_VCA_TRAVERSE_PLANE struTraversePlane; //´©Ô½¾¯½äÃæ²ÎÊý + NET_VCA_AREA struArea; //½øÈë/À뿪ÇøÓò²ÎÊý + NET_VCA_INTRUSION struIntrusion; //ÈëÇÖ²ÎÊý + NET_VCA_LOITER struLoiter; //ÅÇ»²²ÎÊý + NET_VCA_TAKE_LEFT struTakeTeft; //ÎïÆ·ÒÅÁô/ÎïÆ·ÄÃÈ¡²ÎÊý + NET_VCA_PARKING struParking; //Í£³µ²ÎÊý + NET_VCA_RUN struRun; //¿ìËÙÒƶ¯²ÎÊý + NET_VCA_HIGH_DENSITY struHighDensity; //ÈËÔ±¾Û¼¯²ÎÊý + NET_VCA_VIOLENT_MOTION struViolentMotion; //¾çÁÒÔ˶¯ + NET_VCA_REACH_HIGHT struReachHight; //ÅÊ¸ß + NET_VCA_GET_UP struGetUp; //Æð´² + NET_VCA_LEFT struLeft; //ÎïÆ·ÒÅÁô + NET_VCA_TAKE struTake; // ÎïÆ·ÄÃÈ¡ + NET_VCA_HUMAN_ENTER struHumanEnter; //ÈËÔ±½øÈë + NET_VCA_OVER_TIME struOvertime; //²Ù×÷³¬Ê± + NET_VCA_STICK_UP struStickUp; //ÌùÖ½Ìõ + NET_VCA_SCANNER struScanner; //¶Á¿¨Æ÷²ÎÊý + NET_VCA_LEAVE_POSITION struLeavePos; //Àë¸Ú²ÎÊý + NET_VCA_TRAIL struTrail; //βËæ²ÎÊý + NET_VCA_FALL_DOWN struFallDown; //µ¹µØ²ÎÊý + NET_VCA_AUDIO_ABNORMAL struAudioAbnormal; //ÉùÇ¿Í»±ä + NET_VCA_ADV_REACH_HEIGHT struReachHeight; //ÕÛÏßÅʸ߲ÎÊý + NET_VCA_TOILET_TARRY struToiletTarry; //Èç²Þ³¬Ê±²ÎÊý + NET_VCA_YARD_TARRY struYardTarry; //·Å·ç³¡ÖÍÁô²ÎÊý + NET_VCA_ADV_TRAVERSE_PLANE struAdvTraversePlane;//ÕÛÏß¾¯½äÃæ²ÎÊý + NET_VCA_LECTURE struLecture; //ÊÚ¿Îʼþ + NET_VCA_ANSWER struAnswer; //»Ø´ðÎÊÌâʼþ + NET_VCA_STANDUP struStandUp; //ÆðÁ¢²ÎÊý + NET_VCA_PEOPLENUM_CHANGE struPeopleNumChange; //ÈËÊý±ä»¯²ÎÊý + NET_VCA_SPACING_CHANGE struSpacingChange; //¼ä¾à±ä»¯²ÎÊý + NET_VCA_COMBINED_RULE struCombinedRule; //×éºÏ¹æÔò²ÎÊý + NET_VCA_SIT_QUIETLY struSitQuietly; //¾²×ø²ÎÊý + NET_VCA_HIGH_DENSITY_STATUS struHighDensityStatus; //ÈËÔ±¾Û¼¯×´Ì¬ + NET_VCA_RUNNING struRunning; //±¼ÅܲÎÊý + NET_VCA_RETENTION struRetention;//ÖÍÁô¼ì²â + NET_VCA_BLACKBOARD_WRITE struBlackboardWrite; //°åÊé²ÎÊý + NET_VCA_SITUATION_ANALYSIS struSituationAnalysis; //̬ÊÆ·ÖÎö²ÎÊý + NET_VCA_PLAY_CELLPHONE struPlayCellphone; //ÍæÊÖ»ú¼ì²â²ÎÊý + NET_VCA_DURATION struDruation;//³ÖÐø±¨¾¯²ÎÊý + NET_VCA_FAKECARD struFakeCard; //αÔ쿨¼ì²â +}NET_VCA_EVENT_UNION, *LPNET_VCA_EVENT_UNION; + +// ³ß´ç¹ýÂËÆ÷ÀàÐÍ +typedef enum _VCA_SIZE_FILTER_MODE_ +{ + IMAGE_PIX_MODE, //¸ù¾ÝÏñËØ´óСÉèÖà + REAL_WORLD_MODE, //¸ù¾Ýʵ¼Ê´óСÉèÖà + DEFAULT_MODE // ĬÈÏģʽ +}SIZE_FILTER_MODE; +//³ß´ç¹ýÂËÆ÷ +typedef struct tagNET_VCA_SIZE_FILTER +{ + BYTE byActive; //ÊÇ·ñ¼¤»î³ß´ç¹ýÂËÆ÷ 0-·ñ ·Ç0-ÊÇ + BYTE byMode; //¹ýÂËÆ÷ģʽSIZE_FILTER_MODE + BYTE byRes[2]; //±£Áô£¬ÖÃ0 + NET_VCA_RECT struMiniRect; //×îСĿ±ê¿ò,È«0±íʾ²»ÉèÖà + NET_VCA_RECT struMaxRect; //×î´óÄ¿±ê¿ò,È«0±íʾ²»ÉèÖà +}NET_VCA_SIZE_FILTER, *LPNET_VCA_SIZE_FILTER; + +//¾¯½ä¹æÔò½á¹¹ +typedef struct tagNET_VCA_ONE_RULE +{ + BYTE byActive; //ÊÇ·ñ¼¤»î¹æÔò,0-·ñ,·Ç0-ÊÇ + BYTE byRes[7]; //±£Áô£¬ÉèÖÃΪ0×ֶΠ+ BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + VCA_EVENT_TYPE dwEventType; //ÐÐΪ·ÖÎöʼþÀàÐÍ + NET_VCA_EVENT_UNION uEventParam; //ÐÐΪ·ÖÎöʼþ²ÎÊý + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ +}NET_VCA_ONE_RULE, *LPNET_VCA_ONE_RULE; + +//ÐÐΪ·ÖÎöÅäÖýṹÌå +typedef struct tagNET_VCA_RULECFG +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE byUpLastAlarm; //2011-04-06 ÊÇ·ñÏÈÉÏ´«×î½üÒ»´ÎµÄ±¨¾¯ + BYTE byPicRecordEnable; /*2012-3-1ÊÇ·ñÆôÓÃͼƬ´æ´¢, 0-²»ÆôÓÃ, 1-ÆôÓÃ*/ + BYTE byRes; + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_VCA_ONE_RULE struRule[MAX_RULE_NUM]; //¹æÔòÊý×é +}NET_VCA_RULECFG, *LPNET_VCA_RULECFG; + +//Ç°¶ËÉ豸µØÖ·ÐÅÏ¢£¬ÖÇÄÜ·ÖÎöÒDZíʾµÄÊÇÇ°¶ËÉ豸µÄµØÖ·ÐÅÏ¢£¬ÆäËûÉ豸±íʾ±¾»úµÄµØÖ· +/* +µ±½ÓÈëÉ豸ģÄâͨµÀ(IPC/DVR/DVS/IVMS)±¨¾¯µÄʱºò£¬ÏÂÃæ×Ö¶ÎÌîдÉ豸µÄIPµØÖ·£¬¶Ë¿Ú£¬byChannelºÍbyIvmsChannel ¾ùΪµ±Ç°µÄÄ£ÄâͨµÀºÅ +eg: +struDevIP = Ä£ÄâͨµÀ¶ÔÓ¦É豸µÄIPµØÖ· +wPort = Ä£ÄâͨµÀ¶ÔÓ¦É豸µÄ¶Ë¿Ú +byChannel = ±¨¾¯¶ÔӦģÄâͨµÀµÄͨµÀºÅ +byIvmsChannel = ±¨¾¯¶ÔӦģÄâͨµÀµÄͨµÀºÅ + + µ±½ÓÈëÉ豸Êý×ÖͨµÀ(DVR/DVS/IVMS)±¨¾¯µÄʱºò£¬ÏÂÃæ×Ö¶ÎÌîдÊý×ÖͨµÀ½ÓÈëÉ豸µÄIPµØÖ·£¬¶Ë¿Ú£¬byChannelΪÊý×ÖͨµÀ½ÓÈëÉ豸µÄͨµÀºÅ£¬byIvmsChannelΪÊý×ÖͨµÀºÅ + eg: + struDevIP = Êý×ÖͨµÀ½ÓÈëÉ豸µÄIPµØÖ· + wPort = Êý×ÖͨµÀ½ÓÈëÉ豸µÄ¶Ë¿Ú + byChannel = Êý×ÖͨµÀ½ÓÈëÉ豸µÄͨµÀºÅ + byIvmsChannel = Êý×ÖͨµÀºÅ +*/ +typedef struct tagNET_VCA_DEV_INFO +{ + NET_DVR_IPADDR struDevIP; //Ç°¶ËÉ豸µØÖ·£¬ + WORD wPort; //Ç°¶ËÉ豸¶Ë¿ÚºÅ£¬ + BYTE byChannel; //Ç°¶ËÉ豸ͨµÀ£¬ + BYTE byIvmsChannel; // Ivms ͨµÀ +}NET_VCA_DEV_INFO, *LPNET_VCA_DEV_INFO; + +typedef struct tagNET_DVR_TARGET_LEFT_REGION_ALARM +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + BYTE byTargetType;//¼ì²âÄ¿±êÀàÐÍ 0-ÎÞЧĿ±ê£¬1-½Ìʦ 2-ѧÉú + BYTE byLeftDirection;//¼ì²âÄ¿±êÀ뿪·½ÏòÀàÐÍ0-±£Áô,1-ÉÏ,2-ÏÂ,3-×ó,4-ÓÒ + BYTE byTargetStatus;//0-±£Áô(²»×ö´¦Àí) + BYTE byRes[125]; +}NET_DVR_TARGET_LEFT_REGION_ALARM,*LPNET_DVR_TARGET_LEFT_REGION_ALARM; + +/* ±¨¾¯Í¼Æ¬Í¼Æ¬ÐÅÏ¢ */ +typedef struct +{ + /*20-˾»úÎüÑÌ Ë¾»ú±¨¾¯´Ó³éÑÌ¿ªÊ¼, 21-˾»ú´òµç»°, 22-˾»úÆ£ÀͼÝÊ», 23-˾»úûÓÐÄ¿ÊÓÇ°·½£¨Àë¸Ú£©,24-˾»ú¼ì²â²»µ½Í·²¿, 25-˾»úϵ°²È«´ø, + 26-˾»ú¼ñÊ°ÎïÆ·, 27-˾»ú´ò¹þÇ·, 28-˾»ú³Ô¶«Î÷»òºÈË®, 29-˾»úÁÄÌì, 31-˾»úδ´©¹¤×÷·þ*/ + DWORD dwPicType; /* ±¨¾¯Í¼Æ¬ÀàÐÍ */ + char *pPicBuf; /*ͼƬָÕë*/ + DWORD dwPicLen; /* ±¨¾¯Í¼Æ¬³¤¶È£¬Îª0ʱ±íʾûÓÐͼƬ */ + DWORD dwTime; /* ץͼʱ¼ä */ + char *pVideoBuf; /*ÊÓƵָÕë, xxx.mp4*/ + DWORD dwVideoLen; /* ץͼÊÓƵµÄ³¤¶È£¬0±íʾûÓб¨¾¯ÊÓƵ 20180518 */ + BYTE byRes[12]; /* Ô¤Áô */ +}NET_DVR_DBD_PICTURE_INFO, *LPNET_DVR_DBD_PICTURE_INFO; + +/* ±¨¾¯Î»ÖÃÐÅÏ¢ */ +typedef struct +{/* 24 bytes */ + DWORD bValid; /* ¶¨Î»ÐÅÏ¢ÊÇ·ñÓÐЧ */ + DWORD dwLongitude; /* ¾­¶È = ʵ¼Ê¶È*3600*100+ʵ¼Ê·Ö*60*100+ʵ¼ÊÃë*100 */ + DWORD dwLatitude; /* γ¶È = ʵ¼Ê¶È*3600*100+ʵ¼Ê·Ö*60*100+ʵ¼ÊÃë*100 */ + DWORD dwVehicleSpeed; /* ËÙ¶È = ʵ¼ÊËÙ¶È*1000*100 */ + DWORD dwVehicleDirection; /* Ëٶȷ½Ïò½Ç = ʵ¼Ê·½Ïò*100 */ + DWORD dwAltitude; /* º£°Î¸ß¶È(ÀåÃ×) */ +}NET_DVR_DBD_POSITION_INFO, *LPNET_DVR_DBD_POSITION_INFO; + +/* ±¨¾¯×´Ì¬ÐÅÏ¢ */ +typedef struct +{/* 24 bytes */ + BYTE bySmoke; /* ÎüÑÌ */ + BYTE byPhone; /* ´òµç»° */ + BYTE byTiredDriving; /* Æ£ÀͼÝÊ» */ + BYTE byNoVisualFront; /* ûÓÐÄ¿ÊÓÇ°·½ */ + BYTE byNoHead; /* Àë¸Ú */ + BYTE byWithoutBelt; /* ²»Ïµ°²È«´ø */ + BYTE byPickingUpThing; /* ¼ñÊ°ÎïÆ· */ + BYTE byYawn; /* ´ò¹þÇ· */ + BYTE byEatOrDrink; /* ³ÔºÈ */ + BYTE byChatting; /* ÁÄÌì */ + BYTE byTampering; /* ÕÚµ²IPC */ + BYTE byWithoutUniform; /* δ´©¹¤×÷·þ */ + BYTE byDriverCmpFail; /* Éí·Ýʶ±ðÒì³£*/ + BYTE byDriverChange; /* ¼ÝʻԱ¸ü»»*/ + BYTE byDriveLongTime; /*³¬Ê±¼ÝÊ»*/ + BYTE byInfraredBlockingSunglasses; /* ºìÍâ×è¶ÏÄ«¾µ */ + BYTE byOutOfWheel; /* 0-±£Áô£¬1-µ¥ÊÖÍÑÀë·½ÏòÅÌ£¬2-Ë«ÊÖÍÑÀë·½ÏòÅÌ */ + BYTE byRes[7]; +}NET_DVR_DBD_ALARM_STATE, *LPNET_DVR_DBD_ALARM_STATE; + +/* ¼ÝÊ»ÐÐΪ±¨¾¯ÐÅÏ¢ */ +typedef struct +{ + DWORD dwSize; /* ±¨¾¯ÉÏ´«½á¹¹Ìå´óС 4*/ + BYTE byChannel; /* ͨµÀºÅ 1*/ + BYTE byLevel; /*±¨¾¯µÈ¼¶,µ±Ç°Ö»ÓÐ1*/ + BYTE byRes1[2]; /* ±£Áô×Ö½Ú 3*/ + NET_VCA_DEV_INFO struIpcInfo; /* ±¨¾¯IPͨµÀÐÅÏ¢ 24*/ + NET_DVR_DBD_POSITION_INFO struPosInfo; /* ±¨¾¯Î»ÖÃÐÅÏ¢ 24*/ + NET_DVR_DBD_PICTURE_INFO struPicInfo; /* ±¨¾¯Í¼Æ¬ÐÅÏ¢*/ + NET_DVR_DBD_ALARM_STATE struAlarmState; /* ±¨¾¯×´Ì¬ÐÅÏ¢ 24*/ + BYTE byRes2[20]; /* ±£Áô 20*/ +}NET_DVR_DBD_ALRAM_INFO, *LPNET_DVR_DBD_ALRAM_INFO; + +/* ADAS±¨¾¯Í¼Æ¬ÐÅÏ¢ */ +typedef struct +{ + DWORD dwPicType; /* ±¨¾¯Í¼Æ¬ÀàÐÍ */ + char *pPicBuf; /*ͼƬָÕë*/ + DWORD dwPicLen; /* ±¨¾¯Í¼Æ¬³¤¶È£¬Îª0ʱ±íʾûÓÐͼƬ */ + DWORD dwTime; /* ץͼʱ¼ä */ + char *pVideoBuf; /*ÊÓƵָÕë, xxx.mp4*/ + DWORD dwVideoLen; /* ץͼÊÓƵµÄ³¤¶È£¬0±íʾûÓб¨¾¯ÊÓƵ 20180518 */ + BYTE byRes[12]; /* Ô¤Áô */ +} NET_DVR_ADAS_PICTURE_INFO, *LPNET_DVR_ADAS_PICTURE_INFO; + +/* ADAS±¨¾¯Î»ÖÃÐÅÏ¢ */ +typedef struct +{/* 24 bytes */ + DWORD dwValid; /* ¶¨Î»ÐÅÏ¢ÊÇ·ñÓÐЧ */ + DWORD dwLongitude; /* ¾­¶È = ʵ¼Ê¶È*3600*100+ʵ¼Ê·Ö*60*100+ʵ¼ÊÃë*100 */ + DWORD dwLatitude; /* γ¶È = ʵ¼Ê¶È*3600*100+ʵ¼Ê·Ö*60*100+ʵ¼ÊÃë*100 */ + DWORD dwVehicleSpeed; /* ËÙ¶È = ʵ¼ÊËÙ¶È*1000*100 */ + DWORD dwVehicleDirection; /* Ëٶȷ½Ïò½Ç = ʵ¼Ê·½Ïò*100 */ + DWORD dwAltitude; /* º£°Î¸ß¶È(ÀåÃ×) */ +}NET_DVR_ADAS_POSITION_INFO, *LPNET_DVR_ADAS_POSITION_INFO; + +/* ADAS±¨¾¯×´Ì¬ÐÅÏ¢ */ +typedef struct +{/* 24 bytes */ + BYTE dwFcw; /* Ç°³µÅöײ£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE dwLdw; /* ³µµÀÆ«À룬0ÎÞ£¬1×ó²àÆ«À룬2ÓÒ²àÆ«Àë */ + BYTE dwHmw; /* ³µ¾à¼à²â£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE dwPcw; /* ÐÐÈËÅöײ£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE dwBsd; /* äÇø¼ì²â£¬0ÎÞ£¬1ʼþ·¢Éú , 2-ÓÒ²àäÇø±¨¾¯£¬3-×ó²àäÇø±¨¾¯, 4-ºó²àäÇø±¨¾¯*/ + BYTE byAcc; /* ¼±¼ÓËÙ£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE byBrake; /*¼±¼õËÙ£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE byTurn; /* ¼±×ªÍ䣬0ÎÞ£¬1ÓÒ¼±×ªÍ䣬2×ó¼±×ªÍä */ + BYTE byRollover; /* ²à·­£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE byNoCourtesy; /* δÀñÈÃÐÐÈË£¬0ÎÞ£¬1ʼþ·¢Éú */ + BYTE byTsr; /*½»Í¨±êʶ¾¯¸æ£¬0ÎÞ£¬1ÏÞËÙ£¬2Ï޸ߣ¬3ÏÞ¿í */ + BYTE byRes[13]; +}NET_DVR_ADAS_ALARM_STATE, *LPNET_DVR_ADAS_ALARM_STATE; + +/* ADAS¼ÝÊ»ÐÐΪ±¨¾¯ÐÅÏ¢ */ +typedef struct +{ + DWORD dwSize; /* ±¨¾¯ÉÏ´«½á¹¹Ìå´óС 4*/ + BYTE byChannel; /* ͨµÀºÅ 1*/ + BYTE byRes1[3]; /* ±£Áô×Ö½Ú 3*/ + NET_VCA_DEV_INFO struIpcInfo; /* ±¨¾¯IPͨµÀÐÅÏ¢ 28*/ + NET_DVR_ADAS_POSITION_INFO struPosInfo; /* ±¨¾¯Î»ÖÃÐÅÏ¢ 24*/ + NET_DVR_ADAS_PICTURE_INFO struPicInfo; /* ±¨¾¯Í¼Æ¬ÐÅÏ¢*/ + NET_DVR_ADAS_ALARM_STATE struAlarmState; /* ±¨¾¯×´Ì¬ÐÅÏ¢ 24*/ + BYTE byRes2[20]; /* ±£Áô 20*/ +}NET_DVR_ADAS_ALRAM_INFO, *LPNET_DVR_ADAS_ALRAM_INFO; + +/* ÐгµÊµÊ±Êý¾Ý */ +typedef struct +{ + DWORD dwSize; /* ±¨¾¯ÉÏ´«½á¹¹Ìå´óС */ + DWORD dwSpeedValue; /* ËÙ¶ÈÖµ */ + DWORD dwSpeedPulse; /* ²âËÙÂö³å */ + BYTE byUpgPercent; /* Éý¼¶½ø¶È£¬Õý³£0-100£¬Éý¼¶Ê§°Ü·µ»Ø255£¬Ã¿´Î¿ªÊ¼Éý¼¶Ê±£¬Ê×ÏÈÐèÒªµÈ½ø¶È0£¬²Å±íʾ׼±¸¿ªÊ¼ÁË 20180508À©Õ¹*/ + BYTE byRes1[3]; + DWORD dwVideoLostChans; /*°´Î»±íʾ£¬0±íʾÕý³££¬1-±íʾÊÓƵ¶ªÊ§£¬µÚһλ±íʾµÚһͨµÀ*/ + BYTE byRes2[44]; +}NET_DVR_VEH_REALTIME_DATA_INFO, *LPNET_DVR_VEH_REALTIME_DATA_INFO; + +#define VCA_ATTEND_MAX_PIC_NUM 3 //¿¼ÇÚʼþ×î´óͼƬÕÅÊý +#define VCA_ATTEND_DRIVER_NAME_LEN 64 //·Ö×éÐÅϢ˾»úÃû×Ö³¤¶È +#define VCA_ATTEND_CARD_ID_LEN 32 //·Ö×éÐÅϢ˾»úÖ¤¼þºÅÂ볤¶È +#define VCA_ATTEND_MAX_ALARM_ID_LEN 32 //±¨¾¯Ê¼þΨһ±àºÅµÄ×î´ó³¤¶È + +typedef struct +{ + DWORD dwPicLen; //±¨¾¯Í¼Æ¬³¤¶È£¬Îª0ʱ±íʾûÓÐͼƬ + char *pPicBuf; //ͼƬָÕë + BYTE byRes[12]; //Ô¤Áô +}NET_DVR_VCA_ATTEND_PICDATA, *LPNET_DVR_VCA_ATTEND_PICDATA; + +/* ¿¼ÇÚʼþͼƬÐÅÏ¢ */ +typedef struct +{ + BYTE byPicNum; //¿¼ÇÚͼƬÊýÁ¿ + BYTE byRes1[3]; //Ô¤Áô + NET_DVR_VCA_ATTEND_PICDATA struPicData[VCA_ATTEND_MAX_PIC_NUM]; //±¨¾¯Í¼Æ¬Êý¾Ý + DWORD dwVideoLen; //ץͼÊÓƵµÄ³¤¶È£¬0±íʾûÓб¨¾¯ÊÓƵ + char *pVideoBuf; //ÊÓƵָÕë + BYTE byRes[64]; //Ô¤Áô +}NET_DVR_VCA_ATTEND_PICTURE_INFO, *LPNET_DVR_VCA_ATTEND_PICTURE_INFO; + +/* ¿¼ÇÚʼþÉÏ´«ÐÅÏ¢*/ +typedef struct +{ + DWORD dwSize; // ±¨¾¯ÉÏ´«½á¹¹Ìå´óС + BYTE byMethod; //¿¼ÇÚ·½Ê½ 0-IC¿¨¿¼ÇÚ,1-ÈËÁ³¿¼ÇÚ + BYTE byStatus; //¿¼ÇÚ״̬ 0-±£Áô£¬1-ÉÏ°à,2-Ï°ࣨÎÞÈËÁ³»ò»»°à£© + BYTE byCertIDType; //¼ÝʻԱ֤¼þÀàÐÍ£º0-ÓªÔË×ʸñÖ¤£¬1-Éí·ÝÖ¤ + BYTE byCertIDLen; //¼ÝʻԱ´ÓÒµ×ʸñÖ¤±àÂ볤¶È + char sCertId[VCA_ATTEND_CARD_ID_LEN]; //¼ÝʻԱ´ÓÒµ×ʸñÖ¤±àÂë + DWORD dwTime; //¿¼ÇÚʱ¼ä + char sName[VCA_ATTEND_DRIVER_NAME_LEN]; //¼ÝʻԱÐÕÃû + char sAlarmIdNo[VCA_ATTEND_MAX_ALARM_ID_LEN]; //±¨¾¯±êʶºÅ + NET_DVR_VCA_ATTEND_PICTURE_INFO struPicInfo; //±¨¾¯Í¼Æ¬ÐÅÏ¢ + BYTE byRes[128]; //±£Áô +}NET_DVR_VCA_ATTEND_ALARM_INFO, *LPNET_DVR_VCA_ATTEND_ALARM_INFO; + +//³ß´ç¹ýÂ˲ßÂÔ +typedef struct tagNET_VCA_FILTER_STRATEGY +{ + BYTE byStrategy; //³ß´ç¹ýÂ˲ßÂÔ 0 - ²»ÆôÓà 1-¸ß¶ÈºÍ¿í¶È¹ýÂË,2-Ãæ»ý¹ýÂË + BYTE byRes[11]; //±£Áô +}NET_VCA_FILTER_STRATEGY,*LPNET_VCA_FILTER_STRATEGY; + +//¹æÔò´¥·¢²ÎÊý +typedef struct tagNET_VCA_RULE_TRIGGER_PARAM +{ + BYTE byTriggerMode; //¹æÔòµÄ´¥·¢·½Ê½£¬0- ²»ÆôÓã¬1- ¹ì¼£µã 2- Ä¿±êÃæ»ý + BYTE byTriggerPoint; //´¥·¢µã£¬´¥·¢·½Ê½Îª¹ì¼£µãʱÓÐЧ 0- ÖÐ,1-ÉÏ,2-Ï + BYTE byRes1[2]; //±£Áô + float fTriggerArea; //´¥·¢Ä¿±êÃæ»ý°Ù·Ö±È [0,100]£¬´¥·¢·½Ê½ÎªÄ¿±êÃæ»ýʱÓÐЧ + BYTE byRes2[4]; //±£Áô +}NET_VCA_RULE_TRIGGER_PARAM,*LPNET_VCA_RULE_TRIGGER_PARAM; + +//¾¯½ä¹æÔò½á¹¹ +typedef struct tagNET_VCA_ONE_RULE_V41 +{ + BYTE byActive; //ÊÇ·ñ¼¤»î¹æÔò,0-·ñ,·Ç0-ÊÇ + BYTE byRes1[4]; //±£Áô£¬ÉèÖÃΪ0×ֶΠ+ BYTE byEventTypeFlag; //±êÖ¾ÐÐΪʼþÀàÐÍ×ֶεÄÓÐЧÐÔ£¬0-dwEventTypeÓÐЧ£¬1-wEventTypeExÓÐЧ + //×¢£º´Ë×Ö¶ÎbyEventTypeFlagÖ»ÔÚÉèÖòÎÊýʱÓÐЧ£¬´ÓÉ豸»ñÈ¡²ÎÊýʱ£¬¿ÉÖ±½Ó´ÓwEventTypeEx»ñȡʼþÀàÐÍ£¬ÎÞÐèÅжϴË×ֶεÄÖµ + WORD wEventTypeEx; //ÐÐΪʼþÀàÐÍÀ©Õ¹£¬ÓÃÓÚ´úÌæ×Ö¶ÎdwEventType£¬²Î¿¼VCA_RULE_EVENT_TYPE_EX + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + VCA_EVENT_TYPE dwEventType; //ÐÐΪʼþÀàÐÍ£¬±£ÁôÊÇΪÁ˼æÈÝ£¬ºóÐø½¨ÒéʹÓÃwEventTypeEx»ñȡʼþÀàÐÍ + NET_VCA_EVENT_UNION uEventParam; //ÐÐΪ·ÖÎöʼþ²ÎÊý + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + WORD wAlarmDelay; //ÖÇÄܱ¨¾¯ÑÓʱ£¬0-5s,1-10,2-30s,3-60s,4-120s,5-300s,6-600s + BYTE byRes2[2]; //±£Áô + NET_VCA_FILTER_STRATEGY struFilterStrategy; //³ß´ç¹ýÂ˲ßÂÔ + NET_VCA_RULE_TRIGGER_PARAM struTriggerParam; //¹æÔò´¥·¢²ÎÊý + BYTE byRes[32]; +}NET_VCA_ONE_RULE_V41, *LPNET_VCA_ONE_RULE_V41; + +//ÐÐΪ·ÖÎöÅäÖýṹÌå +typedef struct tagNET_VCA_RULECFG_V41 +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE byUpLastAlarm; //2011-04-06 ÊÇ·ñÏÈÉÏ´«×î½üÒ»´ÎµÄ±¨¾¯ + BYTE byPicRecordEnable; /*2012-3-1ÊÇ·ñÆôÓÃͼƬ´æ´¢, 0-²»ÆôÓÃ, 1-ÆôÓÃ*/ + BYTE byRes1; + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_VCA_ONE_RULE_V41 struRule[MAX_RULE_NUM]; //¹æÔòÊý×é + WORD wRelSnapChan[MAX_REL_SNAPCHAN_NUM]; //¹ØÁª×¥Í¼Í¨µÀ£¬µ±Ö÷ͨµÀ±¨¾¯Ê±£¬Í¬Ê±»áÉÏ´«¹ØÁªÍ¨µÀµÄ×¥ÅÄͼƬ£¬0±íʾ²»¹ØÁª£¬ÆäËûֵΪ¹ØÁªÍ¨µÀºÅ + BYTE byRes[26]; +}NET_VCA_RULECFG_V41, *LPNET_VCA_RULECFG_V41; + +//¾¯½ä¹æÔò½á¹¹ +typedef struct NET_VCA_ONE_RULE_V42_ +{ + BYTE byActive; //ÊÇ·ñ¼¤»î¹æÔò, 0-·ñ£¬·Ç0-ÊÇ + BYTE byEventPriority;//ʼþÓÅÏȼ¶ 0-µÍ£¬1-ÖУ¬2-¸ß + BYTE byBackgroundSuppression;//±³¾°¸ÉÈÅÒÖÖÆ 0-¹Ø±Õ 1-¿ªÆô 2-×ÔÊÊÓ¦ + BYTE byRes1[3]; //±£Áô£¬ÉèÖÃΪ0×ֶΠ+ WORD wEventType; //ÐÐΪʼþÀàÐÍ£¬²Î¿¼VCA_RULE_EVENT_TYPE_EX + BYTE byRuleName[NAME_LEN/*32*/]; //¹æÔòÃû³Æ + NET_VCA_EVENT_UNION uEventParam; //ÐÐΪ·ÖÎöʼþ²ÎÊý + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; /*´¦Àí·½Ê½*/ + //Òì³£´¦Àí·½Ê½Öб¨¾¯Êä³öºÅÓë×éºÅ°ó¶¨£¬¼´×éºÅΪ0ʱ£¬±íʾ¹ØÁªµÄ±¨¾¯Êä³öºÅ·¶Î§Îª1-64£¬µ±×éºÅΪ1ʱ£¬±íʾ¹ØÁªµÄ±¨¾¯Êä³öºÅ·¶Î§Îª65-128£¬ ÇÒÊÇ×éÄÚ½ô´ÕÅÅÁУ¬Èç¹ûÓöµ½0xffffffff±íʾ±¾×é µ±Ç°µÄ¼°×éÄÚºóÐøµÄ±¨¾¯³öºÅÎÞЧ + DWORD dwRelRecordChan[MAX_CHANNUM_V30]; /* ±¨¾¯´¥·¢µÄ¼ÏóͨµÀ£¨ËÄ×Ö½ÚµÄͨµÀºÅ£¬³õʼֵÊÇ 0xffffffff£©*/ + //¹ØÁªµÄ¼ÏñͨµÀºÅÓë×éºÅ°ó¶¨£¬¼´×éºÅΪ0ʱ£¬±íʾ¹ØÁªµÄͨµÀºÅ·¶Î§Îª1-64£¬µ±×éºÅΪ1ʱ£¬±íʾ¹ØÁªµÄͨµÀºÅ·¶Î§Îª65-128£¬ ÇÒÊÇ×éÄÚ½ô´ÕÅÅÁУ¬Èç¹ûÓöµ½0xffffffff±íʾ±¾×é µ±Ç°µÄ¼°×éÄÚºóÐøµÄ¹ØÁªÍ¨µÀºÅÎÞЧ + WORD wAlarmDelay; //ÖÇÄܱ¨¾¯ÑÓʱ£¬0-5s,1-10,2-30s,3-60s,4-120s,5-300s,6-600s + BYTE byRes2[2]; //±£Áô + NET_VCA_FILTER_STRATEGY struFilterStrategy; //³ß´ç¹ýÂ˲ßÂÔ + NET_VCA_RULE_TRIGGER_PARAM struTriggerParam; //¹æÔò´¥·¢²ÎÊý + BYTE byRes[32]; +}NET_VCA_ONE_RULE_V42, *LPNET_VCA_ONE_RULE_V42; + + +typedef struct tagNET_DVR_PTZ_POSITION +{ + // ÊÇ·ñÆôÓó¡¾°£¬ÔÚÉèÖó¡¾°ÐÐΪ¹æÔòµÄʱºò¸Ã×Ö¶ÎÎÞЧ£¬ÔÚÉèÖÃÇò»ú±¾µØÅäÖ󡾰λÖÃÐÅϢʱ×÷ΪʹÄÜλ + BYTE byEnable; + BYTE byRes1[3]; //±£Áô + BYTE byPtzPositionName[NAME_LEN]; //³¡¾°Î»ÖÃÃû³Æ + NET_DVR_PTZPOS struPtzPos; //ptz ×ø±ê + BYTE byRes2[40]; +}NET_DVR_PTZ_POSITION, *LPNET_DVR_PTZ_POSITION; + +//ÐÐΪ·ÖÎöÅäÖýṹÌå +typedef struct tagNET_VCA_RULECFG_V42 +{ + DWORD dwSize; //½á¹¹Í¼´óС + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí 1-ÉÏ´« + BYTE byUpLastAlarm; //ÊÇ·ñÏÈÉÏ´«×î½üÒ»´ÎµÄ±¨¾¯£¬0-·ñ£¬1-ÊÇ + BYTE byPicRecordEnable; //ÊÇ·ñÆôÓÃͼƬ´æ´¢, 0-²»ÆôÓÃ, 1-ÆôÓà + BYTE byRes1; + NET_DVR_JPEGPARA struPicParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_VCA_ONE_RULE_V42 struRule[MAX_RULE_NUM_V42 /*16*/]; /* ¹æÔòÊý×é*/ + WORD wRelSnapChan[MAX_REL_SNAPCHAN_NUM]; //¹ØÁª×¥Í¼Í¨µÀ£¬µ±Ö÷ͨµÀ±¨¾¯Ê±£¬Í¬Ê±»áÉÏ´«¹ØÁªÍ¨µÀµÄ×¥ÅÄͼƬ£¬0±íʾ²»¹ØÁª£¬ÆäËûֵΪ¹ØÁªÍ¨µÀºÅ + BYTE byTrackEnable; //ÊÇ·ñÆôÓøú×Ù + BYTE byRes2; + NET_DVR_PTZ_POSITION struPTZPosition; //³¡¾°Î»ÖÃÐÅÏ¢ + WORD wTrackDuration; //¸ú×Ù³ÖÐøʱ¼ä£¬µ¥Î»s + WORD wIntervalTime; //µ¥´Î±¨¾¯¼ä¸ôʱ¼ä£¨Ã룩[1-7200]£¨Ä¬ÈÏΪ600£© + WORD wHeightLimit;//Ä¿±ê¼ì²â¸ß¶ÈÏÂÏÞ£¨ÀåÃ×£©[0-250]£¨Ä¬ÈÏΪ80cm£©£¬Ð¡Óڴ˸߶ȵÄÄ¿±ê½«²»×÷ΪĿ±ê½øÐмì²â + BYTE byRes[58];//±£Áô +}NET_VCA_RULECFG_V42, *LPNET_VCA_RULECFG_V42; + + +//¼ò»¯Ä¿±ê½á¹¹Ìå +typedef struct tagNET_VCA_TARGET_INFO +{ + DWORD dwID; //Ä¿±êID ,ÈËÔ±¾Û¼¯¹ý¸ß±¨¾¯Ê±Îª0 + NET_VCA_RECT struRect; //Ä¿±ê±ß½ç¿ò + BYTE byRes[4]; //±£Áô +}NET_VCA_TARGET_INFO, *LPNET_VCA_TARGET_INFO; + +//¼ò»¯µÄ¹æÔòÐÅÏ¢, °üº¬¹æÔòµÄ»ù±¾ÐÅÏ¢ +typedef struct tagNET_VCA_RULE_INFO +{ + BYTE byRuleID; //¹æÔòID,0-7 + BYTE bySceneID; //³¡¾°ID,·µ»Ø0ÎÞЧ + WORD wEventTypeEx; //ÐÐΪʼþÀàÐÍÀ©Õ¹£¬ÓÃÓÚ´úÌæ×Ö¶ÎdwEventType£¬²Î¿¼VCA_RULE_EVENT_TYPE_EX + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + VCA_EVENT_TYPE dwEventType; //ÐÐΪʼþÀàÐÍ£¬±£ÁôÊÇΪÁ˼æÈÝ£¬ºóÐø½¨ÒéʹwEventTypeEx»ñȡʼþÀàÐÍ + NET_VCA_EVENT_UNION uEventParam;//ʼþ²ÎÊý +}NET_VCA_RULE_INFO, *LPNET_VCA_RULE_INFO; + +//ÐÐΪ·ÖÎö½á¹ûÉϱ¨½á¹¹ +typedef struct tagNET_VCA_RULE_ALARM +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê,ÀúÊ·Ô­Òò£¬Êµ¼ÊûÓ㬱¾°æ±¾ÓÃÆðÀ´µ±byRelativeTimeFlagΪ1ʱ£¬±íʾΪUTCµÄʱ¼ä + DWORD dwAbsTime; //¾ø¶Ôʱ±ê,ÀúÊ·Ô­Òò£¬ÕâÀïʵ¼ÊΪOSDʱ¼ä + NET_VCA_RULE_INFO struRuleInfo; //ʼþ¹æÔòÐÅÏ¢ + NET_VCA_TARGET_INFO struTargetInfo; //±¨¾¯Ä¿±êÐÅÏ¢ + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwPicDataLen; //·µ»ØͼƬµÄ³¤¶È Ϊ0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾ¸Ã½á¹¹ºóÃæ½ô¸úͼƬÊý¾Ý*/ + BYTE byPicType; // 0-´¥·¢×¥ÅÄͼƬ 1-¶Ô±ÈͼƬ + BYTE byRelAlarmPicNum; //¹ØÁªÍ¨µÀ±¨¾¯Í¼Æ¬ÊýÁ¿ + BYTE bySmart;//IDSÉ豸·µ»Ø0(ĬÈÏÖµ)£¬Smart Functiom Return 1 + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + DWORD dwAlarmID; //±¨¾¯ID£¬ÓÃÒÔ±êʶͨµÀ¼ä¹ØÁª²úÉúµÄ×éºÏ±¨¾¯£¬0±íʾÎÞЧ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byRelativeTimeFlag; //dwRelativeTime×Ö¶ÎÊÇ·ñÓÐЧ 0-ÎÞЧ£¬ 1-ÓÐЧ£¬dwRelativeTime±íʾUTCʱ¼ä + BYTE byAppendInfoUploadEnabled; //¸½¼ÓÐÅÏ¢ÉÏ´«Ê¹ÄÜ 0-²»ÉÏ´« 1-ÉÏ´« + BYTE *pAppendInfo; //Ö¸Ïò¸½¼ÓÐÅÏ¢NET_VCA_APPEND_INFOµÄÖ¸Õ룬byAppendInfoUploadEnabledΪ1ʱ»òÕßbyTimeDiffFlagΪ1ʱÓÐЧ + BYTE *pImage; //Ö¸ÏòͼƬµÄÖ¸Õë +}NET_VCA_RULE_ALARM, *LPNET_VCA_RULE_ALARM; + +//ÐÐΪ·ÖÎö¸½¼ÓÐÅÏ¢ +typedef struct tagNET_VCA_APPEND_INFO +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwAppendPicLen;//¸½¼ÓͼƬ³¤¶È + BYTE* pAppendPicBuff;//¸½¼ÓͼƬָÕë + BYTE byAppendPicType;//¸½¼ÓͼƬÀàÐÍ£º0-±£Áô;1-¿É¼û¹âͼƬ;2-ÈȳÉÏñͼƬ; + BYTE byUID[64];//É豸±¨¾¯UID + BYTE byApplicationScene;// Ó¦Óó¡¾° 0-±£Áô 1-ÊÒÄÚ + BYTE byRes1[2]; //±£Áô + DWORD dwTargetSpeed; //À×´ï¼ì²âµ½Ä¿±êËÙ¶È,µ¥Î»:km/h + DWORD dwTargetDistance; //À×´ï¼ì²âµ½Ä¿±ê¾àÀë,µ¥Î»:m/Ã× + BYTE byAlarmType;//±¨¾¯ÀàÐÍ 0-ÊÓƵ 1-À×´ï + BYTE byRadarChannel; //À×´ïͨµÀ£¬´Ó1¿ªÊ¼ÀÛ¼Ó + BYTE byBrokenNetHttp; // ¶ÏÍøÐø´«±ê־룬0-²»ÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE byAppendChannelType;//¸½¼ÓͨµÀÀàÐÍ£º0-±£Áô;1-¿É¼û¹âͨµÀ;2-ÈȳÉÏñͨµÀ; + DWORD dwAppendChannel; //¸½¼ÓͨµÀͨµÀºÅ + BYTE byRes[44]; //±£Áô +}NET_VCA_APPEND_INFO, *LPNET_VCA_APPEND_INFO; + + +//ÐÐΪ·ÖÎö¹æÔòDSPÐÅÏ¢µþ¼Ó½á¹¹ +typedef struct tagNET_VCA_DRAW_MODE +{ + DWORD dwSize; + BYTE byDspAddTarget; //±àÂëÊÇ·ñµþ¼ÓÄ¿±ê + BYTE byDspAddRule; //±àÂëÊÇ·ñµþ¼Ó¹æÔò + BYTE byDspPicAddTarget; //ץͼÊÇ·ñµþ¼ÓÄ¿±ê + BYTE byDspPicAddRule; //ץͼÊÇ·ñµþ¼Ó¹æÔò + BYTE byRes[4]; +}NET_VCA_DRAW_MODE, *LPNET_VCA_DRAW_MODE; + +//ÎïÌåÀàÐÍ +typedef enum tagOBJECT_TYPE_ENUM +{ + ENUM_OBJECT_TYPE_COAT = 1 //ÉÏÒ +}OBJECT_TYPE_ENUM; + +//ÎïÌåÑÕÉ«Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_OBJECT_COLOR_COND +{ + DWORD dwChannel; //ͨµÀºÅ + DWORD dwObjType; //ÎïÌåÀàÐÍ£¬²Î¼ûOBJECT_TYPE_ENUM + BYTE byRes[64]; //±£Áô +}NET_DVR_OBJECT_COLOR_COND,*LPNET_DVR_OBJECT_COLOR_COND; + +//ͼƬ²ÎÊý +typedef struct tagNET_DVR_PIC +{ + BYTE byPicType; //ͼƬÀàÐÍ£¬1-jpg + BYTE byRes1[3]; //±£Áô + DWORD dwPicWidth; //ͼƬ¿í¶È + DWORD dwPicHeight; //ͼƬ¸ß¶È + DWORD dwPicDataLen; //ͼƬÊý¾Ýʵ¼Ê´óС + DWORD dwPicDataBuffLen; //ͼƬÊý¾Ý»º³åÇø´óС + BYTE* byPicDataBuff; //ͼƬÊý¾Ý»º³åÇø + BYTE byRes2[40]; //±£Áô +}NET_DVR_PIC,*LPNET_DVR_PIC; + +//ÑÕÉ«ÁªºÏÌå +typedef union tagNET_DVR_OBJECT_COLOR_UNION +{ + NET_DVR_COLOR struColor; //ÑÕÉ«Öµ + NET_DVR_PIC struPicture; //ͼƬ + BYTE byRes[64]; //±£Áô +}NET_DVR_OBJECT_COLOR_UNION,*LPNET_DVR_OBJECT_COLOR_UNION; + +//ÎïÌåÑÕÉ«²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_OBJECT_COLOR +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //0-²»ÆôÓã¬1-ÆôÓà + BYTE byColorMode; //È¡É«·½Ê½£¬1-ÑÕÉ«Öµ£¬2-ͼƬ + BYTE byRes1[2]; //±£Áô + NET_DVR_OBJECT_COLOR_UNION uObjColor; //ÎïÌåÑÕÉ«ÁªºÏÌ壬ȡֵÒÀÀµÓÚÈ¡É«·½Ê½ + BYTE byRes2[64]; //±£Áô +}NET_DVR_OBJECT_COLOR, *LPNET_DVR_OBJECT_COLOR; + +//ÇøÓòÀàÐÍ +typedef enum tagAREA_TYPE_ENUM +{ + ENUM_OVERLAP_REGION = 1,//¹²Í¬ÇøÓò + ENUM_BED_LOCATION = 2 //´²ÆÌλÖà +}AREA_TYPE_ENUM; + +//¸¨ÖúÇøÓò +typedef struct tagNET_DVR_AUXAREA +{ + DWORD dwAreaType; //ÇøÓòÀàÐÍ£¬²Î¼ûAREA_TYPE_ENUM + BYTE byEnable; //0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; //±£Áô + NET_VCA_POLYGON struPolygon; //ÇøÓò + BYTE byRes2[16]; //±£Áô +}NET_DVR_AUXAREA,*LPNET_DVR_AUXAREA; + +//¸¨ÖúÇøÓòÁбí +typedef struct tagNET_DVR_AUXAREA_LIST +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_AUXAREA struArea[MAX_AUXAREA_NUM]; //¸¨ÖúÇøÓò + BYTE byRes2[64]; // ±£Áô +}NET_DVR_AUXAREA_LIST,*LPNET_DVR_AUXAREA_LIST; + +//ͨµÀ¹¤×÷ģʽ +typedef enum tagCHAN_WORKMODE_ENUM +{ + ENUM_CHAN_WORKMODE_INDEPENDENT = 1, //¶ÀÁ¢Ä£Ê½ + ENUM_CHAN_WORKMODE_MASTER = 2, //Ö÷ģʽ + ENUM_CHAN_WORKMODE_SLAVE = 3 //´Óģʽ +}CHAN_WORKMODE_ENUM; + +//ͨµÀ¹¤×÷ģʽ²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_CHANNEL_WORKMODE +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byWorkMode; //¹¤×÷ģʽ£¬²Î¼ûCHAN_WORKMODE_ENUM + BYTE byRes[63]; //±£Áô +}NET_DVR_CHANNEL_WORKMODE,*LPNET_DVR_CHANNEL_WORKMODE; + +//É豸ͨµÀ²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_CHANNEL +{ + BYTE byAddress[MAX_DOMAIN_NAME]; //É豸IP»òÓòÃû + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byRes1[2]; //±£Áô + BYTE sUserName[NAME_LEN]; //Ö÷»úÓû§Ãû + BYTE sPassword[PASSWD_LEN]; //Ö÷»úÃÜÂë + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes2[32]; //±£Áô +}NET_DVR_CHANNEL,*LPNET_DVR_CHANNEL; + +//´ÓͨµÀÐÅÏ¢ÁªºÏÌå +typedef union tagNET_DVR_SLAVE_CHANNEL_UNION +{ + BYTE byRes[152]; //ÁªºÏÌå´óС + DWORD dwLocalChannel; //±¾»úͨµÀ + NET_DVR_CHANNEL struRemoteChannel; //Ô¶³ÌͨµÀ +}NET_DVR_SLAVE_CHANNEL_UNION,*LPNET_DVR_SLAVE_CHANNEL_UNION; + +//´ÓͨµÀ²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_SLAVE_CHANNEL_PARAM +{ + BYTE byChanType; //´ÓͨµÀÀàÐÍ£¬1-±¾»úͨµÀ£¬2-Ô¶³ÌͨµÀ + BYTE byRes1[3]; //±£Áô + NET_DVR_SLAVE_CHANNEL_UNION uSlaveChannel; //´ÓͨµÀÁªºÏÌ壬ȡֵÒÀÀµÓÚbyChanType + BYTE byRes2[64]; //±£Áô +}NET_DVR_SLAVE_CHANNEL_PARAM,*LPNET_DVR_SLAVE_CHANNEL_PARAM; + + +//´ÓͨµÀ²ÎÊýÅäÖýṹÌå +typedef struct tagNET_DVR_SLAVE_CHANNEL_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_SLAVE_CHANNEL_PARAM struChanParam[MAX_SLAVE_CHANNEL_NUM];//´ÓͨµÀ²ÎÊý + BYTE byRes[64]; //±£Áô +}NET_DVR_SLAVE_CHANNEL_CFG,*LPNET_DVR_SLAVE_CHANNEL_CFG; + +//ÊÓƵÖÊÁ¿Õï¶Ï¼ì²âʼþ +typedef enum tagVQD_EVENT_ENUM +{ + ENUM_VQD_EVENT_BLUR = 1, //ͼÏñÄ£ºý + ENUM_VQD_EVENT_LUMA = 2, //ÁÁ¶ÈÒì³£ + ENUM_VQD_EVENT_CHROMA = 3, //ͼÏñÆ«É« + ENUM_VQD_EVENT_SNOW = 4, //Ñ©»¨¸ÉÈÅ + ENUM_VQD_EVENT_STREAK = 5, //ÌõÎƸÉÈÅ + ENUM_VQD_EVENT_FREEZE = 6, //»­Ã涳½á + ENUM_VQD_EVENT_SIGNAL_LOSS = 7, //ÐźŶªÊ§ + ENUM_VQD_EVENT_PTZ = 8, //ÔÆ̨ʧ¿Ø + ENUM_VQD_EVENT_SCNENE_CHANGE = 9, //³¡¾°Í»±ä + ENUM_VQD_EVENT_VIDEO_ABNORMAL = 10, //ÊÓƵÒì³£ + ENUM_VQD_EVENT_VIDEO_BLOCK = 11, //ÊÓƵÕÚµ² + ENUM_VQD_EVENT_CLARTY = 12, //ÇåÎú¶ÈÒì³£ + ENUM_VQD_EVENT_JITTER = 13, //»­Ã涶¶¯ + ENUM_VQD_EVENT_FLOWERS = 14, //»­ÆÁ + ENUM_VQD_EVENT_NOISE = 15, //Ôëµã + ENUM_VQD_EVENT_GHOST = 16, //Òì³£¹â°ß + ENUM_VQD_EVENT_PURPLE = 17, //×챧 + ENUM_VQD_EVENT_ICR = 18, // ICR¼ì²âÒì³£ + ENUM_VQD_EVENT_PROTECTFILM = 19 //±£»¤Ä¤Î´Ëº +}VQD_EVENT_ENUM; + +//ÊÓƵÖÊÁ¿Õï¶ÏʼþÌõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_VQD_EVENT_COND +{ + DWORD dwChannel; //ͨµÀºÅ + DWORD dwEventType; //¼ì²âʼþÀàÐÍ£¬²Î¼ûVQD_EVENT_ENUM + BYTE byRes[64]; //±£Áô +}NET_DVR_VQD_EVENT_COND,*LPNET_DVR_VQD_EVENT_COND; + +//ÊÓƵÖÊÁ¿Õï¶Ïʼþ²ÎÊý +typedef struct tagNET_DVR_VQD_EVENT_PARAM +{ + BYTE byThreshold; //±¨¾¯ãÐÖµ£¬·¶Î§[0,100] + BYTE byTriggerMode; //1-³ÖÐø´¥·¢£¬2-µ¥´Î´¥·¢ + BYTE byUploadPic; //0-²»ÉÏ´«Í¼Æ¬£¬1-ÉÏ´«Í¼Æ¬£¬ÎÞÂÛÊÇ·ñÉÏ´«Í¼Æ¬£¬Êº󶼿ÉÒÔ´ÓÉ豸»ñÈ¡¸ÃʼþËù¶ÔÓ¦×îеÄÒ»Õű¨¾¯Í¼Æ¬£¬²Î¼û½Ó¿ÚNET_DVR_StartDownload + BYTE byRes1; //±£Áô + DWORD dwTimeInterval; //³ÖÐø´¥·¢±¨¾¯Ê±¼ä¼ä¸ô£¬·¶Î§[0,3600] µ¥Î»£ºÃë + BYTE byRes2[64]; //±£Áô +}NET_DVR_VQD_EVENT_PARAM,*LPNET_DVR_VQD_EVENT_PARAM; + +//ÊÓƵÖÊÁ¿Õï¶Ïʼþ¹æÔò +typedef struct tagNET_DVR_VQD_EVENT_RULE +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; //±£Áô + NET_DVR_VQD_EVENT_PARAM struEventParam; //ÊÓƵÖÊÁ¿Õï¶Ïʼþ²ÎÊý + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//¼ì²âʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_IVMS_IP_CHANNEL]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ£º1±íʾ´¥·¢¸ÃͨµÀ£»0±íʾ²»´¥·¢ + BYTE byRes2[128]; //±£Áô +}NET_DVR_VQD_EVENT_RULE,*LPNET_DVR_VQD_EVENT_RULE; + +//»ù×¼³¡¾°²ÎÊý +typedef struct tagNET_DVR_BASELINE_SCENE +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes[63]; //±£Áô +}NET_DVR_BASELINE_SCENE,*LPNET_DVR_BASELINE_SCENE; + +//»ù×¼³¡¾°²Ù×÷²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byCommand; //²Ù×÷ÀàÐÍ£¬1-´Ë×ֶα£Áô£¬Ôݲ»Ê¹Óã¬2-¸üлù×¼³¡¾° + BYTE byRes[127]; //±£Áô +}NET_DVR_CONTROL_BASELINE_SCENE_PARAM,*LPNET_DVR_CONTROL_BASELINE_SCENE_PARAM; + +//ÊÓƵÖÊÁ¿Õï¶Ï±¨¾¯½á¹¹Ìå +typedef struct tagNET_DVR_VQD_ALARM +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwEventType; //ʼþÀàÐÍ£¬²Î¿¼VQD_EVENT_ENUM + float fThreshold; //±¨¾¯ãÐÖµ[0.000,1.000] + DWORD dwPicDataLen; //ͼƬ³¤¶È£¬Îª0±íʾûÓÐͼƬ + BYTE *pImage; //Ö¸ÏòͼƬµÄÖ¸Õë + BYTE byRes[128]; //±£Áô +}NET_DVR_VQD_ALARM,*LPNET_DVR_VQD_ALARM; + +//±ê¶¨µã×ӽṹ +typedef struct tagNET_DVR_CB_POINT +{ + NET_VCA_POINT struPoint; //±ê¶¨µã£¬Ö÷ÉãÏñ»ú£¨Ç¹»ú£© + NET_DVR_PTZPOS struPtzPos; //Çò»úÊäÈëµÄPTZ×ø±ê + BYTE byRes[8]; +}NET_DVR_CB_POINT, LPNET_DVR_CB_POINT; + +//±ê¶¨²ÎÊýÅäÖýṹ +typedef struct tagNET_DVR_TRACK_CALIBRATION_PARAM +{ + BYTE byPointNum; //ÓÐЧ±ê¶¨µã¸öÊý + BYTE byRes[3]; + NET_DVR_CB_POINT struCBPoint[MAX_CALIB_PT]; //±ê¶¨µã×é +}NET_DVR_TRACK_CALIBRATION_PARAM, *LPNET_DVR_TRACK_CALIBRATION_PARAM; + +//Çò»úÅäÖýṹ +typedef struct tagNET_DVR_TRACK_CFG +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnable; //±ê¶¨Ê¹ÄÜ + BYTE byFollowChan; // ±»¿ØÖƵĴÓͨµÀ + BYTE byDomeCalibrate; //ÉèÖÃÖÇÄܸú×ÙÇò»ú±ê¶¨£¬1ÉèÖà 0²»ÉèÖà + BYTE byRes; // ±£Áô×Ö½Ú + NET_DVR_TRACK_CALIBRATION_PARAM struCalParam; //±ê¶¨µã×é +}NET_DVR_TRACK_CFG, *LPNET_DVR_TRACK_CFG ; + +//¸ú×Ùģʽ +typedef enum _TRACK_MODE_ +{ + MANUAL_CTRL = 0, //ÊÖ¶¯¸ú×Ù + ALARM_TRACK //±¨¾¯´¥·¢¸ú×Ù +}TRACK_MODE; + +//ÊÖ¶¯¿ØÖƽṹ +typedef struct tagNET_DVR_MANUAL_CTRL_INFO +{ + NET_VCA_POINT struCtrlPoint; + BYTE byRes[8]; +}NET_DVR_MANUAL_CTRL_INFO, *LPNET_DVR_MANUAL_CTRL_INFO ; + +//¸ú×Ùģʽ½á¹¹ +typedef struct tagNET_DVR_TRACK_MODE +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byTrackMode; //¸ú×Ùģʽ + BYTE byRuleConfMode; //¹æÔòÅäÖøú×Ùģʽ0-±¾µØÅäÖøú×Ù£¬1-Ô¶³ÌÅäÖøú×Ù + BYTE byRes[2]; //±£Áô£¬ÖÃ0 + union + { + DWORD dwULen[4]; + NET_DVR_MANUAL_CTRL_INFO struManualCtrl;//ÊÖ¶¯¸ú×ٽṹ + }uModeParam; +}NET_DVR_TRACK_MODE,*LPNET_DVR_TRACK_MODE; + +typedef struct tagNET_DVR_ALARM_JPEG +{ + BYTE byPicProType; /*±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí 1-ÉÏ´«*/ + BYTE byRes[3]; //±£Áô×Ö½Ú + NET_DVR_JPEGPARA struPicParam; /*ͼƬ¹æ¸ñ½á¹¹*/ +}NET_DVR_ALARM_JPEG, *LPNET_DVR_ALARM_JPEG; + +/**********************ipc/d5.3.0********************************/ +typedef struct tagNET_DVR_PHY_RATIO +{ + DWORD dwSize; + DWORD dwPhysicsRatio;//ÎïÀí±¶ÂÊ×ø±ê + BYTE byRes[60]; +}NET_DVR_PHY_RATIO, *LPNET_DVR_PHY_RATIO; + +typedef struct tagNET_DVR_SLAVECAMERA_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byID;//Ö÷´Ó¸ú×Ù ´ÓÉãÏñ»úID±àºÅ[1,4] + BYTE byRes1[3]; + DWORD dwSceneID;// scene Id + BYTE byRes[56]; +}NET_DVR_SLAVECAMERA_COND, *LPNET_DVR_SLAVECAMERA_COND; + +typedef struct tagNET_DVR_SLAVECAMERA_CFG +{ + DWORD dwSize; + BYTE byAddressType; //0-ʵ¼Êipv4 ipv6µØÖ· 1-ÓòÃû + // ¿ØÖÆunionServerÊÇʹÓÃʵ¼ÊµØÖ·»¹ÊÇÓòÃû + WORD wPort; /*¶Ë¿Ú*/ + BYTE byLoginStatus; /*´ÓÉ豸µÄµÇ½״̬ 0-logout,1-login*/ + union + { + struct + { + BYTE szDomain[MAX_DOMAIN_NAME/*64*/];//·þÎñÆ÷µØÖ·£¬ÓòÃû + BYTE byRes1[80]; + }struDomain; + struct + { + NET_DVR_IPADDR struIp;/*IPµØÖ·*/ //IPv4 IPv6µØÖ·, 144×Ö½Ú + } struAddrIP; + }unionServer; //ʹÓÃÁªºÏÌå½á¹¹£¬Í¨¹ýbyAddressType×ֶαíʾÊÇIPµØÖ·»¹ÊÇÓòÃû 64 + BYTE szUserName[NAME_LEN/*32*/]; /*Óû§Ãû*/ + BYTE szPassWord[PASSWD_LEN/*16*/]; /*ÃÜÂë*/ + BYTE byRes1[128]; +}NET_DVR_SLAVECAMERA_CFG, *LPNET_DVR_SLAVECAMERA_CFG; + +typedef struct tagNET_DVR_SLAVECAMERA_PARAM +{ + BYTE byLinkStatus ;//Á¬½Ó״̬ 0- δÁ¬½Ó£¬1-Á¬½Ó + BYTE byRes[15]; +}NET_DVR_SLAVECAMERA_PARAM, *LPNET_DVR_SLAVECAMERA_PARAM; + +typedef struct tagNET_DVR_SLAVECAMERA_STATUS +{ + DWORD dwSize; + NET_DVR_SLAVECAMERA_PARAM struSlaveCamera[MAX_SLAVECAMERA_NUM/*8*/];//Êý×éϱê0±íʾ´ÓÉãÏñ»úID 1,ÒÀ´ÎÀàÍÆ + BYTE byRes[64]; +}NET_DVR_SLAVECAMERA_STATUS, *LPNET_DVR_SLAVECAMERA_STATUS; + +typedef struct tagNET_PTZ_INFO +{ + float fPan; + float fTilt; + float fZoom; + DWORD dwFocus;// ¾Û½¹²ÎÊý£¬¾Û½¹·¶Î§£º¹éÒ»»¯0-100000 + BYTE byRes[4]; +}NET_PTZ_INFO, *LPNET_PTZ_INFO; + +typedef struct tagNET_DVR_BV_CALIB_POSITION +{ + DWORD dwSize; //½á¹¹³¤¶È + NET_PTZ_INFO struInitialPos; //³õʼ×ø±ê + NET_PTZ_INFO struAdjustPos; //µ÷Õû×ø±ê + BYTE byRes[300]; //±£Áô +}NET_DVR_BV_CALIB_POSITION, *LPNET_DVR_BV_CALIB_POSITION; + +typedef struct tagNET_DVR_HUMAN_CALIB_CFG +{ + DWORD dwSize; //½á¹¹³¤¶È + NET_VCA_POINT struLeftPos; //ÈËÌå×ó×ø±êµã + NET_VCA_POINT struRightPos; //ÈËÌåÓÒ×ø±êµã + BYTE byRes[300]; //±£Áô +}NET_DVR_HUMAN_CALIB_CFG, *LPNET_DVR_HUMAN_CALIB_CFG; + +typedef struct tagNET_DVR_CALIB_PARAM +{ + NET_PTZ_INFO struPtzInfo; + NET_VCA_POINT struCalibCoordinates;//±ê¶¨×ø±ê + int iHorValue;//Ë«Ä¿±ê¶¨ ˮƽֵ cm£¨ÊÖ¶¯Ä£Ê½ÏÂÉúЧ Ë«Ä¿Ïà»úÅäÖã© + int iVerValue;//Ë«Ä¿±ê¶¨ ´¹Ö±Öµ cm£¨ÊÖ¶¯Ä£Ê½ÏÂÉúЧ Ë«Ä¿Ïà»úÅäÖã© + BYTE byRes[8]; +}NET_DVR_CALIB_PARAM, *LPNET_DVR_CALIB_PARAM; + +typedef struct tagNET_DVR_SLAVECAMERA_CALIB_CFG +{ + DWORD dwSize; + BYTE byCalibMode;//±ê¶¨Ä£Ê½: 0-±£Áô,1-×Ô¶¯±ê¶¨, 2-ÊÖ¶¯±ê¶¨ + BYTE byRes[3]; + //Êý×éϱê0±íʾ´ÓÉãÏñ»úID 1£¬ÒÀ´ÎÀàÍÆ + //ÊÖ¶¯±ê¶¨Ä£Ê½ÏÂÖ§³ÖÅäÖã¨ÉèÖÃ&&»ñÈ¡£©£¬×Ô¶¯Ä£Ê½ÏÂÖ§³Ö»ñÈ¡²Ù×÷ + NET_DVR_CALIB_PARAM struCalibParam[MAX_CALIB_NUM/*6*/];//Ö»ÔÚÊÖ¶¯±ê¶¨Ä£Ê½ÏÂÉúЧ + BYTE byRes1[64]; +}NET_DVR_SLAVECAMERA_CALIB_CFG, *LPNET_DVR_SLAVECAMERA_CALIB_CFG; + +typedef struct tagNET_DVR_TRACKING +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnable; //ʹÄÜ 0-false,1-true + BYTE byMode; //ģʽ 0-¹Ø±Õ£¬1-ÊÖ¶¯£¬2-×Ô¶¯ + WORD wTrackingTime;//¸ú×Ùʱ¼ä£º[0,60]s + NET_VCA_POLYGON struRegion;//ÊÖ¶¯¸ú×ÙÄ¿±êÇøÓò·¶Î§ + BYTE byRes[64]; +}NET_DVR_TRACKING,*LPNET_DVR_TRACKING; + +typedef struct tagNET_DVR_SLAVECAMERA_CALIB_V50 +{ + DWORD dwSize; + BYTE byCalibMode;//±ê¶¨Ä£Ê½: 0-±£Áô,1-×Ô¶¯±ê¶¨, 2-ÊÖ¶¯±ê¶¨ + BYTE byRes[3]; + //Êý×éϱê0±íʾ´ÓÉãÏñ»úID 1£¬ÒÀ´ÎÀàÍÆ + //ÊÖ¶¯±ê¶¨Ä£Ê½ÏÂÖ§³ÖÅäÖã¨ÉèÖÃ&&»ñÈ¡£©£¬×Ô¶¯Ä£Ê½ÏÂÖ§³Ö»ñÈ¡²Ù×÷ + NET_DVR_CALIB_PARAM struCalibParam[MAX_CALIB_NUM_EX/*20*/]; + BYTE byRes1[64]; +}NET_DVR_SLAVECAMERA_CALIB_V50, *LPNET_DVR_SLAVECAMERA_CALIB_V50; + +typedef struct tagNET_DVR_SLAVECAMERA_CALIB_V51 +{ + DWORD dwSize; + BYTE byCalibMode;//±ê¶¨Ä£Ê½: 0-±£Áô,1-×Ô¶¯±ê¶¨, 2-ÊÖ¶¯±ê¶¨ + BYTE byRes[3]; + //Êý×éϱê0±íʾ´ÓÉãÏñ»úID 1£¬ÒÀ´ÎÀàÍÆ + //ÊÖ¶¯±ê¶¨Ä£Ê½ÏÂÖ§³ÖÅäÖã¨ÉèÖÃ&&»ñÈ¡£©£¬×Ô¶¯Ä£Ê½ÏÂÖ§³Ö»ñÈ¡²Ù×÷ + NET_DVR_CALIB_PARAM struCalibParam[MAX_CALIB_NUM_EX/*20*/]; + BYTE byRes1[512]; +}NET_DVR_SLAVECAMERA_CALIB_V51, *LPNET_DVR_SLAVECAMERA_CALIB_V51; + +//ÌØÊ⹦ÄÜץͼ½á¹û½á¹¹£¨Ó¥ÑÛÏîÄ¿£© +typedef struct tagNET_DVR_CAPTURE_PICTURE_RESULT +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwReturnPicSize;//·µ»ØµÄͼƬ´óС + BYTE byRes[256]; +}NET_DVR_CAPTURE_PICTURE_RESULT, *LPNET_DVR_CAPTURE_PICTURE_RESULT; + +typedef struct tagNET_DVR_GOTOSCENE_COND +{ + DWORD dwSize; + DWORD dwChannel; + DWORD dwSceneID;//³¡¾°IDºÅ + BYTE byRes[512]; +}NET_DVR_GOTOSCENE_COND, *LPNET_DVR_GOTOSCENE_COND; + +typedef struct tagNET_DVR_TRACK_INITPOSTION +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byID;//Ö÷´Ó¸ú×Ù ´ÓÉãÏñ»úID±àºÅ[1,4] + BYTE byRes[127]; +}NET_DVR_TRACK_INITPOSTION, *LPNET_DVR_TRACK_INITPOSTION; + +typedef struct tagNET_DVR_MANUAL_TRACKRATIO +{ + DWORD dwSize; + BYTE byCoefficient;//±¶ÂÊϵÊý[1,60] + BYTE byRes[127]; +}NET_DVR_MANUAL_TRACKRATIO, *LPNET_DVR_MANUAL_TRACKRATIO; + +/**********************ipc/d5.3.0********************************/ + +//·ÖÎöÒÇÐÐΪ·ÖÎö¹æÔò½á¹¹ +//¾¯½ä¹æÔò½á¹¹ +typedef struct tagNET_IVMS_ONE_RULE_ +{ + BYTE byActive; /* ÊÇ·ñ¼¤»î¹æÔò,0-·ñ, ·Ç0-ÊÇ */ + BYTE byRes1[7]; //±£Áô£¬ÉèÖÃΪ0×ֶΠ+ BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + VCA_EVENT_TYPE dwEventType; //ÐÐΪ·ÖÎöʼþÀàÐÍ + NET_VCA_EVENT_UNION uEventParam;//ÐÐΪ·ÖÎöʼþ²ÎÊý + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + BYTE byRes2[68]; /*±£Áô£¬ÉèÖÃΪ0*/ +}NET_IVMS_ONE_RULE, *LPNET_IVMS_ONE_RULE; + +// ·ÖÎöÒǹæÔò½á¹¹ +typedef struct tagNET_IVMS_RULECFG +{ + NET_IVMS_ONE_RULE struRule[MAX_RULE_NUM]; //¹æÔòÊý×é +}NET_IVMS_RULECFG, *LPNET_IVMS_RULECFG; + +// IVMSÐÐΪ·ÖÎöÅäÖýṹ +typedef struct tagNET_IVMS_BEHAVIORCFG +{ + DWORD dwSize; + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE byRes[3]; + NET_DVR_JPEGPARA struPicParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_IVMS_RULECFG struRuleCfg[MAX_DAYS][MAX_TIMESEGMENT];//ÿ¸öʱ¼ä¶Î¶ÔÓ¦¹æÔò +} NET_IVMS_BEHAVIORCFG, *LPNET_IVMS_BEHAVIORCFG; + +//ÖÇÄÜ·ÖÎöÒÇÈ¡Á÷¼Æ»®×ӽṹ +typedef struct tagNET_IVMS_DEVSCHED +{ + NET_DVR_SCHEDTIME struTime; //ʱ¼ä²ÎÊý + NET_DVR_PU_STREAM_CFG struPUStream; //Ç°¶ËÈ¡Á÷²ÎÊý +}NET_IVMS_DEVSCHED, *LPNET_IVMS_DEVSCHED; + +//ÖÇÄÜ·ÖÎöÒDzÎÊýÅäÖýṹ +typedef struct tagNET_IVMS_STREAMCFG +{ + DWORD dwSize; + NET_IVMS_DEVSCHED struDevSched[MAX_DAYS][MAX_TIMESEGMENT];//°´Ê±¼ä¶ÎÅäÖÃÇ°¶ËÈ¡Á÷ÒÔ¼°¹æÔòÐÅÏ¢ +} NET_IVMS_STREAMCFG, *LPNET_IVMS_STREAMCFG; + +//ÆÁ±ÎÇøÓò +typedef struct tagNET_VCA_MASK_REGION +{ + BYTE byEnable; //ÊÇ·ñ¼¤»î, 0-·ñ£¬·Ç0-ÊÇ + BYTE byRes[3]; //±£Áô£¬ÖÃ0 + NET_VCA_POLYGON struPolygon; //ÆÁ±Î¶à±ßÐÎ +}NET_VCA_MASK_REGION, * LPNET_VCA_MASK_REGION; + +//ÆÁ±ÎÇøÓòÁ´±í½á¹¹ +typedef struct tagNET_VCA_MASK_REGION_LIST +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byRes[4]; //±£Áô£¬ÖÃ0 + NET_VCA_MASK_REGION struMask[MAX_MASK_REGION_NUM]; //ÆÁ±ÎÇøÓòÊý×é +}NET_VCA_MASK_REGION_LIST, *LPNET_VCA_MASK_REGION_LIST; + + +//ATM½øÈëÇøÓò²ÎÊý +typedef struct tagNET_VCA_ENTER_REGION//·ÀÖ¹¸ÉÈÅATM¼ì²â +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñ¼¤»î£¬0-·ñ£¬·Ç0-ÊÇ + BYTE byRes1[3]; + NET_VCA_POLYGON struPolygon; //½øÈëÇøÓò + BYTE byRes2[16]; +}NET_VCA_ENTER_REGION, * LPNET_VCA_ENTER_REGION; + +//IVMSÆÁ±ÎÇøÓòÁ´±í +typedef struct tagNET_IVMS_MASK_REGION_LIST +{ + DWORD dwSize; //½á¹¹³¤¶È + NET_VCA_MASK_REGION_LIST struList[MAX_DAYS][ MAX_TIMESEGMENT]; +}NET_IVMS_MASK_REGION_LIST, *LPNET_IVMS_MASK_REGION_LIST; + +//IVMSµÄATM½øÈëÇøÓò²ÎÊý +typedef struct tagNET_IVMS_ENTER_REGION +{ + DWORD dwSize; + NET_VCA_ENTER_REGION struEnter[MAX_DAYS][ MAX_TIMESEGMENT]; //½øÈëÇøÓò +}NET_IVMS_ENTER_REGION, *LPNET_IVMS_ENTER_REGION; + +// ivms ±¨¾¯Í¼Æ¬ÉÏ´«½á¹¹ +typedef struct tagNET_IVMS_ALARM_JPEG +{ + BYTE byPicProType; + BYTE byRes[3]; + NET_DVR_JPEGPARA struPicParam; +}NET_IVMS_ALARM_JPEG, *LPNET_IVMS_ALARM_JPEG; + +// IVMS ºó¼ìË÷ÅäÖà +typedef struct tagNET_IVMS_SEARCHCFG +{ + DWORD dwSize; + NET_DVR_MATRIX_DEC_REMOTE_PLAY struRemotePlay;// Ô¶³Ì»Ø·Å + NET_IVMS_ALARM_JPEG struAlarmJpeg; // ±¨¾¯ÉÏ´«Í¼Æ¬ÅäÖà + NET_IVMS_RULECFG struRuleCfg; //IVMS ÐÐΪ¹æÔòÅäÖà +}NET_IVMS_SEARCHCFG, *LPNET_IVMS_SEARCHCFG; + +//±ê¶¨²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_TRACK_CALIBRATION_PARAM_V41 +{ + BYTE byPointNum; //ÓÐЧ±ê¶¨µã¸öÊý + BYTE byRes[3]; //±£Áô + NET_DVR_CB_POINT struCBPoint[MAX_CALIB_PT]; //±ê¶¨µã×é + NET_DVR_PTZPOS struHorizonPtzPos; //Çò»úˮƽÏßPTZ×ø±ê + BYTE byRes2[256]; //±£Áô +}NET_DVR_TRACK_CALIBRATION_PARAM_V41, *LPNET_DVR_TRACK_CALIBRATION_PARAM_V41; + +//¸ú×ÙÉ豸ÅäÖòÎÊý +typedef struct tagNET_DVR_TRACK_DEV_PARAM_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÆôÓô˸ú×ÙÉ豸, 0-²»ÆôÓÃ, 1 -ÆôÓà + BYTE byTransMode; //ͨѶ·½Ê½£¬0-ÍøÂçSDK£¬1-485´®¿Ú + BYTE byRes1[2]; //±£Áô + NET_DVR_CHANNEL struTrackDevChan; //Áª¶¯¸ú×ÙÉ豸²ÎÊý + NET_DVR_TRACK_CALIBRATION_PARAM_V41 struCalParam; //¸ú×ÙÉ豸±ê¶¨²ÎÊý + BYTE byRes2[256]; //±£Áô +}NET_DVR_TRACK_DEV_PARAM, *LPNET_DVR_TRACK_DEV_PARAM; +/************************************end******************************************/ +//NASÈÏÖ¤ÅäÖà +typedef struct tagNET_DVR_IDENTIFICATION_PARAM +{ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû 32*/ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë 16*/ + BYTE byRes1[4]; //±£Áô +}NET_DVR_IDENTIFICATION_PARAM, *LPNET_DVR_IDENTIFICATION_PARAM; + +typedef union tagNET_DVR_MOUNT_PARAM_UNION +{ + BYTE uLen[52]; //ÁªºÏÌå½á¹¹´óС + NET_DVR_IDENTIFICATION_PARAM struIdentificationParam;//(SMB/CIFSʱÉúЧ) +} NET_DVR_MOUNT_PARAM_UNION, *LPNET_DVR_MOUNT_PARAM_UNION; + +typedef struct tagNET_DVR_NAS_MOUNT_PARAM +{ + BYTE byMountType; //0¡«±£Áô,1~NFS, 2~ SMB/CIFS + BYTE byRes[3]; + NET_DVR_MOUNT_PARAM_UNION uMountParam; +}NET_DVR_NAS_MOUNT_PARAM, *LPNET_DVR_NAS_MOUNT_PARAM; + +typedef union tagNET_DVR_MOUNTMETHOD_PARAM_UNION +{ + BYTE uLen[56]; //ÁªºÏÌå½á¹¹´óС + NET_DVR_NAS_MOUNT_PARAM struNasMountParam;//NAS¹ÒÔØ·½Ê½ (byNetDiskTypeΪNFS(NAS)ʱÉúЧ) +}NET_DVR_MOUNTMETHOD_PARAM_UNION, *LPNET_DVR_MOUNTMETHOD_PARAM_UNION; + +//ÍøÂçÓ²Å̽ṹÅäÖà +typedef struct tagNET_DVR_SINGLE_NET_DISK_INFO +{ + BYTE byNetDiskType; //ÍøÂçÓ²ÅÌÀàÐÍ, 0-NFS(NAS),1-iSCSI + BYTE byRes1[3]; //±£Áô + NET_DVR_IPADDR struNetDiskAddr; //ÍøÂçÓ²Å̵ØÖ· + BYTE sDirectory[PATHNAME_LEN]; // PATHNAME_LEN = 128 + WORD wPort; //iscsiÓж˿ڣ¬ÏÖÔÚΪĬÈÏ + BYTE byRes2[2]; + NET_DVR_MOUNTMETHOD_PARAM_UNION uMountMethodParam; + BYTE byRes3[8]; //±£Áô +}NET_DVR_SINGLE_NET_DISK_INFO, *LPNET_DVR_SINGLE_NET_DISK_INFO; + +#define MAX_NET_DISK 16//×î´óÍøÂçÓ²Å̸öÊý + +typedef struct tagNET_DVR_NET_DISKCFG +{ + DWORD dwSize; + NET_DVR_SINGLE_NET_DISK_INFO struNetDiskParam[MAX_NET_DISK]; +}NET_DVR_NET_DISKCFG, *LPNET_DVR_NET_DISKCFG; + +typedef struct tagNET_DVR_SINGLE_NET_DISK_INFO_V40 +{ + BYTE byNetDiskType; //ÍøÂçÓ²ÅÌÀàÐÍ, 0-NFS(NAS),1-iSCSI + BYTE byRes1[3]; //±£Áô + BYTE sDirectory[PATHNAME_LEN]; // PATHNAME_LEN = 128 + BYTE byDevAddr[MAX_DOMAIN_NAME]; /*ÓòÃû 64*/ + WORD wPort; //iscsiÓж˿ڣ¬ÏÖÔÚΪĬÈÏ + BYTE byRes2[2]; + NET_DVR_MOUNTMETHOD_PARAM_UNION uMountMethodParam; + BYTE byRes4[80]; +}NET_DVR_SINGLE_NET_DISK_INFO_V40, *LPNET_DVR_SINGLE_NET_DISK_INFO_V40; + +typedef struct tagNET_DVR_NET_DISKCFG_V40 +{ + DWORD dwSize; + NET_DVR_SINGLE_NET_DISK_INFO_V40 struNetDiskParam[MAX_NET_DISK]; +}NET_DVR_NET_DISKCFG_V40, *LPNET_DVR_NET_DISKCFG_V40; +//ʼþÀàÐÍ +//Ö÷ÀàÐÍ +typedef enum _MAIN_EVENT_TYPE_ +{ + EVENT_MOT_DET = 0, //Òƶ¯Õì²â + EVENT_ALARM_IN = 1, //±¨¾¯ÊäÈë + EVENT_VCA_BEHAVIOR = 2, // ÐÐΪ·ÖÎö + EVENT_INQUEST = 3, //ÉóѶʼþ + EVENT_VCA_DETECTION = 4, //ÖÇÄÜÕì²â + EVENT_POS = 5, + EVENT_TRIAL_CASE = 6,//Í¥É󰸼þÐÅÏ¢ + EVENT_ACS_CASE = 7, //ÃŽûʼþ + EVENT_IOT_CASE = 8, //·ÇÊÓƵÁª¶¯Ê¼þ¡ª±¾Ààʼþ¾ùΪ·ÇÊÓƵÉ豸Áª¶¯ÊÓƵÉ豸²úÉúµÄʼþ£¬²»°üº¬·ÇÊÓƵÉ豸±¾ÉíµÄʼþ + EVENT_STREAM_INFO = 100 //Á÷IDÐÅÏ¢ +}MAIN_EVENT_TYPE; + +#define INQUEST_START_INFO 0x1001 /*ѶÎÊ¿ªÊ¼ÐÅÏ¢*/ +#define INQUEST_STOP_INFO 0x1002 /*ѶÎÊÍ£Ö¹ÐÅÏ¢*/ +#define INQUEST_TAG_INFO 0x1003 /*Öصã±ê¼ÇÐÅÏ¢*/ +#define INQUEST_SEGMENT_INFO 0x1004 /*ÉóѶƬ¶Ï״̬ÐÅÏ¢*/ +#define INQUEST_CASE_INFO 0x1005 // °¸¼þÐÅÏ¢ÀàÐÍ + +typedef enum _VCA_DETECTION_MINOR_TYPE_ +{ + EVENT_VCA_TRAVERSE_PLANE = 1, //Ô½¾¯Õì²â + EVENT_FIELD_DETECTION, //ÇøÓòÈëÇÖÕì²â + EVENT_AUDIO_INPUT_ALARM, //ÒôƵÊäÈëÒì³£ + EVENT_SOUND_INTENSITY_ALARM, //ÉùÇ¿Í»±äÕì²â + EVENT_FACE_DETECTION, //ÈËÁ³Õì²â + EVENT_VIRTUAL_FOCUS_ALARM, //Ðé½¹Õì²â + EVENT_SCENE_CHANGE_ALARM, //³¡¾°±ä¸üÕì²â + EVENT_PIR_ALARM, //PIR±¨¾¯ + EVENT_ENTER_REGION, //½øÈëÇøÓò + EVENT_EXIT_REGION, //Ä¿±êÀ뿪ÇøÓò + EVENT_LOITERING, //ÅÇ»² + EVENT_GROUPDETECTION, //ÇøÓòÄÚÈËÔ±¾Û¼¯,Ö§³ÖÇøÓò¹æÔò + EVENT_RAPIDMOVE, //¿ìËÙÒƶ¯ + EVENT_PARK, //Í£³µ + EVENT_UNATTENDED_BAGGAGE, //ÎïÆ·ÒÅÁô + EVENT_ATTENDEDBAGGAGE, //ÎïÆ·ÄÃÈ¡ + EVENT_VEHICLE_DETECTION, //³µÁ¾¼ì²â + EVENT_ALL = 0xffffffff //±íʾȫ²¿ +}VCA_DETECTION_MINOR_TYPE; + + + +//ÐÐΪ·ÖÎöÖ÷ÀàÐͶÔÓ¦µÄ´ÎÀàÐÍ£¬ 0xffff±íʾȫ²¿ +typedef enum _BEHAVIOR_MINOR_TYPE_ +{ + EVENT_TRAVERSE_PLANE = 0, // ´©Ô½¾¯½äÃæ + EVENT_ENTER_AREA, //Ä¿±ê½øÈëÇøÓò,Ö§³ÖÇøÓò¹æÔò + EVENT_EXIT_AREA, //Ä¿±êÀ뿪ÇøÓò,Ö§³ÖÇøÓò¹æÔò + EVENT_INTRUSION, // ÖܽçÈëÇÖ,Ö§³ÖÇøÓò¹æÔò + EVENT_LOITER, //ÅÇ»²,Ö§³ÖÇøÓò¹æÔò + EVENT_LEFT_TAKE, //ÎïÆ·ÒÅÁôÄÃÈ¡,Ö§³ÖÇøÓò¹æÔò + EVENT_PARKING, //Í£³µ,Ö§³ÖÇøÓò¹æÔò + EVENT_RUN, //¿ìËÙÒƶ¯,Ö§³ÖÇøÓò¹æÔò + EVENT_HIGH_DENSITY, //ÇøÓòÄÚÈËÔ±¾Û¼¯,Ö§³ÖÇøÓò¹æÔò + EVENT_STICK_UP, //ÌùÖ½Ìõ,Ö§³ÖÇøÓò¹æÔò + EVENT_INSTALL_SCANNER, //°²×°¶Á¿¨Æ÷,Ö§³ÖÇøÓò¹æÔò + EVENT_OPERATE_OVER_TIME, // ²Ù×÷³¬Ê± + EVENT_FACE_DETECT, // Òì³£ÈËÁ³ + EVENT_LEFT, // ÎïÆ·ÒÅÁô + EVENT_TAKE, // ÎïÆ·ÄÃÈ¡ + EVENT_LEAVE_POSITION, //Àë¸Úʼþ + EVENT_TRAIL_INFO = 16, //βËæ + EVENT_HUMAN_ENTER = 18, //ÈËÔ±½øÈë + EVENT_FALL_DOWN_INFO = 19, //µ¹µØ + EVENT_OBJECT_PASTE =20, // ÒìÎïÕ³ÌùÇøÓò + EVENT_FACE_CAPTURE_INFO = 21, //Õý³£ÈËÁ³ + EVENT_MULTI_FACES_INFO = 22, //¶àÕÅÈËÁ³ + EVENT_AUDIO_ABNORMAL_INFO = 23, //ÉùÇ¿Í»±ä + EVENT_SUNGLASSES_FACE_INFO = 25, //´÷Ä«¾µÈËÁ³ + EVENT_CALLING_FACE_INFO = 26, //´òµç»°ÈËÁ³ + EVENT_VIOLENT_MOTION = 27, //¾çÁÒÔ˶¯ + EVENT_SAFETY_HELMET = 28, //°²È«Ã±¼ì²â + EVENT_PEOPLE_NUM_CHANGE = 29, //ÈËÊý±ä»¯ + EVENT_GET_UP = 30, //ÆðÉí + EVENT_ADV_REACH_HEIGHT = 31, //ÕÛÏßÅÊ¸ß + EVENT_STOOD_UP = 32, //ÆðÁ¢ + EVENT_PERSON_DENSITY = 33, //ÈËÔ±Ãܶȣ¨ÈËÊýÔ¤¾¯£© + EVENT_MANUAL_ALARM = 34, //ÊÖ¶¯±¨¾¯ + EVENT_VIOLATION_HIGH_SPEED = 35, //³¬ËÙ + EVENT_GSENSOR = 36, // G-Sensorʼþ£¨¼±¼ÓËÙ¡¢¼±¼õËÙ¡¢¼±×óתÍä¡¢¼±ÓÒתÍä¡¢³µÁ¾·­³µ¡¢³µÁ¾Åöײ£© + EVENT_SENSOR_IN = 37, // Sensor-InÐÐΪ£¨É²³µ¡¢×óת¡¢ÓÒת¡¢µ¹³µ£© + EVENT_VCA_DBD = 38, //˾»ú¼ÝÊ»ÐÐΪ + EVENT_VCA_ABS = 39, //¸ß¼¶¸¨Öú¼ÝÊ» + EVENT_TOILET_TARRY = 40 //Èç²Þ³¬Ê± +}BEHAVIOR_MINOR_TYPE; + +//Ö÷ÀàÐÍ6¶ÔÓ¦µÄ´ÎÀàÐÍ +typedef enum _TRIAL_CASE_MINOR_TYPE_ +{ + TRIAL_START_INFO = 0x1001, // Í¥Éó¿ªÊ¼Ê¼þ + TRIAL_STOP_INFO = 0x1002, //Í¥Éó½áÊøʼþ + TRIAL_TAG_INFO = 0x1003, //Í¥ÉóÖصã±êעʼþ + TRIAL_SEGMENT_INFO = 0x1004, // Í¥ÉóƬ¶Î״̬ÐÅÏ¢ + TRIAL_JUDGE_CASE_INFO=0x1005 //Í¥É󰸼þÐÅÏ¢ +}TRIAL_CASE_MINOR_TYPE; + +// Ö÷ÀàÐÍ100£¬¶ÔÓ¦µÄСÀàÐÍ +typedef enum _STREAM_INFO_MINOR_TYPE_ +{ + EVENT_STREAM_ID = 0, // Á÷ID + EVENT_TIMING = 1, // ¶¨Ê±Â¼Ïñ + EVENT_MOTION_DETECT = 2, // Òƶ¯Õì²â + EVENT_ALARM = 3, // ±¨¾¯Â¼Ïñ + EVENT_ALARM_OR_MOTION_DETECT = 4, // ±¨¾¯»òÒƶ¯Õì²â + EVENT_ALARM_AND_MOTION_DETECT = 5, // ±¨¾¯ºÍÒƶ¯Õì²â + EVENT_COMMAND_TRIGGER = 6, // ÃüÁî´¥·¢ + EVENT_MANNUAL = 7, // ÊÖ¶¯Â¼Ïñ + EVENT_BACKUP_VOLUME = 8, // ´æµµ¾í¼Ïñ + STREAM_EVENT_SEMAPHORE, //ÐźÅÁ¿ + STREAM_EVENT_HIDE, //ÕÚµ² + STREAM_EVENT_INVERSE, //ÄæÐÐ + STREAM_EVENT_VIDEO_LOST, //ÊÓƵ¶ªÊ§ + STREAM_EVENT_WIRELESS_ALARM, //ÎÞÏß±¨¾¯ + STREAM_EVENT_PIR_ALARM, //PIR±¨¾¯ + STREAM_EVENT_CALLHELP_ALARM, //ºô¾È±¨¾¯ + + STREAM_EVENT_FACESNAP, //ÈËÁ³×¥ÅÄ + STREAM_EVENT_FACE_DETECTION, //ÈËÁ³Õì²â + STREAM_EVENT_ITS_PLATE, //³µÁ¾¼ì²â + STREAM_EVENT_PDC, //¿ÍÁ÷Á¿Í³¼Æ + STREAM_EVENT_SCENECHANGE_DETECTION, //³¡¾°±ä¸ü + STREAM_EVENT_DEFOCUS_DETECTION, //Ðé½¹Õì²â + STREAM_EVENT_AUDIOEXCEPTION, //ÒôƵÒì³£ + + //ÒÔÏÂΪÐÐΪ·ÖÎö£¨COMM_ALARM_RULE£©µÄ×ÓÀàÐÍ£¬¾ßÌå¼ûVCA_EVENT_TYPE + VCA_EVENT_TRAVERSE_PLANE, //´©Ô½¾¯½äÃæ + VCA_EVENT_INTRUSION, //ÖܽçÈëÇÖ + VCA_EVENT_ENTER_AREA, //½øÈëÇøÓò + VCA_EVENT_EXIT_AREA, //À뿪ÇøÓò + VCA_EVENT_LOITER, //ÅÇ»²Õì²â + VCA_EVENT_HIGH_DENSITY, //ÈËÔ±¾Û¼¯ + VCA_EVENT_RUN, //¿ìËÙÒƶ¯ + VCA_EVENT_PARKING, //·Ç·¨Í£³µ + VCA_EVENT_LEFT, //ÎïÆ·ÒÅÁô + VCA_EVENT_TAKE, //ÎïÆ·ÄÃÈ¡ +}STREAM_INFO_MINOR_TYPE; + +// typedef enum tagITS_MINOR_TYPE +// { +// ITS_EVENT_CONGESTION = 0, // Óµ¶Â +// ITS_EVENT_PARKING, // Í£³µ +// ITS_EVENT_INVERSE, // ÄæÐÐ +// ITS_EVENT_PEDESTRIAN, // ÐÐÈË +// ITS_EVENT_DEBRIS // ÒÅÁôÎÅ×È÷ÎïËéƬ +// }ITS_MINOR_TYPE; + + +#define SEARCH_EVENT_INFO_LEN 300 //ʼþÐÅÏ¢³¤¶È +#define CASE_NO_LEN 64 +#define CASE_NAME_LEN 128 +#define LITIGANT_LEN 32 +#define CHIEF_JUDGE_LEN 32 +#define SEARCH_CASE_NO_LEN 56 +#define SEARCH_CASE_NAME_LEN 100 +#define SEARCH_LITIGANT_LEN 32 +#define SEARCH_CHIEF_JUDGE_LEN 32 +#define CASE_NO_RET_LEN 52 +#define CASE_NAME_RET_LEN 64 +#define LITIGANT_RET_LEN 24 +#define CHIEF_JUDGE_RET_LEN 24 +#define NET_SDK_CASETYPE_LEN 32 +//ʼþËÑË÷Ìõ¼þ +typedef struct tagNET_DVR_SEARCH_EVENT_PARAM +{ + WORD wMajorType; //0-Òƶ¯Õì²â£¬1-±¨¾¯ÊäÈë, 2-ÖÇÄÜʼþ + WORD wMinorType; //ËÑË÷´ÎÀàÐÍ- ¸ù¾ÝÖ÷ÀàÐͱ仯£¬0xffff±íʾȫ²¿ + NET_DVR_TIME struStartTime; //ËÑË÷µÄ¿ªÊ¼Ê±¼ä£¬Í£Ö¹Ê±¼ä: ͬʱΪ(0, 0) ±íʾ´Ó×îÔçµÄʱ¼ä¿ªÊ¼£¬µ½×îºó£¬×îÇ°ÃæµÄ4000¸öʼþ + NET_DVR_TIME struEndTime; // + BYTE byLockType; // 0xff-È«²¿£¬0-δËø£¬1-Ëø¶¨ + BYTE byValue; //0-°´Î»±íʾ£¬1-°´Öµ±íʾ + BYTE byRes[130]; // ±£Áô + union + { + BYTE byLen[SEARCH_EVENT_INFO_LEN]; + struct//±¨¾¯ÊäÈë + { + BYTE byAlarmInNo[MAX_ALARMIN_V30]; //±¨¾¯ÊäÈëºÅ£¬byAlarmInNo[0]ÈôÖÃ1Ôò±íʾ²éÕÒÓɱ¨¾¯ÊäÈë1´¥·¢µÄʼþ + BYTE byRes[SEARCH_EVENT_INFO_LEN - MAX_ALARMIN_V30]; + }struAlarmParam; + + struct//±¨¾¯ÊäÈë--°´Öµ + { + WORD wAlarmInNo[128]; /*±¨¾¯ÊäÈëºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁÐ*/ + BYTE byRes[44]; //±£Áô + }struAlarmParamByValue; + + struct//Òƶ¯Õì²â + { + BYTE byMotDetChanNo[MAX_CHANNUM_V30];//Òƶ¯Õì²âͨµÀ£¬byMotDetChanNo[0]ÈôÖÃ1Ôò±íʾ²éÕÒÓÉͨµÀ1·¢ÉúÒƶ¯Õì²â´¥·¢µÄʼþ + BYTE byRes[SEARCH_EVENT_INFO_LEN - MAX_CHANNUM_V30]; + }struMotionParam; + + struct//Òƶ¯Õì²â--°´Öµ + { + WORD wMotDetChanNo[64]; /* Òƶ¯Õì²âͨµÀ£¬°´Öµ±íʾ ,²ÉÓýô´ÕÐÍÅÅÁÐ*/ + BYTE byRes[172]; /*±£Áô*/ + }struMotionParamByValue; + + struct//ÐÐΪ·ÖÎö + { + BYTE byChanNo[MAX_CHANNUM_V30]; //´¥·¢Ê¼þµÄͨµÀ + BYTE byRuleID; //¹æÔòID£¬0xff±íʾȫ²¿ + BYTE byRes1[43]; //±£Áô + }struVcaParam; + + struct //ÐÐΪ·ÖÎö--°´Öµ·½Ê½²éÕÒ + { + WORD wChanNo[64]; //ÐÐΪ·ÖÎö¶ÔÓ¦µÄͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁÐ + BYTE byRuleID; //ÐÐΪ·ÖÎöÀàÐÍ£¬¹æÔò0xff±íʾȫ²¿£¬´Ó0¿ªÊ¼ + BYTE byRes[171]; /*±£Áô*/ + }struVcaParamByValue; + + struct//ÉóѶʼþËÑË÷Ìõ¼þ + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,°´Öµ±íʾ£¬´Ó1¿ªÊ¼ + BYTE byRes1[3]; + BYTE sInquestInfo[INQUEST_CASE_LEN]; + BYTE byRes2[232]; //±£Áô + } struInquestParam; + struct //ÖÇÄÜÕì²â²éÕÒÌõ¼þ + { + BYTE byChan [256];//´¥·¢ÖÇÄÜÕì²âµÄͨµÀºÅ£¬°´Êý×éϱê±íʾ£¬byChan[0]ÈôÖÃ1Ôò±íʾ²éÕÒÓÉͨµÀ1·¢ÉúÒƶ¯Õì²â´¥·¢µÄʼþ + }struVCADetectByBit; + + struct//ÖÇÄÜÕì²â²éÕÒÌõ¼þ £¬Í¨µÀºÅ°´Öµ±íʾ + { + DWORD dwChanNo[MAX_CHANNUM_V30-1];// ´¥·¢Í¨µÀºÅ,°´Öµ±íʾ£¬0xffffffffÎÞЧ£¬ÇÒºóÐøÊý¾ÝÒ²±íʾÎÞЧֵ + BYTE byAll;//0-±íʾ²»ÊÇÈ«²¿£¬1-±íʾȫ²¿¡£ + BYTE byres[3]; + }struVCADetectByValue; + struct + { + NET_DVR_STREAM_INFO struIDInfo; // Á÷idÐÅÏ¢£¬72×Ö½Ú³¤ + DWORD dwCmdType; // Íⲿ´¥·¢ÀàÐÍ£¬NVR½ÓÈëÔƴ洢ʹÓà + BYTE byBackupVolumeNum; //´æµµ¾íºÅ£¬CVRʹÓà + BYTE byRes[223]; + }struStreamIDParam; + struct + { + BYTE byCaseNo[SEARCH_CASE_NO_LEN]; //°¸¼þ±àºÅ + BYTE byCaseName[SEARCH_CASE_NAME_LEN]; //°¸¼þÃû³Æ£» + BYTE byLitigant1[SEARCH_LITIGANT_LEN]; //µ±ÊÂÈË1£» + BYTE byLitigant2[SEARCH_LITIGANT_LEN]; //µ±ÊÂÈË2£» + BYTE byChiefJudge[SEARCH_CHIEF_JUDGE_LEN];//ÉóÅг¤ + BYTE byCaseType; //°¸¼þÀàÐÍ£»0-È«²¿¡¢1-ÐÌÊ°¸¼þ¡¢2-ÃñÊ°¸¼þ + BYTE byRes[47]; + }struTrialParam; + }uSeniorParam; +}NET_DVR_SEARCH_EVENT_PARAM, *LPNET_DVR_SEARCH_EVENT_PARAM; + +#define MAX_POS_KEYWORDS_NUM 3 //Ö§³Ö¹Ø¼ü×Ö²éÕÒÌõÊý +#define MAX_POS_KEYWORD_LEN 128 //ÿÌõ¹Ø¼ü×Ö³¤¶È +#define SEARCH_EVENT_INFO_LEN_V40 800 + +//ʼþËÑË÷Ìõ¼þ +typedef struct tagNET_DVR_SEARCH_EVENT_PARAM_V40 +{ + WORD wMajorType; //0-Òƶ¯Õì²â£¬1-±¨¾¯ÊäÈë, 2-ÖÇÄÜʼþ 5-pos¼Ïñ 7-ÃŽûʼþ + WORD wMinorType; //ËÑË÷´ÎÀàÐÍ- ¸ù¾ÝÖ÷ÀàÐͱ仯£¬0xffff±íʾȫ²¿ + NET_DVR_TIME struStartTime; //ËÑË÷µÄ¿ªÊ¼Ê±¼ä£¬Í£Ö¹Ê±¼ä: ͬʱΪ(0, 0) ±íʾ´Ó×îÔçµÄʱ¼ä¿ªÊ¼£¬µ½×îºó£¬×îÇ°ÃæµÄ4000¸öʼþ + NET_DVR_TIME struEndTime; // + BYTE byLockType; // 0xff-È«²¿£¬0-δËø£¬1-Ëø¶¨ + BYTE byQuickSearch; // ÊÇ·ñÆôÓÿìËÙ²éѯ£¬0-²»ÆôÓã¬1-ÆôÓ㨿ìËÙ²éѯ²»»á·µ»ØÎļþ´óС£¬½ö¶ÔÉ豸Êý¾Ý¿â½øÐвéѯ£¬±ÜÃâƵ·±»½ÐÑÓ²ÅÌ£© + BYTE byRes[130]; // ±£Áô + union + { + BYTE byLen[SEARCH_EVENT_INFO_LEN_V40/*800*/]; + struct//±¨¾¯ÊäÈë + { + /*±¨¾¯ÊäÈëºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬0xffff±íʾºóÐøÎÞЧ*/ + WORD wAlarmInNo[128]; + BYTE byRes[544]; //±£Áô + }struAlarmParam; + + struct//Òƶ¯Õì²â + { + /* Òƶ¯Õì²âͨµÀ£¬°´Öµ±íʾ ,²ÉÓýô´ÕÐÍÅÅÁУ¬0xffff±íʾºóÐøÎÞЧ*/ + WORD wMotDetChanNo[MAX_CHANNUM_V30]; + BYTE byRes[672]; /*±£Áô*/ + }struMotionParam; + + struct //ÐÐΪ·ÖÎö + { + //ÐÐΪ·ÖÎö¶ÔÓ¦µÄͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬0xffff±íʾºóÐøÎÞЧ + WORD wChanNo[MAX_CHANNUM_V30]; + BYTE byRuleID; //ÐÐΪ·ÖÎöÀàÐÍ£¬¹æÔò0xff±íʾȫ²¿£¬´Ó0¿ªÊ¼ + BYTE byDriverBehaviortType; //˾»ú¼ÝÊ»ÐÐΪÀàÐÍ£º0-±£Áô¡¢1-³éÑÌ¡¢2-½Ó´òµç»°¡¢3-Æ£ÀͼÝÊ»¡¢4-·ÖÉñÌáÐÑ¡¢5-¼ÝʻԱÒì³£¡¢6-δϵ°²È«´ø¡¢7-ºìÍâ×è¶ÏÄ«¾µ + BYTE byADASType; //¸ß¼¶¸¨Öú¼ÝÊ»ÀàÐÍ£º0-±£Áô¡¢1-Ç°ÏòÅöײ¡¢2-³µµÀÆ«Àë¡¢3-äÇø¼ì²â¡¢4-³µ¾à¼ì²â¡¢5-ÐÐÈË·Àײ¡¢6-¼±¼ÓËÙ¡¢7-¼±¼õËÙ¡¢8-¼±×óתÍä¡¢9-¼±ÓÒתÍä¡¢10-³µÁ¾·­³µ¡¢11-δÀñÈÃÐÐÈË + BYTE byGSensorType; // G-Sensorʼþ£º0-±£Áô¡¢1-¼±¼ÓËÙ¡¢2-¼±¼õËÙ¡¢3-¼±×óתÍä¡¢4-¼±ÓÒתÍä¡¢5-³µÁ¾·­³µ¡¢6-³µÁ¾Åöײ + BYTE bySensorInType; // Sensor-InÐÐΪ£º0-±£Áô¡¢1-ɲ³µ¡¢2-×óת¡¢3-ÓÒת¡¢4-µ¹³µ + BYTE byRes[667]; /*±£Áô*/ + }struVcaParam; + + struct//ÉóѶʼþËÑË÷Ìõ¼þ + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byRes[799]; //±£Áô + } struInquestParam; + + struct//ÖÇÄÜÕì²â²éÕÒÌõ¼þ £¬Í¨µÀºÅ°´Öµ±íʾ + { + BYTE byAll; //²éÕÒÈ«²¿Í¨µÀ£¬0-·ñ£¬´ËʱdwChanNo²ÎÊýÓÐЧ£¬ + //1-²éÕÒÈ«²¿Í¨µÀ£¬´ËʱdwChanNo²ÎÊýÎÞЧ¡£ + BYTE byRes1[3]; + WORD wChanNo[MAX_CHANNUM_V30];// ´¥·¢Í¨µÀºÅ,°´Öµ±íʾ£¬0xffffÎÞЧ£¬ÇÒºóÐøÊý¾ÝÒ²±íʾÎÞЧֵ + BYTE byRes[668]; + }struVCADetect; + + struct + { + NET_DVR_STREAM_INFO struIDInfo; // Á÷idÐÅÏ¢£¬72×Ö½Ú³¤ + DWORD dwCmdType; // Íⲿ´¥·¢ÀàÐÍ£¬NVR½ÓÈëÔƴ洢ʹÓà + BYTE byBackupVolumeNum; //´æµµ¾íºÅ£¬CVRʹÓà + BYTE byRes1[3]; + BYTE byArchiveLabel[64]; //´æµµ±êÇ©£¬CVRʹÓà + BYTE byRes[656]; + }struStreamIDParam; + + struct //pos¼Ïñ + { + WORD wChannel[MAX_CHANNUM_V30]; //ͨµÀ£¬°´Öµ±íʾ,½ô´ÕÐÍÅÅÁУ¬Óöµ½0xffffʱ±íʾÊý×éºóÐøÖµÎÞЧ + BYTE byAllChan; //ÊÇ·ñ²éÕÒÈ«²¿Í¨µÀ£¬0-·ñ£¬´ËʱwChannelÓÐЧ£¬1-È«²¿Í¨µÀ£¬´ËʱwChannelÎÞЧ + BYTE byCaseSensitive; //0-²»Çø·Ö´óСд£¬ 1-Çø·Ö´óСд + BYTE byCombinateMode; //¹Ø¼ü×Ö×éºÏ·½Ê½£¬0-»ò£¬1-Óë + BYTE byRes1; //±£Áô + char sKeyWord[MAX_POS_KEYWORDS_NUM][MAX_POS_KEYWORD_LEN]; + //¹Ø¼ü×Ö²éÕÒʱµÄÌõ¼þ + BYTE byRes[284]; //±£Áô + }struPosAlarm; + + struct + { + BYTE byCaseNo[SEARCH_CASE_NO_LEN]; //°¸¼þ±àºÅ + BYTE byCaseName[SEARCH_CASE_NAME_LEN]; //°¸¼þÃû³Æ + BYTE byLitigant1[SEARCH_LITIGANT_LEN]; //µ±ÊÂÈË1 + BYTE byLitigant2[SEARCH_LITIGANT_LEN]; //µ±ÊÂÈË2 + BYTE byChiefJudge[SEARCH_CHIEF_JUDGE_LEN]; //ÉóÅг¤ + BYTE byCaseType; + BYTE byRes[47]; + }struTrialParam; + + struct //ÃŽûʼþËÑË÷Ìõ¼þ + { + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¨ÓëʼþÉÏ´«Ö÷ÀàÐÍÒ»Ö£¬0´ú±íÈ«²¿£© + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¨ÓëʼþÉÏ´«Ö÷ÀàÐÍÒ»Ö£¬0´ú±íÈ«²¿£© + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byName[NAME_LEN/*32*/]; //ÐÕÃû + BYTE byMACAddr[MACADDR_LEN]; //ÎïÀíMACµØÖ· + BYTE byRes[722]; + }struACSAlarm; + }uSeniorParam; +}NET_DVR_SEARCH_EVENT_PARAM_V40, *LPNET_DVR_SEARCH_EVENT_PARAM_V40; + +//ʼþËÑË÷Ìõ¼þ +typedef struct tagNET_DVR_SEARCH_EVENT_PARAM_V50 +{ + WORD wMajorType; //0-Òƶ¯Õì²â£¬1-±¨¾¯ÊäÈë, 2-ÖÇÄÜʼþ 5-pos¼Ïñ 7-ÃŽûʼþ, 8-·ÇÊÓƵÁª¶¯Ê¼þ + WORD wMinorType; //ËÑË÷´ÎÀàÐÍ- ¸ù¾ÝÖ÷ÀàÐͱ仯£¬0xffff±íʾȫ²¿ + NET_DVR_TIME_SEARCH_COND struStartTime; //ËÑË÷µÄ¿ªÊ¼Ê±¼ä£¬Í£Ö¹Ê±¼ä: ͬʱΪ(0, 0) ±íʾ´Ó×îÔçµÄʱ¼ä¿ªÊ¼£¬µ½×îºó£¬×îÇ°ÃæµÄ4000¸öʼþ + NET_DVR_TIME_SEARCH_COND struEndTime; //ËÑË÷µÄ½áÊøʱ¼ä + BYTE byLockType; // 0xff-È«²¿£¬0-δËø£¬1-Ëø¶¨ + BYTE byQuickSearch; // ÊÇ·ñÆôÓÿìËÙ²éѯ£¬0-²»ÆôÓã¬1-ÆôÓ㨿ìËÙ²éѯ²»»á·µ»ØÎļþ´óС£¬½ö¶ÔÉ豸Êý¾Ý¿â½øÐвéѯ£¬±ÜÃâƵ·±»½ÐÑÓ²ÅÌ£© + BYTE byRes[254]; // ±£Áô + union + { + BYTE byLen[SEARCH_EVENT_INFO_LEN_V40/*800*/]; + struct//±¨¾¯ÊäÈë + { + /*±¨¾¯ÊäÈëºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬0xffff±íʾºóÐøÎÞЧ*/ + WORD wAlarmInNo[128]; + BYTE byRes[544]; //±£Áô + }struAlarmParam; + + struct//Òƶ¯Õì²â + { + /* Òƶ¯Õì²âͨµÀ£¬°´Öµ±íʾ ,²ÉÓýô´ÕÐÍÅÅÁУ¬0xffff±íʾºóÐøÎÞЧ*/ + WORD wMotDetChanNo[MAX_CHANNUM_V30]; + BYTE byRes[672]; /*±£Áô*/ + }struMotionParam; + + struct //ÐÐΪ·ÖÎö + { + //ÐÐΪ·ÖÎö¶ÔÓ¦µÄͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬0xffff±íʾºóÐøÎÞЧ + WORD wChanNo[MAX_CHANNUM_V30]; + BYTE byRuleID; //ÐÐΪ·ÖÎöÀàÐÍ£¬¹æÔò0xff±íʾȫ²¿£¬´Ó0¿ªÊ¼ + BYTE byDriverBehaviortType; //˾»ú¼ÝÊ»ÐÐΪÀàÐÍ£º0-±£Áô¡¢1-³éÑÌ¡¢2-½Ó´òµç»°¡¢3-Æ£ÀͼÝÊ»¡¢4-·ÖÉñÌáÐÑ¡¢5-¼ÝʻԱÒì³£¡¢6-δϵ°²È«´ø¡¢7-ºìÍâ×è¶ÏÄ«¾µ + BYTE byADASType; //¸ß¼¶¸¨Öú¼ÝÊ»ÀàÐÍ£º0-±£Áô¡¢1-Ç°ÏòÅöײ¡¢2-³µµÀÆ«Àë¡¢3-äÇø¼ì²â¡¢4-³µ¾à¼ì²â¡¢5-ÐÐÈË·Àײ¡¢6-¼±¼ÓËÙ¡¢7-¼±¼õËÙ¡¢8-¼±×óתÍä¡¢9-¼±ÓÒתÍä¡¢10-³µÁ¾·­³µ¡¢11-δÀñÈÃÐÐÈË + BYTE byGSensorType; // G-Sensorʼþ£º0-±£Áô¡¢1-¼±¼ÓËÙ¡¢2-¼±¼õËÙ¡¢3-¼±×óתÍä¡¢4-¼±ÓÒתÍä¡¢5-³µÁ¾·­³µ¡¢6-³µÁ¾Åöײ + BYTE bySensorInType; // Sensor-InÐÐΪ£º0-±£Áô¡¢1-ɲ³µ¡¢2-×óת¡¢3-ÓÒת¡¢4-µ¹³µ + BYTE byRes[667]; /*±£Áô*/ + }struVcaParam; + + struct//ÉóѶʼþËÑË÷Ìõ¼þ + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byRes[799]; //±£Áô + } struInquestParam; + + struct//ÖÇÄÜÕì²â²éÕÒÌõ¼þ £¬Í¨µÀºÅ°´Öµ±íʾ + { + BYTE byAll; //²éÕÒÈ«²¿Í¨µÀ£¬0-·ñ£¬´ËʱdwChanNo²ÎÊýÓÐЧ£¬ + //1-²éÕÒÈ«²¿Í¨µÀ£¬´ËʱdwChanNo²ÎÊýÎÞЧ¡£ + BYTE byRes1[3]; + WORD wChanNo[MAX_CHANNUM_V30];// ´¥·¢Í¨µÀºÅ,°´Öµ±íʾ£¬0xffffÎÞЧ£¬ÇÒºóÐøÊý¾ÝÒ²±íʾÎÞЧֵ + BYTE byRes[668]; + }struVCADetect; + + struct + { + NET_DVR_STREAM_INFO struIDInfo; // Á÷idÐÅÏ¢£¬72×Ö½Ú³¤ + DWORD dwCmdType; // Íⲿ´¥·¢ÀàÐÍ£¬NVR½ÓÈëÔƴ洢ʹÓà + BYTE byBackupVolumeNum; //´æµµ¾íºÅ£¬CVRʹÓà + BYTE byRes1[3]; + BYTE byArchiveLabel[64]; //´æµµ±êÇ©£¬CVRʹÓà + BYTE byRes[656]; + }struStreamIDParam; + + struct //pos¼Ïñ + { + WORD wChannel[MAX_CHANNUM_V30]; //ͨµÀ£¬°´Öµ±íʾ,½ô´ÕÐÍÅÅÁУ¬Óöµ½0xffffʱ±íʾÊý×éºóÐøÖµÎÞЧ + BYTE byAllChan; //ÊÇ·ñ²éÕÒÈ«²¿Í¨µÀ£¬0-·ñ£¬´ËʱwChannelÓÐЧ£¬1-È«²¿Í¨µÀ£¬´ËʱwChannelÎÞЧ + BYTE byCaseSensitive; //0-²»Çø·Ö´óСд£¬ 1-Çø·Ö´óСд + BYTE byCombinateMode; //¹Ø¼ü×Ö×éºÏ·½Ê½£¬0-»ò£¬1-Óë + BYTE byRes1; //±£Áô + char sKeyWord[MAX_POS_KEYWORDS_NUM][MAX_POS_KEYWORD_LEN]; + //¹Ø¼ü×Ö²éÕÒʱµÄÌõ¼þ + BYTE byRes[284]; //±£Áô + }struPosAlarm; + + struct + { + BYTE byCaseNo[SEARCH_CASE_NO_LEN]; + BYTE byCaseName[SEARCH_CASE_NAME_LEN]; + BYTE byLitigant1[SEARCH_LITIGANT_LEN]; + BYTE byLitigant2[SEARCH_LITIGANT_LEN]; + BYTE byChiefJudge[SEARCH_CHIEF_JUDGE_LEN]; + BYTE byCaseType; + BYTE byRes[547]; + }struTrialParam; + + struct //ÃŽûʼþËÑË÷Ìõ¼þ + { + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¨ÓëʼþÉÏ´«Ö÷ÀàÐÍÒ»Ö£¬0´ú±íÈ«²¿£© + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¨ÓëʼþÉÏ´«Ö÷ÀàÐÍÒ»Ö£¬0´ú±íÈ«²¿£© + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byName[NAME_LEN/*32*/]; //ÐÕÃû + BYTE byMACAddr[MACADDR_LEN]; //ÎïÀíMACµØÖ· + BYTE byRes[722]; + }struACSAlarm; + struct //·ÇÊÓƵÁª¶¯Ê¼þËÑË÷Ìõ¼þ + { + WORD wDeviceType; //É豸ÀàÐÍ,0-˽ÓÐÃŽûÖ÷»ú£¬1-˽ÓпÉÊÓ¶Ô½²É豸, 2-˽Óб¨¾¯Ö÷»ú£¨Ô¤Áô£© 3-GJD±¨¾¯Ö÷»ú 4-Luminite±¨¾¯Ö÷»ú, 5-OPTEX±¨¾¯Ö÷»ú,6-cameraDetectorÄ£ÄâÏà»ú´«¸ÐÆ÷É豸 + WORD wEventType; //ËÑË÷´ÎÀàÐÍ- ¸ù¾ÝÖ÷ÀàÐͱ仯£¬0xffff±íʾȫ²¿ + WORD wChannel[MAX_CHANNUM_V30/*64*/]; //ͨµÀºÅ£¬°´Öµ±íʾ,½ô´ÕÐÍÅÅÁУ¬Óöµ½0xffffʱ±íʾÊý×éºóÐøÖµÎÞЧ + BYTE byAllChan; //ÊÇ·ñ²éÕÒÈ«²¿Í¨µÀ£¬0-·ñ£¬´ËʱwChannelÓÐЧ£¬1-È«²¿Í¨µÀ£¬´ËʱwChannelÎÞЧ + BYTE byCaseSensitive; //0-²»Çø·Ö´óСд£¬ 1-Çø·Ö´óСд + BYTE byCombinateMode; //¹Ø¼ü×Ö×éºÏ·½Ê½£¬0-»ò£¬1-Óë + BYTE bySearchType; //ËÑË÷·½Ê½£º0-°´ÊÓƵԴËÑË÷£¨´ËʱͨµÀºÅΪÊÓƵͨµÀºÅ£© + char sKeyWord[MAX_POS_KEYWORDS_NUM/*3*/][MAX_POS_KEYWORD_LEN/*128*/];//¹Ø¼ü×Ö²éÕÒʱµÄÌõ¼þ + WORD wZoneNo; //·ÀÇøºÅ£¬½öµ±É豸ÀàÐÍΪ˽Óб¨¾¯Ö÷»ú£¬´ÎÀàÐÍΪ·ÀÇø£¨wEventTypeΪ1£©Ê±ÓÐЧ + BYTE byRes[278]; //±£Áô + }struIOTAlarm; + }uSeniorParam; +}NET_DVR_SEARCH_EVENT_PARAM_V50, *LPNET_DVR_SEARCH_EVENT_PARAM_V50; + + +//²éÕÒ·µ»Ø½á¹û +typedef struct tagNET_DVR_SEARCH_EVENT_RET +{ + WORD wMajorType; //Ö÷ÀàÐÍ + WORD wMinorType; //´ÎÀàÐÍ + NET_DVR_TIME struStartTime; //ʼþ¿ªÊ¼µÄʱ¼ä + NET_DVR_TIME struEndTime; //ʼþÍ£Ö¹µÄʱ¼ä£¬Âö³åʼþʱºÍ¿ªÊ¼Ê±¼äÒ»Ñù + BYTE byChan[MAX_CHANNUM_V30]; + BYTE byChanEx[32]; //¹ØÁªÍ¨µÀ£¬°´Î»±íʾ£¬Ê¹ÓøÃ×ֶκóbyChan¿ÉÒÔ²»Ê¹Óà + BYTE byRes[4]; + union + { + struct//±¨¾¯ÊäÈë½á¹û + { + DWORD dwAlarmInNo; //±¨¾¯ÊäÈëºÅ + BYTE byRes[SEARCH_EVENT_INFO_LEN]; + }struAlarmRet; + struct//Òƶ¯Õì²â½á¹û + { + DWORD dwMotDetNo; //Òƶ¯Õì²âͨµÀ + BYTE byRes[SEARCH_EVENT_INFO_LEN]; + }struMotionRet; + struct//ÐÐΪ·ÖÎö½á¹û + { + DWORD dwChanNo; //´¥·¢Ê¼þµÄͨµÀºÅ + BYTE byRuleID; //¹æÔòID + BYTE byRes1[3]; //±£Áô + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + NET_VCA_EVENT_UNION uEvent; //ÐÐΪʼþ²ÎÊý + }struVcaRet; + struct//ÉóѶʼþ + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + BYTE byRes1[6]; //±£Áô + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + WORD wSegmentState; //±¾Æ¬¶Ï״̬ 0 ¿Ì¼Õý³££¬1 ¿Ì¼Òì³££¬2 ²»¿Ì¼ÉóѶ + BYTE byRes2[288]; //±£Áô + }struInquestRet; + struct //Á÷id¼Ïñ²éѯ½á¹û + { + DWORD dwRecordType; /*¼ÏñÀàÐÍ 0-¶¨Ê±Â¼Ïñ,1-Òƶ¯Õì²â,2-±¨¾¯´¥·¢,3-±¨¾¯|Òƶ¯Õì²â, 4-±¨¾¯&Òƶ¯Õì²â,5-ÃüÁî´¥·¢,6-ÊÖ¶¯Â¼Ïñ,7-Õ𶯱¨¾¯,8-»·¾³´¥·¢±¨¾¯, + 9-ÖÇÄܱ¨¾¯,10-PIR±¨¾¯,11-ÎÞÏß±¨¾¯,12-ºô¾È±¨¾¯,13- PIR|ÎÞÏß±¨¾¯|ºô¾È±¨, 14-ÖÇÄܽ»Í¨Ê¼þ,15-Ô½½çÕì²â,16-ÇøÓòÈëÇÖ,17-ÉùÒôÒì³£, + 18-³¡¾°±ä¸üÕì²â, 19-È«²¿¼òµ¥ÖÇÄÜ£¨Ô½½çÕì²â|ÇøÓòÈëÇÖ|½øÈëÇøÓò|À뿪ÇøÓò|ÈËÁ³Ê¶±ð£©, 20-ÐźÅÁ¿,21-»Ø´«¡¢22-»ØǨ¼Ïñ,23-ÕÚµ² 24-¼ÏñÆ´½Ó´æµµ*/ + DWORD dwRecordLength; //¼Ïñ´óС + BYTE byLockFlag; // Ëø¶¨±êÖ¾ 0£ºÃ»Ëø¶¨ 1£ºËø¶¨ + BYTE byDrawFrameType; // 0£º·Ç³é֡¼Ïñ 1£º³é֡¼Ïñ + BYTE byRes1[2]; + BYTE byFileName[NAME_LEN]; //ÎļþÃû + DWORD dwFileIndex; // ´æµµ¾íÉϵÄÎļþË÷Òý + BYTE byRes[256]; + }struStreamIDRet; + struct + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + BYTE bySegmentState; //±¾Æ¬¶Ï״̬£¬0-¿Ì¼Õý³££¬1-¿Ì¼Òì³££¬2-²»¿Ì¼ÉóѶ + BYTE byCaseType; //°¸¼þÀàÐÍ£»0-È«²¿¡¢1-ÐÌÊ°¸¼þ¡¢2-ÃñÊ°¸¼þ + BYTE byRes[2]; + BYTE byCaseNo[CASE_NO_RET_LEN]; //°¸¼þ±àºÅ + BYTE byCaseName[CASE_NAME_RET_LEN]; //°¸¼þÃû³Æ£» + BYTE byLitigant1[LITIGANT_RET_LEN]; //µ±ÊÂÈË1£» + BYTE byLitigant2[LITIGANT_RET_LEN]; //µ±ÊÂÈË2£» + BYTE byChiefJudge[CHIEF_JUDGE_RET_LEN];//ÉóÅг¤ + BYTE byRes1[104]; + }struTrialRet; + }uSeniorRet; +}NET_DVR_SEARCH_EVENT_RET, *LPNET_DVR_SEARCH_EVENT_RET; + +#define NET_SDK_MAX_TAPE_INDEX_LEN 32 //´Å´ø±àºÅ×î´ó³¤¶È +#define NET_SDK_MAX_FILE_LEN 256 //ÎļþÃû×î´ó³¤¶È + +//²éÕÒ·µ»Ø½á¹û +typedef struct tagNET_DVR_SEARCH_EVENT_RET_V40 +{ + WORD wMajorType; //Ö÷ÀàÐÍ + WORD wMinorType; //´ÎÀàÐÍ + NET_DVR_TIME struStartTime; //ʼþ¿ªÊ¼µÄʱ¼ä + NET_DVR_TIME struEndTime; //ʼþÍ£Ö¹µÄʱ¼ä£¬Âö³åʼþʱºÍ¿ªÊ¼Ê±¼äÒ»Ñù + WORD wChan[MAX_CHANNUM_V40/*512*/]; //´¥·¢µÄͨµÀºÅ£¬0xffff±íʾºóÐøÎÞЧ + BYTE byRes[36]; + union + { + BYTE byLen[800]; //ÁªºÏÌ峤¶È + struct//±¨¾¯ÊäÈë½á¹û + { + DWORD dwAlarmInNo; //±¨¾¯ÊäÈëºÅ + BYTE byRes[796]; + }struAlarmRet; + struct//Òƶ¯Õì²â½á¹û + { + DWORD dwMotDetNo; //Òƶ¯Õì²âͨµÀ + BYTE byRes[796]; + }struMotionRet; + struct//ÐÐΪ·ÖÎö½á¹û + { + DWORD dwChanNo; //´¥·¢Ê¼þµÄͨµÀºÅ + BYTE byRuleID; //¹æÔòID + BYTE byRes1[3]; //±£Áô + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + NET_VCA_EVENT_UNION uEvent; //ÐÐΪʼþ²ÎÊý + BYTE byRes[668]; //±£Áô + }struVcaRet; + + struct//ÉóѶʼþ + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + BYTE byRes1[6]; //±£Áô + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + WORD wSegmentState; //±¾Æ¬¶Ï״̬ 0 ¿Ì¼Õý³££¬1 ¿Ì¼Òì³££¬2 ²»¿Ì¼ÉóѶ + BYTE byRes2[784]; //±£Áô + }struInquestRet; + + struct //Á÷id¼Ïñ²éѯ½á¹û + { + DWORD dwRecordType; //¼ÏñÀàÐÍ 0-¶¨Ê±Â¼Ïñ 1-Òƶ¯Õì²â 2-±¨¾¯Â¼Ïñ 3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ 7-Õ𶯱¨¾¯ 8-»·¾³´¥·¢ 9-ÖÇÄܱ¨¾¯ 10-»Ø´«Â¼Ïñ + DWORD dwRecordLength; //¼Ïñ´óС + BYTE byLockFlag; // Ëø¶¨±êÖ¾ 0£ºÃ»Ëø¶¨ 1£ºËø¶¨ + BYTE byDrawFrameType; // 0£º·Ç³é֡¼Ïñ 1£º³é֡¼Ïñ + BYTE byPosition;// ÎļþËùÔڴ洢λÖãº0-ÕóÁÐÉÏ£¬1-´ø¿â»úλÉÏ£¬¿ÉÒÔÖ±½ÓÏÂÔØ£¬2-´Å´ø¿âÄÚ£¬ÐèÒª°Ñ´ÅÅÌÇл»µ½»úλÉÏ£¬3-²»ÔÚ´Å´ø¿âÖУ¬ÐèÒª°Ñ´ÅÅ̲嵽´Å´ø¿âÖÐ + BYTE byRes1; + BYTE byFileName[NAME_LEN]; //ÎļþÃû + DWORD dwFileIndex; // ´æµµ¾íÉϵÄÎļþË÷Òý + BYTE byTapeIndex[NET_SDK_MAX_TAPE_INDEX_LEN]; //ÎļþËùÔÚ´Å´ø±àºÅ + BYTE byFileNameEx[NET_SDK_MAX_FILE_LEN/*256*/]; //ÎļþÃûÀ©Õ¹ + BYTE byRes[464]; + }struStreamIDRet; + + struct//POS¼Ïñ²éѯ½á¹û + { + DWORD dwChanNo; //´¥·¢²úÉúposʼþµÄͨµÀ + BYTE byRes[796]; + }struPosRet; + + struct + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + BYTE bySegmentState; //±¾Æ¬¶Ï״̬£¬0-¿Ì¼Õý³££¬1-¿Ì¼Òì³££¬2-²»¿Ì¼ÉóѶ + BYTE byCaseType; //°¸¼þÀàÐÍ£»0-È«²¿¡¢1-ÐÌÊ°¸¼þ¡¢2-ÃñÊ°¸¼þ + BYTE byRes[2]; + BYTE byCaseNo[CASE_NO_RET_LEN]; //°¸¼þ±àºÅ + BYTE byCaseName[CASE_NAME_RET_LEN]; //°¸¼þÃû³Æ£» + BYTE byLitigant1[LITIGANT_RET_LEN]; //µ±ÊÂÈË1£» + BYTE byLitigant2[LITIGANT_RET_LEN]; //µ±ÊÂÈË2£» + BYTE byChiefJudge[CHIEF_JUDGE_RET_LEN];//ÉóÅг¤ + BYTE byRes1[600]; + }struTrialRet; + }uSeniorRet; +}NET_DVR_SEARCH_EVENT_RET_V40, *LPNET_DVR_SEARCH_EVENT_RET_V40; + +//²éÕÒ·µ»Ø½á¹û +typedef struct tagNET_DVR_SEARCH_EVENT_RET_V50 +{ + WORD wMajorType; //Ö÷ÀàÐÍ + WORD wMinorType; //´ÎÀàÐÍ + NET_DVR_TIME_SEARCH struStartTime; //ʼþ¿ªÊ¼µÄʱ¼ä + NET_DVR_TIME_SEARCH struEndTime; //ʼþÍ£Ö¹µÄʱ¼ä£¬Âö³åʼþʱºÍ¿ªÊ¼Ê±¼äÒ»Ñù + NET_DVR_ADDRESS struAddr; //Ƭ¶ÎËùÔڵĵØÖ·ÐÅÏ¢£¬¼¯Èº»Ø·ÅʱÓõ½ + WORD wChan[MAX_CHANNUM_V40/*512*/]; //´¥·¢µÄͨµÀºÅ£¬0xffff±íʾºóÐøÎÞЧ + BYTE byRes[256]; + union + { + BYTE byLen[800]; //ÁªºÏÌ峤¶È + struct//±¨¾¯ÊäÈë½á¹û + { + DWORD dwAlarmInNo; //±¨¾¯ÊäÈëºÅ + BYTE byRes[796]; + }struAlarmRet; + struct//Òƶ¯Õì²â½á¹û + { + DWORD dwMotDetNo; //Òƶ¯Õì²âͨµÀ + BYTE byRes[796]; + }struMotionRet; + struct//ÐÐΪ·ÖÎö½á¹û + { + DWORD dwChanNo; //´¥·¢Ê¼þµÄͨµÀºÅ + BYTE byRuleID; //¹æÔòID + BYTE byRes1[3]; //±£Áô + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + NET_VCA_EVENT_UNION uEvent; //ÐÐΪʼþ²ÎÊý + BYTE byRes[668]; //±£Áô + }struVcaRet; + + struct//ÉóѶʼþ + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + BYTE byRes1[6]; //±£Áô + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + WORD wSegmentState; //±¾Æ¬¶Ï״̬ 0 ¿Ì¼Õý³££¬1 ¿Ì¼Òì³££¬2 ²»¿Ì¼ÉóѶ + BYTE byRes2[784]; //±£Áô + }struInquestRet; + + struct //Á÷id¼Ïñ²éѯ½á¹û + { + DWORD dwRecordType; //¼ÏñÀàÐÍ 0-¶¨Ê±Â¼Ïñ 1-Òƶ¯Õì²â 2-±¨¾¯Â¼Ïñ 3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ 7-Õ𶯱¨¾¯ 8-»·¾³´¥·¢ 9-ÖÇÄܱ¨¾¯ 10-»Ø´«Â¼Ïñ + DWORD dwRecordLength; //¼Ïñ´óС + BYTE byLockFlag; // Ëø¶¨±êÖ¾ 0£ºÃ»Ëø¶¨ 1£ºËø¶¨ + BYTE byDrawFrameType; // 0£º·Ç³é֡¼Ïñ 1£º³é֡¼Ïñ + BYTE byPosition;// ÎļþËùÔڴ洢λÖãº0-ÕóÁÐÉÏ£¬1-´ø¿â»úλÉÏ£¬¿ÉÒÔÖ±½ÓÏÂÔØ£¬2-´Å´ø¿âÄÚ£¬ÐèÒª°Ñ´ÅÅÌÇл»µ½»úλÉÏ£¬3-²»ÔÚ´Å´ø¿âÖУ¬ÐèÒª°Ñ´ÅÅ̲嵽´Å´ø¿âÖÐ + BYTE byRes1; + BYTE byFileName[NAME_LEN]; //ÎļþÃû + DWORD dwFileIndex; // ´æµµ¾íÉϵÄÎļþË÷Òý + BYTE byTapeIndex[NET_SDK_MAX_TAPE_INDEX_LEN]; //ÎļþËùÔÚ´Å´ø±àºÅ + BYTE byFileNameEx[NET_SDK_MAX_FILE_LEN/*256*/]; //ÎļþÃûÀ©Õ¹ + BYTE byRes[464]; + }struStreamIDRet; + + struct//POS¼Ïñ²éѯ½á¹û + { + DWORD dwChanNo; //´¥·¢²úÉúposʼþµÄͨµÀ + BYTE byRes[796]; + }struPosRet; + + struct + { + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + BYTE bySegmentState; //±¾Æ¬¶Ï״̬£¬0-¿Ì¼Õý³££¬1-¿Ì¼Òì³££¬2-²»¿Ì¼ÉóѶ + BYTE byCaseType; //°¸¼þÀàÐÍ£»0-È«²¿¡¢1-ÐÌÊ°¸¼þ¡¢2-ÃñÊ°¸¼þ + BYTE byRes[2]; + BYTE byCaseNo[CASE_NO_RET_LEN]; //°¸¼þ±àºÅ + BYTE byCaseName[CASE_NAME_RET_LEN]; //°¸¼þÃû³Æ£» + BYTE byLitigant1[LITIGANT_RET_LEN]; //µ±ÊÂÈË1£» + BYTE byLitigant2[LITIGANT_RET_LEN]; //µ±ÊÂÈË2£» + BYTE byChiefJudge[CHIEF_JUDGE_RET_LEN];//ÉóÅг¤ + BYTE byRes1[600]; + }struTrialRet; + struct//·ÇÊÓƵͨµÀ²éѯ½á¹û + { + DWORD dwChanNo; //´¥·¢²úÉúʼþµÄͨµÀºÅ£¨Ê¼þԴͨµÀ£© + BYTE byRes[796]; + }struIOTRet; + }uSeniorRet; +}NET_DVR_SEARCH_EVENT_RET_V50, *LPNET_DVR_SEARCH_EVENT_RET_V50; + +//SDK_V35 2009-10-26 + +// ±ê¶¨ÅäÖÃÀàÐÍ +typedef enum tagCALIBRATE_TYPE +{ + PDC_CALIBRATE = 0x01, // PDC ±ê¶¨ + BEHAVIOR_OUT_CALIBRATE = 0x02, //ÐÐΪÊÒÍⳡ¾°±ê¶¨ + BEHAVIOR_IN_CALIBRATE = 0x03, // ÐÐΪÊÒÄÚ³¡¾°±ê¶¨ + ITS_CALBIRETE = 0x04, // ½»Í¨Ê¼þ±ê¶¨ + BV_DIRECT_CALIBRATE = 0x05, //Ë«Ä¿Ö±½Ó±ê¶¨ + PDC_LINE_CALIBRATE = 0x06 //PDC Ïß ±ê¶¨ +}CALIBRATE_TYPE; + +#define MAX_RECT_NUM 6 +typedef struct tagNET_DVR_RECT_LIST +{ + BYTE byRectNum; // ¾ØÐοòµÄ¸öÊý + BYTE byRes1[11]; //±£Áô×Ö½Ú + NET_VCA_RECT struVcaRect[MAX_RECT_NUM]; // ×î´óΪ6¸öRect +}NET_DVR_RECT_LIST, *LPNET_DVR_RECT_LIST; + +// PDC ±ê¶¨²ÎÊý +typedef struct tagNET_DVR_PDC_CALIBRATION +{ + NET_DVR_RECT_LIST struRectList; // ±ê¶¨¾ØÐοòÁбí + BYTE byRes[120]; // ±£Áô×Ö½Ú +}NET_DVR_PDC_CALIBRATION, *LPNET_DVR_PDC_CALIBRATION; + + +// ±ê¶¨ÏßµÄÊôÐÔÀà±ð£¬ÓÃÀ´±íʾµ±Ç°±ê¶¨ÏßÔÚʵ¼Ê±íʾµÄÊǸ߶ÈÏß»¹Êdz¤¶ÈÏß¡£ +typedef enum tagLINE_MODE +{ + HEIGHT_LINE, //¸ß¶ÈÑù±¾Ïß + LENGTH_LINE //³¤¶ÈÑù±¾Ïß +}LINE_MODE; +/* +ÔÚÉèÖñ궨ÐÅÏ¢µÄʱºò£¬Èç¹ûÏàӦλÉèÖÃÁËʹÄÜ£¬²¢ÉèÖÃÏà¹Ø²ÎÊý£¬ +ÈôûÓÐÉèÖÃʹÄÜ£¬Ôò±ê¶¨ºó¿ÉÒÔ»ñÈ¡Ïà¹ØµÄÉãÏñ»ú²ÎÊý +*/ +typedef struct tagNET_DVR_CAMERA_PARAM +{ + BYTE byEnableHeight; // ÊÇ·ñʹÄÜÉèÖÃÉãÏñ»ú¸ß¶ÈÏß + BYTE byEnableAngle; // ÊÇ·ñʹÄÜÉèÖÃÉãÏñ»ú¸©Ñö½Ç¶È + BYTE byEnableHorizon; // ÊÇ·ñʹÄÜÉèÖÃÉãÏñ»úµØƽÏß + BYTE byRes[5]; // ±£Áô×Ö½Ú + float fCameraHeight; // ÉãÏñ»ú¸ß¶È + float fCameraAngle; // ÉãÏñ»ú¸©Ñö½Ç¶È + float fHorizon; // ³¡¾°ÖеĵØƽÏß +}NET_DVR_CAMERA_PARAM, *LPNET_DVR_CAMERA_PARAM; +/* +µ±fValue±íʾĿ±ê¸ß¶ÈµÄʱºò£¬struStartPointºÍstruEndPoint·Ö±ð±íʾĿ±êÍ·²¿µãºÍ½Å²¿µã¡£ +µ±fValue±íʾÏ߶γ¤¶ÈµÄʱºò£¬struStartPointºÍstruEndPoint·Ö±ð±íʾÏ߶ÎÆðʼµãºÍÖյ㣬 +mode±íʾµ±Ç°Ñù±¾Ïß±íʾ¸ß¶ÈÏß»¹Êdz¤¶ÈÏß¡£ +*/ +typedef struct tagNET_DVR_LINE_SEGMENT +{ + BYTE byLineMode; // ²ÎÕÕ LINE_MODE + BYTE byRes[3]; // ±£Áô×Ö½Ú + NET_VCA_POINT struStartPoint; + NET_VCA_POINT struEndPoint; + float fValue; +}NET_DVR_LINE_SEGMENT, *LPNET_DVR_LINE_SEGMENT; + +#define MAX_LINE_SEG_NUM 8 + +/* +±ê¶¨Ñù±¾ÏßÄ¿Ç°ÐèÒª4-8µ÷Ñù±¾Ïߣ¬ÒÔ»ñÈ¡ÉãÏñ»úÏà¹Ø²ÎÊý +*/ +typedef struct tagNET_DVR_BEHAVIOR_OUT_CALIBRATION +{ + DWORD dwLineSegNum; // Ñù±¾Ï߸öÊý + NET_DVR_LINE_SEGMENT struLineSegment[MAX_LINE_SEG_NUM]; // Ñù±¾Ïß×î´ó¸öÊý + NET_DVR_CAMERA_PARAM struCameraParam; // ÉãÏñ»ú²ÎÊý + BYTE byRes[20]; +}NET_DVR_BEHAVIOR_OUT_CALIBRATION, *LPNET_DVR_BEHAVIOR_OUT_CALIBRATION; + +/* +¸Ã½á¹¹Ìå±íʾIASÖÇÄÜ¿â±ê¶¨Ñù±¾£¬ +ÆäÖаüÀ¨Ò»¸öÄ¿±ê¿òºÍÒ»Ìõ¶ÔÓ¦µÄ¸ß¶È±ê¶¨Ïߣ» +Ä¿±ê¿òΪվÁ¢µÄÈËÌåÍâ½Ó¾ØÐοò£»¸ß¶ÈÏßÑù±¾±êʶ´ÓÈËÍ·¶¥µãµ½½ÅµãµÄ±ê¶¨Ïߣ» +ÓùéÒ»»¯×ø±ê±íʾ£» +*/ +typedef struct tagNET_DVR_IN_CAL_SAMPLE +{ + NET_VCA_RECT struVcaRect; // Ä¿±ê¿ò + NET_DVR_LINE_SEGMENT struLineSegment; // ¸ß¶È±ê¶¨Ïß +}NET_DVR_IN_CAL_SAMPLE, *LPNET_DVR_IN_CAL_SAMPLE; + +#define MAX_SAMPLE_NUM 5 //Ö±½Ó±ê¶¨µã×î´ó¸öÊý +#define MAX_SAMPLE_NUM_EX 7 //Ñù±¾±ê¶¨µã¸öÊýÀ©Õ¹ + +typedef struct tagNET_DVR_BEHAVIOR_IN_CALIBRATION +{ + DWORD dwCalSampleNum; // ±ê¶¨Ñù±¾¸öÊý + NET_DVR_IN_CAL_SAMPLE struCalSample[MAX_SAMPLE_NUM]; // ±ê¶¨Ñù±¾×î´ó¸öÊý + NET_DVR_CAMERA_PARAM struCameraParam; // ÉãÏñ»ú²ÎÊý + BYTE byRes[16]; +}NET_DVR_BEHAVIOR_IN_CALIBRATION, *LPNET_DVR_BEHAVIOR_IN_CALIBRATION; + +#define CALIB_PT_NUM 4 +typedef struct tagNET_DVR_ITS_CALIBRATION +{ + DWORD dwPointNum; //±ê¶¨µãÊý + NET_VCA_POINT struPoint[CALIB_PT_NUM]; //ͼÏñ×ø±ê + float fWidth; + float fHeight; + BYTE byRes1[100]; // ±£Áô×Ö½Ú +}NET_DVR_ITS_CALIBRATION, *LPNET_DVR_ITS_CALIBRATION; + +typedef struct tagNET_DVR_BV_DIRECT_CALIBRATION +{ + DWORD dwCameraHeight; //ÉãÏñ»ú¸ß¶È£¬µ¥Î»cm + float fPitchAngle; //ÉãÏñ»ú¸©ÊӽǶÈ[0¡ã, 60¡ã], + float fInclineAngle; //ÉãÏñ»úÇãб½Ç¶È[-20¡ã,20¡ã] + BYTE byRes1[228]; //±£Áô +}NET_DVR_BV_DIRECT_CALIBRATION,*LPNET_DVR_BV_DIRECT_CALIBRATION; + +// PDC ±ê¶¨²ÎÊý +typedef struct tagNET_DVR_PDC_LINE_CALIBRATION +{ + NET_VCA_LINE struCalibrationLine; + BYTE byRes[224];// ±£Áô×Ö½Ú +} NET_DVR_PDC_LINE_CALIBRATION, *LPNET_DVR_PDC_LINE_CALIBRATION; + +// ±ê¶¨²ÎÊýÁªºÏÌå +// ºóÐøµÄÏà¹Ø±ê¶¨²ÎÊý¿ÉÒÔ·ÅÔڸýṹÀïÃæ +typedef union tagNET_DVR_CALIBRATION_PRARM_UNION +{ + BYTE byRes[240]; //ÁªºÏÌå½á¹¹´óС + NET_DVR_PDC_CALIBRATION struPDCCalibration; //PDC ±ê¶¨²ÎÊý + NET_DVR_BEHAVIOR_OUT_CALIBRATION struBehaviorOutCalibration; // ÐÐΪÊÒÍⳡ¾°±ê¶¨ Ö÷ÒªÓ¦ÓÃÓÚIVSµÈ + NET_DVR_BEHAVIOR_IN_CALIBRATION struBehaviorInCalibration; // ÐÐΪÊÒÄÚ³¡¾°±ê¶¨£¬Ö÷ÒªÓ¦ÓÃIASµÈ + NET_DVR_ITS_CALIBRATION struITSCalibration; + NET_DVR_BV_DIRECT_CALIBRATION struBvDirectCalibration; //Ë«Ä¿Ö±½Ó±ê¶¨ + NET_DVR_PDC_LINE_CALIBRATION struPDCLineCalibration; //PDC Ï߱궨²ÎÊý +}NET_DVR_CALIBRATION_PRARM_UNION, *LPNET_DVR_CALIBRATION_PRARM_UNION; + + +// ±ê¶¨ÅäÖýṹ +typedef struct tagNET_DVR_CALIBRATION_CFG +{ + DWORD dwSize; //±ê¶¨½á¹¹´óС + BYTE byEnable; // ÊÇ·ñÆôÓñ궨 + BYTE byCalibrationType; // ±ê¶¨ÀàÐÍ ¸ù¾Ý²»Í¬ÀàÐÍÔÚÁªºÏÌåÀàÑ¡Ôñ²»Í¬µÄ±ê¶¨ ²Î¿¼CALIBRATE_TYPE + BYTE byRes1[2]; + NET_DVR_CALIBRATION_PRARM_UNION uCalibrateParam; // ±ê¶¨²ÎÊýÁªºÏÌå + BYTE byRes2[12]; +}NET_DVR_CALIBRATION_CFG, *LPNET_DVR_CALIBRATION_CFG; + +//Á÷Á¿Í³¼Æ·½Ïò½á¹¹Ìå +typedef struct tagNET_DVR_PDC_ENTER_DIRECTION +{ + NET_VCA_POINT struStartPoint; //Á÷Á¿Í³¼Æ·½ÏòÆðʼµã + NET_VCA_POINT struEndPoint; // Á÷Á¿Í³¼Æ·½Ïò½áÊøµã +}NET_DVR_PDC_ENTER_DIRECTION, *LPNET_DVR_PDC_ENTER_DIRECTION; + +typedef struct tagNET_DVR_PDC_RULE_CFG +{ + DWORD dwSize; //½á¹¹´óС + BYTE byEnable; // ÊÇ·ñ¼¤»î¹æÔò; + BYTE byRes1[23]; // ±£Áô×Ö½Ú + NET_VCA_POLYGON struPolygon; // ¶à±ßÐÎ + NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; // Á÷Á¿½øÈë·½Ïò +} NET_DVR_PDC_RULE_CFG, *LPNET_DVR_PDC_RULE_CFG; + +typedef struct tagNET_DVR_PDC_RULE_CFG_V41 +{ + DWORD dwSize; //½á¹¹´óС + BYTE byEnable; // ÊÇ·ñ¼¤»î¹æÔò; + BYTE byRes1[23]; // ±£Áô×Ö½Ú + NET_VCA_POLYGON struPolygon; // ¶à±ßÐÎ + NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; // Á÷Á¿½øÈë·½Ïò + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + NET_DVR_TIME_EX struDayStartTime; //°×Ì쿪ʼʱ¼ä£¬Ê±·ÖÃëÓÐЧ + NET_DVR_TIME_EX struNightStartTime; //Ò¹Íí¿ªÊ¼Ê±¼ä£¬Ê±·ÖÃëÓÐЧ + BYTE byRes[100]; // ±£Áô×Ö½Ú +}NET_DVR_PDC_RULE_CFG_V41, *LPNET_DVR_PDC_RULE_CFG_V41; + +/********* IPC5.1.7 ÈËÁ÷Á¿Í³¼Æ¹æÔò Begin 2014-03-21***********/ +//Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_PDC_RULE_COND +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwChannel; //ͨµÀºÅ + DWORD dwID; //³¡¾°ID£¬¼æÈÝÇò»ú¶à³¡¾°¸ÅÄ¼æÈÝÀÏ°æ±¾SDKÅäÖÃÐÂÉ豸ʱ£¬±£Áô×Ö½ÚΪ0µÄÇé¿ö£¬ËùÒÔÕâ¸ö×Ö½ÚΪ0ʱ£¬Ò²Ä¬ÈÏΪ³¡¾°1 + BYTE byRes[60]; +}NET_DVR_PDC_RULE_COND, *LPNET_DVR_PDC_RULE_COND; + +//ÕÛÏ߽ṹÌå +typedef struct tagNET_VCA_POLYLINE +{ + NET_VCA_POINT struPoint[4]; //ÕÛÏßµã +}NET_VCA_POLYLINE, *LPNET_VCA_POLYLINE; + +//ÅäÖýṹ +typedef struct tagNET_DVR_PDC_RULE_CFG_V42 +{ + DWORD dwSize; //½á¹¹´óС + BYTE byEnable; //ÊÇ·ñ¼¤»î¹æÔò; + BYTE byOSDEnable;//¿ÍÁ÷ͳ¼ÆOSDÏÔʾÊÇ·ñÆôÓÃ, 0-·ñ£¨0-ÎÞ£©£¬1-ÊÇ£¨0-½øÈëºÍÀ뿪£©£¬ 2-½øÈ룬 3-À뿪 ¶ÔÓÚÀÏÉ豸µÄ²»ÆôÓÃOSDµþ¼Ó¶ÔÓ¦£¨ÎÞ£©£¬ÆôÓöÔÓ¦£¨½øÈë/À뿪£©£¬4-¾­¹ýÈËÊý£¬5-½øÈëºÍ¾­¹ý¡£ + BYTE byCurDetectType;//µ±Ç°¼ì²âÇøÓòÀàÐÍ£¬0-¶à±ßÐΣ¬1-¼ì²âÏß, 2-ÕÛÏß¼ì²â + BYTE byInterferenceSuppression; //¸ÉÈÅÒÖÖÆ£¬°´Î»±íʾ,0-δ¹´Ñ¡,1-¹´Ñ¡£¬bit0-ÒõÓ°£¬bit1-ÅÇ»²£¬bit2-ÍƳµ + NET_VCA_POINT struOSDPoint;//¿ÍÁ÷ͳ¼ÆÏÔʾOSDÏÔʾ×óÉϽÇ×ø±ê + //¿ÍÁ÷Á¿¼ì²âÊý¾ÝÉÏ´«ÖÜÆÚ£¨0-15¡¢1-1¡¢2-5¡¢3-10¡¢4-20¡¢5-30¡¢6-60£©µ¥Î»£º·ÖÖÓ + BYTE byDataUploadCycle; + //ÿÃëÉÏ´«»úÖÆʹÄÜ£¨0-¹Ø±Õ£¬1-¿ªÆô£© + BYTE bySECUploadEnable; + BYTE byEmailDayReport;//¿ÍÁ÷ÈÕ±¨±íʹÄÜ 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byEmailWeekReport;//¿ÍÁ÷Öܱ¨±íʹÄÜ 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byEmailMonthReport;//¿ÍÁ÷Ô±¨±íʹÄÜ0-¹Ø±Õ£¬1-¿ªÆô + BYTE byEmailYearReport;//¿ÍÁ÷Ä걨±íʹÄÜ0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes2[6];// ±£Áô×Ö½Ú + NET_VCA_POLYGON struPolygon; // ¶à±ßÐÎ + NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; // Á÷Á¿½øÈë·½Ïò + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + NET_DVR_TIME_EX struDayStartTime; //°×Ì쿪ʼʱ¼ä£¬Ê±·ÖÃëÓÐЧ + NET_DVR_TIME_EX struNightStartTime; //Ò¹Íí¿ªÊ¼Ê±¼ä£¬Ê±·ÖÃëÓÐЧ + NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; /*´¦Àí·½Ê½ ½öÖ§³ÖÉÏ´«ÖÐÐÄ*/ + BYTE byDetecteSensitivity;//Ä¿±ê¼ì²âÁéÃô¶È£º·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byGenerateSpeedSpace;//Ä¿±êÉú³ÉËٶȣ¨¿ÕÓò£©£º·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byGenerateSpeedTime;// Ä¿±êÉú³ÉËٶȣ¨Ê±Óò£©£º·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byCountSpeed;// ¼ÆÊýËٶȣº·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byDetecteType;// Ä¿±ê¼ì²âÀàÐÍ£º0-×Ô¶¯£¬1-ÈËÍ·£¬2-Í·¼ç£¬Ä¬ÈÏ0-×Ô¶¯£¬×Ô¶¯Ä£Ê½ÏÂDSPµ÷ÕûËã·¨µÄ²ÎÊýÅäÖøøËã·¨¿â + BYTE byTargetSizeCorrect;//Ä¿±ê³ß´çÐÞÕý£º·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byStreamOverlayRuleInfos;//ÂëÁ÷ÖÇÄÜÐÅÏ¢µþ¼Ó 0-·ñ£¬1-ÊÇ + BYTE byRes3;// ±£Áô×Ö½Ú + NET_VCA_LINE struLine;//¼ì²âÏß + BYTE byHeightFilterEnable;//¸ß¶È¹ýÂËÊÇ·ñ¿ªÆô£¬0-±£Áô£¬1-¹Ø±Õ£¬2-¿ªÆô + BYTE byDetectThreshold;//¼ì²âãÐÖµ,·¶Î§[0,100],ĬÈÏ 90(ÄÚ²¿Ê¹Óã¬Ôݲ»¿ª·Å)ÓÃÓÚÉ趨Ëã·¨¿âÖб»¼ì²âÄ¿±êµÄÖÃÐŶÈãÐÖµ£¬ÖÃÐŶȵÍÓÚ¸ÃãÐÖµµÄÄ¿±ê£¬²»ÓÃÓÚ¸ú×Ù¼ÆÊý£» + BYTE byAidedTrackEnabled;//¸¨Öú¸ú×Ù¿ª¹Ø£¬0~¿ªÆô¡¢1~¹Ø±Õ£¬Ä¬ÈÏ¿ªÆô(ÄÚ²¿Ê¹ÓÃ) ÓÃÓÚ¿ªÆôºÍ¹Ø±ÕËã·¨¸ú×ÙÄ£¿éÖеĹâÁ÷¸¨Öú¸ú×Ù£¬¸ú×Ù¿ÍÁ÷ÈËÔ±£¬Ôö¼Ó¾«×¼¶È¡£ + BYTE byRes4; + float fHeightFilter;//¹ýÂ˸߶ȣ¬µ¥Î»£ºÀåÃ×£¬Ä¬ÈÏÖµ£º120ÀåÃ×£¬·¶Î§£º40-200ÀåÃס£byHeightFilterEnableΪ2ÊDzÅÓÐЧ + BYTE byCalibrateType;//±ê¶¨ÀàÐÍ£¬0-δ½øÐб궨£¬1-×Ô¶¯±ê¶¨£¬2-ÊÖ¶¯±ê¶¨ + BYTE byCountingType;//¼ÆÊý´¥·¢·½Ê½ 0-ÎÞ,1-±¨¾¯ÊäÈë´¥·¢,2-ÊÓƵ·ÖÎö´¥·¢ + BYTE bySignalType;//ÐźÅÀàÐÍ 0-µçƽ£¬1-Âö³å + BYTE byRS485TransmissionEnabled;//ÆôÓÃ485´«Êä 0-¹Ø±Õ£¬1-¿ªÆô + float fTiltAngle;//¸©Ñö½Ç,µ¥Î»£º¶È£»¸©Ñö½ÇĬÈÏÖµ£º0£»¸©Ñö½Ç·¶Î§£º0-180¶È,Ö»¶Á + float fHeelAngle;//Çãб½Ç,µ¥Î»£º¶È£»Çãб½ÇĬÈÏÖµ£º0£»Çãб½Ç·¶Î§£º-90-90¶È,Ö»¶Á + float fHeight;//¸ß¶È£¬¸ß¶Èµ¥Î»£ºÀåÃ×£»¸ß¶ÈĬÈÏÖµ300ÀåÃ×£º¸ß¶È·¶Î§£º200-500ÀåÃ×,µ±byCalibrateTypeΪ2ʱÉèÖÃÓÐЧ£¬ÆäÓàʱֻ¶Á + NET_VCA_POLYGON struCountPolygon;//¼ÆÊýÇøÓò£º¸Ã²ÎÊýĬÈÏΪֻ¶ÁÊôÐÔ£¬ÈôÖÇÄÜͨµÀ·ÖÎöÄÜÁ¦Öзµ»ØÁËÄÜÁ¦½Úµã£¬Ôò´ú±í¸Ã²ÎÊýÖ§³ÖÅäÖᣠ+ NET_VCA_POLYGON struAutoCalibPolygon;//±ê¶¨ÇøÓò£¬µ±byCalibrateTypeΪ1ʱÓÐЧ + NET_DVR_TIME_EX struDailyResetTime; //¶¨Ê±ÇåÁã + NET_VCA_POLYLINE struPolyLine;//ÕÛÏß¼ì²âÇøÓò£¨ÅäÖÃÕÛÏߺó£¬struLine²»×öÏÔʾ£© + BYTE byRes[4]; //±£Áô×Ö½Ú +}NET_DVR_PDC_RULE_CFG_V42, *LPNET_DVR_PDC_RULE_CFG_V42; +/********* IPC5.1.7 ÈËÁ÷Á¿Í³¼Æ¹æÔò End 2014-03-21***********/ + +//ÊÔÓðæÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_DVR_TRIAL_VERSION_CFG +{ + DWORD dwSize; + WORD wReserveTime; //ÊÔÓÃÆÚÊ£Óàʱ¼ä£¬0xffff±íʾÎÞЧ£¬µ¥Î»£ºÌì + BYTE byRes[62]; +}NET_DVR_TRIAL_VERSION_CFG, *LPNET_DVR_TRIAL_VERSION_CFG; + +typedef struct tagNET_DVR_SYN_CHANNEL_NAME_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_SYN_CHANNEL_NAME_PARAM, *LPNET_DVR_SYN_CHANNEL_NAME_PARAM; + +typedef struct tagNET_DVR_RESET_COUNTER_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byMode; //ÉúЧģʽ£¬0-¶¨Ê±£¬1-ÊÖ¶¯ + BYTE byRes1[2]; + NET_DVR_TIME_EX struTime[MAX_DAYS];//Êý¾ÝÇåÁãʱ¼ä£¬Ê±·ÖÃëÓÐЧ + BYTE byRes[64]; +}NET_DVR_RESET_COUNTER_CFG, *LPNET_DVR_RESET_COUNTER_CFG; + +typedef struct tagNET_DVR_VCA_CTRLINFO_COND +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; + BYTE byRes[64]; +}NET_DVR_VCA_CTRLINFO_COND, *LPNET_DVR_VCA_CTRLINFO_COND; + +#define NET_SDK_MAX_RELATED_CHAN_NUM 4 //×î´ó¹ØÁªÍ¨µÀÊý + +typedef struct tagNET_DVR_VCA_CTRLINFO_CFG +{ + DWORD dwSize; + BYTE byVCAEnable; //ÊÇ·ñ¿ªÆôÖÇÄÜ + BYTE byVCAType; //ÖÇÄÜÄÜÁ¦ÀàÐÍ£¬VCA_CHAN_ABILITY_TYPE + BYTE byStreamWithVCA; //ÂëÁ÷ÖÐÊÇ·ñ´øÖÇÄÜÐÅÏ¢ + BYTE byMode; //ģʽ£¬ATM ÄÜÁ¦Ê±²ÎÕÕVCA_CHAN_MODE_TYPE ,TFS ÄÜÁ¦Ê±²ÎÕÕ TFS_CHAN_MODE_TYPE£¬ÐÐΪ·ÖÎöÍêÕû°æʱ²ÎÕÕBEHAVIOR_SCENE_MODE_TYPE + BYTE byControlType; //¿ØÖÆÀàÐÍ£¬°´Î»±íʾ£¬0-·ñ£¬1-ÊÇ + //byControlType &1 ÊÇ·ñÆôÓÃ×¥ÅŦÄÜ + //byControlType &2 ÊÇ·ñÆôÓÃÁª¶¯Ç°¶ËÉ豸 + BYTE byRes1[3]; + WORD wRelatedChannel[NET_SDK_MAX_RELATED_CHAN_NUM/*4*/];/*¹ØÁªÍ¨µÀºÅ£¬0-²»¹ØÁª£¨µ±Ç°½öATMÉ豸ʹÓ㬵±ÉèÖÃͨµÀģʽΪATMÃæ°åʱ£¬¿ÉÒÔ¹ØÁªÒ»Â·ATMÈËÁ³Í¨µÀ£©*/ + BYTE byRes[72]; //±£Áô£¬ÉèÖÃΪ0 +}NET_DVR_VCA_CTRLINFO_CFG, *LPNET_DVR_VCA_CTRLINFO_CFG; + +//ÉèÖÃÈËÁ÷Á¿Í³¼Æ²ÎÊý ¸´ÓÃÐÐΪÄÚ²¿¹Ø¼ü×Ö²ÎÊý +// HUMAN_GENERATE_RATE +// Ä¿±êÉú³ÉËٶȲÎÊý£¬¿ØÖÆPDC¿âÉú³ÉÄ¿±êµÄËٶȡ£ËÙ¶ÈÔ½¿ì£¬Ä¿±êÔ½ÈÝÒ×Éú³É¡£µ±ÊäÈëÊÓƵ¹âÕÕÌõ¼þ½Ï²î£¬¶Ô±È¶È½ÏµÍʱ£¬»òÕßÉèÖõĹæÔòÇøÓò½ÏСʱ£¬Ó¦¼Ó¿ìÄ¿±êÉú³ÉËٶȣ¬ ±ÜÃâÄ¿±êµÄ©¼ì£»µ±ÊäÈëÊÓƵÖжԱȶȽϸßʱ£¬»òÕß¹æÔòÇøÓò½Ï´óʱ£¬Ó¦¸Ã½µµÍÄ¿±êÉú³ÉËٶȣ¬ÒÔ¼õÉÙÎó¼ì¡£Ä¿±êÉú³ÉËٶȲÎÊý¹²ÓÐ5¼¶£¬1¼¶ËÙ¶È×îÂý£¬5¼¶×î¿ì£¬Ä¬ÈϲÎÊýΪ3¡£ +// +// DETECT_SENSITIVE +// Ä¿±ê¼ì²âÁéÃô¶È¿ØÖƲÎÊý£¬¿ØÖÆPDC¿âÖÐÒ»¸ö¾ØÐÎÇøÓò±»¼ì²âΪĿ±êµÄÁéÃô¶È¡£ÁéÃô¶ÈÔ½¸ß£¬¾ØÐÎÇøÓòÔ½ÈÝÒ×±»¼ì²âΪĿ±ê£¬ÁéÃô¶ÈÔ½µÍÔòÔ½ÄѼì²âΪĿ±ê¡£µ±ÊäÈëÊÓƵ¹âÕÕÌõ¼þ½Ï²î£¬¶Ô±È¶È½ÏµÍʱ£¬Ó¦Ìá¸ß¼ì²âÁéÃô¶È£¬ ±ÜÃâÄ¿±êµÄ©¼ì£»µ±ÊäÈëÊÓƵÖжԱȶȽϸßʱ£¬Ó¦¸Ã½µµÍ¼ì²âÁéÃô¶È£¬ÒÔ¼õÉÙÎó¼ì¡£¶ÔÓ¦²ÎÊý¹²ÓÐ5¼¶£¬¼¶±ð1ÁéÃô¶È×îµÍ£¬5¼¶×î¸ß£¬Ä¬Èϼ¶±ðΪ3¡£ +// TRAJECTORY_LEN +// ¹ì¼£Éú³É³¤¶È¿ØÖƲÎÊý£¬±íʾÉú³É¹ì¼£Ê±ÒªÇóÄ¿±êµÄ×î´óλÒÆÏñËØ¡£¶ÔÓ¦²ÎÊý¹²ÓÐ5¼¶£¬¼¶±ð1£¬Éú³É³¤¶È×£¬¹ì¼£Éú³É×îÂý£¬5¼¶Éú³É³¤¶È×î¶Ì£¬¹ì¼£Éú³É×î¿ì£¬Ä¬Èϼ¶±ðΪ3¡£ +// TRAJECT_CNT_LEN +// ¹ì¼£¼ÆÊý³¤¶È¿ØÖƲÎÊý£¬±íʾ¹ì¼£¼ÆÊýʱҪÇóÄ¿±êµÄ×î´óλÒÆÏñËØ¡£¶ÔÓ¦²ÎÊý¹²ÓÐ5¼¶£¬¼¶±ð1£¬¼ÆÊýÒªÇ󳤶È×£¬¹ì¼£¼ÆÊý×îÂý£¬5¼¶¼ÆÊýÒªÇ󳤶È×î¶Ì£¬¹ì¼£¼ÆÊý×î¿ì£¬Ä¬Èϼ¶±ðΪ3¡£ +// PREPROCESS +// ͼÏñÔ¤´¦Àí¿ØÖƲÎÊý£¬0 - ²»´¦Àí£»1 - ´¦Àí¡£Ä¬ÈÏΪ0£» +// CAMERA_ANGLE +// ÉãÏñ»ú½Ç¶ÈÊäÈë²ÎÊý£¬ 0 - Çãб£» 1 - ´¹Ö±¡£Ä¬ÈÏΪ0£» +typedef enum tagPDC_PARAM_KEY +{ + HUMAN_GENERATE_RATE = 50, // Ä¿±êÉú³ÉËÙ¶È ´Ó50¿ªÊ¼ + DETECT_SENSITIVE = 51, // ¼ì²âÁéÃô¶È +}PDC_PARAM_KEY; + +typedef struct tagNET_DVR_PDC_TARGET_INFO +{ + DWORD dwTargetID; // Ä¿±êid + NET_VCA_RECT struTargetRect; // Ä¿±ê¿ò + BYTE byRes1[8]; // ±£Áô×Ö½Ú +}NET_DVR_PDC_TARGET_INFO, *LPNET_DVR_PDC_TARGET_INFO; + +typedef struct tagNET_DVR_PDC_TARGET_IN_FRAME +{ + BYTE byTargetNum; //Ä¿±ê¸öÊý + BYTE byRes1[3]; + NET_DVR_PDC_TARGET_INFO struTargetInfo[MAX_TARGET_NUM]; //Ä¿±êÐÅÏ¢Êý×é + BYTE byRes2[8]; // ±£Áô×Ö½Ú +}NET_DVR_PDC_TARGET_IN_FRAME, *LPNET_DVR_PDC_TARGET_IN_FRAME; + +typedef struct tagNET_DVR_PDC_ALRAM_INFO +{ + DWORD dwSize; // PDCÈËÁ÷Á¿±¨¾¯ÉÏ´«½á¹¹Ìå´óС + BYTE byMode; // 0 µ¥Ö¡Í³¼Æ½á¹û 1×îСʱ¼ä¶Îͳ¼Æ½á¹û 2 ÐźÅÁ¿´¥·¢£¨½á¹û´æÔÚ¡°Í³¼ÆÆðʼʱ¼ä¡±&&¡°Í³¼Æ½áÊøʱ¼ä¡±£© + BYTE byChannel; // ±¨¾¯ÉÏ´«Í¨µÀºÅ + /********* IPC5.1.7 ÐÂÔö²ÎÊý Begin 2014-03-21***********/ + BYTE bySmart; //רҵÖÇÄÜ·µ»Ø0£¬Smart ·µ»Ø 1 + BYTE byRes1; // ±£Áô×Ö½Ú + /********* IPC5.1.7 ÐÂÔö²ÎÊý End 2014-03-21***********/ + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + union + { + struct // µ¥Ö¡Í³¼Æ½á¹ûʱʹÓà + { + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byRes[89]; + }struStatFrame; + struct + { + NET_DVR_TIME tmStart; // ͳ¼ÆÆðʼʱ¼ä + NET_DVR_TIME tmEnd; // ͳ¼Æ½áÊøʱ¼ä + BYTE byTimeDifferenceFlag; /*0-ĬÈÏÐÐΪ£¬cStartTimeDifferenceH,µÈʱ²îÐÅÏ¢ÎÞЧ£¬1-ʱ²îÐÅÏ¢ÓÐЧ*/ + char cStartTimeDifferenceH; /*¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø*/ + char cStartTimeDifferenceM; /*¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø*/ + char cStopTimeDifferenceH; /*½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø*/ + char cStopTimeDifferenceM; /*½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø*/ + BYTE byRes[87]; + }struStatTime; + }uStatModeParam; // ×÷Ϊһ¸öÁªºÏÌå µ¥Ö¡µÄʱºò²ÅÓÐÖ¡ÄÚÄ¿±êÐÅÏ¢ ×îСʱ¼ä¶Îͳ¼Æ½á¹ûÐèҪͳ¼Æʱ¼ä ²ÎÊý + DWORD dwLeaveNum; // À뿪ÈËÊý + DWORD dwEnterNum; // ½øÈëÈËÊý + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÊÇÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE byRes3; + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx + DWORD dwPassingNum; // ¾­¹ýÈËÊý£¨½øÈëÇøÓòºóÅÇ»²Ã»Óд¥·¢½øÈë¡¢À뿪µÄÈËÊý£© + DWORD dwChildLeaveNum; // Сº¢À뿪ÈËÊý + DWORD dwChildEnterNum; // Сº¢½øÈëÈËÊý + DWORD dwDuplicatePeople; // Öظ´ÈËÊý + DWORD dwXmlLen;//XML͸´«Êý¾Ý³¤¶È, ¼´EventNotificationAlert XML BlockµÄÊý¾Ý³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block +#else + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block + BYTE byRes4[4]; +#endif + BYTE byRes2[8]; // ±£Áô×Ö½Ú +}NET_DVR_PDC_ALRAM_INFO, *LPNET_DVR_PDC_ALRAM_INFO; + + +// ÈËÁ÷Á¿ÐÅÏ¢²éѯ +typedef struct tagNET_DVR_PDC_QUERY +{ + NET_DVR_TIME tmStart; + NET_DVR_TIME tmEnd; + DWORD dwLeaveNum; + DWORD dwEnterNum; + BYTE byRes1[256]; +}NET_DVR_PDC_QUERY, *LPNET_DVR_PDC_QUERY; + +typedef struct tagNET_DVR_POSITION_RULE_CFG +{ + DWORD dwSize; // ½á¹¹´óС + NET_DVR_PTZ_POSITION struPtzPosition; // ³¡¾°Î»ÖÃÐÅÏ¢ + NET_VCA_RULECFG struVcaRuleCfg; //ÐÐΪ¹æÔòÅäÖà + BYTE byRes2[80]; // ±£Áô×Ö½Ú +}NET_DVR_POSITION_RULE_CFG, *LPNET_DVR_POSITION_RULE_CFG; + +typedef struct tagNET_DVR_POSITION_RULE_CFG_V41 +{ + DWORD dwSize; // ½á¹¹´óС + NET_DVR_PTZ_POSITION struPtzPosition; // ³¡¾°Î»ÖÃÐÅÏ¢ + NET_VCA_RULECFG_V41 struVcaRuleCfg; //ÐÐΪ¹æÔòÅäÖà + BYTE byTrackEnable; //ÊÇ·ñÆôÓøú×Ù + BYTE byRes1; + WORD wTrackDuration; //¸ú×Ù³ÖÐøʱ¼ä£¬µ¥Î»s + BYTE byRes2[76]; // ±£Áô×Ö½Ú +}NET_DVR_POSITION_RULE_CFG_V41, *LPNET_DVR_POSITION_RULE_CFG_V41; + + +typedef struct tagNET_DVR_LIMIT_ANGLE +{ + BYTE byEnable; // ÊÇ·ñÆôÓó¡¾°ÏÞλ¹¦ÄÜ + BYTE byRes1[3]; + NET_DVR_PTZPOS struUp; // ÉÏÏÞλ + NET_DVR_PTZPOS struDown; // ÏÂÏÞλ + NET_DVR_PTZPOS struLeft; // ×óÏÞλ + NET_DVR_PTZPOS struRight; // ÓÒÏÞλ + BYTE byRes2[20]; +}NET_DVR_LIMIT_ANGLE, *LPNET_DVR_LIMIT_ANGLE; + +typedef struct tagNET_DVR_POSITION_INDEX +{ + BYTE byIndex; // ³¡¾°Ë÷Òý + BYTE byRes1; + WORD wDwell; // Í£Áôʱ¼ä + BYTE byRes2[4]; // ±£Áô×Ö½Ú +}NET_DVR_POSITION_INDEX, *LPNET_DVR_POSITION_INDEX; + +#define MAX_POSITION_NUM 10 +typedef struct tagNET_DVR_POSITION_TRACK_CFG +{ + DWORD dwSize; + BYTE byNum; // ³¡¾°¸öÊý + BYTE byRes1[3]; + NET_DVR_POSITION_INDEX struPositionIndex[MAX_POSITION_NUM]; + BYTE byRes2[8]; +}NET_DVR_POSITION_TRACK_CFG, *LPNET_DVR_POSITION_TRACK_CFG; + +//Ѳº½Â·¾¶³¡¾°ÐÅÏ¢ +typedef struct tagNET_DVR_PATROL_SCENE_INFO +{ + WORD wDwell; // Í£Áôʱ¼ä 30-300 + BYTE byPositionID; // ³¡¾°ºÅ1-10£¬Ä¬ÈÏ0±íʾ¸ÃѲº½µã²»Ìí¼Ó³¡¾° + BYTE byRes[5]; +}NET_DVR_PATROL_SCENE_INFO, *LPNET_DVR_PATROL_SCENE_INFO; + +// ³¡¾°Ñ²º½¸ú×ÙÅäÖÃÐÅÏ¢ +typedef struct tagNET_DVR_PATROL_TRACKCFG +{ + DWORD dwSize; // ½á¹¹´óС + NET_DVR_PATROL_SCENE_INFO struPatrolSceneInfo[10]; // Ѳº½Â·¾¶ + BYTE byRes[16]; // ±£Áô×Ö½Ú +}NET_DVR_PATROL_TRACKCFG, *LPNET_DVR_PATROL_TRACKCFG; + +//Çò»ú±¾µØ¹æÔò²Ëµ¥ÅäÖýṹÌå +typedef struct tagNET_DVR_TRACK_PARAMCFG +{ + DWORD dwSize; // ½á¹¹´óС + WORD wAlarmDelayTime; // ±¨¾¯ÑÓʱʱ¼ä£¬Ä¿Ç°Çò»úÖ»Ö§³ÖÈ«¾ÖÈëÇÖ ·¶Î§1-120Ãë + WORD wTrackHoldTime; // ±¨¾¯¸ú×Ù³ÖÐøʱ¼ä ·¶Î§0-300Ãë + BYTE byTrackMode; // ²ÎÕÕ IPDOME_TRACK_MODE + BYTE byPreDirection; // ¸ú×Ù·½ÏòÔ¤ÅÐ 0-²»ÆôÓà 1-ÆôÓà + BYTE byTrackSmooth; // ¸ú×ÙÁ¬Ðø 0-²»ÆôÓà 1-ÆôÓà + BYTE byZoomAdjust; // ±¶ÂÊϵÊýµ÷Õû ²Î¼ûϱí + BYTE byMaxTrackZoom; //×î´ó¸ú×Ù±¶ÂÊϵÊý,0-±íʾĬÈϱ¶ÂÊϵÊý,µÈ¼¶6-±ê¶¨Öµ*1.0(ĬÈÏ),1-5ΪËõС±ê¶¨Öµ£¬ÖµÔ½Ð¡£¬ËõСµÄ±ÈÀýÔ½´ó,7-15Ϊ·Å´ó£¬ÖµÔ½´ó£¬·Å´óµÄ±ÈÀýÔ½´ó + BYTE byStopTrackWhenFindFace; //ÈËÁ³¼ì²âµ½ºóÊÇ·ñÍ£Ö¹¸ú×Ù 0-·ñ 1-ÊÇ + BYTE byStopTrackThreshold; //¸ú×ÙÖÕÖ¹ÆÀ·ÖãÐÖµ + BYTE byRes[9]; // ±£Áô×Ö½Ú +}NET_DVR_TRACK_PARAMCFG, *LPNET_DVR_TRACK_PARAMCFG; + +// Çò»ú»úо²ÎÊý +typedef struct tagNET_DVR_DOME_MOVEMENT_PARAM +{ + WORD wMaxZoom; // Çò»ú×î´ó±¶ÂÊϵÊý + BYTE byRes[42]; // ±£Áô×Ö½Ú +}NET_DVR_DOME_MOVEMENT_PARAM, *LPNET_DVR_DOME_MOVEMENT_PARAM; + +/********************************ÖÇÄܽ»Í¨Ê¼þ begin****************************************/ +#define MAX_REGION_NUM 8 // ÇøÓòÁбí×î´óÊýÄ¿ +#define MAX_TPS_RULE 8 // ×î´ó²ÎÊý¹æÔòÊýÄ¿ +#define MAX_AID_RULE 8 // ×î´óʼþ¹æÔòÊýÄ¿ +#define MAX_LANE_NUM 8 // ×î´ó³µµÀÊýÄ¿ + +//½»Í¨Ê¼þÀàÐÍ£¬ +typedef enum tagTRAFFIC_AID_TYPE +{ + CONGESTION = 0x01, //Óµ¶Â + PARKING = 0x02, //Í£³µ + INVERSE = 0x04, //ÄæÐÐ + PEDESTRIAN = 0x08, //ÐÐÈË + DEBRIS = 0x10, //ÒÅÁôÎï Å×È÷ÎïËéƬ + SMOKE = 0x20, //ÑÌÎí + OVERLINE = 0x40, //ѹÏß + VEHICLE_CONTROL_LIST = 0x80, //½ûÖ¹Ãûµ¥Êý¾Ý + SPEED = 0x100, //³¬ËÙ + LANECHANGE = 0x200, //±äµÀ + TURNAROUND = 0x400, //µôÍ· + VEHICLE_OCCUPANCY_NONVEHICLE = 0x800, //»ú¶¯³µÕ¼Ó÷ǻú¶¯³µÎ» + GASSER = 0x1000, //¼ÓÈû + ROADBLOCK = 0x2000, //·ÕÏ + CONSTRUCTION = 0x4000, //Ê©¹¤ + TRAFFIC_ACCIDENT = 0x8000, //½»Í¨Ê¹ʼì²â£¨½»Í¨Ê¹ÊÄ¿Ç°ÏÈ×ö³µ³µÊ¹ʣ¬×·Î²¡¢¹Ð²äµÈËã·¨ÅжϳµÓë³µÖ®¼ä¹ì¼£Óн»²æ£¬ÆäËû³µÁ¾ÈÆÐÐÔò±¨¾¯£© + PARALLEL_PARKING = 0x10000, //²à·½Î»Í£³µ¼ì²â + FOG_DETECTION = 0x20000, //ŨÎí¼ì²â + OCCUPY_EMERGENCY_LANE = 0x40000, //Õ¼Óýô¼±³µµÀ + CONFLAGRATION = 0X80000, //»ðÔÖ + TFS_MANUAL_TRIGGER = 0x100000, //ÊÖ¶¯Î¥ÕÂȡ֤ʼþ + LOADING_DOCK_TRIGGER_UPLOAD = 0x200000, //ÔĄ̂´¥·¢ÉÏ´« + OCCUPY_OVERTAKING_LANE = 0x400000, //Õ¼Ó󬳵µÀ + PROHIBITION_MARK_VIOLATION = 0x800000, //Î¥·´½ûÁî±êÖ¾ + CHECK_POINT = 0x1000000, //¿¨¿Ú + SUDDEN_SPEED_DROP = 0x2000000, //ËÙ¶ÈÖè½µ + SLOW_MOVING = 0x4000000 //³µÁ¾»ºÐÐ +}TRAFFIC_AID_TYPE; + +typedef enum tagTRAFFIC_SCENE_MODE +{ + FREEWAY = 0, // ¸ßËÙ»§Íⳡ¾° + TUNNEL, // ¸ßËÙËíµÀ³¡¾° + BRIDGE // ¸ßËÙÇÅÁº³¡¾° +}TRAFFIC_SCENE_MODE; + +typedef enum tagITS_ABILITY_TYPE +{ + ITS_CONGESTION_ABILITY = 0x01, //Óµ¶Â + ITS_PARKING_ABILITY = 0x02, //Í£³µ + ITS_INVERSE_ABILITY = 0x04, //ÄæÐÐ + ITS_PEDESTRIAN_ABILITY = 0x08, //ÐÐÈË + ITS_DEBRIS_ABILITY = 0x10, //ÒÅÁôÎï Å×È÷ÎïËéƬ + ITS_SMOKE_ABILITY = 0x20, //ÑÌÎí-ËíµÀ + ITS_OVERLINE_ABILITY = 0x40, //ѹÏß + ITS_VEHICLE_CONTROL_LIST_ABILITY = 0x80, //½ûÖ¹Ãûµ¥Êý¾Ý + ITS_SPEED_ABILITY = 0x100, //³¬ËÙ + ITS_LANECHANGE_ABILITY = 0x200, //±äµÀ + ITS_TURNAROUND_ABILITY = 0x400, //µôÍ· + ITS_LANE_VOLUME_ABILITY = 0x010000, //³µµÀÁ÷Á¿ + ITS_LANE_VELOCITY_ABILITY = 0x020000, //³µµÀƽ¾ùËÙ¶È + ITS_TIME_HEADWAY_ABILITY = 0x040000, //³µÍ·Ê±¾à + ITS_SPACE_HEADWAY_ABILITY = 0x080000, //³µÍ·¼ä¾à + ITS_TIME_OCCUPANCY_RATIO_ABILITY = 0x100000, //³µµÀÕ¼ÓÐÂÊ£¬£¨Ê±¼äÉÏ) + ITS_SPACE_OCCUPANCY_RATIO_ABILITY = 0x200000, //³µµÀÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆË㣨¿Õ¼äÉÏ) + ITS_LANE_QUEUE_ABILITY = 0x400000, //ÅŶӳ¤¶È + ITS_VEHICLE_TYPE_ABILITY = 0x800000, //³µÁ¾ÀàÐÍ + ITS_TRAFFIC_STATE_ABILITY = 0x1000000 //½»Í¨×´Ì¬ +}ITS_ABILITY_TYPE; + +// ½»Í¨Í³¼Æ²ÎÊý +typedef enum tagITS_TPS_TYPE +{ + LANE_VOLUME = 0x01, //³µµÀÁ÷Á¿ + LANE_VELOCITY = 0x02, //³µµÀËÙ¶È + TIME_HEADWAY = 0x04, //³µÍ·Ê±¾à + SPACE_HEADWAY = 0x08, //³µÍ·¼ä¾à + TIME_OCCUPANCY_RATIO = 0x10, //³µµÀÕ¼ÓÐÂÊ (ʱ¼äÉÏ) + SPACE_OCCUPANCY_RATIO = 0x20, //³µµÀÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆËã(¿Õ¼äÉÏ) + QUEUE = 0x40, //ÅŶӳ¤¶È + VEHICLE_TYPE = 0x80, //³µÁ¾ÀàÐÍ + TRAFFIC_STATE = 0x100 //½»Í¨×´Ì¬ +}ITS_TPS_TYPE; + +typedef struct tagNET_DVR_REGION_LIST +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byNum; // ÇøÓò¸öÊý + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_VCA_POLYGON struPolygon[MAX_REGION_NUM]; // ÇøÓò + BYTE byRes2[20]; // ±£Áô×Ö½Ú +}NET_DVR_REGION_LIST,*LPNET_DVR_REGION_LIST; + + +// ·½Ïò½á¹¹Ìå +typedef struct tagNET_DVR_DIRECTION +{ + NET_VCA_POINT struStartPoint; // ·½ÏòÆðʼµã + NET_VCA_POINT struEndPoint; // ·½Ïò½áÊøµã +}NET_DVR_DIRECTION, *LPNET_DVR_DIRECTION; + +// µ¥¸ö³µµÀ +typedef struct tagNET_DVR_ONE_LANE +{ + BYTE byEnable; // ³µµÀÊÇ·ñÆôÓà + BYTE byRes1[11]; // ±£Áô×Ö½Ú + BYTE byLaneName[NAME_LEN]; // ³µµÀ¹æÔòÃû³Æ + NET_DVR_DIRECTION struFlowDirection;// ³µµÀÄÚ³µÁ÷·½Ïò + NET_VCA_POLYGON struPolygon; // ³µµÀÇøÓò +}NET_DVR_ONE_LANE, *LPNET_DVR_ONE_LANE; + +// ³µµÀÅäÖà +typedef struct tagNET_DVR_LANE_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_ONE_LANE struLane[MAX_LANE_NUM]; // ³µµÀ²ÎÊý Êý×éϱê×÷Ϊ³µµÀID£¬ + BYTE byRes1[40]; // ±£Áô×Ö½Ú +}NET_DVR_LANE_CFG, *LPNET_DVR_LANE_CFG; + +// ½»Í¨Ê¼þ²ÎÊý +typedef struct tagNET_DVR_AID_PARAM +{ + WORD wParkingDuration; // Υͣ¼ì²âÁéÃô¶È 10-120s + WORD wPedestrianDuration; // ÐÐÈ˳ÖÐøʱ¼ä 1-120s + WORD wDebrisDuration; // Å×È÷Îï³ÖÐøʱ¼ä 10-120s + WORD wCongestionLength; // Óµ¶Â³¤¶ÈãÐÖµ 5-200£¨Ã×£© + WORD wCongestionDuration; // Óµ¶Â³ÖÐø²ÎÊý 10-120s + WORD wInverseDuration; // ÄæÐгÖÐøʱ¼ä 1-10s + WORD wInverseDistance; // ÄæÐоàÀëãÐÖµ µ¥Î»m ·¶Î§[2-100] ĬÈÏ 10Ã× + WORD wInverseAngleTolerance; // ÔÊÐí½Ç¶ÈÆ«²î 90-180¶È,³µÁ÷ÓëÄæÐÐÔÊÐíµÄ¼Ð½Ç + WORD wIllegalParkingTime; // Υͣʱ¼ä[4,60]£¬µ¥Î»£º·ÖÖÓ ,TFS(½»Í¨Î¥ÕÂÈ¡Ö¤) ³ÇÊÐģʽÏ + WORD wIllegalParkingPicNum; // ΥͣͼƬÊýÁ¿[1,6], TFS(½»Í¨Î¥ÕÂÈ¡Ö¤) ³ÇÊÐģʽÏ + BYTE byMergePic; // ͼƬƴ½Ó,TFS ³ÇÊÐģʽÏ 0- ²»Æ´½Ó 1- Æ´½Ó + BYTE byRes1[23]; // ±£Áô×Ö½Ú +}NET_DVR_AID_PARAM, *LPNET_DVR_AID_PARAM; + +// µ¥Ìõ½»Í¨Ê¼þ¹æÔò½á¹¹Ìå +typedef struct tagNET_DVR_ONE_AID_RULE +{ + BYTE byEnable; // ÊÇ·ñÆôÓÃʼþ¹æÔò + BYTE byRes1[3]; // ±£Áô×Ö½Ú + BYTE byRuleName[NAME_LEN]; // ¹æÔòÃû³Æ + DWORD dwEventType; // ½»Í¨Ê¼þ¼ì²âÀàÐÍ TRAFFIC_AID_TYPE + NET_VCA_SIZE_FILTER struSizeFilter; // ³ß´ç¹ýÂËÆ÷ + NET_VCA_POLYGON struPolygon; // ¹æÔòÇøÓò + NET_DVR_AID_PARAM struAIDParam; // ʼþ²ÎÊý + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byRes2[20]; +}NET_DVR_ONE_AID_RULE, *LPNET_DVR_ONE_AID_RULE; + +// ½»Í¨Ê¼þ¹æÔò +typedef struct tagNET_DVR_AID_RULECFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_DVR_ONE_AID_RULE struOneAIDRule[MAX_AID_RULE]; + BYTE byRes2[32]; +}NET_DVR_AID_RULECFG, *LPNET_DVR_AID_RULECFG; + +// µ¥Ìõ½»Í¨Ê¼þ¹æÔò½á¹¹Ìå(À©Õ¹) +typedef struct tagNET_DVR_ONE_AID_RULE_V41 +{ + BYTE byEnable; // ÊÇ·ñÆôÓÃʼþ¹æÔò + BYTE byLaneNo; // ¹ØÁª³µµÀºÅ + BYTE byRes1[2]; // ±£Áô×Ö½Ú + BYTE byRuleName[NAME_LEN]; // ¹æÔòÃû³Æ + DWORD dwEventType; // ½»Í¨Ê¼þ¼ì²âÀàÐÍ TRAFFIC_AID_TYPE + NET_VCA_SIZE_FILTER struSizeFilter; // ³ß´ç¹ýÂËÆ÷ + NET_VCA_POLYGON struPolygon; // ¹æÔòÇøÓò + NET_DVR_AID_PARAM struAIDParam; // ʼþ²ÎÊý + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];// ²¼·Àʱ¼ä¶Î + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_IVMS_IP_CHANNEL]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ£º1±íʾ´¥·¢¸ÃͨµÀ£»0±íʾ²»´¥·¢ + BYTE byRes2[60]; //±£Áô +}NET_DVR_ONE_AID_RULE_V41, *LPNET_DVR_ONE_AID_RULE_V41; + +// ½»Í¨Ê¼þ¹æÔò(À©Õ¹) +typedef struct tagNET_DVR_AID_RULECFG_V41 +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byPicProType; // ±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_JPEGPARA struPictureParam; // ͼƬ¹æ¸ñ½á¹¹ + NET_DVR_ONE_AID_RULE_V41 struAIDRule[MAX_AID_RULE]; //¹æÔòÊý×é + BYTE byRes2[128]; //±£Áô +} NET_DVR_AID_RULECFG_V41, *LPNET_DVR_AID_RULECFG_V41; + +// ½»Í¨Í³¼Æ²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_ONE_TPS_RULE +{ + BYTE byEnable; //ÊÇ·ñʹÄܳµµÀ½»Í¨¹æÔò²ÎÊý + BYTE byLaneID; //³µµÀID + BYTE byRes1[2]; + DWORD dwCalcType; //ͳ¼Æ²ÎÊýÀàÐÍITS_TPS_TYPE + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_VCA_POLYGON struVitrualLoop; //ÐéÄâÏßȦ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½,Ò»°ãΪ´¦ÀíÊÇ·ñÉÏ´«ÖÐÐÄ£¬ÆäËû¹¦Äܲ»ÐèÒª + BYTE byRes2[20]; //±£Áô×Ö½Ú +}NET_DVR_ONE_TPS_RULE, *LPNET_DVR_ONE_TPS_RULE; + +// ½»Í¨²ÎÊýͳ¼Æ¹æÔòÅäÖýṹÌå +typedef struct tagNET_DVR_TPS_RULECFG +{ + DWORD dwSize; // ½á¹¹´óС + NET_DVR_ONE_TPS_RULE struOneTpsRule[MAX_TPS_RULE]; // ϱê¶ÔÓ¦½»Í¨²ÎÊýID + BYTE byRes2[40]; // ±£Áô×Ö½Ú +}NET_DVR_TPS_RULECFG, *LPNET_DVR_TPS_RULECFG; + +// ½»Í¨Í³¼Æ²ÎÊý½á¹¹Ìå(À©Õ¹) +typedef struct tagNET_DVR_ONE_TPS_RULE_V41 +{ + BYTE byEnable; //ÊÇ·ñʹÄܳµµÀ½»Í¨¹æÔò²ÎÊý + BYTE byLaneID; //³µµÀID + BYTE byRes1[2]; //±£Áô + DWORD dwCalcType; // ͳ¼Æ²ÎÊýÀàÐÍITS_TPS_TYPE + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_VCA_POLYGON struVitrualLoop; //ÐéÄâÏßȦ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRes2[60]; // ±£Áô×Ö½Ú +}NET_DVR_ONE_TPS_RULE_V41, *LPNET_DVR_ONE_TPS_RULE_V41; + + +// ½»Í¨²ÎÊýͳ¼Æ¹æÔòÅäÖýṹÌå(À©Õ¹) +typedef struct tagNET_DVR_TPS_RULECFG_V41 +{ + DWORD dwSize; // ½á¹¹´óС + NET_DVR_ONE_TPS_RULE_V41 struOneTpsRule[MAX_TPS_RULE]; // ϱê¶ÔÓ¦½»Í¨²ÎÊýID + BYTE byRes[128]; // ±£Áô +}NET_DVR_TPS_RULECFG_V41, *LPNET_DVR_TPS_RULECFG_V41; + +//½»Í¨Ê¼þÀàÐÍÀ©Õ¹ +typedef enum tagTRAFFIC_AID_TYPE_EX +{ + ENUM_AID_TYPE_CONGESTION = 1, //Óµ¶Â + ENUM_AID_TYPE_PARKING = 2, //Í£³µ + ENUM_AID_TYPE_INVERSE = 3, //ÄæÐÐ + ENUM_AID_TYPE_PEDESTRIAN = 4, //ÐÐÈË + ENUM_AID_TYPE_DEBRIS = 5, //ÒÅÁôÎï Å×È÷ÎïËéƬ + ENUM_AID_TYPE_SMOKE = 6, //ÑÌÎí + ENUM_AID_TYPE_OVERLINE = 7, //ѹÏß + ENUM_AID_TYPE_VEHICLE_CONTROL_LIST = 8, //½ûÖ¹Ãûµ¥Êý¾Ý + ENUM_AID_TYPE_SPEED = 9, //³¬ËÙ + ENUM_AID_TYPE_LANECHANGE = 10, //±äµÀ + ENUM_AID_TYPE_TURNAROUND = 11, //µôÍ· + ENUM_AID_TYPE_VEHICLE_OCCUPANCY_NONVEHICLE = 12, //»ú¶¯³µÕ¼Ó÷ǻú¶¯³µÎ» + ENUM_AID_TYPE_GASSER = 13, //¼ÓÈû + ENUM_AID_TYPE_ROADBLOCK = 14, //·ÕÏ + ENUM_AID_TYPE_CONSTRUCTION = 15, //Ê©¹¤ + ENUM_AID_TYPE_TRAFFIC_ACCIDENT = 16, //½»Í¨Ê¹ʼì²â£¨½»Í¨Ê¹ÊÄ¿Ç°ÏÈ×ö³µ³µÊ¹ʣ¬×·Î²¡¢¹Ð²äµÈËã·¨ÅжϳµÓë³µÖ®¼ä¹ì¼£Óн»²æ£¬ÆäËû³µÁ¾ÈÆÐÐÔò±¨¾¯£© + ENUM_AID_TYPE_PARALLEL_PARKING = 17, //²à·½Î»Í£³µ¼ì²â + ENUM_AID_TYPE_FOG_DETECTION = 18, //ŨÎí¼ì²â + ENUM_AID_TYPE_OCCUPY_EMERGENCY_LANE = 19, //Õ¼Óýô¼±³µµÀ + ENUM_AID_TYPE_CONFLAGRATION = 20, //»ðÔÖ + ENUM_AID_TYPE_TFS_MANUAL_TRIGGER = 21, //ÊÖ¶¯Î¥ÕÂȡ֤ʼþ + ENUM_AID_TYPE_LOADING_DOCK_TRIGGER_UPLOAD = 22, //ÔĄ̂´¥·¢ÉÏ´« + ENUM_AID_TYPE_OCCUPY_OVERTAKING_LANE = 23, //Õ¼Ó󬳵µÀ + ENUM_AID_TYPE_PROHIBITION_MARK_VIOLATION = 24, //Î¥·´½ûÁî±êÖ¾ + ENUM_AID_TYPE_CHECK_POINT = 25, //¿¨¿Ú + ENUM_AID_TYPE_SUDDEN_SPEED_DROP = 26, //ËÙ¶ÈÖè½µ + ENUM_AID_TYPE_SLOW_MOVING = 27, //³µÁ¾»ºÐÐ + ENUM_AID_TYPE_NOT_KEEP_DISTANCE = 28, //δ±£³Ö³µ¾à + ENUM_AID_TYPE_NOT_SLOW_ZEBRA_CROSSING = 29, //°ßÂíÏßδ¼õËÙ + ENUM_AID_TYPE_OVER_TAKE_RIGHT_SIDE = 30, //ÓҲ೬³µ + ENUM_AID_TYPE_LOW_SPEED = 31, //»ú¶¯³µµÍËÙÐÐÊ» + ENUM_AID_TYPE_DRAG_RACING = 32, //ì­³µ + ENUM_AID_TYPE_CHANGE_LANE_CONTINUOUSLY = 33, //Á¬Ðø±äµÀ + ENUM_AID_TYPE_S_SHARP_DRIVING = 34, //ÉßÐÎÐÐÊ» + ENUM_AID_TYPE_LARGE_VEHICLE_OCCUPY_LINE = 35, //´ó³µÕ¼µÀ + ENUM_AID_TYPE_ROAD_GROUP = 36, //µÀ·ÈËÔ±¾Û¼¯£¬ÓëÐÐΪ·ÖÎöµÄÈËÔ±¾Û¼¯Ëã·¨²»Í¬£¬Ó¦Óó¡¾°²»Í¬, ½»Í¨Ê¼þÓ¦ÓÃÔÚ¸ßËÙ¡¢ËíµÀµÈ½»Í¨³¡¾°£¬ÐÐΪ·ÖÎöÈËÔ±¾Û¼¯Ó¦Óó¡¾°ÊǽÖÃæ¡£ + ENUM_AID_TYPE_SINGLE_VEHICLE_BREAKDOWN = 37, //µ¥³µÅ×ê + ENUM_AID_TYPE_BLACK_SMOKE_VEHICLE = 38, //ºÚÑ̳µ + ENUM_AID_TYPE_VEHNOYIELDPEDEST = 39, //»ú¶¯³µ²»ÀñÈÃÐÐÈË + ENUM_AID_TYPE_ILLEGALMANNEDVEH = 40, //»ú¶¯³µÎ¥·¨ÔØÈË + ENUM_AID_TYPE_ILLEGALMANNEDNONMOTORVEH = 41, //·Ç»ú¶¯³µÎ¥·¨ÔØÈË + ENUM_AID_TYPE_UMBRELLATENTINSTALL = 42, //·Ç»ú¶¯³µÎ¥¹æ¼Ó×°ÓêÅï + ENUM_AID_TYPE_NONMOTORVEHONVEHLANE = 43, //·Ç»ú¶¯³µÕ¼Óûú¶¯³µµÀ + ENUM_AID_TYPE_WEARINGNOHELMET = 44, //·Ç»ú¶¯³µÎ´Åå´÷Í·¿øÊ + ENUM_AID_TYPE_PEDESTREDLIGHTRUNNING = 45, //ÐÐÈË´³ºìµÆ + ENUM_AID_TYPE_PEDESTONNONMOTORVEHLANE = 46, //ÐÐÈË·Ç»ú¶¯³µµÀÐÐ×ß + ENUM_AID_TYPE_PEDESTONVEHLANE = 47, //ÐÐÈË»ú¶¯³µµÀÐÐ×ß + ENUM_AID_TYPE_OCCUPYDEDICATEDLANE = 48,//Õ¼ÓÃרÓóµµÀ + ENUM_AID_TYPE_NOTDRIVEINDEDICATEDLANE = 49,//δ°´×¨ÓóµµÀÐÐÊ» +}TRAFFIC_AID_TYPE_EX; + +// ½»Í¨Ê¼þÐÅÏ¢ +typedef struct tagNET_DVR_AID_INFO +{ + BYTE byRuleID; // ¹æÔòÐòºÅ£¬Îª¹æÔòÅäÖýṹϱ꣬0-16 + BYTE byVisibilityLevel; // Äܼû¶ÈµÈ¼¶£º0-±£Áô£»1-ÎÞÎí~±¡Îí£»2-±¡Îí~ÖÐÎí£»3-´óÎí~ŨÎí£»4-ŨÎí¼°ÒÔÉÏ + BYTE byRes1[2]; + BYTE byRuleName[NAME_LEN]; // ¹æÔòÃû³Æ + DWORD dwAIDType; // ±¨¾¯Ê¼þÀàÐÍ + NET_DVR_DIRECTION struDirect; // ±¨¾¯Ö¸ÏòÇøÓò + BYTE bySpeedLimit; //ÏÞËÙÖµ£¬µ¥Î»km/h[0,255] + BYTE byCurrentSpeed; //µ±Ç°ËÙ¶ÈÖµ£¬µ¥Î»km/h[0,255] + BYTE byVehicleEnterState;//³µÁ¾³öÈë״̬ 0-ÎÞЧ 1-Ê»Èë 2-Ê»³ö + BYTE byState; //0-±ä»¯ÉÏ´«£¬1-ÂÖѲÉÏ´«£¬2-µ±Ç°É豸¶¨Ê±×¥ÅĵÄÊý¾ÝÉÏ´«£¬Êµ¼Ê×÷ÓÃÓÚƽ̨ÐγÉͼƬÐòÁУ¬ÓÃÓÚ·´²éË㷨ûÓмì²âµ½µÄÍ£³µ³µÁ¾£¨Ë÷ÒýÖµ2ÔÚ¡°dwAIDType;//±¨¾¯Ê¼þÀàÐÍ¡±Îª ¡°Í£³µÊ¼þ¡±µÄʱºòÉúЧ£© + BYTE byParkingID[16]; //Í£³µÎ»±àºÅ + DWORD dwAIDTypeEx; // ±¨¾¯Ê¼þÀàÐÍÀ©Õ¹,²Î¿¼TRAFFIC_AID_TYPE_EX + BYTE byRes2[16]; // ±£Áô×Ö½Ú +}NET_DVR_AID_INFO, *LPNET_DVR_AID_INFO; + +// ½»Í¨Ê¼þ±¨¾¯ +typedef struct tagNET_DVR_AID_ALARM +{ + DWORD dwSize; // ½á¹¹³¤¶È + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; // Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_AID_INFO struAIDInfo; // ½»Í¨Ê¼þÐÅÏ¢ + DWORD dwPicDataLen; // ·µ»ØͼƬµÄ³¤¶È Ϊ0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾ¸Ã½á¹¹ºóÃæ½ô¸úͼƬÊý¾Ý + BYTE *pImage; // Ö¸ÏòͼƬµÄÖ¸Õë + BYTE byRes[40]; // ±£Áô×Ö½Ú +}NET_DVR_AID_ALARM, *LPNET_DVR_AID_ALARM; + +// ³µµÀ¶ÓÁнṹÌå +typedef struct tagNET_DVR_LANE_QUEUE +{ + NET_VCA_POINT struHead; //¶ÓÁÐÍ· + NET_VCA_POINT struTail; //¶ÓÁÐβ + DWORD dwLength; //ʵ¼Ê¶ÓÁг¤¶È µ¥Î»ÎªÃ× [0-500] +}NET_DVR_LANE_QUEUE, *LPNET_DVR_LANE_QUEUE; + +typedef enum tagTRAFFIC_DATA_VARY_TYPE +{ + NO_VARY, //Îޱ仯 + VEHICLE_ENTER, //³µÁ¾½øÈëÐéÄâÏßȦ + VEHICLE_LEAVE, //³µÁ¾À뿪ÐéÄâÏßȦ + UEUE_VARY //¶ÓÁб仯 +}TRAFFIC_DATA_VARY_TYPE; + +typedef struct tagNET_DVR_LANE_PARAM +{ + BYTE byRuleName[NAME_LEN]; //³µµÀ¹æÔòÃû³Æ + BYTE byRuleID; //¹æÔòÐòºÅ£¬Îª¹æÔòÅäÖýṹϱ꣬0-7 + BYTE byVaryType; //³µµÀ½»Í¨²ÎÊý±ä»¯ÀàÐÍ ²ÎÕÕ TRAFFIC_DATA_VARY_TYPE + BYTE byLaneType; //³µµÀÉÏÐлòÏÂÐÐ + BYTE byRes1; + DWORD dwLaneVolume; //³µµÀÁ÷Á¿ £¬Í³¼ÆÓжàÉÙ³µ×Óͨ¹ý + DWORD dwLaneVelocity; //³µµÀËٶȣ¬¹«Àï¼ÆËã + DWORD dwTimeHeadway; //³µÍ·Ê±¾à£¬ÒÔÃë¼ÆËã + DWORD dwSpaceHeadway; //³µÍ·¼ä¾à£¬ÒÔÃ×À´¼ÆËã + float fSpaceOccupyRation; //³µµÀÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆË㣨¿Õ¼äÉÏ) + NET_DVR_LANE_QUEUE struLaneQueue; //³µµÀ¶ÓÁг¤¶È + NET_VCA_POINT struRuleLocation; //ÏßȦ¹æÔòµÄÖÐÐĵãλÖà + BYTE byRes2[32]; +}NET_DVR_LANE_PARAM, *LPNET_DVR_LANE_PARAM; + + +typedef struct tagNET_DVR_TPS_INFO +{ + DWORD dwLanNum; // ½»Í¨²ÎÊýµÄ³µµÀÊýÄ¿ + NET_DVR_LANE_PARAM struLaneParam[MAX_TPS_RULE]; +}NET_DVR_TPS_INFO, *LPNET_DVR_TPS_INFO; + +typedef struct tagNET_DVR_TPS_ALARM +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_TPS_INFO struTPSInfo; //½»Í¨Ê¼þÐÅÏ¢ + BYTE byRes1[32]; //±£Áô×Ö½Ú +}NET_DVR_TPS_ALARM, *LPNET_DVR_TPS_ALARM; + +typedef enum tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM +{ + ENUM_TRAFFIC_VARY_NO = 0x00, //Îޱ仯 + ENUM_TRAFFIC_VARY_VEHICLE_ENTER = 0x01, //³µÁ¾½øÈëÐéÄâÏßȦ + ENUM_TRAFFIC_VARY_VEHICLE_LEAVE = 0x02, //³µÁ¾À뿪ÐéÄâÏßȦ + ENUM_TRAFFIC_VARY_QUEUE = 0x04, //¶ÓÁб仯 + ENUM_TRAFFIC_VARY_STATISTIC = 0x08, //ͳ¼ÆÊý¾Ý±ä»¯£¨Ã¿·ÖÖӱ仯һ´Î°üÀ¨Æ½¾ùËٶȣ¬³µµÀ¿Õ¼ä/ʱ¼äÕ¼ÓÐÂÊ£¬½»Í¨×´Ì¬£© +}TRAFFIC_DATA_VARY_TYPE_EX_ENUM; + +typedef struct tagNET_DVR_LANE_PARAM_V41 +{ + BYTE byRuleName[NAME_LEN]; // ³µµÀ¹æÔòÃû³Æ + BYTE byRuleID; // ¹æÔòÐòºÅ£¬Îª¹æÔòÅäÖýṹϱ꣬0-7 + BYTE byLaneType; // ³µµÀÉÏÐлòÏÂÐÐ + BYTE byTrafficState; // ³µµÀµÄ½»Í¨×´Ì¬£¬0-ÎÞЧ£¬1-³©Í¨£¬2-Óµ¼·£¬3-¶ÂÈû + BYTE byLaneNo; //³µµÀºÅ + DWORD dwVaryType; // ³µµÀ½»Í¨²ÎÊý±ä»¯ÀàÐͲÎÕÕ TRAFFIC_DATA_VARY_TYPE_EX_ENUM£¬°´Î»Çø·Ö + DWORD dwTpsType; // Êý¾Ý±ä»¯ÀàÐͱêÖ¾£¬±íʾµ±Ç°ÉÏ´«µÄͳ¼Æ²ÎÊýÖУ¬ÄÄЩÊý¾ÝÓÐЧ£¬²ÎÕÕITS_TPS_TYPE,°´Î»Çø·Ö + DWORD dwLaneVolume; // ³µµÀÁ÷Á¿£¬Í³¼ÆÓжàÉÙ³µ×Óͨ¹ý + DWORD dwLaneVelocity; // ³µµÀËٶȣ¬¹«Àï¼ÆËã + DWORD dwTimeHeadway ; // ³µÍ·Ê±¾à£¬ÒÔÃë¼ÆËã + DWORD dwSpaceHeadway; // ³µÍ·¼ä¾à£¬ÒÔÃ×À´¼ÆËã + float fSpaceOccupyRation; // ³µµÀÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆË㣨¿Õ¼äÉÏ) + float fTimeOccupyRation; // ʱ¼äÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆËã + DWORD dwLightVehicle; // СÐͳµÊýÁ¿ + DWORD dwMidVehicle; // ÖÐÐͳµÊýÁ¿ + DWORD dwHeavyVehicle; // ÖØÐͳµÊýÁ¿ + NET_DVR_LANE_QUEUE struLaneQueue; // ³µµÀ¶ÓÁг¤¶È + NET_VCA_POINT struRuleLocation; // ¹æÔòλÖÃÐéÄâÏßȦµÄÖÐÐÄ + DWORD dwOversizeVehicle; // ´óÐͳµÊýÁ¿ + BYTE byRes2[60]; // ±£Áô +}NET_DVR_LANE_PARAM_V41, *LPNET_DVR_LANE_PARAM_V41; + + +typedef struct tagNET_DVR_TPS_INFO_V41 +{ + DWORD dwLanNum; // ½»Í¨²ÎÊýµÄ³µµÀÊýÄ¿ + NET_DVR_LANE_PARAM_V41 struLaneParam[MAX_TPS_RULE]; + DWORD dwSceneID;//³¡¾°ID + BYTE byRes[28]; //±£Áô +}NET_DVR_TPS_INFO_V41, *LPNET_DVR_TPS_INFO_V41; + +// ÈËÁ³¹æÔòÅäÖà +typedef struct tagNET_DVR_FACEDETECT_RULECFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; // ÊÇ·ñÆôÓà + BYTE byEventType; //¾¯½äʼþÀàÐÍ£¬ 0-Òì³£ÈËÁ³; 1-Õý³£ÈËÁ³;2-Òì³£ÈËÁ³&Õý³£ÈËÁ³;4-¶àÕÅÈËÁ³&Òì³£ÈËÁ³;5-¶àÕÅÈËÁ³&Õý³£ÈËÁ³; 6-¶àÕÅÈËÁ³&Òì³£ÈËÁ³&Õý³£ÈËÁ³; 7-¶àÕÅÈËÁ³ + BYTE byUpLastAlarm; //2011-04-06 ÊÇ·ñÏÈÉÏ´«×î½üÒ»´ÎµÄ±¨¾¯ + BYTE byUpFacePic; //ÊÇ·ñÉÏ´«ÈËÁ³×Óͼ£¬0-·ñ£¬1-ÊÇ + BYTE byRuleName[NAME_LEN]; + NET_VCA_POLYGON struVcaPolygon; // ÈËÁ³¼ì²â¹æÔòÇøÓò + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE bySensitivity; // ¹æÔòÁéÃô¶È + WORD wDuration; // ´¥·¢ÈËÁ³±¨¾¯Ê±¼äãÐÖµ + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byPicRecordEnable; /*2012-3-1ÊÇ·ñÆôÓÃͼƬ´æ´¢, 0-²»ÆôÓÃ, 1-ÆôÓÃ*/ + BYTE byRes1[3]; //±£Áô×Ö½Ú + /* + ¾¯½äʼþÀàÐÍ£º£¨Ä¿Ç°Ê¼þÀàÐÍ°´Î»±íʾ£¬¿ÉÈÎÒâÑ¡ÔñÆäÖÐ1ÖÖ»òÕß¼¸ÖÖ½øÐÐ×éºÏ£© + 0x00: ÎÞЧ + 0x01: Òì³£ÈËÁ³ + 0x02: Õý³£ÈËÁ³ + 0x04: ¶àÕÅÈËÁ³ + 0x08: ´÷Ä«¾µÈËÁ³ + 0x10: ´òµç»°ÈËÁ³ + */ + DWORD dwEventTypeEx; //dwEventTypeEx×Ö¶ÎÈôΪ0ʱ£¬byEventType×Ö¶ÎÉúЧ¡£ÈôdwEventTypeEx¡¢byEventType×ֶζ¼ÓÐֵʱ£¬ÒÔdwEventTypeEx×Ö¶ÎΪ׼¡£ÉϲãÅäÖÃdwEventTypeEx×ֶκ󣬻Ὣֵͬ²½µ½byEventTypeÖС£ + BYTE byRes2[32]; //±£Áô×Ö½Ú +}NET_DVR_FACEDETECT_RULECFG, *LPNET_DVR_FACEDETECT_RULECFG; + +typedef struct tagNET_DVR_FACE_PIPCFG +{ + BYTE byEnable; //ÊÇ·ñ¿ªÆô»­Öл­ + BYTE byBackChannel; //±³¾°Í¨µÀºÅ£¨Ãæ°åͨµÀ£© + BYTE byPosition; //µþ¼ÓλÖã¬0-×óÉÏ,1-×óÏÂ,2-ÓÒÉÏ,3-ÓÒÏ + BYTE byPIPDiv; //·ÖÆÁϵÊý(ÈËÁ³»­Ãæ:Ãæ°å»­Ãæ)£¬0-1:4,1-1:9,2-1:16 + BYTE byRes[4]; +}NET_DVR_FACE_PIPCFG, *LPNET_DVR_FACE_PIPCFG; + +typedef struct tagNET_DVR_FACEDETECT_RULECFG_V41 +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; // ÊÇ·ñÆôÓà + BYTE byEventType; //¾¯½äʼþÀàÐÍ£¬ 0-Òì³£ÈËÁ³; 1-Õý³£ÈËÁ³;2-Òì³£ÈËÁ³&Õý³£ÈËÁ³;4-¶àÕÅÈËÁ³&Òì³£ÈËÁ³;5-¶àÕÅÈËÁ³&Õý³£ÈËÁ³; 6-¶àÕÅÈËÁ³&Òì³£ÈËÁ³&Õý³£ÈËÁ³; 7-¶àÕÅÈËÁ³ + BYTE byUpLastAlarm; //2011-04-06 ÊÇ·ñÏÈÉÏ´«×î½üÒ»´ÎµÄ±¨¾¯ + BYTE byUpFacePic; //ÊÇ·ñÉÏ´«ÈËÁ³×Óͼ£¬0-·ñ£¬1-ÊÇ + BYTE byRuleName[NAME_LEN]; + NET_VCA_POLYGON struVcaPolygon; // ÈËÁ³¼ì²â¹æÔòÇøÓò + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE bySensitivity; // ¹æÔòÁéÃô¶È + WORD wDuration; // ´¥·¢ÈËÁ³±¨¾¯Ê±¼äãÐÖµ + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byPicRecordEnable; /*2012-10-22ÊÇ·ñÆôÓÃͼƬ´æ´¢, 0-²»ÆôÓÃ, 1-ÆôÓÃ*/ + BYTE byRes1; + WORD wAlarmDelay; //2012-10-22ÖÇÄܱ¨¾¯ÑÓʱ£¬0-5s,1-10,2-30s,3-60s,4-120s,5-300s,6-600s + NET_DVR_FACE_PIPCFG struFacePIP; //2012-11-7»­Öл­²ÎÊý + WORD wRelSnapChan[MAX_REL_SNAPCHAN_NUM]; //¹ØÁª×¥Í¼Í¨µÀ£¬µ±Ö÷ͨµÀ±¨¾¯Ê±£¬Í¬Ê±»áÉÏ´«¹ØÁªÍ¨µÀµÄ×¥ÅÄͼƬ£¬0±íʾ²»¹ØÁª£¬ÆäËûֵΪ¹ØÁªÍ¨µÀºÅ + BYTE byRes2[2]; //±£Áô×Ö½Ú + /* + ¾¯½äʼþÀàÐÍ£º£¨Ä¿Ç°Ê¼þÀàÐÍ°´Î»±íʾ£¬¿ÉÈÎÒâÑ¡ÔñÆäÖÐ1ÖÖ»òÕß¼¸ÖÖ½øÐÐ×éºÏ£© + 0x00: ÎÞЧ + 0x01: Òì³£ÈËÁ³ + 0x02: Õý³£ÈËÁ³ + 0x04: ¶àÕÅÈËÁ³ + 0x08: ´÷Ä«¾µÈËÁ³ + 0x10: ´òµç»°ÈËÁ³ + */ + DWORD dwEventTypeEx; //dwEventTypeEx×Ö¶ÎÈôΪ0ʱ£¬byEventType×Ö¶ÎÉúЧ¡£ÈôdwEventTypeEx¡¢byEventType×ֶζ¼ÓÐֵʱ£¬ÒÔdwEventTypeEx×Ö¶ÎΪ׼¡£ÉϲãÅäÖÃdwEventTypeEx×ֶκ󣬻Ὣֵͬ²½µ½byEventTypeÖС£ + BYTE byRes[16]; //±£Áô×Ö½Ú +}NET_DVR_FACEDETECT_RULECFG_V41, *LPNET_DVR_FACEDETECT_RULECFG_V41; + +typedef struct tagNET_DVR_FACEDETECT_ALARM +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + NET_VCA_TARGET_INFO struTargetInfo;//±¨¾¯Ä¿±êÐÅÏ¢ + NET_VCA_DEV_INFO struDevInfo;//Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwPicDataLen; //·µ»ØͼƬµÄ³¤¶È Ϊ0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾ¸Ã½á¹¹ºóÃæ½ô¸úͼƬÊý¾Ý*/ + BYTE byAlarmPicType; // 0-Òì³£ÈËÁ³±¨¾¯Í¼Æ¬ 1- ÈËÁ³Í¼Æ¬,2-¶àÕÅÈËÁ³, 3-´÷Ä«¾µÈËÁ³, 4-´òµç»°ÈËÁ³ + BYTE byPanelChan; /*2012-3-1ÈËÁ³Í¨µÀ¹ØÁªµÄÃæ°åͨµÀ*/ + BYTE byRelAlarmPicNum; //¹ØÁªÍ¨µÀ±¨¾¯Í¼Æ¬ÊýÁ¿ + BYTE byRes1; + DWORD dwFacePicDataLen;//ÈËÁ³Í¼Æ¬µÄ³¤¶È Ϊ0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾ¸Ã½á¹¹ºóÃæ½ô¸úͼƬÊý¾Ý*/ + DWORD dwAlarmID; //±¨¾¯ID£¬ÓÃÒÔ±êʶͨµÀ¼ä¹ØÁª²úÉúµÄ×éºÏ±¨¾¯£¬0±íʾÎÞЧ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byRes2[42]; // ±£Áô×Ö½Ú + BYTE *pFaceImage; //Ö¸ÏòÈËÁ³Í¼Ö¸Õë + BYTE *pImage; //Ö¸ÏòͼƬµÄÖ¸Õë +}NET_DVR_FACEDETECT_ALARM, *LPNET_DVR_FACEDETECT_ALARM; + +typedef struct tagNET_DVR_EVENT_PARAM_UNION +{ + DWORD uLen[3]; // ÁªºÏÌå´óСΪ12×Ö½Ú + DWORD dwHumanIn; //ÓÐÎÞÈ˽ӽü 0 - ÎÞÈË 1- ÓÐÈË + float fCrowdDensity; // ÈËÔ±¾Û¼¯Öµ +}NET_DVR_EVENT_PARAM_UNION, *LPNET_DVR_EVENT_PARAM_UNION; + +// Ä¿Ç°Ö»ÓÐÓÐÈËÎÞÈËʼþºÍÈËÔ±¾Û¼¯Ê¼þʵʱ±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_EVENT_INFO +{ + BYTE byRuleID; // Rule ID + BYTE byRes[3]; // ±£Áô×Ö½Ú + BYTE byRuleName[NAME_LEN]; // ¹æÔòÃû³Æ + DWORD dwEventType; // ²ÎÕÕVCA_EVENT_TYPE + NET_DVR_EVENT_PARAM_UNION uEventParam; // +}NET_DVR_EVENT_INFO, *LPNET_DVR_EVENT_INFO; + +typedef struct tagNET_DVR_EVENT_INFO_LIST +{ + BYTE byNum; // ʼþʵʱÐÅÏ¢¸öÊý + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_EVENT_INFO struEventInfo[MAX_RULE_NUM]; // ʼÊʵʱÐÅÏ¢ +}NET_DVR_EVENT_INFO_LIST,*LPNET_DVR_EVENT_INFO_LIST; + +typedef struct tagNET_DVR_RULE_INFO_ALARM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; // Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_EVENT_INFO_LIST struEventInfoList; //ʼþÐÅÏ¢Áбí + BYTE byRes2[40]; // ±£Áô×Ö½Ú +}NET_DVR_RULE_INFO_ALARM, *LPNET_DVR_RULE_INFO_ALARM; + +//µ¥Ìõ³¡¾°Ê±¼ä¶Î +typedef struct tagNET_DVR_ONE_SCENE_TIME +{ + BYTE byActive; //0 -ÎÞЧ,1¨CÓÐЧ + BYTE byRes1[3]; //±£Áô + DWORD dwSceneID; //³¡¾°ID + NET_DVR_SCHEDTIME struEffectiveTime; //³¡¾°ÆðЧʱ¼ä + BYTE byRes2[16]; //±£Áô +}NET_DVR_ONE_SCENE_TIME, *LPNET_DVR_ONE_SCENE_TIME ; + +//³¡¾°ÆðЧʱ¼ä¶ÎÅäÖà +typedef struct tagNET_DVR_SCENE_TIME_CFG +{ + DWORD dwSize; //½á¹¹´óС + NET_DVR_ONE_SCENE_TIME struSceneTime[MAX_SCENE_TIMESEG_NUM]; //³¡¾°Ê±¼ä¶ÎÊý×é + BYTE byRes[64]; //±£Áô +}NET_DVR_SCENE_TIME_CFG, *LPNET_DVR_SCENE_TIME_CFG; + + +//µ¥Ìõ³¡¾°ÅäÖÃÐÅÏ¢ +typedef struct tagNET_DVR_ONE_SCENE_CFG_ +{ + BYTE byEnable; //ÊÇ·ñÆôÓøó¡¾°,0-²»ÆôÓà 1- ÆôÓà + BYTE byDirection; //¼à²â·½Ïò 1-ÉÏÐУ¬2-ÏÂÐУ¬3-Ë«Ïò£¬4-Óɶ«ÏòÎ÷£¬5-ÓÉÄÏÏò±±£¬6-ÓÉÎ÷Ïò¶«£¬7-Óɱ±ÏòÄÏ£¬8-ÆäËü + BYTE byRes1[2]; //±£Áô + DWORD dwSceneID; //³¡¾°ID(Ö»¶Á), 0 - ±íʾ¸Ã³¡¾°ÎÞЧ + BYTE bySceneName[NAME_LEN]; //³¡¾°Ãû³Æ + NET_DVR_PTZPOS struPtzPos; //ptz ×ø±ê + DWORD dwTrackTime; //Çò»ú¸ú×Ùʱ¼ä[5,300] Ã룬TFS(½»Í¨È¡Ö¤)ģʽÏÂÓÐЧ + BYTE byRes2[24]; //±£Áô +}NET_DVR_ONE_SCENE_CFG, *LPNET_DVR_ONE_SCENE_CFG; + +//³¡¾°ÅäÖýṹÌå +typedef struct tagNET_DVR_SCENE_CFG +{ + DWORD dwSize; //½á¹¹´óС + NET_DVR_ONE_SCENE_CFG struSceneCfg[MAX_ITS_SCENE_NUM]; //³¡¾°ÅäÖÃÐÅÏ¢ + BYTE byRes[40]; //±£Áô +}NET_DVR_SCENE_CFG,*LPNET_DVR_SCENE_CFG; + +//¶à³¡¾°²Ù×÷Ìõ¼þ +typedef struct tagNET_DVR_SCENE_COND +{ + DWORD dwSize; //½á¹¹´óС + LONG lChannel; //ͨµÀºÅ + DWORD dwSceneID; //³¡¾°ID, 0-±íʾ¸Ã³¡¾°ÎÞЧ + BYTE byRes[48]; //±£Áô +}NET_DVR_SCENE_COND, *LPNET_DVR_SCENE_COND; + +//È¡Ö¤·½Ê½ +typedef struct tagNET_DVR_FORENSICS_MODE +{ + DWORD dwSize; //½á¹¹´óС + BYTE byMode; // 0-ÊÖ¶¯È¡Ö¤ ,1-×Ô¶¯È¡Ö¤£¬2-°ë×Ô¶¯¸ú×ٺ;²Ì¬È¡Ö¤ + BYTE byRes[23]; //±£Áô +}NET_DVR_FORENSICS_MODE,*LPNET_DVR_FORENSICS_MODE; + +//±¨¾¯³¡¾°ÐÅÏ¢ +typedef struct tagNET_DVR_SCENE_INFO_ +{ + DWORD dwSceneID; //³¡¾°ID, 0 - ±íʾ¸Ã³¡¾°ÎÞЧ + BYTE bySceneName[NAME_LEN]; //³¡¾°Ãû³Æ + BYTE byDirection; //¼à²â·½Ïò 1-ÉÏÐУ¬2-ÏÂÐУ¬3-Ë«Ïò£¬4-Óɶ«ÏòÎ÷£¬5-ÓÉÄÏÏò±±£¬6-ÓÉÎ÷Ïò¶«£¬7-Óɱ±ÏòÄÏ£¬8-ÆäËü + BYTE byRes1[3]; //±£Áô + NET_DVR_PTZPOS struPtzPos; //Ptz ×ø±ê + BYTE byRes2[64] ; //±£Áô +}NET_DVR_SCENE_INFO,*LPNET_DVR_SCENE_INFO; + +//½»Í¨Ê¼þ±¨¾¯(À©Õ¹) +typedef struct tagNET_DVR_AID_ALARM_V41 +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_AID_INFO struAIDInfo; //½»Í¨Ê¼þÐÅÏ¢ + NET_DVR_SCENE_INFO struSceneInfo; //³¡¾°ÐÅÏ¢ + DWORD dwPicDataLen; //ͼƬ³¤¶È + BYTE *pImage; //Ö¸ÏòͼƬµÄÖ¸Õë + // 0-Êý¾ÝÖ±½ÓÉÏ´«; 1-ÔÆ´æ´¢·þÎñÆ÷URL(3.7Ver)Ô­ÏȵÄͼƬÊý¾Ý±ä³ÉURLÊý¾Ý£¬Í¼Æ¬³¤¶È±ä³ÉURL³¤¶È + BYTE byDataType; + BYTE byLaneNo; //¹ØÁª³µµÀºÅ + WORD wMilliSecond; //ʱ±êºÁÃë + //¼à²âµã±àºÅ£¨Â·¿Ú±àºÅ¡¢ÄÚ²¿±àºÅ£© + BYTE byMonitoringSiteID[MONITORSITE_ID_LEN/*48*/]; + BYTE byDeviceID[DEVICE_ID_LEN/*48*/];//É豸±àºÅ + DWORD dwXmlLen;//XML±¨¾¯ÐÅÏ¢³¤¶È + char* pXmlBuf;// XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block + BYTE byTargetType;// ¼ì²âµÄÄ¿±êÀàÐÍ£¬0~δ֪£¬1~ÐÐÈË¡¢2~¶þÂÖ³µ¡¢3~ÈýÂÖ³µ(ÐÐÈ˼ì²âÖзµ»Ø) + BYTE byRuleID;//¹æÔòID,1-4,µ±congestionʼþÅäÖÃÁ˹æÔòÇøÓòʱ·µ»Ø + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byBrokenNetHttp; // ¶ÏÍøÐø´«±ê־룬0-²»ÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE byRes[3]; // ±£Áô×Ö½Ú + DWORD dwPlateSmallPicDataLen; //³µÅÆСͼͼƬ³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pPlateSmallImage; // //Ö¸Ïò³µÅÆСͼµÄÖ¸Õë +#else + char* pPlateSmallImage; //Ö¸Ïò³µÅÆСͼµÄÖ¸Õë + BYTE byRes1[4]; +#endif +}NET_DVR_AID_ALARM_V41, *LPNET_DVR_AID_ALARM_V41; + +//½»Í¨Í³¼ÆÐÅÏ¢±¨¾¯(À©Õ¹) +typedef struct tagNET_DVR_TPS_ALARM_V41 +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; // Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_TPS_INFO_V41 struTPSInfo; // ½»Í¨²ÎÊýͳ¼ÆÐÅÏ¢ + //¼à²âµã±àºÅ£¨Â·¿Ú±àºÅ¡¢ÄÚ²¿±àºÅ£© + BYTE byMonitoringSiteID[MONITORSITE_ID_LEN/*48*/]; + BYTE byDeviceID[DEVICE_ID_LEN/*48*/];//É豸±àºÅ + DWORD dwStartTime; // ¿ªÊ¼Í³¼Æʱ¼ä + DWORD dwStopTime; // ½áÊøͳ¼Æʱ¼ä + BYTE byRes[24]; // ±£Áô +} NET_DVR_TPS_ALARM_V41,*LPNET_DVR_TPS_ALARM_V41; + +/*******************************ÖÇÄܽ»Í¨Ê¼þ end*****************************************/ + +#define XXX_MAJOR_VERSION 2 + +/* ×Ó°æ±¾ºÅ£¬ÐÔÄÜÓÅ»¯¡¢¾Ö²¿½á¹¹µ÷Õû¡¢Ä£¿éÄÚ¼¯³ÉÆäËû¿âµÄÖ÷°æ±¾ÌáÉýʱµÝÔö£¬×î´ó31 */ + +#define XXX_SUB_VERSION 3 + +/* ÐÞÕý°æ±¾ºÅ£¬ÐÞÕýbugºóµÝÔö£¬×î´ó31 */ + +#define XXX_REVISION_VERSION 4 + +typedef struct tagNET_DVR_VCA_VERSION +{ + WORD wMajorVersion; // Ö÷°æ±¾ºÅ + WORD wMinorVersion; // ´Î°æ±¾ºÅ + WORD wRevisionNumber; // ÐÞÕýºÅ + WORD wBuildNumber; // ±àÒëºÅ + WORD wVersionYear; // °æ±¾ÈÕÆÚ-Äê + BYTE byVersionMonth; // °æ±¾ÈÕÆÚ-Ô + BYTE byVersionDay; // °æ±¾ÈÕÆÚ-ÈÕ + BYTE byType;/*Ëã·¨¿âÀàÐÍÃû³Æ£¬0-±£Áô£¬1-ÈËÁ³ÊôÐÔ,2-ÐÐΪ·ÖÎö,3-ÈËÌåÊôÐÔ,4-ÈËÁ³×¥ÅÄ,5ÈËÁ³Ê¶±ð 6-ÈËÁ³¶Ô±È,7-ѧÉúÕ¾Á¢¼ì²â, + 8-ÇøÓòÈËÊýͳ¼Æ,9-ÈËÁ³ÆÀ·Ö¿â,10-°²È«Ã±¼ì²â,11-µçÌݼì²âËã·¨¿â,12-¿ÍÁ÷Á¿Í³¼Æ,13-(˽ÓÐÄ¿±ê½á¹¹»¯Ëã·¨)HMS, + 14-½ÌʦÐÐΪ¼ì²â, 15-ÈËÔ±Ãܶȣ¬16-ÈËÊýÒì³££¬17-Àë¸Ú¼ì²â£¬18-ÈËÔ±ÖÍÁô£¬19-ÈËÁ³½¨Ä£×¥ÅÄ£¬20-HMS½¨Ä£,21-̬ÊÆ·ÖÎö, + 22-³Ç¹ÜËã·¨,23-ÅŶӼì²â*/ + BYTE byRes[7]; // ±£Áô×Ö½Ú +}NET_DVR_VCA_VERSION, *LPNET_DVR_VCA_VERSION; + + +/******************************ÖÇÄÜ end***********************************/ + +/******************************³µÅÆʶ±ð begin******************************************/ +typedef struct tagNET_DVR_PLATE_PARAM +{ + BYTE byPlateRecoMode; //³µÅÆʶ±ðµÄģʽ,ĬÈÏΪ1(ÊÓƵ´¥·¢Ä£Ê½) + BYTE byBelive; //ÕûÅÆÖÃÐŶÈãÐÖµ, Ö»ÓÃÓÚÊÓƵʶ±ð·½Ê½, ¸ù¾Ý±³¾°¸´Ôӳ̶ÈÉèÖÃ, Îó´¥·¢Âʸ߾ÍÉè¸ß, ©³µÂʸ߾ÍÉèµÍ, ½¨ÒéÔÚ80-90·¶Î§ÄÚ + BYTE byRes[22]; //±£Áô×Ö½Ú +}NET_DVR_PALTE_PARAM, *LPNET_DVR_PALTE_PARAM; + +typedef struct tagNET_DVR_PLATECFG +{ + DWORD dwSize; + DWORD dwEnable; /* ÊÇ·ñÆôÓÃÊÓƵ³µÅÆʶ±ð 0£­·ñ 1£­ÊÇ */ + BYTE byPicProType; //±¨¾¯Ê±Í¼Æ¬´¦Àí·½Ê½ 0-²»´¦Àí ·Ç0-ÉÏ´« + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_DVR_PALTE_PARAM struPlateParam; // ³µÅÆʶ±ð²ÎÊýÅäÖà + NET_DVR_HANDLEEXCEPTION struHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];//²¼·Àʱ¼ä + BYTE byRelRecordChan[MAX_CHANNUM]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_DVR_PLATECFG, *LPNET_DVR_PLATECFG; + +// ³µÅÆʶ±ð½á¹û×ӽṹ +typedef struct tagNET_DVR_PLATE_INFO +{ + BYTE byPlateType; //³µÅÆÀàÐÍ + BYTE byColor; //³µÅÆÑÕÉ« + BYTE byBright; //³µÅÆÁÁ¶È + BYTE byLicenseLen; //³µÅÆ×Ö·û¸öÊý + BYTE byEntireBelieve; //Õû¸ö³µÅƵÄÖÃÐŶȣ¬-100 + BYTE byRegion; // ÇøÓòË÷ÒýÖµ 0-±£Áô£¬1-Å·ÖÞ(EU)£¬2-¶íÓïÇøÓò(ER)£¬3-Å·ÖÞ&¶íÂÞ˹(EU&CIS) ,4-Öж«(ME),5-ÑÇÌ«(APAC),6-·ÇÃÀ(·ÇÖÞºÍÃÀÖÞ,AfandAM),0xff-ËùÓÐ + BYTE byCountry; // ¹ú¼ÒË÷ÒýÖµ£¬²ÎÕÕö¾ÙCOUNTRY_INDEX£¨²»Ö§³Ö"COUNTRY_ALL = 0xff, //ALL È«²¿"£© + BYTE byArea; //ÇøÓò£¨Ê¡·Ý£©£¬¸÷¹ú¼ÒÄÚ²¿ÇøÓòö¾Ù£¬°¢ÁªÇõ²ÎÕÕ EMI_AREA + BYTE byPlateSize; //³µÅƳߴ磬0~δ֪£¬1~long, 2~short(Öж«³µÅÆʹÓÃ) + /*¸½¼ÓÐÅÏ¢±êʶ£¨¼´ÊÇ·ñÓÐNET_DVR_VEHICLE_ADDINFO½á¹¹Ì壩,0-ÎÞ¸½¼ÓÐÅÏ¢, 1-Óи½¼ÓÐÅÏ¢¡£*/ + BYTE byAddInfoFlag; + //¸Ã×Ö¶ÎÊÇÔÚbyCountryË÷Òý»ù´¡ÉÏ£¬À©Õ¹ÁËÇøÓòË÷Òý£¬Ö®ºóʹÓøÃ×ֶδúÌæbyCountry£¬ÓÅÏÈʹÓÃwCRIndex×ֶΠ+ //ΪÁ˼æÈÝÀÏÓû§£¬Èç¹û¸Ã×Ö¶ÎÖµ´óÓÚ256£¨¼´ÐÂÔöÇøÓò£©£¬ÔòbyCountry¸³ÖµÎª0xfd£¨¹ú¼Ò×Ö¶ÎÎÞЧ£©¡£ + WORD wCRIndex ;//¹ú¼Ò/µØÇøË÷Òý£¬Ë÷ÒýÖµ²Î¿¼_CR_ INDEX_ + BYTE byRes[4]; //±£Áô +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE* pAddInfoBuffer; +#else + /*¸½¼ÓÐÅÏ¢Ö¸Õë,Ö¸ÏòNET_DVR_VEHICLE_ADDINFO½á¹¹Ìå*/ + BYTE* pAddInfoBuffer; + BYTE byRes2[4]; +#endif + char sPlateCategory[MAX_CATEGORY_LEN/*8*/];//³µÅƸ½¼ÓÐÅÏ¢, ¼´Öж«³µÅÆÖгµÅƺÅÂëÅԱߵÄС×ÖÐÅÏ¢£¬(Ä¿Ç°Ö»ÓÐÖж«µØÇøÖ§³Ö) + DWORD dwXmlLen; //XML±¨¾¯ÐÅÏ¢³¤¶È + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,±¨¾¯ÀàÐÍΪ COMM_ITS_PLATE_RESUL¡¢COMM_PLATE_RESULT_V50ʱÓÐЧ£¬ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block + NET_VCA_RECT struPlateRect; //³µÅÆλÖà + char sLicense[MAX_LICENSE_LEN]; //³µÅƺÅÂë,×¢£ºÖж«³µÅÆÐèÇó°ÑС×ÖÒ²ÄÉÈë³µÅƺÅÂ룬С×ֺͳµÅƺÅÖмäÓÿոñ·Ö¸ô + BYTE byBelieve[MAX_LICENSE_LEN]; //¸÷¸öʶ±ð×Ö·ûµÄÖÃÐŶȣ¬Èç¼ì²âµ½³µÅÆ"ÕãA12345", ÖÃÐŶÈΪ,20,30,40,50,60,70£¬Ôò±íʾ"Õã"×ÖÕýÈ·µÄ¿ÉÄÜÐÔÖ»ÓÐ%£¬"A"×ÖµÄÕýÈ·µÄ¿ÉÄÜÐÔÊÇ% +}NET_DVR_PLATE_INFO, *LPNET_DVR_PLATE_INFO; + +typedef struct tagNET_DVR_PLATERECO_RESULE +{ + DWORD dwSize; + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; // Ç°¶ÎÉ豸ÐÅÏ¢ + NET_DVR_PLATE_INFO struPlateInfo; + DWORD dwPicDataLen; //·µ»ØͼƬµÄ³¤¶È Ϊ0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾ¸Ã½á¹¹ºóÃæ½ô¸úͼƬÊý¾Ý*/ + DWORD dwRes[4]; //±£Áô£¬ÉèÖÃΪ0 + BYTE *pImage; //Ö¸ÏòͼƬµÄÖ¸Õë +}NET_DVR_PLATERECO_RESULE, *LPNET_DVR_PLATERECO_RESULE; + +/******************************³µÅÆʶ±ð end******************************************/ + +/*******************************ÊÓƵ×ÛºÏƽ̨***********************************/ +typedef struct +{ + NET_DVR_TIME strLogTime; + DWORD dwMajorType; //Main type 1-alarm; 2-abnormal; 3-operation; 0xff-all + DWORD dwMinorType; //Hypo-Type 0-all; + BYTE sPanelUser[MAX_NAMELEN]; //user ID for local panel operation + BYTE sNetUser[MAX_NAMELEN];//user ID for network operation + NET_DVR_IPADDR struRemoteHostAddr;//remote host IP + DWORD dwParaType;//parameter type + DWORD dwChannel;//channel number + DWORD dwDiskNumber;//HD number + DWORD dwAlarmInPort;//alarm input port + DWORD dwAlarmOutPort;//alarm output port + DWORD dwInfoLen; + BYTE byDevSequence;//²ÛλºÅ + BYTE byMacAddr[MACADDR_LEN];//MACµØÖ·,6 + BYTE sSerialNumber[SERIALNO_LEN];//ÐòÁкţ¬48 + char sInfo[LOG_INFO_LEN - SERIALNO_LEN - MACADDR_LEN - 1 ]; +}NET_DVR_LOG_MATRIX, *LPNET_DVR_LOG_MATRIX; + +//2009-11-21 ÊÓƵ×ÛºÏƽ̨ +typedef struct tagVEDIOPLATLOG +{ + BYTE bySearchCondition;//ËÑË÷Ìõ¼þ£¬0-°´²ÛλºÅËÑË÷£¬1-°´ÐòÁкÅËÑË÷£¬2-°´MACµØÖ·½øÐÐËÑË÷ + //²ÛλºÅ£¬0-79£º¶ÔÓ¦×ÓϵͳµÄ²ÛλºÅ£» + //0xff£º±íʾËÑË÷ËùÓеÄÈÕÖ¾£¬°üÀ¨78KºÍËùÓÐ6467£» + //0xfe£º±íʾËÑË÷78KÉϵÄÈÕÖ¾£»0xfd£º×ÓÓòÈÕÖ¾£»0xfc£ºÓòÈÕÖ¾¡£¡£ + BYTE byDevSequence; + BYTE sSerialNumber[SERIALNO_LEN];//ÐòÁкţ¬48 + BYTE byMacAddr[MACADDR_LEN];//MACµØÖ·,6 +} NET_DVR_VEDIOPLATLOG, *LPNET_DVR_VEDIOPLATLOG; + +typedef struct tagNET_DVR_CODESYSTEMABILITY +{ + DWORD dwSize; + DWORD dwAbilityVersion;//ÄÜÁ¦¼¯°æ±¾ºÅ£¬¸ß16λ±íʾÖ÷°æ±¾£¬µÍ16λ±íʾ´Î°æ±¾ + DWORD dwSupportMaxVideoFrameRate;//µ¥Î»(K) + /*°´Î»: + 0:¶¨Ê±Â¼Ïñ£» + 1:¶¨Ê±|ʼþ´¥·¢Â¼Ïñ + 2:Òƶ¯Õì²â¼Ïñ£» + 3:ÍøÂ翪¹ØÁ¿±¨¾¯Â¼Ïñ£» + 4:Òƶ¯Õì²â|ÍøÂ翪¹ØÁ¿±¨¾¯Â¼Ïñ£» + 5:Òƶ¯Õì²â&ÍøÂ翪¹ØÁ¿±¨¾¯Â¼Ïñ£» + 6:Öܽç·À·¶´¥·¢Â¼Ïñ£» + 7:ÈËÁ³¼ì²â´¥·¢Â¼Ïñ£» + 8:³µÅÆʶ±ð´¥·¢Â¼Ïñ£» + 9:ÊÖ¶¯Â¼Ïñ*/ + DWORD dwSupportRecordType; + BYTE bySupportLinkMode;//°´Î»:µÚ0λ:±íʾÖ÷ÂëÁ÷£¬µÚ1λ:±íʾ×ÓÂëÁ÷ + BYTE bySupportStringRow;//Ö§³Ö×Ö·ûµþ¼ÓÐÐÊý + BYTE bySupportHideNum;//Ö§³ÖÊÓƵÕÚµ²ÊýÁ¿ + BYTE byRes1; + /*0-DCIF£¬1-CIF£¬2-QCIF£¬3-4CIF£¬4-2CIF£¬6-QVGA(320*240), 16-VGA£¬17-UXGA£¬18-SVGA£¬19-HD720p£¬20-XVGA£¬21-HD900p£¬22-SXGAp£¬27-HD1080i£¬28-2560*1920£¬29-1600*304£¬30-2048*1536£¬31-2448*2048£¬32-2448*1200£¬33-2448*800 £¬34-XGA£¨1024x768£©£¬35-SXGA£¨1280x1024£©*/ + BYTE byMainStreamSupportResolution[8];//Ö÷ÂëÁ÷Ö§³ÖµÄ·Ö±æÂÊ£¬°´Î» + BYTE bySubStreamSupportResolution[8];//×ÓÂëÁ÷Ö§³ÖµÄ·Ö±æÂÊ£¬°´Î» + BYTE byEventStreamSupportResolution[8];//ʼþ´¥·¢ÂëÁ÷Ö§³ÖµÄ·Ö±æÂÊ£¬°´Î» + BYTE byNotSupportPreview;//ÊÇ·ñÖ§³ÖÔ¤ÀÀ,1-²»Ö§³Ö£¬0-Ö§³Ö + BYTE byNotSupportStorage;//ÊÇ·ñÖ§³Ö´æ´¢,1-²»Ö§³Ö£¬0-Ö§³Ö + BYTE byRes2[98];//±£Áô +}NET_DVR_CODESYSTEMABILITY, *LPNET_DVR_CODESYSTEMABILITY; + +/********************************end*******************************************/ + +/******************************×¥ÅÄ»ú*******************************************/ +//IOÊäÈëÅäÖà +typedef struct tagNET_DVR_IO_INCFG +{ + DWORD dwSize; + BYTE byIoInStatus;//ÊäÈëµÄIO¿Ú״̬£¬0-ϽµÑØ£¬1-ÉÏÉýÑØ£¬2-ÉÏÉýÑغÍϽµÑØ£¬3-¸ßµçƽ£¬4-µÍµçƽ + BYTE byRes[3];//±£Áô×Ö½Ú +}NET_DVR_IO_INCFG, *LPNET_DVR_IO_INCFG; + +//IOÊä³öÅäÖà +typedef struct tagNET_DVR_IO_OUTCFG +{ + DWORD dwSize; + BYTE byDefaultStatus;//IOĬÈÏ״̬£º0-µÍµçƽ£¬1-¸ßµçƽ + BYTE byIoOutStatus;//IOÆðЧʱ״̬£º0-µÍµçƽ£¬1-¸ßµçƽ£¬2-Âö³å + WORD wAheadTime;//Êä³öIOÌáǰʱ¼ä£¬µ¥Î»us + DWORD dwTimePluse;//Âö³å¼ä¸ôʱ¼ä£¬µ¥Î»us + DWORD dwTimeDelay;//IOÓÐЧ³ÖÐøʱ¼ä£¬µ¥Î»us + BYTE byFreqMulti; //±¶Æµ£¬ÊýÖµ·¶Î§[1,15] + BYTE byDutyRate; //Õ¼¿Õ±È£¬[0,40%] + BYTE byRes[2]; +}NET_DVR_IO_OUTCFG, *LPNET_DVR_IO_OUTCFG; + +//ÉÁ¹âµÆÅäÖà +typedef struct tagNET_DVR_FLASH_OUTCFG +{ + DWORD dwSize; + BYTE byMode;//ÉÁ¹âµÆÉÁ˸ģʽ£¬0-²»ÉÁ£¬1-ÉÁ£¬2-¹ØÁªÉÁ£¬3-ÂÖÉÁ + BYTE byRelatedIoIn;//ÉÁ¹âµÆ¹ØÁªµÄÊäÈëIOºÅ£¨¹ØÁªÉÁʱ´Ë²ÎÊýÓÐЧ£© + BYTE byRecognizedLane; /*¹ØÁªµÄIOºÅ£¬°´Î»±íʾ£¬bit0±íʾIO1ÊÇ·ñ¹ØÁª£¬0-²»¹ØÁª£¬1-¹ØÁª*/ + BYTE byDetectBrightness;/*×Ô¶¯¼ì²âÁÁ¶ÈʹÄÜÉÁ¹âµÆ0-²»¼ì²â£»1-¼ì²â*/ + BYTE byBrightnessThreld;/*ʹÄÜÉÁ¹âµÆÁÁ¶ÈãÐÖµ£¬·¶Î§[0,100],¸ßÓÚãÐÖµÉÁ*/ + BYTE byStartHour; //¿ªÊ¼Ê±¼ä-Сʱ,È¡Öµ·¶Î§0-23 + BYTE byStartMinute; //¿ªÊ¼Ê±¼ä-·Ö,È¡Öµ·¶Î§0-59 + BYTE byEndHour; //½áÊøʱ¼ä-Сʱ,È¡Öµ·¶Î§0-23 + BYTE byEndMinute; //½áÊøʱ¼ä-·Ö,È¡Öµ·¶Î§0-59 + BYTE byFlashLightEnable; //ÉèÖÃÉÁ¹âµÆʱ¼äʹÄÜ:0-¹Ø;1-¿ª + BYTE byRes[2]; +}NET_DVR_FLASH_OUTCFG, *LPNET_DVR_FLASH_OUTCFG; + +//ºìÂ̵ƹ¦ÄÜ£¨2¸öIOÊäÈëÒ»×飩 +typedef struct tagNET_DVR_LIGHTSNAPCFG +{ + DWORD dwSize; + BYTE byLightIoIn;//ºìÂ̵ƵÄIO ºÅ + BYTE byTrigIoIn;//´¥·¢µÄIOºÅ + BYTE byRelatedDriveWay;//´¥·¢IO¹ØÁªµÄ³µµÀºÅ + BYTE byTrafficLight; //0-¸ßµçƽºìµÆ£¬µÍµçƽÂ̵ƣ»1-¸ßµçƽÂ̵ƣ¬µÍµçƽºìµÆ + BYTE bySnapTimes1; //ºìµÆ×¥ÅÄ´ÎÊý1£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE bySnapTimes2; //Â̵Æ×¥ÅÄ´ÎÊý2£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE byRes1[2]; + WORD wIntervalTime1[MAX_INTERVAL_NUM];//ºìµÆÁ¬Åļä¸ôʱ¼ä£¬ms + WORD wIntervalTime2[MAX_INTERVAL_NUM];//Â̵ÆÁ¬Åļä¸ôʱ¼ä£¬ms + BYTE byRecord;//´³ºìµÆÖÜÆÚ¼Ïñ±êÖ¾£¬0-²»Â¼Ïñ£¬1-¼Ïñ + BYTE bySessionTimeout;//´³ºìµÆÖÜÆÚ¼Ïñ³¬Ê±Ê±¼ä£¨Ã룩 + BYTE byPreRecordTime;//´³ºìµÆ¼ÏñƬ¶ÎԤ¼ʱ¼ä(Ãë) + BYTE byVideoDelay;//´³ºìµÆ¼ÏñƬ¶ÎÑÓʱʱ¼ä£¨Ã룩 + BYTE byRes2[32];//±£Áô×Ö½Ú +}NET_DVR_LIGHTSNAPCFG, *LPNET_DVR_LIGHTSNAPCFG; + +//²âËÙ¹¦ÄÜ(2¸öIOÊäÈëÒ»×飩 +typedef struct tagNET_DVR_MEASURESPEEDCFG +{ + DWORD dwSize; + BYTE byTrigIo1; //²âËÙµÚ1ÏßȦ + BYTE byTrigIo2; //²âËÙµÚ2ÏßȦ + BYTE byRelatedDriveWay;//´¥·¢IO¹ØÁªµÄ³µµÀºÅ + BYTE byTestSpeedTimeOut;//²âËÙģʽ³¬Ê±Ê±¼ä£¬µ¥Î»s + DWORD dwDistance;//ÏßȦ¾àÀë,cm + BYTE byCapSpeed;//²âËÙģʽÆðÅÄËٶȣ¬µ¥Î»km/h + BYTE bySpeedLimit;//ÏÞËÙÖµ£¬µ¥Î»km/h + BYTE bySnapTimes1; //ÏßȦ1×¥ÅÄ´ÎÊý£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE bySnapTimes2; //ÏßȦ2×¥ÅÄ´ÎÊý£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + WORD wIntervalTime1[MAX_INTERVAL_NUM];//ÏßȦ1Á¬Åļä¸ôʱ¼ä£¬ms + WORD wIntervalTime2[MAX_INTERVAL_NUM];//ÏßȦ2Á¬Åļä¸ôʱ¼ä£¬ms + BYTE byRes[32];//±£Áô×Ö½Ú +}NET_DVR_MEASURESPEEDCFG, *LPNET_DVR_MEASURESPEEDCFG; + + +//ÅäÖÃÌõ¼þ +typedef struct tagNET_DVR_CLOUDSTORAGE_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byRes1[64]; +}NET_DVR_CLOUDSTORAGE_COND,*LPNET_DVR_CLOUDSTORAGE_COND; + +//ÅäÖýṹ +typedef struct tagNET_DVR_POOLPARAM +{ + DWORD dwPoolID;// ÔÆ´æ´¢·ÖÅä½ÚµãºÅ + BYTE byRes[4]; +}NET_DVR_POOLPARAM,*LPNET_DVR_POOLPARAM; + +typedef struct tagNET_DVR_CLOUDSTORAGE_CFG +{ + DWORD dwSize; + BYTE byEnable;//0-²»¿ªÆô£¬1-¿ªÆô + BYTE byRes[3]; + NET_DVR_IPADDR struIP; + WORD wPort;//Êý¾Ý¶Ë¿Ú + BYTE byRes1[2]; + char szUser[CLOUD_NAME_LEN/*48*/]; //Óû§Ãû + char szPassword[CLOUD_PASSWD_LEN/*48*/]; // ÃÜÂë + NET_DVR_POOLPARAM struPoolInfo[16];//Êý×é0±íʾ¿¨¿Ú¼Ïñ³Ø£¬Êý×é1±íʾΥÕ¼Ïñ³Ø£¬Êý×é2±íʾ³µÁ¾Õì²âÊý¾Ý³Ø£¨IPC/D£© + BYTE byRes2[128]; +}NET_DVR_CLOUDSTORAGE_CFG,*LPNET_DVR_CLOUDSTORAGE_CFG; + +typedef struct tagNET_DVR_PARKLAMP_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byParkingIndex; //Ïà¶Ô³µÎ»ºÅ£¨1¡«4£© + BYTE byRes[15]; //±£Áô +}NET_DVR_PARKLAMP_COND, *LPNET_DVR_PARKLAMP_COND; + +typedef struct tagNET_DVR_PARKLAMP_INFOCFG +{ + DWORD dwSize; + char sLicense[MAX_LICENSE_LEN/*16*/];//³µÅƺÅÂë + char sParkingNo[MAX_LICENSE_LEN/*16*/];//³µÎ»±àºÅ(ʵ¼ÊµÄ³µÎ»±àºÅ) + BYTE byLampFlicker;//0~²»ÉÁ˸ 1 ¡«ÉÁ˸ (³µÎ»Ö¸Ê¾µÆÉÁ˸) + BYTE byLampColor;//0- Ãð 1-ºì 2-ÂÌ 3-»Æ 4-À¶ 5-Æ·ºì 6-Çà 7-°×É« (³µÎ»Ö¸Ê¾µÆÑÕÉ«) + BYTE byStatus; //³µÎ»×´Ì¬ 0-ÎÞ³µ£¬1-Óгµ + BYTE byColorDepth; //³µÉíÑÕÉ«Éîdz£¬0-ÉîÉ«£¬1-dzɫ,0xff-δ֪ + BYTE byColor;//³µÉíÑÕÉ«£¬0-ÆäËûÉ«£¬1-°×É«£¬2-ÒøÉ«£¬3-»ÒÉ«£¬4-ºÚÉ«£¬5-ºìÉ«£¬6-ÉîÀ¶£¬7-À¶É«£¬8-»ÆÉ«£¬9-ÂÌÉ«£¬10-×ØÉ«£¬11-·ÛÉ«£¬12-×ÏÉ«£¬0xff-δ½øÐгµÉíÑÕɫʶ±ð + //³µÁ¾Æ·ÅÆÀàÐÍʶ±ð£» ²Î¿¼Ã¶¾ÙÀàÐÍ VLR_VEHICLE_CLASS + BYTE byVehicleLogoRecog; + BYTE byRes[250];//±£Áô +}NET_DVR_PARKLAMP_INFOCFG, *LPNET_DVR_PARKLAMP_INFOCFG; + +//ÊÓƵ²ÎÊýÅäÖà +typedef struct tagNET_DVR_VIDEOEFFECT +{ + BYTE byBrightnessLevel; /*0-100*/ + BYTE byContrastLevel; /*0-100*/ + BYTE bySharpnessLevel; /*0-100*/ + BYTE bySaturationLevel; /*0-100*/ + BYTE byHueLevel; /*0-100,£¨±£Áô£©*/ + BYTE byEnableFunc; //ʹÄÜ£¬°´Î»±íʾ£¬bit0-SMART IR(·À¹ýÆØ)£¬bit1-µÍÕÕ¶È,bit2-Ç¿¹âÒÖÖÆʹÄÜ£¬0-·ñ£¬1-ÊÇ + BYTE byLightInhibitLevel; //Ç¿¹âÒÖÖƵȼ¶£¬[1-3]±íʾµÈ¼¶ + BYTE byGrayLevel; //»Ò¶ÈÖµÓò£¬0-[0-255]£¬1-[16-235] +}NET_DVR_VIDEOEFFECT, *LPNET_DVR_VIDEOEFFECT; + +//ÔöÒæÅäÖà +typedef struct tagNET_DVR_GAIN +{ + BYTE byGainLevel; /*ÔöÒ棺0-100*/ + BYTE byGainUserSet; /*Óû§×Ô¶¨ÒåÔöÒ棻0-100£¬¶ÔÓÚ×¥ÅÄ»ú£¬ÊÇCCDģʽϵÄ×¥ÅÄÔöÒæ*/ + BYTE byRes[2]; + DWORD dwMaxGainValue;/*×î´óÔöÒæÖµ£¬µ¥Î»dB*/ +}NET_DVR_GAIN, *LPNET_DVR_GAIN; + +//°×ƽºâÅäÖà +typedef struct tagNET_DVR_WHITEBALANCE +{ +BYTE byWhiteBalanceMode; /*0-ÊÖ¶¯°×ƽºâ£¨MWB£©,1-×Ô¶¯°×ƽºâ1£¨AWB1£©,2-×Ô¶¯°×ƽºâ2 (AWB2),3-×Ô¶¯¿ØÖƸÄÃûΪËø¶¨°×ƽºâ(Locked WB)£¬ + 4-ÊÒÍâ(Indoor)£¬5-ÊÒÄÚ(Outdoor)6-ÈÕ¹âµÆ(Fluorescent Lamp)£¬7-ÄƵÆ(Sodium Lamp)£¬ + 8-×Ô¶¯¸ú×Ù(Auto-Track)9-Ò»´Î°×ƽºâ(One Push)£¬10-ÊÒÍâ×Ô¶¯(Auto-Outdoor)£¬ + 11-ÄƵÆ×Ô¶¯ (Auto-Sodiumlight)£¬12-Ë®ÒøµÆ(Mercury Lamp)£¬13-×Ô¶¯°×ƽºâ(Auto)£¬ +14-°×³ãµÆ (IncandescentLamp)£¬15-ů¹âµÆ(Warm Light Lamp)£¬16-×ÔÈ»¹â(Natural Light) */ +BYTE byWhiteBalanceModeRGain; /*ÊÖ¶¯°×ƽºâʱÓÐЧ£¬ÊÖ¶¯°×ƽºâ RÔöÒæ*/ +BYTE byWhiteBalanceModeBGain; /*ÊÖ¶¯°×ƽºâʱÓÐЧ£¬ÊÖ¶¯°×ƽºâ BÔöÒæ*/ +BYTE byRes[5]; +}NET_DVR_WHITEBALANCE, *LPNET_DVR_WHITEBALANCE; + +//Æعâ¿ØÖÆ +typedef struct tagNET_DVR_EXPOSURE +{ + BYTE byExposureMode; /*0 ÊÖ¶¯Æعâ 1×Ô¶¯Æعâ*/ + BYTE byAutoApertureLevel; /* ×Ô¶¯¹âȦÁéÃô¶È, 0-10 */ + BYTE byRes[2]; + DWORD dwVideoExposureSet; /* ×Ô¶¨ÒåÊÓƵÆعâʱ¼ä£¨µ¥Î»us£©*//*×¢:×Ô¶¯Æعâʱ¸ÃֵΪÆعâ×îÂýÖµ ÐÂÔö20-1s(1000000us)*/ + DWORD dwExposureUserSet; /* ×Ô¶¨ÒåÆعâʱ¼ä,ÔÚ×¥ÅÄ»úÉÏÓ¦ÓÃʱ£¬CCDģʽʱÊÇ×¥ÅÄ¿ìÃÅËÙ¶È*/ + DWORD dwRes; +} NET_DVR_EXPOSURE, *LPNET_DVR_EXPOSURE; + +//¿í¶¯Ì¬ÅäÖà +typedef struct tagNET_DVR_WDR +{ + BYTE byWDREnabled; /*¿í¶¯Ì¬£º0 dsibale 1 enable 2 auto*/ + BYTE byWDRLevel1; /*0-F*/ + BYTE byWDRLevel2; /*0-F*/ + BYTE byWDRContrastLevel; /*0-100*/ + BYTE byRes[16]; +} NET_DVR_WDR, *LPNET_DVR_WDR; + +typedef struct tagNET_DVR_WDR_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_WDR struWDR; //ÅäÖÃÐÅÏ¢ +}NET_DVR_WDR_CFG, *LPNET_DVR_WDR_CFG; + + +//ÈÕҹת»»¹¦ÄÜÅäÖà +typedef struct tagNET_DVR_DAYNIGHT +{ + BYTE byDayNightFilterType; /*ÈÕÒ¹Çл»£º0-°×Ì죬1-Ò¹Íí£¬2-×Ô¶¯£¬3-¶¨Ê±£¬4-±¨¾¯ÊäÈë´¥·¢, 5-×Ô¶¯Ä£Ê½2£¨ÎÞ¹âÃô£©,6-ºÚ¹â£¬7-ºÚ¹â×Ô¶¯£¬8-ºÚ¹â¶¨Ê±*/ + BYTE bySwitchScheduleEnabled; /*0 dsibale 1 enable,(±£Áô)*/ + //¶¨Ê±Ä£Ê½²ÎÊý + BYTE byBeginTime; /*¿ªÊ¼Ê±¼ä£¨Ð¡Ê±£©£¬0-23*/ + BYTE byEndTime; /*½áÊøʱ¼ä£¨Ð¡Ê±£©£¬0-23*/ + //ģʽ2 + BYTE byDayToNightFilterLevel; //0-7 + BYTE byNightToDayFilterLevel; //0-7 + BYTE byDayNightFilterTime;//(60Ãë) + //¶¨Ê±Ä£Ê½²ÎÊý + BYTE byBeginTimeMin; //¿ªÊ¼Ê±¼ä£¨·Ö£©£¬0-59 + BYTE byBeginTimeSec; //¿ªÊ¼Ê±¼ä£¨Ã룩£¬0-59 + BYTE byEndTimeMin; //½áÊøʱ¼ä£¨·Ö£©£¬0-59 + BYTE byEndTimeSec; //½áÊøʱ¼ä£¨Ã룩£¬0-59 + //±¨¾¯ÊäÈë´¥·¢Ä£Ê½²ÎÊý + BYTE byAlarmTrigState; //±¨¾¯ÊäÈë´¥·¢×´Ì¬£¬0-°×Ì죬1-Ò¹Íí +} NET_DVR_DAYNIGHT, *LPNET_DVR_DAYNIGHT; + +//GammaУÕý +typedef struct tagNET_DVR_GAMMACORRECT +{ + BYTE byGammaCorrectionEnabled; /*0 dsibale 1 enable*/ + BYTE byGammaCorrectionLevel; /*0-100*/ + BYTE byRes[6]; +} NET_DVR_GAMMACORRECT, *LPNET_DVR_GAMMACORRECT; + +//±³¹â²¹³¥ÅäÖà +typedef struct tagNET_DVR_BACKLIGHT +{ + BYTE byBacklightMode; /*±³¹â²¹³¥:0 off 1 UP¡¢2 DOWN¡¢3 LEFT¡¢4 RIGHT¡¢5MIDDLE¡¢6×Ô¶¨Ò壬10-¿ª£¬11-×Ô¶¯£¬12-¶àÇøÓò±³¹â²¹³¥*/ + BYTE byBacklightLevel; /*0x0-0xF*/ + BYTE byRes1[2]; + DWORD dwPositionX1; //£¨X×ø±ê1£© + DWORD dwPositionY1; //£¨Y×ø±ê1£© + DWORD dwPositionX2; //£¨X×ø±ê2£© + DWORD dwPositionY2; //£¨Y×ø±ê2£© + BYTE byRes2[4]; +} NET_DVR_BACKLIGHT, *LPNET_DVR_BACKLIGHT; + +//Êý×Ö½µÔ빦ÄÜ +typedef struct tagNET_DVR_NOISEREMOVE +{ + BYTE byDigitalNoiseRemoveEnable; /*0-²»ÆôÓã¬1-ÆÕͨģʽÊý×Ö½µÔ룬2-ר¼ÒģʽÊý×Ö½µÔë*/ + BYTE byDigitalNoiseRemoveLevel; /*ÆÕͨģʽÊý×Ö½µÔ뼶±ð£º0x0-0xF*/ + BYTE bySpectralLevel; /*ר¼ÒģʽÏ¿ÕÓòÇ¿¶È£º0-100*/ + BYTE byTemporalLevel; /*ר¼ÒģʽÏÂʱÓòÇ¿¶È£º0-100*/ + BYTE byDigitalNoiseRemove2DEnable; /* ×¥ÅÄÖ¡2D½µÔ룬0-²»ÆôÓã¬1-ÆôÓà */ + BYTE byDigitalNoiseRemove2DLevel; /* ×¥ÅÄÖ¡2D½µÔ뼶±ð£¬0-100 */ + BYTE byRes[2]; +} NET_DVR_NOISEREMOVE, *LPNET_DVR_NOISEREMOVE; + +//CMOSģʽÏÂÇ°¶Ë¾µÍ·ÅäÖà +typedef struct tagNET_DVR_CMOSMODCFG +{ + BYTE byCaptureMod; //×¥ÅÄģʽ£º0-×¥ÅÄģʽ1£»1-×¥ÅÄģʽ2 + BYTE byBrightnessGate;//ÁÁ¶ÈãÐÖµ + BYTE byCaptureGain1; //×¥ÅÄÔöÒæ1,0-100 + BYTE byCaptureGain2; //×¥ÅÄÔöÒæ2,0-100 + DWORD dwCaptureShutterSpeed1;//×¥ÅÄ¿ìÃÅËÙ¶È1 + DWORD dwCaptureShutterSpeed2;//×¥ÅÄ¿ìÃÅËÙ¶È2 + BYTE byRes[4]; +}NET_DVR_CMOSMODECFG, *LPNET_DVR_CMOSMODECFG; + +//Ç°¶Ë²ÎÊýÅäÖà +typedef struct tagNET_DVR_CAMERAPARAMCFG +{ + DWORD dwSize; + NET_DVR_VIDEOEFFECT struVideoEffect;/*ÁÁ¶È¡¢¶Ô±È¶È¡¢±¥ºÍ¶È¡¢Èñ¶È¡¢É«µ÷ÅäÖÃ*/ + NET_DVR_GAIN struGain;/*×Ô¶¯ÔöÒæ*/ + NET_DVR_WHITEBALANCE struWhiteBalance;/*°×ƽºâ*/ + NET_DVR_EXPOSURE struExposure; /*Æعâ¿ØÖÆ*/ + NET_DVR_GAMMACORRECT struGammaCorrect;/*GammaУÕý*/ + NET_DVR_WDR struWdr;/*¿í¶¯Ì¬*/ + NET_DVR_DAYNIGHT struDayNight;/*ÈÕҹת»»*/ + NET_DVR_BACKLIGHT struBackLight;/*±³¹â²¹³¥*/ + NET_DVR_NOISEREMOVE struNoiseRemove;/*Êý×Ö½µÔë*/ + BYTE byPowerLineFrequencyMode; /*0-50HZ; 1-60HZ*/ + /* + 0-×Ô¶¯¹âȦ, + 1-ÊÖ¶¯¹âȦ, + 2-P-Iris1, + 3-Union 3-9mm F1.6-2.7 (T5280-PQ1) [IPC5.1.7] + 4-Union 2.8-12mm F1.6-2.7 (T5289-PQ1) [IPC5.1.7] + 5-private 3.8-16mm F1.5£¨HV3816P-8MPIR) + 6-private 11-40mm F1.7 (HV1140P-8MPIR) + 7-private 2.7-12mm F1.2£¨TV2712P-MPIR£© + 8- MZ5721D-12MPIR + 9- MZ1555D-12MPIR + 10- MZ5721D-12MPIR(RS485) + 11- MZ1555D-12MPIR(RS485) + */ + BYTE byIrisMode; + BYTE byMirror ; /* ¾µÏñ£º0 off£¬1- leftright£¬2- updown£¬3-center */ + BYTE byDigitalZoom; /*Êý×ÖËõ·Å:0 dsibale 1 enable*/ + BYTE byDeadPixelDetect; /*»µµã¼ì²â,0 dsibale 1 enable*/ + BYTE byBlackPwl;/*ºÚµçƽ²¹³¥ , 0-255*/ + BYTE byEptzGate;// EPTZ¿ª¹Ø±äÁ¿:0-²»ÆôÓõç×ÓÔÆ̨£¬1-ÆôÓõç×ÓÔÆ̨ + BYTE byLocalOutputGate;//±¾µØÊä³ö¿ª¹Ø±äÁ¿0-±¾µØÊä³ö¹Ø±Õ1-±¾µØBNCÊä³ö´ò¿ª 2-HDMIÊä³ö¹Ø±Õ 11-Ëõ·ÅÊä³ö£¬12-²Ã¼ôÊä³ö£¬13-²Ã¼ôËõ·ÅÊä³ö + //20-HDMI_720P50Êä³ö¿ª + //21-HDMI_720P60Êä³ö¿ª + //22-HDMI_1080I60Êä³ö¿ª + //23-HDMI_1080I50Êä³ö¿ª + //24-HDMI_1080P24Êä³ö¿ª + //25-HDMI_1080P25Êä³ö¿ª + //26-HDMI_1080P30Êä³ö¿ª + //27-HDMI_1080P50Êä³ö¿ª + //28-HDMI_1080P60Êä³ö¿ª + //40-SDI_720P50, + //41-SDI_720P60, + //42-SDI_1080I50, + //43-SDI_1080I60, + //44-SDI_1080P24, + //45-SDI_1080P25, + //46-SDI_1080P30, + //47-SDI_1080P50, + //48-SDI_1080P60, + //49-SDI_720P25 + //50-SDI_720P30 + //51-SDI_1080I25 + //52-SDI_1080I30 + //60- YPBPR_720P50 + //61-YPBPR_720P60 + //62-YPBPR_1080I50 + //63-YPBPR_1080I60 + //64-YPBPR_1080P24 + //65-YPBPR_1080P25 + //66-YPBPR_1080P30 + //67-YPBPR_1080P50 + //68-YPBPR_1080P60 + //69-YPBPR_720P25 + //70-YPBPR_720P30 + //71- HDMI_1080PÊä³ö¿ª£¨Ã»ÓоßÌåÖ¡ÂÊ£¬Ö¡ÂÊÓÉÉ豸¼ÓÈëºÍcaptureMode±£³ÖÒ»Ö£© + //72- HDMI_720PÊä³ö¿ª£¨Ã»ÓоßÌåÖ¡ÂÊ£¬Ö¡ÂÊÓÉÉ豸¼ÓÈëºÍcaptureMode±£³ÖÒ»Ö£© + //73- HDMI_2160PÊä³ö¿ª£¨Ã»ÓоßÌåÖ¡ÂÊ£¬Ö¡ÂÊÓÉÉ豸¼ÓÈëºÍcaptureMode±£³ÖÒ»Ö£© + BYTE byCoderOutputMode;//±àÂëÆ÷fpgaÊä³öģʽ0ֱͨ3ÏñËØ°á¼Ò + BYTE byLineCoding; //ÊÇ·ñ¿ªÆôÐбàÂ룺0-·ñ£¬1-ÊÇ + BYTE byDimmerMode; //µ÷¹âģʽ£º0-°ë×Ô¶¯£¬1-×Ô¶¯ + BYTE byPaletteMode; //µ÷É«°å£º0-°×ÈÈ£¬1-ºÚÈÈ£¬2-µ÷É«°å2£¬¡­£¬8-µ÷É«°å8 + BYTE byEnhancedMode; //ÔöÇ¿·½Ê½£¨Ì½²âÎïÌåÖܱߣ©£º0-²»ÔöÇ¿£¬1-1£¬2-2£¬3-3£¬4-4 + BYTE byDynamicContrastEN; //¶¯Ì¬¶Ô±È¶ÈÔöÇ¿ 0-1 + BYTE byDynamicContrast; //¶¯Ì¬¶Ô±È¶È 0-100 + BYTE byJPEGQuality; //JPEGͼÏñÖÊÁ¿ 0-100 + NET_DVR_CMOSMODECFG struCmosModeCfg;//CMOSģʽÏÂÇ°¶Ë²ÎÊýÅäÖ㬾µÍ·Ä£Ê½´ÓÄÜÁ¦¼¯»ñÈ¡ + BYTE byFilterSwitch; //Â˲¨¿ª¹Ø£º0-²»ÆôÓã¬1-ÆôÓà + BYTE byFocusSpeed; //¾µÍ·µ÷½¹Ëٶȣº0-10 + BYTE byAutoCompensationInterval; //¶¨Ê±×Ô¶¯¿ìÃŲ¹³¥£º1-120£¬µ¥Î»£º·ÖÖÓ + BYTE bySceneMode; //³¡¾°Ä£Ê½£º0-ÊÒÍ⣬1-ÊÒÄÚ£¬2-ĬÈÏ£¬3-Èõ¹â +}NET_DVR_CAMERAPARAMCFG, *LPNET_DVR_CAMERAPARAMCFG; + +//͸Îí +typedef struct tagNET_DVR_DEFOGCFG +{ + BYTE byMode; //ģʽ£¬0-²»ÆôÓã¬1-×Ô¶¯Ä£Ê½£¬2-³£¿ªÄ£Ê½ + BYTE byLevel; //µÈ¼¶£¬0-100 + BYTE byRes[6]; +}NET_DVR_DEFOGCFG, *LPNET_DVR_DEFOGCFG; + +//µç×Ó·À¶¶ +typedef struct tagNET_DVR_ELECTRONICSTABILIZATION +{ + BYTE byEnable;//ʹÄÜ 0- ²»ÆôÓã¬1- ÆôÓà + BYTE byLevel; //µÈ¼¶£¬0-100 + BYTE byRes[6]; +}NET_DVR_ELECTRONICSTABILIZATION, *LPNET_DVR_ELECTRONICSTABILIZATION; + +//×ßÀÈģʽ +typedef struct tagNET_DVR_CORRIDOR_MODE_CCD +{ + BYTE byEnableCorridorMode; //ÊÇ·ñÆôÓÃ×ßÀÈģʽ 0¡«²»ÆôÓ㬠1¡«ÆôÓà + BYTE byRes[11]; +}NET_DVR_CORRIDOR_MODE_CCD, *LPNET_DVR_CORRIDOR_MODE_CCD; + +// SMART IR(·À¹ýÆØ)ÅäÖòÎÊý +typedef struct tagNET_DVR_SMARTIR_PARAM +{ + BYTE byMode;//0¡«ÊÖ¶¯£¬1¡«×Ô¶¯ + BYTE byIRDistance;//ºìÍâ¾àÀëµÈ¼¶(µÈ¼¶£¬¾àÀëÕý±ÈÀý)level:1~100 ĬÈÏ:50£¨ÊÖ¶¯Ä£Ê½ÏÂÔö¼Ó£© + BYTE byShortIRDistance;// ½ü¹âµÆ¾àÀëµÈ¼¶(1~100) + BYTE byLongIRDistance;// Ô¶¹âµÆ¾àÀëµÈ¼¶(1~100) +}NET_DVR_SMARTIR_PARAM,*LPNET_DVR_SMARTIR_PARAM; + +//ÔÚbyIrisMode ΪP-Iris1ʱÉúЧ£¬ÅäÖúìÍâ¹âȦ´óСµÈ¼¶£¬ÅäÖÃģʽ +typedef struct tagNET_DVR_PIRIS_PARAM +{ + BYTE byMode;//0-×Ô¶¯£¬1-ÊÖ¶¯ + BYTE byPIrisAperture;//ºìÍâ¹âȦ´óСµÈ¼¶(µÈ¼¶,¹âȦ´óСÕý±ÈÀý)level:1~100 ĬÈÏ:50£¨ÊÖ¶¯Ä£Ê½ÏÂÔö¼Ó£© + BYTE byRes[6]; +}NET_DVR_PIRIS_PARAM,*LPNET_DVR_PIRIS_PARAM; + + +//¼¤¹â²ÎÊýÅäÖà 2014-02-25 +typedef struct tagNET_DVR_LASER_PARAM_CFG +{ + //Length = 16 + BYTE byControlMode; //¿ØÖÆģʽ 0-ÎÞЧ£¬1-×Ô¶¯£¬2-ÊÖ¶¯ ĬÈÏ×Ô¶¯ + BYTE bySensitivity; //¼¤¹âµÆÁéÃô¶È 0-100 ĬÈÏ50 + BYTE byTriggerMode; //¼¤¹âµÆ´¥·¢Ä£Ê½ 0-ÎÞЧ£¬1-»úо´¥·¢£¬2-¹âÃô´¥·¢ ĬÈÏ»úо´¥·¢ + BYTE byBrightness; //¿ØÖÆģʽΪÊÖ¶¯Ä£Ê½ÏÂÓÐЧ£»¼¤¹âµÆÁÁ¶È 0-255 ĬÈÏ100 + BYTE byAngle; //¼¤¹âµÆ½Ç¶È 0-ÎÞЧ£¬·¶Î§1-36 ĬÈÏ12£¬¼¤¹âµÆÕÕÉ䷶ΧΪһ¸öԲȦ£¬µ÷½Ú¼¤¹â½Ç¶ÈÊǵ÷½ÚÕâ¸öÔ²µÄ°ë¾¶µÄ´óС + BYTE byLimitBrightness; //¿ØÖÆģʽΪ×Ô¶¯Ä£Ê½ÏÂÓÐЧ£»¼¤¹âµÆÁÁ¶ÈÏÞÖÆ 0~100 £¨ÐÂÔö£©2014-01-26 + BYTE byEnabled ; //ÊÖ¶¯¿ØÖƼ¤¹âµÆʹÄÜ 0-¹Ø±Õ£¬1-Æô¶¯ + BYTE byIllumination; //¼¤¹âµÆÇ¿¶ÈÅäÖÃ0~100 + BYTE byLightAngle; //²¹¹â½Ç¶È 0~100 + BYTE byRes[7]; //±£Áô +} NET_DVR_LASER_PARAM_CFG, *LPNET_DVR_LASER_PARAM_CFG; + +typedef struct tagNET_DVR_FFC_PARAM +{ + //1-Schedule Mode,2-Temperature Mode, 3-Off + BYTE byMode; + //£¨Ê±¼ä:°´ÄÜÁ¦ÏÔʾ£¬µ¥Î»·ÖÖÓ£¬Ñ¡ÏîÓÐ10,20,30,40,50,60,120,180,240£© + BYTE byRes1; + WORD wCompensateTime; //¶¨Ê±Ä£Ê½ÏÂÉúЧ + BYTE byRes2[4]; +}NET_DVR_FFC_PARAM,*LPNET_DVR_FFC_PARAM; + +typedef struct tagNET_DVR_DDE_PARAM //ÔÚsensorÖÐÍê³É +{ + BYTE byMode;//1-Off,2-Normal Mode,3-Expert Mode + BYTE byNormalLevel;//ÆÕͨģʽµÈ¼¶·¶Î§[1,100]£¬ÆÕͨģʽÏÂÉúЧ + BYTE byExpertLevel;//ר¼ÒģʽµÈ¼¶·¶Î§[1,100]£¬×¨¼ÒģʽÏÂÉúЧ + BYTE byRes[5]; +}NET_DVR_DDE_PARAM,*LPNET_DVR_DDE_PARAM; + +typedef struct tagNET_DVR_AGC_PARAM +{ + BYTE bySceneType;//1-Normal Sence,2-Highlight Sence,3-Manual Sence + BYTE byLightLevel;//ÁÁ¶ÈµÈ¼¶[1,100]£»ÊÖ¶¯Ä£Ê½ÏÂÉúЧ + BYTE byGainLevel; //ÔöÒæµÈ¼¶[1,100]£»ÊÖ¶¯Ä£Ê½ÏÂÉúЧ + BYTE byRes[5]; +}NET_DVR_AGC_PARAM,*LPNET_DVR_AGC_PARAM; + +//×¥ÅÄ»úCCD²ÎÊý ¹²64×Ö½Ú +typedef struct tagNET_DVR_SNAP_CAMERAPARAMCFG +{ + BYTE byWDRMode; // ¿í¶¯Ì¬Ä£Ê½;0~¹Ø±Õ£¬1~Êý×Ö¿í¶¯Ì¬ 2~¿í¶¯Ì¬ + BYTE byWDRType; // ¿í¶¯Ì¬Çл»Ä£Ê½; 0~Ç¿ÖÆÆôÓã¬1~°´Ê±¼äÆôÓã¬2~°´ÁÁ¶ÈÆôÓà + BYTE byWDRLevel; // ¿í¶¯Ì¬µÈ¼¶£¬0~6Ë÷Òý¶ÔÓ¦1-7£¬Ä¬ÈÏË÷Òý2£¨¼´3¼¶£©£» + BYTE byRes1; + NET_DVR_TIME_EX struStartTime; //¿ªÊ¼¿í¶¯Ì¬Ê±¼ä + NET_DVR_TIME_EX struEndTime; //½áÊø¿í¶¯Ì¬Ê±¼ä + BYTE byDayNightBrightness; //ÈÕҹת»»ÁÁ¶ÈãÐÖµ£¬0-100£¬Ä¬ÈÏ50£» + //¼ÇÒäÉ«ÔöÇ¿ + BYTE byMCEEnabled;//¼ÇÒäÉ«ÔöǿʹÄÜ£¬true£º¿ªÆô£¬false£º¹Ø±Õ + BYTE byMCELevel;//¼ÇÒäÉ«ÔöÇ¿Ç¿¶È£¬0~100£¬Ä¬ÈÏÖµ50 + //×Ô¶¯¶Ô±È¶È + BYTE byAutoContrastEnabled;//×Ô¶¯¶Ô±È¶ÈʹÄÜ£¬true£º¿ªÆô£¬false£º¹Ø±Õ + BYTE byAutoContrastLevel;//×Ô¶¯¶Ô±ÈµÈ¼¶£¨0-100£©,ĬÈÏ50 + //ϸ½ÚÔöÇ¿ + BYTE byLSEDetailEnabled;//ϸ½ÚÔöǿʹÄÜ£¬true£º¿ªÆô£¬false£º¹Ø±Õ + BYTE byLSEDetailLevel;//ϸ½ÚÔöÇ¿µÈ¼¶£¨0-100£©,ĬÈÏ50 + // License Plate Definition Enhancement³µÅÆÔöÇ¿ + BYTE byLPDEEnabled;//³µÅÆÔöǿʹÄÜ£¬true£º¿ªÆô£¬false£º¹Ø±Õ + BYTE byLPDELevel;//³µÅÆÔöÇ¿µÈ¼¶£¨0-100£©,ĬÈÏ50 + //¶Ô±È¶ÈÔöÇ¿ + BYTE byLseEnabled; //¶Ô±È¶ÈÔöǿʹÄÜ£¬true£º¿ªÆô£¬false£º¹Ø±Õ + BYTE byLseLevel; //¶Ô±È¶ÈÔöÇ¿µÈ¼¶£¨0-100£©,ĬÈÏ0 + BYTE byLSEHaloLevel;//¹âÔÎÒÖÖƵȼ¶¡£·¶Î§ 0-100,ĬÈÏ0 + BYTE byLseType; //¶Ô±È¶ÈÔöÇ¿Çл»Ä£Ê½; 0~Ç¿ÖÆÆôÓã¬1~°´Ê±¼äÆôÓã¬2~°´ÁÁ¶ÈÆôÓ㨸Ã×ֶοÉͬʱ¿ØÖÆbyLseLevel¡¢byLSEHaloLevelÁ½¸ö²ÎÊý£© + BYTE byRes2[3]; + NET_DVR_TIME_EX struLSEStartTime; //¿ªÊ¼¶Ô±È¶ÈÔöǿʱ¼ä£¨µ±byLseTypeΪ1ʱÉúЧ£© + NET_DVR_TIME_EX struLSEEndTime; //½áÊø¶Ô±È¶ÈÔöǿʱ¼ä£¨µ±byLseTypeΪ1ʱÉúЧ£© + BYTE byLightLevel;//ΪÁÁ¶ÈµÈ¼¶²ÎÊý£¨0-100£©,ĬÈÏ0£¬£¨µ±byLseTypeΪ2ʱÉúЧ£© + //³µÅÆ¶Ô±È¶È + BYTE byPlateContrastLevel;//³µÅƶԱȶȵȼ¶£¬0~100£¬Ä¬ÈÏ0 + //³µÅƱ¥ºÍ¶È + BYTE byPlateSaturationLevel;//³µÅƱ¥ºÍ¶ÈµÈ¼¶£¬0~100£¬Ä¬ÈÏ0 + BYTE byRes[9]; +} NET_DVR_SNAP_CAMERAPARAMCFG,*LPNET_DVR_SNAP_CAMERAPARAMCFG; + +//¹âѧ͸Îí²ÎÊý +typedef struct tagNET_DVR_OPTICAL_DEHAZE +{ + BYTE byEnable; //0~²»ÆôÓùâѧ͸Îí£¬1~ÆôÓùâѧ͸Îí + BYTE byRes[7]; +} NET_DVR_OPTICAL_DEHAZE, *LPNET_DVR_OPTICAL_DEHAZE; + +//²âÎÂAGCÉèÖ㬵±²âÎÂAGCģʽΪÎÞЧʱ£¬ÒÔNET_DVR_AGC_PARAMÅäÖòÎÊýΪ׼£¬µ±²âÎÂAGCģʽΪ×Ô¶¯»òÕßÊÖ¶¯Ê±£¬NET_DVR_AGC_PARAMÅäÖòÎÊýÎÞЧ +typedef struct tagNET_DVR_THERMOMETRY_AGC +{ + BYTE byMode;//AGCģʽ£¬0~ÎÞЧ£¬1~×Ô¶¯£¬2~ÊÖ¶¯ + BYTE byRes1[3]; + int iHighTemperature;//×î¸ßζȣ¬·¶Î§Îª£º-273~9999ÉãÊ϶ȣ¨1~ÊÖ¶¯Ä£Ê½ÏÂÉúЧ£© + int iLowTemperature;//×îµÍζȣ¬·¶Î§Îª£º-273~9999ÉãÊ϶ȣ¨1~ÊÖ¶¯Ä£Ê½ÏÂÉúЧ£© + BYTE byRes[8]; +}NET_DVR_THERMOMETRY_AGC, *LPNET_DVR_THERMOMETRY_AGC; + +//Ç°¶Ë²ÎÊýÅäÖà +typedef struct tagNET_DVR_CAMERAPARAMCFG_EX +{ + DWORD dwSize; + NET_DVR_VIDEOEFFECT struVideoEffect;/*ÁÁ¶È¡¢¶Ô±È¶È¡¢±¥ºÍ¶È¡¢Èñ¶È¡¢É«µ÷ÅäÖÃ*/ + NET_DVR_GAIN struGain;/*×Ô¶¯ÔöÒæ*/ + NET_DVR_WHITEBALANCE struWhiteBalance;/*°×ƽºâ*/ + NET_DVR_EXPOSURE struExposure; /*Æعâ¿ØÖÆ*/ + NET_DVR_GAMMACORRECT struGammaCorrect;/*GammaУÕý*/ + NET_DVR_WDR struWdr;/*¿í¶¯Ì¬*/ + NET_DVR_DAYNIGHT struDayNight;/*ÈÕҹת»»*/ + NET_DVR_BACKLIGHT struBackLight;/*±³¹â²¹³¥*/ + NET_DVR_NOISEREMOVE struNoiseRemove;/*Êý×Ö½µÔë*/ + BYTE byPowerLineFrequencyMode; /*0-50HZ; 1-60HZ*/ + /* + 0-×Ô¶¯¹âȦ, + 1-ÊÖ¶¯¹âȦ, + 2-P-Iris1, + 3-Union 3-9mm F1.6-2.7 (T5280-PQ1) [IPC5.1.7] + 4-Union 2.8-12mm F1.6-2.7 (T5289-PQ1) [IPC5.1.7] + 5-private 3.8-16mm F1.5£¨HV3816P-8MPIR) + 6-private 11-40mm F1.7 (HV1140P-8MPIR) + 7-private 2.7-12mm F1.2£¨TV2712P-MPIR£© + 8- MZ5721D-12MPIR + 9- MZ1555D-12MPIR + 10- MZ5721D-12MPIR(RS485) + 11- MZ1555D-12MPIR(RS485) + */ + BYTE byIrisMode; + BYTE byMirror ; /* ¾µÏñ£º0 off£¬1- leftright£¬2- updown£¬3-center 4-Auto*/ + BYTE byDigitalZoom; /*Êý×ÖËõ·Å:0 dsibale 1 enable*/ + BYTE byDeadPixelDetect; /*»µµã¼ì²â,0 dsibale 1 enable*/ + BYTE byBlackPwl;/*ºÚµçƽ²¹³¥ , 0-255*/ + BYTE byEptzGate;// EPTZ¿ª¹Ø±äÁ¿:0-²»ÆôÓõç×ÓÔÆ̨£¬1-ÆôÓõç×ÓÔÆ̨ + BYTE byLocalOutputGate;//±¾µØÊä³ö¿ª¹Ø±äÁ¿0-±¾µØÊä³ö¹Ø±Õ1-±¾µØBNCÊä³ö´ò¿ª 2-HDMIÊä³ö¹Ø±Õ + //20-HDMI_720P50Êä³ö¿ª + //21-HDMI_720P60Êä³ö¿ª + //22-HDMI_1080I60Êä³ö¿ª + //23-HDMI_1080I50Êä³ö¿ª + //24-HDMI_1080P24Êä³ö¿ª + //25-HDMI_1080P25Êä³ö¿ª + //26-HDMI_1080P30Êä³ö¿ª + //27-HDMI_1080P50Êä³ö¿ª + //28-HDMI_1080P60Êä³ö¿ª + BYTE byCoderOutputMode;//±àÂëÆ÷fpgaÊä³öģʽ0ֱͨ3ÏñËØ°á¼Ò + BYTE byLineCoding; //ÊÇ·ñ¿ªÆôÐбàÂ룺0-·ñ£¬1-ÊÇ + BYTE byDimmerMode; //µ÷¹âģʽ£º0-°ë×Ô¶¯£¬1-×Ô¶¯ + BYTE byPaletteMode; //µ÷É«°å£º0-°×ÈÈ£¬1-ºÚÈÈ£¬2-µ÷É«°å2£¬¡­£¬8-µ÷É«°å8, 9-ÈÚºÏ1,10-²Êºç,11-ÈÚºÏ2,12-Ìúºì1,13-Ìúºì2,14-ÉîºÖÉ«,15-É«²Ê1,16-É«²Ê2,17-±ù»ð,18-Óê,19-ºìÈÈ,20-ÂÌÈÈ,21-ÉîÀ¶£¬22-É«²Ê3 + BYTE byEnhancedMode; //ÔöÇ¿·½Ê½£¨Ì½²âÎïÌåÖܱߣ©£º0-²»ÔöÇ¿£¬1-1£¬2-2£¬3-3£¬4-4 + BYTE byDynamicContrastEN; //¶¯Ì¬¶Ô±È¶ÈÔöÇ¿ 0-1 + BYTE byDynamicContrast; //¶¯Ì¬¶Ô±È¶È 0-100 + BYTE byJPEGQuality; //JPEGͼÏñÖÊÁ¿ 0-100 + NET_DVR_CMOSMODECFG struCmosModeCfg;//CMOSģʽÏÂÇ°¶Ë²ÎÊýÅäÖ㬾µÍ·Ä£Ê½´ÓÄÜÁ¦¼¯»ñÈ¡ + BYTE byFilterSwitch; //Â˲¨¿ª¹Ø£º0-²»ÆôÓã¬1-ÆôÓà + BYTE byFocusSpeed; //¾µÍ·µ÷½¹Ëٶȣº0-10 + BYTE byAutoCompensationInterval; //¶¨Ê±×Ô¶¯¿ìÃŲ¹³¥£º1-120£¬µ¥Î»£º·ÖÖÓ + BYTE bySceneMode; //³¡¾°Ä£Ê½£º0-ÊÒÍ⣬1-ÊÒÄÚ£¬2-ĬÈÏ£¬3-Èõ¹â + NET_DVR_DEFOGCFG struDefogCfg;//͸Îí²ÎÊý + NET_DVR_ELECTRONICSTABILIZATION struElectronicStabilization;//µç×Ó·À¶¶ + NET_DVR_CORRIDOR_MODE_CCD struCorridorMode;//×ßÀÈģʽ + BYTE byExposureSegmentEnable; //0~²»ÆôÓÃ,1~ÆôÓà Æعâʱ¼äºÍÔöÒæ³Ê½×ÌÝ×´µ÷Õû£¬±ÈÈçÆعâÍùÉϵ÷Õûʱ£¬ÏÈÌá¸ßÆعâʱ¼äµ½ÖмäÖµ£¬È»ºóÌá¸ßÔöÒæµ½ÖмäÖµ£¬ÔÙÌá¸ßÆع⵽×î´óÖµ£¬×îºóÌá¸ßÔöÒæµ½×î´óÖµ + BYTE byBrightCompensate;//ÁÁ¶ÈÔöÇ¿ [0~100] + /* + 0-¹Ø±Õ¡¢1-640*480@25fps¡¢2-640*480@30ps¡¢3-704*576@25fps¡¢4-704*480@30fps¡¢5-1280*720@25fps¡¢6-1280*720@30fps¡¢ + 7-1280*720@50fps¡¢8-1280*720@60fps¡¢9-1280*960@15fps¡¢10-1280*960@25fps¡¢11-1280*960@30fps¡¢ + 12-1280*1024@25fps¡¢13--1280*1024@30fps¡¢14-1600*900@15fps¡¢15-1600*1200@15fps¡¢16-1920*1080@15fps¡¢ + 17-1920*1080@25fps¡¢18-1920*1080@30fps¡¢19-1920*1080@50fps¡¢20-1920*1080@60fps¡¢21-2048*1536@15fps¡¢22-2048*1536@20fps¡¢ + 23-2048*1536@24fps¡¢24-2048*1536@25fps¡¢25-2048*1536@30fps¡¢26-2560*2048@25fps¡¢27-2560*2048@30fps¡¢ + 28-2560*1920@7.5fps¡¢29-3072*2048@25fps¡¢30-3072*2048@30fps¡¢31-2048*1536@12.5¡¢32-2560*1920@6.25¡¢ + 33-1600*1200@25¡¢34-1600*1200@30¡¢35-1600*1200@12.5¡¢36-1600*900@12.5¡¢37-1280*960@12.5fps¡¢38-800*600@25fps¡¢39-800*600@30fps40¡¢ + 4000*3000@12.5fps¡¢41-4000*3000@15fps¡¢42-4096*2160@20fps¡¢43-3840*2160@20fps ¡¢44-960*576@25fps¡¢45-960*480@30fps¡¢46-752*582@25fps¡¢ + 47-768*494@30fps¡¢48-2560*1440@25fps¡¢49-2560*1440@30fps ¡¢50-720P@100fps¡¢51-720P@120fps¡¢52-2048*1536@50fps¡¢53-2048*1536@60fps¡¢ + 54-3840*2160@25fps¡¢55-3840*2160@30fps¡¢56-4096*2160@25fps¡¢57-4096*2160@30fps ¡¢58-1280*1024@50fps¡¢59-1280*1024@60fps¡¢ + 60-3072*2048@50fps¡¢61-3072*2048@60fps¡¢62-3072*1728@25fps¡¢63-3072*1728@30fps¡¢64-3072*1728@50fps¡¢65-3072*1728@60fps¡¢66-336*256@50fps¡¢67-336*256@60fps¡¢ + 68-384*288@50fps¡¢69-384*288@60fps ¡¢70- 640 * 512@50fps ¡¢71- 640 * 512@60fps¡¢72-2592*1944@25fps¡¢73-2592*1944@30fps¡¢74-2688*1536@25fps¡¢75-2688*1536@30fps + 76-2592*1944@20fps¡¢77-2592*1944@15fps¡¢78-2688*1520@20fps¡¢79-2688*1520@15fps¡¢80-2688*1520@25fps¡¢81-2688*1520@30fps¡¢82- 2720*2048@25fps¡¢ 83- 2720*2048@30fps¡¢ + 84-336*256@25fps¡¢85- 384*288@25fps¡¢86-640*512@25fps¡¢87-1280*960@50fps¡¢88-1280*960@60fps¡¢89-1280*960@100fps¡¢90-1280*960@120fps¡¢91-4000*3000@20fps¡¢ + 92-1920*1200@25fps¡¢93-1920*1200@30fps¡¢94-2560*1920@25fps¡¢95-2560*1920@20fps¡¢96-2560*1920@30fps¡¢97-1280*1920@25fps¡¢98-1280*1920@30fps + 99-4000*3000@24fps¡¢100-4000*3000@25fps¡¢101-4000*3000@10fps¡¢102- 384*288@30fps¡¢103-2560*1920@15fps¡¢104-2400*3840@25fps¡¢105-1200*1920@25fps + 106-4096*1800@30fps¡¢107-3840*1680@30fps¡¢108-2560*1120@30fps¡¢109-704*320@30fps¡¢110-1280*560@30fps¡¢111-4096*1800@25fps¡¢112-3840*1680@25fps + 113-2560*1120@25fps¡¢114-704*320@25fps¡¢115-1280*560@25fps¡¢116-2400*3840@24fps¡¢117-3840*2400@24fps¡¢118-3840*2400@25fps¡¢119-2560*1920@12.5fps + 120-2560*2048@12fps¡¢121-2560*2048@15fps¡¢122-2560*1536@25fps¡¢123-2560*1536@30fps¡¢124-2256*2048@25fps¡¢125-2256*2048@30fps¡¢126-2592*2592@12.5fps¡¢127-2592*2592@15fps¡¢ + 128 - 640*512@30fps¡¢129-2048*1520@30fps¡¢130-2048*1520@25fps¡¢131-3840*2160@24fps¡¢132-2592*1520@25fps¡¢133-2592*1520@30fps¡¢134-2592*1536@25fps¡¢135-2592*1536@30fps + 136-640*960@25fps¡¢137-640*960@24fps¡¢139-3840*1080@25fps¡¢140-3840*1080@30fps¡¢142-2992*2192@25fps¡¢143-2992*2192@30fps¡¢144-3008*2160@25fps¡¢145-3008*2160@30fps¡¢ + 146-3072*1728@20fps¡¢147-2560*1440@20fps¡¢148-2160*3840@25fps¡¢149-2160*3840@30fps¡¢150-7008*1080@25fps¡¢151-7008*1080@30fps¡¢152-3072*2048@20fps¡¢153-1536*864@25fps¡¢ + 154-2560*1920@24fps¡¢155-2400*3840@30fps¡¢156-3840*2400@30fps¡¢157-3840*2160@15fps¡¢ + 158-384*288@8.3fps¡¢159-640*512@8.3fps¡¢160-160*120@8.3fps¡¢161-1024*768@8.3fps¡¢162-640*480@8.3fps¡¢163-3840*2160@12.5fps¡¢164-2304*1296@30fps¡¢165-2304*1296@25fps¡¢ + 166-2560*1440@24fps¡¢167-2688*1512@25fps¡¢168-2688*1512@30fps¡¢169-2688*1512@50fps¡¢170-2688*1512@60fps¡¢171-1536*864@30fps¡¢172-2560*1440@50fps¡¢173-2560*1440@60fps¡¢ + 174-2048*2048@25fps¡¢175-2048*2048@30fps¡¢176-4000*3060@20fps¡¢177-3060*3060@25fps¡¢178-3060*3060@30fps¡¢179-3000*3000@25fps¡¢180-3000*3000@30fps¡¢181-8160*3616@30fps¡¢ + 182-8160*3616@25fps¡¢183-3000*3000@20fps¡¢184-3000*3000@15fps¡¢185-3000*3000@12.5fps¡¢186-5472*3648@25fps¡¢187-5472*3648@30fps¡¢188-7680*4320@25fps¡¢189-7680*4320@30fps¡¢ + 190-8160*2400@25fps¡¢191-8160*2400@30fps¡¢192-5520*2400@25fps¡¢193-5520*2400@30fps¡¢194-2560*1440@15fps¡¢195-1944*1212@24fps¡¢196-1944*1212@25fps¡¢197-3456*1920@30fps¡¢ + 198-4800*2688@25fps¡¢199-4800*2688@30fps¡¢200-6480*1080@25fps¡¢201-6480*1080@30fps¡¢202-8640*1440@25fps¡¢203-8640*1440@30fps¡¢204-3456*1920@25fps¡¢205-2688*1520@50fps¡¢ + 206-2688*1520@60fps¡¢207-4976*1452@25fps¡¢208-4976*1452@30fps¡¢ 209-3200*1800@25fps¡¢210-3200*1800@30fps¡¢211-5472*3648@24fps¡¢212-1920*1080@12.5fps¡¢213-2944*1656@20fps¡¢ + 214-1920*1080@24fps¡¢215-4800*1600@25fps¡¢216-4800*1600@30fps¡¢217-2560*1440@12.5fps¡¢218-6560*3690@1fps¡¢219-5120*1400@20fps¡¢220-7680*4320@1fps¡¢221-1920*1080@20fps + 222-5120*1440@20fps¡¢223-4080*1808@25fps¡¢224-4080*1808@30fps¡¢225-4080*1152@25fps¡¢226-4080*1152@30fps¡¢227-2688*1944@20fps¡¢228-2592*1944@24fps¡¢229-3200*1800@15fps¡¢ + 230-4416*1696@20fps¡¢231-3456*1080@25fps¡¢232-3200*1800@12.5fps¡¢233-2688*1532@25fps¡¢234-2688*1532@30fps¡¢235-4416*1696@12.5fps¡¢236-3840*2048P12.5fps¡¢237-3840*4096P12.5fps¡¢ + 238-5120*1440@12.5fps¡¢239-3840*1080@24fps¡¢240-320*256@30fps¡¢241-3264*2448@25fps¡¢242-3264*2448@30fps¡¢243-5430*3054@1fps¡¢244-2688*1520@24@24fps¡¢245-4000*3000@30fps¡¢ + 246-1632*1224@25fps¡¢247-1632*1224@30fps¡¢248-160*120@25fps¡¢249-1920*1440@25fps¡¢250-1920*1440@30fps¡¢-3632*1632@20fps¡¢252-3040*1368@25fps¡¢253-3040*1368@24fps¡¢ + 254-5120*1440@25fps¡¢255-³¬³ö×ֶαíʾ·¶Î§ + É豸ÊäÈëģʽË÷Òý³¬¹ý255ʱ£º + 1£©»ñȡʱ£¬¸Ã×Ö¶ÎֵΪ255£¨ÎÞ¾ßÌ庬Ò壬ÓÃÓÚ±íʾʵ¼ÊÊäÈëģʽË÷ÒýÖµ³¬¹ý255£©£¬Êµ¼ÊÓÉwCaptureModeN¡¢wCaptureModeP±íʾ£» + 2£©ÉèÖÃʱ£¬¸ÃÖµÈÔÐèÒªÉèÖÃΪ255£¬Êµ¼ÊÓÉwCaptureModeN¡¢wCaptureModeP±íʾ¡£ + É豸ÊäÈëģʽË÷ÒýСÓÚ255ʱ£º + 1£©»ñȡʱ£¬¸Ã×Ö¶ÎֵΪʵ¼ÊÊäÈëģʽֵ£¬wCaptureModeN¡¢wCaptureModePÖµÎÞÐè´¦Àí£» + 2£©ÉèÖÃʱ¸Ã×Ö¶ÎΪʵ¼ÊÊäÈëģʽֵ£¬wCaptureModeN¡¢wCaptureModePÖµ±£³Ö²»±ä + */ + BYTE byCaptureModeN; //ÊÓƵÊäÈëģʽ£¨NÖÆ£© + BYTE byCaptureModeP; //ÊÓƵÊäÈëģʽ£¨PÖÆ£© + NET_DVR_SMARTIR_PARAM struSmartIRParam; //ºìÍâ·Å¹ý±¬ÅäÖÃÐÅÏ¢ + NET_DVR_PIRIS_PARAM struPIrisParam;//PIrisÅäÖÃÐÅÏ¢¶ÔÓ¦byIrisMode×ֶδÓ2-PIris1¿ªÊ¼ÉúЧ + //2014-02-25 ÐÂÔö²ÎÊý + NET_DVR_LASER_PARAM_CFG struLaserParam; //¼¤¹â²ÎÊý + NET_DVR_FFC_PARAM struFFCParam; + NET_DVR_DDE_PARAM struDDEParam; + NET_DVR_AGC_PARAM struAGCParam; + BYTE byLensDistortionCorrection;//¾µÍ·»û±äУÕý 0-¹Ø±Õ,1-¿ªÆô + BYTE byDistortionCorrectionLevel;//»û±äУÕýµÈ¼¶£º0-±£Áô£»1-µÈ¼¶Ò»£»2-µÈ¼¶¶þ£»3-µÈ¼¶Èý;255-×Ô¶¨Òå + BYTE byCalibrationAccurateLevel;// »û±äУÕýÇ¿¶È[0-100] + BYTE byZoomedInDistantViewLevel;//Ô¶¶Ë·Å´óµÈ¼¶[0-100] + NET_DVR_SNAP_CAMERAPARAMCFG struSnapCCD ; //×¥ÅÄ»úCCD²ÎÊý£¬Ö»ÓÃÓÚ×¥ÅÄ»ú + NET_DVR_OPTICAL_DEHAZE struOpticalDehaze;//¹âѧ͸Îí²ÎÊý + NET_DVR_THERMOMETRY_AGC struThermAGC;//²âÎÂAGCÅäÖà + BYTE byFusionMode;//Ë«¹âÆ×ÊÓƵÈÚºÏģʽ£¬0~ÈȳÉÏñģʽ£¬1~ÈÚºÏģʽ£¬2~»­Öл­Ä£Ê½,3~¿É¼û¹âģʽ, 4~ÈںϺڰ×ģʽ, 5~ÈںϲÊɫģʽ-²ÝµØ£¬6~ÈںϲÊɫģʽ-»ÄµØ£¬7~ÈںϲÊɫģʽ-Ñ©µØ£¬8~ÈںϲÊɫģʽ-º£Ñó£¬9~ÈںϲÊɫģʽ-³ÇÊÐ + BYTE byHorizontalFOV;//ˮƽÊÓ³¡½Ç[0-100] + BYTE byVerticalFOV;//´¹Ö±ÊÓ³¡½Ç[0-100] + BYTE byBrightnessSuddenChangeSuppression;//ÁÁ¶ÈÍ»±äÒÖÖÆ0-¹Ø±Õ,1-¿ªÆô + BYTE byGPSEnabled;//GPS¿ª¹ØʹÄÜ£¬0-¹Ø£¬1-¿ª + BYTE byRes; + /* + 256-160*120@50fps¡¢257-3200*1800@20fps¡¢258-800*480@25fps¡¢259-2688*1944@25fps¡¢260-640*384@50fps¡¢261-8000*6000@1fps¡¢262-1440*1080@50fps¡¢263-1440*1080@60fps, + 264-8160*3616@24fps¡¢265-3632*1632@25fps¡¢266-3632*1632@30fps¡¢267-3632*1632@20fps¡¢268-1760*1320@25fps¡¢269-4000*3000@4fps¡¢270-192*256@25fps¡¢271-720*576@25fps¡¢ + 272-720x576@30fps¡¢273-960*432@25fps¡¢274-960*432@30fps¡¢275-1200*536@25fps¡¢276-1200*536@30fps¡¢277-1760*1320@12.5fps¡¢278-2560*480@25fps¡¢279-2048*384@25fps¡¢ + 280-96*96@25fps¡¢281-320*256@25fps,282-6128*1800@25fps,283-6128*1800@30fps*/ + WORD wCaptureModeN; //ÊÓƵÊäÈëģʽ£¨NÖÆ£©£¬µ±Ä£Ê½Ë÷ÒýСÓÚ255ʱ£¬ÓëbyCaptureModeN±£³ÖÒ»Ö£¬´óÓÚ255ʱÒÔ¸Ã×ֶηµ»ØË÷ÒýÖµÅжϡ£ + WORD wCaptureModeP; //ÊÓƵÊäÈëģʽ£¨PÖÆ£©£¬µ±Ä£Ê½Ë÷ÒýСÓÚ255ʱ£¬ÓëbyCaptureModeN±£³ÖÒ»Ö£¬´óÓÚ255ʱÒÔ¸Ã×ֶηµ»ØË÷ÒýÖµÅÐ¶Ï + BYTE byRes2[150]; +}NET_DVR_CAMERAPARAMCFG_EX, *LPNET_DVR_CAMERAPARAMCFG_EX; + +typedef struct tagNET_DVR_FOCUSING_POSITION_STATE +{ + DWORD dwSize; + BYTE byState;//¾Û½¹µ½Î»×´Ì¬²ÎÊý 0-²»µ½Î»£¬1-µ½Î» + BYTE byRes[31]; +}NET_DVR_FOCUSING_POSITION_STATE, *LPNET_DVR_FOCUSING_POSITION_STATE; + +typedef enum _VCA_PLATE_COLOR_ +{ + VCA_BLUE_PLATE = 0, //À¶É«³µÅÆ + VCA_YELLOW_PLATE, //»ÆÉ«³µÅÆ + VCA_WHITE_PLATE, //°×É«³µÅÆ + VCA_BLACK_PLATE, //ºÚÉ«³µÅÆ + VCA_GREEN_PLATE, //ÂÌÉ«³µÅÆ + VCA_BKAIR_PLATE, //Ãñº½ºÚÉ«³µÅÆ + VCA_RED_PLATE, //ºìÉ«³µÅÆ + VCA_ORANGE_PLATE, //³ÈÉ«³µÅÆ + VCA_BROWN_PLATE = 8, //×ØÉ«³µÅÆ + VCA_OTHER = 0xff //ÆäËû +}VCA_PLATE_COLOR; + +//³µÅÆÀàÐÍ +typedef enum _VCA_PLATE_TYPE_ +{ + VCA_STANDARD92_PLATE = 0, //±ê×¼ÃñÓóµÓë¾ü³µ + VCA_STANDARD02_PLATE, //02ʽÃñÓóµÅÆ + VCA_WJPOLICE_PLATE, //Î侯³µ + VCA_JINGCHE_PLATE, //¾¯³µ + STANDARD92_BACK_PLATE, //ÃñÓóµË«ÐÐβÅÆ + VCA_SHIGUAN_PLATE, //ʹ¹Ý³µÅÆ + VCA_NONGYONG_PLATE, //Å©Óóµ + VCA_MOTO_PLATE, //ĦÍгµ + NEW_ENERGY_PLATE, //ÐÂÄÜÔ´³µÅÆ + VCA_CONSULATE_PLATE = 9, //ÁìʹݳµÅÆ + VCA_EMERGENCY_PLATE = 10, //Ó¦¼±³µÅÆ + //2017-05-18 Ôö¼Ó Öж«µØÇø³µÅÆÀàÐÍ + TRANSPORT_PLATE = 0x20, //ÔËÊä³µ + COMMERCIAL_PLATE, //ÉÌÓóµ + PRIVATE_PLATE, //˽¼Ò³µ + LEARNING_PLATE, //½ÌÁ·³µ + CD_PLATE, //ʹ¹Ý³µ + CC_PLATE, //ʹ¹Ý³µ + ARMY_PLATE, //¾ü³µ + PROTOCOL_PLATE, //PROTOCOL + GOVERNMENT_PLATE, //Õþ¸®³µ + EXPORT_PLATE, //EXPORT + TAXI_PLATE, //³ö×â³µ + TESTING_PLATE, //TESTING + TRANSFER_PLATE, //TRANSFER + TRUCK_PLATE, //»õ³µ + BUS_PLATE, //¹«½»³µ + PUBLIC_PLATE, //PUBLIC + PUB_TRANS_PLATE, //PUBLIC TRANSFER + PRI_TRANS_PLATE, //PRIVATE TRANSPORT + TUMBREL_PLATE, //¶þÂÖ³µ + HONG_KONG_MACAO_PLATE, //¸Û°ÄÈë³ö³µ + UNKNOWN_PLATE = 0xff, //δ֪£¨Î´Ê¶±ð£© +}VCA_PLATE_TYPE; + +//³µÐÍʶ±ð½á¹û +typedef enum _VTR_RESULT +{ + VTR_RESULT_OTHER = 0, //δ֪ + VTR_RESULT_BUS = 1, //¿Í³µ + VTR_RESULT_TRUCK = 2, //»õ³µ + VTR_RESULT_CAR = 3, //½Î³µ + VTR_RESULT_MINIBUS = 4, //Ãæ°ü³µ + VTR_RESULT_SMALLTRUCK = 5, //С»õ³µ + VTR_RESULT_HUMAN = 6, //ÐÐÈË + VTR_RESULT_TUMBREL = 7, //¶þÂÖ³µ + VTR_RESULT_TRIKE = 8, //ÈýÂÖ³µ + VTR_RESULT_SUV_MPV = 9, //SUV/MPV + VTR_RESULT_MEDIUM_BUS = 10, //ÖÐÐͿͳµ + VTR_RESULT_MOTOR_VEHICLE = 11, //»ú¶¯³µ + VTR_RESULT_NON_MOTOR_VEHICLE = 12, //·Ç»ú¶¯³µ + VTR_RESULT_SMALLCAR = 13, //СÐͽγµ + VTR_RESULT_MICROCAR = 14, //΢Ðͽγµ + VTR_RESULT_PICKUP = 15, //Ƥ¿¨³µ + VTR_RESULT_CONTAINER_TRUCK = 16, // ¼¯×°Ï俨³µ + VTR_RESULT_MINI_TRUCK = 17, // ΢¿¨£¬À¸°å¿¨ + VTR_RESULT_SLAG_CAR = 18, // ÔüÍÁ³µ + VTR_RESULT_CRANE = 19, // µõ³µ£¬¹¤³Ì³µ + VTR_RESULT_OIL_TANK_TRUCK = 20, // Ó͹޳µ + VTR_RESULT_CONCRETE_MIXER = 21, // »ìÄýÍÁ½Á°è³µ + VTR_RESULT_PLATFORM_TRAILER = 22, // ƽ°åÍϳµ + VTR_RESULT_HATCHBACK = 23, // Á½Ïá½Î³µ + VTR_RESULT_SALOON = 24, // ÈýÏá½Î³µ + VTR_RESULT_SPORT_SEDAN = 25, // ½ÎÅÜ + VTR_RESULT_SMALL_BUS = 26 //СÐͿͳµ +}VTR_RESULT; + + +//³µÉíÑÕÉ« +typedef enum _VCR_CLR_CLASS +{ + VCR_CLR_UNSUPPORT = 0, //²»Ö§³Ö + VCR_CLR_WHITE = 1, //°× + VCR_CLR_SILVER = 2, //Òø + VCR_CLR_GRAY = 3, //»Ò + VCR_CLR_BLACK = 4, //ºÚ + VCR_CLR_RED = 5, //ºì + VCR_CLR_DARKBLUE = 6, //ÉîÀ¶ + VCR_CLR_BLUE = 7, //À¶ + VCR_CLR_YELLOW = 8, //»Æ + VCR_CLR_GREEN = 9, //ÂÌ + VCR_CLR_BROWN = 10, //×Ø + VCR_CLR_PINK = 11, //·Û + VCR_CLR_PURPLE = 12, //×Ï + VCR_CLR_DARKGRAY = 13, //Éî»Ò + VCR_CLR_CYAN = 14 //ÇàÉ« +}VCR_CLR_CLASS; + +//³µÁ¾²Ù×÷ÀàÐÍ 2013-11-04 +typedef enum _VCA_OPERATE_TYPE_ +{ + VCA_LICENSE_TYPE = 0x1, //³µÅƺÅÂë + VCA_PLATECOLOR_TYPE = 0x2, //³µÅÆÑÕÉ« + VCA_CARDNO_TYPE = 0x4, //¿¨ºÅ + VCA_PLATETYPE_TYPE = 0x8, //³µÅÆÀàÐÍ + VCA_LISTTYPE_TYPE = 0x10, //³µÁ¾Ãûµ¥ÀàÐÍ + VCA_INDEX_TYPE = 0x20, //Êý¾ÝÁ÷Ë®ºÅ 2014-02-25 + VCA_OPERATE_INDEX_TYPE = 0x40 //²Ù×÷Êý 2014-03-03 +}VCA_OPERATE_TYPE; + +typedef enum _VCA_ILLEGAL_TYPE_ +{ + VCA_POSTPIC_TYPE = 0x1, //¿¨¿ÚͼƬ + VCA_LOWSPEED_TYPE = 0x2, //µÍËÙ + VCA_HIGHSPEED_TYPE = 0x4, //¸ßËÙ + VCA_RETROGRADE_TYPE = 0x8, //ÄæÐÐ + VCA_RUSH_REDLIGHT_TYPE = 0x10, //´³ºìµÆ + VCA_PRESS_LANE_TYPE = 0x20, //ѹ³µµÀÏß + VCA_VIOLATE_GUIDE_TYPE = 0x40,//²»°´µ¼Ïò + VCA_ROAD_STRAND_TYPE = 0x80,//·¿ÚÖÍÁô(É豸²»Ö§³Ö) + VCA_VEHICLE_ILLEGAL_LANE_TYPE = 0x100,//»úÕ¼·Ç + VCA_ILLEGAL_LANE_CHANGE_TYPE = 0x200,//Î¥·¨±äµÀ + VCA_ILLEGAL_LANE_DRIVE_TYPE = 0x400,//²»°´³µµÀ + VCA_VIOLATE_BAN_TYPE = 0x800,//Î¥·¨½ûÁî + VCA_CROSS_PARKING_TYPE = 0x1000,//·¿ÚÍ£³µ + VCA_GREEN_PARKING_TYPE = 0x2000//Â̵ÆÍ£³µ +}VCA_ILLEGAL_TYPE; + +typedef enum _VCA_VEHICLE_TYPE_ +{ + VCA_OTHER_TYPE = 0x1, //ÆäËü³µÐÍ + VCA_SMALLCAR_TYPE = 0x2, //СÐͳµ + VCA_BIGCAR_TYPE = 0x4, //´óÐͳµ + VCA_BUS_TYPE = 0x8, //¿Í³µ + VCA_TRUCK_TYPE = 0x10, //»õ³µ + VCA_CAR_TYPE = 0x20, //½Î³µ + VCA_MINIBUS_TYPE = 0x40, //Ãæ°ü³µ + VCA_SMALL_TRUCK_TYPE = 0x80 //С»õ³µ +}VCA_VEHICLE_TYPE; + +//³µÁ¾Æ·ÅÆÖ÷ÀàÐÍ +typedef enum _VLR_VEHICLE_CLASS +{ + VLR_OTHER = 0, //ÆäËü + VLR_VOLKSWAGEN = 1, //´óÖÚ + VLR_BUICK = 2, //±ð¿Ë + VLR_BMW = 3, //±¦Âí + VLR_HONDA = 4, //±¾Ìï + VLR_PEUGEOT = 5, //±êÖ + VLR_TOYOTA = 6, //·áÌï + VLR_FORD = 7, //¸£ÌØ + VLR_NISSAN = 8, //ÈÕ²ú + VLR_AUDI = 9, //°ÂµÏ + VLR_MAZDA = 10, //Âí×Ô´ï + VLR_CHEVROLET = 11, //Ñ©·ðÀ¼ + VLR_CITROEN = 12, //Ñ©ÌúÁú + VLR_HYUNDAI = 13, //ÏÖ´ú + VLR_CHERY = 14, //ÆæÈð + VLR_KIA = 15, //ÆðÑÇ + VLR_ROEWE = 16, //ÈÙÍþ + VLR_MITSUBISHI = 17, //ÈýÁâ + VLR_SKODA = 18, //˹¿Â´ï + VLR_GEELY = 19, //¼ªÀû + VLR_ZHONGHUA = 20, //Öлª + VLR_VOLVO = 21, //ÎÖ¶ûÎÖ + VLR_LEXUS = 22, //À׿ËÈø˹ + VLR_FIAT = 23, //·ÆÑÇÌØ + VLR_EMGRAND = 24, //µÛºÀ(¼ªÀû) + VLR_DONGFENG = 25, //¶«·ç + VLR_BYD = 26, //±ÈÑÇµÏ + VLR_SUZUKI = 27, //Áåľ + VLR_JINBEI = 28, //½ð±­ + VLR_HAIMA = 29, //º£Âí + VLR_SGMW = 30, //ÎåÁâ + VLR_JAC = 31, //½­»´ + VLR_SUBARU = 32, //˹°Í³ + VLR_ENGLON = 33, //Ó¢Â×(¼ªÀû) + VLR_GREATWALL = 34, //³¤³Ç + VLR_HAFEI = 35, //¹þ·É + VLR_ISUZU = 36, //ÎåÊ®Áå(ÇìÁå) + VLR_SOUEAST = 37, //¶«ÄÏ + VLR_CHANA = 38, //³¤°² + VLR_FOTON = 39, //¸£Ìï + VLR_XIALI = 40, //ÏÄÀû(Ò»Æû) + VLR_BENZ = 41, //±¼³Û + VLR_FAW = 42, //Ò»Æû + VLR_NAVECO = 43, //ÒÀά¿Â + VLR_LIFAN = 44, //Á¦·« + VLR_BESTURN = 45, //Ò»Æû±¼ÌÚ(Ò»Æû) + VLR_CROWN = 46, //»Ê¹Ú(·áÌï) + VLR_RENAULT = 47, //À×ŵ + VLR_JMC = 48, //JMC(½­Áå) + VLR_MG = 49, //MGÃû¾ô + VLR_KAMA = 50, //¿­Âí + VLR_ZOTYE = 51, //ÖÚÌ© + VLR_CHANGHE = 52, //²ýºÓ + VLR_XMKINGLONG = 53, //ÏÃÃŽðÁú(½ðÂÃ) + VLR_HUIZHONG = 54, //ÉϺ£»ãÖÚ(ÉÏÆû¼¯ÍÅ) + VLR_SZKINGLONG = 55, //ËÕÖݽðÁú + VLR_HIGER = 56, //º£¸ñ + VLR_YUTONG = 57, //Óîͨ + VLR_CNHTC = 58, //ÖйúÖØÆû + VLR_BEIBEN = 59, //±±±¼ÖØ¿¨ + VLR_XINGMA = 60, //»ªÁâÐÇÂí + VLR_YUEJIN = 61, //Ô¾½ø + VLR_HUANGHAI = 62, //»Æº£ + VLR_OLDWALL = 63, //ÀϿ³Ç + VLR_CHANACOMMERCIAL = 64, //³¤°²ÉÌÓà + VLR_PORSCHE = 65, // ±£Ê±½Ý + VLR_CADILLAC = 66, // ¿­µÏÀ­¿Ë + VLR_INFINITI = 67, // Ó¢·ÆÄáµÏ + VLR_GLEAGLE = 68, // ¼ªÀûÈ«ÇòÓ¥(¼ªÀû) + VLR_JEEP = 69, // JEEP(¼ªÆÕ) + VLR_LANDROVER = 70, // ·»¢ + VLR_CHANGFENG = 71, // ³¤·á + VLR_BENNI = 72, // ³¤°²±¼±¼(³¤°²) + VLR_ERA = 73, // ¸£Ìïʱ´ú(ʱ´ú) + VLR_TAURUS = 74, // ³¤°²½ðÅ£ÐÇ(³¤°²ÉÌÓÃ) + VLR_EADO = 75, // ³¤°²Òݶ¯ + VLR_SHANQI = 76, // ÉÂÆû + VLR_HONGYAN = 77, // ºìÑÒÆû³µ(ÉÏÆûÒÀά¿ÂºìÑÒ) + VLR_DRAGON = 78, // °ÔÁúÆû³µ(¶«·çÁøÆû) + VLR_JACTEXT = 79, // ½­»´JAC (½­»´) + VLR_JACBUS = 80, // ½­»´ÏÖ´ú¿Í³µ (½­»´) + VLR_ANKAI = 81, // °²¿­¿Í³µ + VLR_SHENLONG = 82, // ÉêÁú¿Í³µ + VLR_DAEWOO = 83, // ´óÓî¿Í³µ + VLR_WUZHENG = 84, // ÎåÕ÷Æû³µ + VLR_MAN = 85, // MANÆû³µ + VLR_ZHONGTONG = 86, // ÖÐͨ¿Í³µ + VLR_BAOJUN = 87, // ±¦¿¥ + VLR_BQWEIWANG = 88, // ±±ÆûÍþÍú + VLR_TRUMPCHE = 89, // ´«ì÷ + VLR_LUFENG = 90, // ½·ç + VLR_HMZHENGZHOU = 91, // º£ÂíÖ£ÖÝ + VLR_BEIJING = 92, // ±±¾©Æû³µ + VLR_ZHONGSHUN = 93, // ÖÐ˳ + VLR_WEILIN = 94, // Íþ÷ëÆû³µ + VLR_OPEL = 95, // Å·±¦ + VLR_KARRY = 96, // ¿ªÈð + VLR_SMA = 97, // »ªÆÕÆû³µ + VLR_SMATEXT = 98, // »ªÆÕÆû³µÎÄ×ÖSMA + VLR_YUWIN = 99, // ½­ÁåԦʤ + VLR_MINI = 100, // ±¦ÂíMINI + VLR_MARK = 101, // ·áÌïMARKX + VLR_HAVAL = 102, // ¹þ¸¥HAVAL + VLR_OGA = 103, // Ú©¸è + VLR_VENUCIA = 104, // Æô³½ + VLR_BYD2 = 105, // ±ÈÑǵÏÑùʽ2 (±ÈÑǵÏ) + VLR_SMART = 106, // ±¼³ÛSMART + VLR_BAW = 107, // ±±¾©Æû³µÖÆÔ쳧BAW + VLR_LUXGEN = 108, // ÄÉÖÇ½Ý + VLR_YEMA = 109, // Ò°Âí + VLR_ZTE = 110, // ÖÐÐË + VLR_EVERUS = 111, // ÀíÄî + VLR_CHRYSLER = 112, // ¿ËÀ³Ë¹ÀÕ + VLR_GONOW = 113, // ¼ª°ÂÆû³µ + VLR_SHJIANG = 114, // ËÉ»¨½­ + VLR_RUILIN = 115, // Èð÷ë + VLR_FORTA = 116, // ¸£´ï + VLR_GAGUAR = 117, // ½Ý±ª + VLR_HEIBAO = 118, // ºÚ±ª + VLR_TKING = 119, // ÌÆ¿¥ + VLR_TKINGTEXT = 120, // ÌÆ¿¥ÎÄ×Ö + VLR_FODAY = 121, // ¸£µÏ + VLR_LOTUS = 122, // Á«»¨Æû³µ + VLR_NANJUN = 123, // ÄÏ¿¥ + VLR_SHUANGHUAN = 124, // Ë«»·Æû³µ + VLR_SAIBAO = 125, // ¹þ·ÉÈü±ª + VLR_HAWTAI = 126, // »ªÌ© + VLR_LIFO = 127, // ÓÀÔ´·Éµú + VLR_JONWAY = 128, // ÓÀÔ´Æû³µ + VLR_FULONGMA = 129, // ¸£ÁúÂí + VLR_WEILI = 130, // ΫÁ¦ + VLR_ANCHI = 131, // ½­»´°²³Û + VLR_PAIXI = 132, // ÅÉϲ + VLR_HIGERTEXT = 133, // º£¸ñHIGERÎÄ×Ö + VLR_RIYECAR = 134, // ¹ãÆûÈÕÒ°ÇῨ + VLR_RIYETRUCK = 135, // ¹ãÆûÈÕÒ°ÖØ¿¨ + VLR_JIANGNAN = 136, // ½­ÄÏ + VLR_OLDZOTYE = 137, // ÀÏ¿îÖÚÌ© + VLR_OLDXIALI = 138, // ÀÏ¿îÏÄÀû + VLR_NEWAOCHI = 139, // ÐÂ°Â³Û + VLR_CDW = 140, // ÍõÅÆÖØÆû + VLR_CDWTEXT = 141, // ÍõÅÆÖØÆûÎÄ×Ö + VLR_CIIMO = 142, // ±¾Ìï˼Ãú + VLR_CHANADS = 143, // ³¤°²Úа¬ÊË + VLR_DS = 144, // µÀÆæ + VLR_ROHENS = 145, // ÏÖ´úÀͶ÷˹¿áÅÉ + VLR_YANTAI = 146, // Ñą̀ + VLR_SHUANGLONG = 147, // Ë«Áú + VLR_FENGLING = 148, // ʱ´ú·çÁâ + VLR_XINKAI = 149, // п­ + VLR_GMC = 150, // GMC + VLR_DATONG = 151, // ÉÏÆû´óͨ + VLR_BQYINXIANG = 152, // ±±ÆûÒøÏè + VLR_NEWCHERY = 153, // ÐÂÆæÈð + VLR_MUDAN = 154, // ĵµ¤ + VLR_DAYUN = 155, // ´óÔËÆû³µ + VLR_DONGWO = 156, // ¶«ÎÖÆû³µ + VLR_UNION = 157, // ÁªºÏÆû³µ + VLR_CHUNZHOU = 158, // ´ºÖ޿ͳµ + VLR_SANY = 159, // ÈýÒ»Öع¤ + VLR_YAXING = 160, // ÑÇÐǿͳµ + VLR_HENGTONG = 161, // ºãͨ¿Í³µ + VLR_SHAOLIN = 162, // ÉÙÁֿͳµ + VLR_YOUNG = 163, // ÇàÄê¿Í³µ + VLR_STOM = 164, // ʮͨ + VLR_SANHUAN = 165, // Èý»· + VLR_XUGONG = 166, // Ð칤 + VLR_BEIFANG = 167, // ±±·½Æû³µ + VLR_JIANGHUAN = 168, // ½­»·»õ³µ + VLR_BJFARM = 169, // ±±¾©Å©Óà + VLR_NEWDADI = 170, // дóµØÆû³µ + VLR_SUNWIN = 171, // ÉêÎֿͳµ + VLR_YINGTIAN = 172, // Ó¢Ìï + VLR_QINGQI = 173, // ÇáÆï + VLR_CHUFENG = 174, // ³þ·çÆû³µ + VLR_SCANIA = 175, // ˹¿°ÄáÑÇ + VLR_JIULONG = 176, // ¾ÅÁú¿Í³µ + VLR_YOUYI = 177, // ÓÑÒê¿Í³µ + VLR_SHANGRAO = 178, // ÉÏÈĿͳµ + VLR_JIJIANG = 179, // ¼ª½­ + VLR_YANGZI = 180, // Ñï×ӿͳµ + VLR_XIWO = 181, // Î÷Îֿͳµ + VLR_CHANGJIANG = 182, // ³¤½­¿Í³µ + VLR_WUYI = 183, // ÎäÒÄ + VLR_CHENGDU = 184, // ³É¶¼¿Í³µ + VLR_TIANMA = 185, // ÌìÂí + VLR_BAOLONG = 186, // ±¦Áú + VLR_NEWYATU = 187, // ÐÂÑÅ; + VLR_BARUI = 188, // ÆðÑÇ°ÔÈñ + VLR_GUANZHI = 189, // ¹ÛÖ + VLR_XIYATE = 190, // Î÷ÑÅÌØ + VLR_BINLI = 191, // ±öÀû + VLR_DADI = 192, // ´óµÏ + VLR_FUQI = 193, // ¸»Ææ + VLR_HANGTIAN = 194, // º½ÌìÆû³µ + VLR_HENGTIAN = 195, // ºãÌìÆû³µ + VLR_JMCCAR = 196, // ½­ÁåÇáÆû + VLR_KAERSEN = 197, // ¿¨¶ûÉ­Æû³µ + VLR_KAWEI = 198, // ¿¨ÍþÆû³µ + VLR_LANBOJINI = 199, // À¼²©»ùÄá + VLR_MASHALADI = 200, // ÂêɯÀ­µÙ + VLR_SHUCHI = 201, // Êæ³Û¿Í³µ + VLR_SHILI = 202, // ʵÁ¦¿Í³µ + VLR_HUABEI = 203, // Öпͻª±± + VLR_YIZHENG = 204, // ÉÏÆûÒÇÕ÷ + VLR_CHUNLAN = 205, // ´ºÀ¼Æû³µ + VLR_DAFA = 206, // ´ó·¢Æû³µ + VLR_SHENYE = 207, // ÉñÒ°Æû³µ + VLR_FALALI = 208, // ·¨À­ÀûÆû³µ + VLR_FUXING = 209, // ¸£ÐÇÆû³µ + VLR_ANYUAN = 210, // °²Ô´¿Í³µ + VLR_JINGHUA = 211, // ¾©»ª¿Í³µ + VLR_TAIHU = 212, // Ì«ºþ¿Í³µ + VLR_WUZHOULONG = 213, // ÎåÖÞÁú + VLR_CHANGLONG = 214, // ³£Â¡¿Í³µ + VLR_YUEXI = 215, // ÔÃÎ÷¿Í³µ + VLR_SHENMA = 216, // ÉñÂí¿Í³µ + VLR_LUSHAN = 217, // ®ɽÅÆ + VLR_WANFENG = 218, // Íò·áÅÆ + VLR_GZYUNBAO = 219, // ¹ãÖÝÔƱª + VLR_ZHONGDA = 220, // ÖдóÆû³µ + VLR_THREEWHEEL = 221, // ÈýÂÖ³µ + VLR_TWOWHEEL = 222, // ¶þÂÖ³µ + VLR_JBC = 223, // ½ð±­JBC + VLR_YZJIANG = 224, // Ñï×Ó½­¿Í³µ + VLR_CNJ = 225, // ÄÏ¿¥CNJ + VLR_FORLAND = 226, // ¸£Ìïʱ´úÎÄ×Ö + VLR_FARMCAR = 227, // Å©Óóµ + VLR_DONGFANGHONG = 228, // ¶«·½ºì + VLR_STEYR = 229, // ˹̫¶ûÆû³µ + VLR_HONGQI = 230, // ºìÆì + VLR_USER1 = 231, //Óû§1 + VLR_USER2 = 232, //Óû§2 + VLR_USER3 = 233, //Óû§3 + VLR_USER4 = 234, //Óû§4 + VLR_USER5 = 235, //Óû§5 + VLR_USER6 = 236, //Óû§6 + VLR_USER7 = 237, //Óû§7 + VLR_USER8 = 238 //Óû§8 +}VLR_VEHICLE_CLASS; + +/********************³µÁ¾Æ·ÅÆ×ÓÀàÐÍBegin*************************/ +//´óÖÚ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_VOLKSWAGEN_CLASS +{ + VSB_VOLKSWAGEN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_VOLKSWAGEN_LAVIDA = 1, // ÀÊÒÝ + VSB_VOLKSWAGEN_CROSSLAVIDA = 2, // Àʾ³ + VSB_VOLKSWAGEN_TIGUAN = 3, // ;¹Û + VSB_VOLKSWAGEN_TOURAN = 4, // ;°² + VSB_VOLKSWAGEN_SANTANA = 5, // É£ËþÄÉ + VSB_VOLKSWAGEN_SANTANA2000 = 6, // É£ËþÄÉ2000 + VSB_VOLKSWAGEN_SANTANA3000 = 7, // É£ËþÄÉ3000 + VSB_VOLKSWAGEN_VISTA = 8, // É£ËþÄÉ-Ö¾¿¡ + VSB_VOLKSWAGEN_PASSAT = 9, // ÅÁÈøÌØ + VSB_VOLKSWAGEN_PASSATLINGYU = 10, // ÅÁÈøÌØ-ÁìÔ¦ + VSB_VOLKSWAGEN_POLO = 11, // ²¨ÂÞ + VSB_VOLKSWAGEN_POLOCROSS = 12, // ²¨ÂÞ-Ô˶¯°æ + VSB_VOLKSWAGEN_POLOGTI = 13, // ²¨ÂÞ-GTI + VSB_VOLKSWAGEN_SAGITAR = 14, // ËÙÌÚ + VSB_VOLKSWAGEN_MAGOTAN = 15, // ÂõÌÚ + VSB_VOLKSWAGEN_JETTA = 16, // ½Ý´ï + VSB_VOLKSWAGEN_BORA = 17, // ±¦À´ + VSB_VOLKSWAGEN_NEWGOLF = 18, // и߶û·ò + VSB_VOLKSWAGEN_GOLFGTI = 19, // ¸ß¶û·ò-GTI + VSB_VOLKSWAGEN_GOL = 20, // ¸ß¶û + VSB_VOLKSWAGEN_CADDY = 21, // ¿ªµÏ + VSB_VOLKSWAGEN_PHAETON = 22, // »ÔÌÚ + VSB_VOLKSWAGEN_TOUREG = 23, // ;Èñ + VSB_VOLKSWAGEN_SCIROCCO = 24, // Éпá + VSB_VOLKSWAGEN_BEETLE = 25, // ¼×¿Ç³æ + VSB_VOLKSWAGEN_SHARAN = 26, // ÏÄÀÊ + VSB_VOLKSWAGEN_MULTIVAN = 27, // ÂõÌØÍþ + VSB_VOLKSWAGEN_CARBONCOPY = 28, // Ò»Æû´óÖÚ-CC + VSB_VOLKSWAGEN_VISTACHANGDA = 29, // É£ËþÄÉÖ¾¿¡-³©´ï + VSB_VOLKSWAGEN_BORASPORTLINE = 30, // ±¦À´-SPORTLINE + VSR_VOLKSWAGEN_CC_1 =31, //´óÖÚ-CC-2012,2011,2010 + VSR_VOLKSWAGEN_Cross_POLO_1 = 32, //´óÖÚ-Cross-POLO-2010,2007 + VSR_VOLKSWAGEN_Cross_POLO_2 = 33, //´óÖÚ-Cross-POLO-2014,2012 + VSR_VOLKSWAGEN_MULTIVAN_1 = 34, //´óÖÚ-Multivan-2014,2012,2011 + VSR_VOLKSWAGEN_POLO_1 = 35, //´óÖÚ-POLO-2006,2005,2004,2003,2002 + VSR_VOLKSWAGEN_POLO_2 = 36, //´óÖÚ-POLO-2013,2012,2011 + VSR_VOLKSWAGEN_POLO_JINQU_1 = 37, //´óÖÚ-POLO¾¢È¡-2009,2008,2007,2006 + VSR_VOLKSWAGEN_POLO_JINQU_2 = 38, //´óÖÚ-POLO¾¢È¡-2011 + VSR_VOLKSWAGEN_Tiguan_1 = 39, //´óÖÚ-Tiguan-2011,2009 + VSR_VOLKSWAGEN_Tiguan_2 = 40, //´óÖÚ-Tiguan-2014,2013,2012 + VSR_VOLKSWAGEN_XIALANG_1 = 41, //´óÖÚ-ÏÄÀÊ-2013,2012 + VSR_VOLKSWAGEN_BAOLAI_1 = 42, //´óÖÚ-±¦À´-2005,2004 + VSR_VOLKSWAGEN_BAOLAI_2 = 43, //´óÖÚ-±¦À´-2006 + VSR_VOLKSWAGEN_BAOLAI_3 = 44, //´óÖÚ-±¦À´-2012,2011,2010,2009,2008 + VSR_VOLKSWAGEN_BAOLAI_4 = 45, //´óÖÚ-±¦À´-2014,2013 + VSR_VOLKSWAGEN_SHANGKU_1 = 46, //´óÖÚ-Éпá-2014,2013 + VSR_VOLKSWAGEN_PASATE_1 = 47, //´óÖÚ-ÅÁÈøÌØ-2003½ø¿Ú,2001ÁìÔ¦ + VSR_VOLKSWAGEN_PASATE_2 = 48, //´óÖÚ-ÅÁÈøÌØ-2007,2006,2005ÁìÔ¦ + VSR_VOLKSWAGEN_PASATE_3 = 49, //´óÖÚ-ÅÁÈøÌØ-2009,2008,2007,2005,2004,2003,2001,2000 + VSR_VOLKSWAGEN_PASATE_4 = 50, //´óÖÚ-ÅÁÈøÌØ-2011,2009ÁìÔ¦ + VSR_VOLKSWAGEN_PASATE_5 = 51, //´óÖÚ-ÅÁÈøÌØ-2014,2013,2012,2011 + VSR_VOLKSWAGEN_JIEDA_1 = 52, //´óÖÚ-½Ý´ï-2005CIF»ï°é,2002 + VSR_VOLKSWAGEN_JIEDA_2 = 53, //´óÖÚ-½Ý´ï-2009,2008,2006,2005,2004 + VSR_VOLKSWAGEN_JIEDA_3 = 54, //´óÖÚ-½Ý´ï-2012,2010 + VSR_VOLKSWAGEN_JIEDA_4 = 55, //´óÖÚ-½Ý´ï-2013 + VSR_VOLKSWAGEN_LANGYI_1 = 56, //´óÖÚ-ÀÊÒÝ-2012,2011,2010,2009,2008 + VSR_VOLKSWAGEN_LANGYI_2 = 57, //´óÖÚ-ÀÊÒÝ-2013 + VSR_VOLKSWAGEN_SANGTANA_1 = 58, //´óÖÚ-É£ËþÄÉ-2007,2002,2000,1999,1995 + VSR_VOLKSWAGEN_SANGTANA_2 = 59, //´óÖÚ-É£ËþÄÉ-2014,2013 + VSR_VOLKSWAGEN_SANGTANA_3 = 60, //´óÖÚ-É£ËþÄÉ2000-2003,2001,2000,1999,1998,1996 + VSR_VOLKSWAGEN_SANGTANA_4 = 61, //´óÖÚ-É£ËþÄÉ3000-2007,2006,2005,2004,2003 + VSR_VOLKSWAGEN_SANGTANAZHIJUN_1 = 62, //´óÖÚ-É£ËþÄÉÖ¾¿¡(vista)-2011,2010,2009,2008 + VSR_VOLKSWAGEN_SANGTANAZHIJUN_2 = 63, //´óÖÚ-É£ËþÄÉÖ¾¿¡(vista)-2006 + VSR_VOLKSWAGEN_JIAKECHONG_1 = 64, //´óÖÚ-¼×¿Ç³æ-2010,2009,2008,2007,2006,2005 + VSR_VOLKSWAGEN_JIAKECHONG_2 = 65, //´óÖÚ-¼×¿Ç³æ-2014,2013 + VSR_VOLKSWAGEN_HUITENG_2 = 66, //´óÖÚ-»ÔÌÚ-2010,2009,2007,2006 + VSR_VOLKSWAGEN_MAITENG_1 = 67, //´óÖÚ-ÂõÌÚ-2011,2010,2009,2008,2007 + VSR_VOLKSWAGEN_MAITENG_2 = 68, //´óÖÚ-ÂõÌÚ-2013,2012 + VSR_VOLKSWAGEN_TUAN_3 = 69, //´óÖÚ-;°²-2006,2005,2004 + VSR_VOLKSWAGEN_TUAN_1 = 70, //´óÖÚ-;°²-2010,2009,2008 + VSR_VOLKSWAGEN_TUAN_2 = 71, //´óÖÚ-;°²-2013,2012,2011 + VSR_VOLKSWAGEN_TUGUAN_1 = 72, //´óÖÚ-;¹Û-2012,2011,2010 + VSR_VOLKSWAGEN_TURUI_1 = 73, //´óÖÚ-;Èñ-2006,2005,2003 + VSR_VOLKSWAGEN_TURUI_2 = 74, //´óÖÚ-;Èñ-2014,2013,2012,2011 + VSR_VOLKSWAGEN_SUTENG_1 = 75, //´óÖÚ-ËÙÌÚ-2010,2009,2007,2006 + VSR_VOLKSWAGEN_SUTENG_2 = 76, //´óÖÚ-ËÙÌÚ-2011 + VSR_VOLKSWAGEN_SUTENG_3 = 77, //´óÖÚ-ËÙÌÚ-2014,2013,2012 + VSR_VOLKSWAGEN_GAOERFU_1 = 78, //´óÖÚ-¸ß¶û·ò-2008,2007,2006,2005,2004,2003 + VSR_VOLKSWAGEN_GAOERFU_2 = 79, //´óÖÚ-¸ß¶û·ò-2012,2011½ø¿Ú,2012,2011,2010 + VSR_VOLKSWAGEN_GAOERFU_3 = 80, //´óÖÚ-¸ß¶û·òGTI-2013,2012,2011,2010 + VSR_VOLKSWAGEN_LANGYI_3 = 81, //´óÖÚ-ÀÊÒÝ-2014 + VSR_VOLKSWAGEN_HUITENG_1 = 82 //´óÖÚ-»ÔÌÚ-2004 +} VSB_VOLKSWAGEN_CLASS; + +//±ð¿Ë×ÓÆ·ÅÆÀàÐÍ +typedef enum _VBR_BUICK_CLASS +{ + VBR_BUICK_OTHER = 0, // ÆäËû£¨±£Áô£© + VBR_BUICK_ENCORE = 1, // °º¿ÆÀ­ + VBR_BUICK_GL8 = 2, // GL8 + VBR_BUICK_LEGAL = 3, // ¾ýÍþ + VBR_BUICK_LACROSS = 4, // ¾ýÔ½ + VBR_BUICK_EXCELLE = 5, // ¿­Ô½ + VBR_BUICK_EXCELLEGT = 6, // Ó¢ÀÊGT + VBR_BUICK_WXCELLEXT = 7, // Ó¢ÀÊXT + VBR_BUICK_ENCLAVE = 8, // °º¿ÆÀ× + VBR_BUICK_ROYAUM = 9, // ÈÙÓù + VBR_BUICK_SAIL = 10, // ±ð¿ËÈüÅ· + VBR_BUICK_EXCELLEHRV = 11, // ¿­Ô½HRV + VBR_BUICK_PARKAVENUE = 12, // ÁÖÒñ´óµÀ + VBR_BUICK_CENTURY = 13, // ÐÂÊÀ¼Í + VBR_BUICK_GL8_1 = 14, // ±ð¿Ë-GL8-2004,2003 + VBR_BUICK_GL8_2 = 15, // ±ð¿Ë-GL8-2007,2006,2005 + VBR_BUICK_GL8_3 = 16, // ±ð¿Ë-GL8-2010_2008_2006_2005½×ð + VBR_BUICK_GL8_4 = 17, // ±ð¿Ë-GL8-2014,2013,2012,2011 + VBR_BUICK_GL8_5 = 18, // ±ð¿Ë-GL8-2014_2013_2011ºÀ»ª°æ + VBR_BUICK_ENCORE_1 = 19, // ±ð¿Ë-°º¿ÆÀ­-2014,2013 + VBR_BUICK_ENCLAVE_1 = 20, // ±ð¿Ë-°º¿ÆÀ×-2013,2010,2009 + VBR_BUICK_LEGAL_1 = 21, // ±ð¿Ë-¾ýÍþ-2001,2000,1999 + VBR_BUICK_LEGAL_2 = 22, // ±ð¿Ë-¾ýÍþ-2008,2006,2005,2004,2002 + VBR_BUICK_LEGAL_3 = 23, // ±ð¿Ë-¾ýÍþ-2013,2012,2011,2010,2009 + VBR_BUICK_LEGAL_4 = 24, // ±ð¿Ë-¾ýÍþ-2013_2012_2011Ô˶¯°æ + VBR_BUICK_LEGAL_5 = 25, // ±ð¿Ë-¾ýÍþ-2014 + VBR_BUICK_LEGAL_6 = 26, // ±ð¿Ë-¾ýÍþ-2014Ô˶¯°æ + VBR_BUICK_LACROSS_1 = 27, // ±ð¿Ë-¾ýÔ½-2008,2007,2006 + VBR_BUICK_LACROSS_2 = 28, // ±ð¿Ë-¾ýÔ½-2012,2011,2010,2009 + VBR_BUICK_LACROSS_3 = 29, // ±ð¿Ë-¾ýÔ½-2013 + VBR_BUICK_EXCELLE_1 = 30, // ±ð¿Ë-¿­Ô½-2006,2005,2004 + VBR_BUICK_EXCELLE_2 = 31, // ±ð¿Ë-¿­Ô½-2008_2006_2005_2004HRV + VBR_BUICK_EXCELLE_3 = 32, // ±ð¿Ë-¿­Ô½-2011,2009,2008 + VBR_BUICK_EXCELLE_4 = 33, // ±ð¿Ë-¿­Ô½-2013 + VBR_BUICK_PARKAVENUE_1 = 34, // ±ð¿Ë-ÁÖÒñ´óµÀ-2011,2010,2009,2008,2007 + VBR_BUICK_SAIL_1 = 35, // ±ð¿Ë-ÈüÅ·-2004,2003 + VBR_BUICK_EXCELLEGT_1 = 36, // ±ð¿Ë-Ó¢ÀÊGT-2013,2012,2011,2010 + VBR_BUICK_WXCELLEXT_1 = 37, // ±ð¿Ë-Ó¢ÀÊXT-2014,2013,2012,2010 + VBR_BUICK_CENTURY_1 = 38, // ±ð¿Ë-ÐÂÊÀ¼Í-2000 + VBR_BUICK_RONGYU_1 = 39 // ±ð¿Ë-ÈÙÓù-2005,2004 +}VBR_BUICK_CLASS; + +//±¦Âí×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BMW_CLASS +{ + VSB_BMW_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BMW_3SERIES = 1, // ±¦Âí3ϵ + VSB_BMW_5SERIES = 2, // ±¦Âí5ϵ + VSB_BMW_X1 = 3, // ±¦ÂíX1 + VSB_BMW_1SERIES = 4, // ±¦Âí1ϵ + VSB_BMW_7SERIES = 5, // ±¦Âí7ϵ + VSB_BMW_X3 = 6, // ±¦ÂíX3 + VSB_BMW_X5 = 7, // ±¦ÂíX5 + VSB_BMW_X6 = 8, // ±¦ÂíX6 + VSB_BMW_Z4 = 9, // ±¦ÂíZ4 + VSB_BMW_MINI = 10, // ÃÔÄã + VSB_BMW_6SERIES = 11, //±¦Âí6ϵ + VSB_BMW_YIXI_1 = 12, // ±¦Âí-1ϵ-2011,2010,2008,2007 + VSB_BMW_YIXI_2 = 13, // ±¦Âí-1ϵ-2013,2012 + VSB_BMW_SANXI_1 = 14, // ±¦Âí-3ϵ-2004 + VSB_BMW_SANXI_2 = 15, // ±¦Âí-3ϵ-2007,2005 + VSB_BMW_SANXI_3 = 16, // ±¦Âí-3ϵ-2012,2011,2010,2009 + VSB_BMW_SANXI_4 = 17, // ±¦Âí-3ϵ-2014,2013 + VSB_BMW_WUXI_1 = 18, // ±¦Âí-5ϵ-2010,2009,2008 + VSB_BMW_WUXI_2 = 19, // ±¦Âí-5ϵ-2013,2012,2011 + VSB_BMW_LIUXI_1 = 20, // ±¦Âí-6ϵ-δ֪ + VSB_BMW_QIXI_1 = 21, // ±¦Âí-7ϵ-2011,2010,2009 + VSB_BMW_QIXI_2 = 22, // ±¦Âí-7ϵ-2013 + VSB_BMW_X1_1 = 23, // ±¦Âí-X1-2012,2010 + VSB_BMW_X1_2 = 24, // ±¦Âí-X1-2014,2013 + VSB_BMW_X3_1 = 25, // ±¦Âí-X3-2009,2008,2006 + VSB_BMW_X3_2 = 26, // ±¦Âí-X3-2013,2012,2011 + VSB_BMW_X5_1 = 27, // ±¦Âí-X5-2010,2009,2008 + VSB_BMW_X5_2 = 28, // ±¦Âí-X5-2013,2012,2011 + VSB_BMW_X5_3 = 29, // ±¦Âí-X5-2013Ô˶¯ÐÍ + VSB_BMW_X6_1 = 30, // ±¦Âí-X6-2013,2012,2011,2009,2008 + VSB_BMW_Z4_1 = 31 // ±¦Âí-Z4-2004 +}VSB_BMW_CLASS; + +//±¾Ìï×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HONDA_CLASS +{ + VSB_HONDA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HONDA_CRV = 1, // ±¾ÌïCR-V(˼Íþ) + VSB_HONDA_JADE = 2, // ½ÜµÂ + VSB_HONDA_CIVIC = 3, // ˼Óò + VSB_HONDA_SPIRIOR = 4, // ˼²¬î£ + VSB_HONDA_CIIMO = 5, // ˼Ãú + VSB_HONDA_ELYSION = 6, // °¬Á¦Éð + VSB_HONDA_OBYSSEY = 7, // °ÂÈüµÂ + VSB_HONDA_FIT = 8, // ·É¶È + VSB_HONDA_NEWCITY = 9, // ·æ·¶ + VSB_HONDA_CROSSTOUR = 10, // ¸èʫͼ + VSB_HONDA_CRIDER = 11, // ÁèÅÉ + VSB_HONDA_ACCORD = 12, // ÑŸó + VSB_HONDA_CITY = 13, // ˼µÏ + VSB_HONDA_ANTILOCK = 14, // °¢¿ÂµÂ + VSB_HONDA_CRZ = 15, // ±¾ÌïCR-Z + VSB_HONDA_CRV_1 = 16, // ±¾Ìï-CR-V-2004 + VSB_HONDA_CRV_2 = 17, // ±¾Ìï-CR-V-2005 + VSB_HONDA_CRV_3 = 18, // ±¾Ìï-CR-V-2008,2007 + VSB_HONDA_CRV_4 = 19, // ±¾Ìï-CR-V-2010 + VSB_HONDA_CRV_5 = 20, // ±¾Ìï-CR-V-2013,2012 + VSB_HONDA_CRIDER_1 = 21, // ±¾Ìï-ÁèÅÉ-2014,2013 + VSB_HONDA_OBYSSEY_1 = 22, // ±¾Ìï-°ÂµÂÈü-2002 + VSB_HONDA_OBYSSEY_2 = 23, // ±¾Ìï-°ÂµÂÈü-2006,2005,2004 + VSB_HONDA_OBYSSEY_3 = 24, // ±¾Ìï-°ÂµÂÈü-2008,2007 + VSB_HONDA_OBYSSEY_4 = 25, // ±¾Ìï-°ÂµÂÈü-2011ºÀ»ª°æ + VSB_HONDA_CIVIC_1 = 26, // ±¾Ìï-˼Óò-2007 + VSB_HONDA_CIVIC_5 = 27, // ±¾Ìï-˼Óò-1996 + VSB_HONDA_CIVIC_2 = 28, // ±¾Ìï-˼Óò-2008,2006 + VSB_HONDA_CIVIC_3 = 29, // ±¾Ìï-˼Óò-2009 + VSB_HONDA_CIVIC_4 = 30, // ±¾Ìï-˼Óò-2013,2012,2011 + VSB_HONDA_CITY_1 = 31, // ±¾Ìï-˼µÏ-2008,2007,2006 + VSB_HONDA_SPIRIOR_1 = 32, // ±¾Ìï-˼²¬î£-2009 + VSB_HONDA_SIMING_1 = 33, // ±¾Ìï-˼Ãú-2012 + VSB_HONDA_JIEDE_1 = 34, // ±¾Ìï-½ÜµÂ-2013 + VSB_HONDA_CROSSTOUR_1 = 35, // ±¾Ìï-¸èʫͼ-2013,2012,2010 + VSB_HONDA_AILISHEN_1 = 36, // ±¾Ìï-°¬Á¦Éð-2012 + VSB_HONDA_NEWCITY_1 = 37, // ±¾Ìï-·æ·¶-2009 + VSB_HONDA_NEWCITY_2 = 38, // ±¾Ìï-·æ·¶-2011 + VSB_HONDA_NEWCITY_3 = 39, // ±¾Ìï-·æ·¶-2014,2012 + VSB_HONDA_ACCORD_1 = 40, // ±¾Ìï-ÑŸó-1996 + VSB_HONDA_ACCORD_2 = 41, // ±¾Ìï-ÑŸó-1999 + VSB_HONDA_ACCORD_3 = 42, // ±¾Ìï-ÑŸó-2001 + VSB_HONDA_ACCORD_4 = 43, // ±¾Ìï-ÑŸó-2003 + VSB_HONDA_ACCORD_5 = 44, // ±¾Ìï-ÑŸó-2008 + VSB_HONDA_ACCORD_6 = 45, // ±¾Ìï-ÑŸó-2010 + VSB_HONDA_ACCORD_7 = 46, // ±¾Ìï-ÑŸó-2011 + VSB_HONDA_ACCORD_8 = 47, // ±¾Ìï-ÑŸó-2012 + VSB_HONDA_ACCORD_9 = 48, // ±¾Ìï-ÑŸó-2013 + VSB_HONDA_ACCORD_10 = 49, // ±¾Ìï-ÑŸó-2014 + VSB_HONDA_FIT_1 = 50, // ±¾Ìï-·É¶È-2004 + VSB_HONDA_FIT_2 = 51, // ±¾Ìï-·É¶È-2004ÈýÏá + VSB_HONDA_FIT_3 = 52, // ±¾Ìï-·É¶È-2005 + VSB_HONDA_FIT_4 = 53, // ±¾Ìï-·É¶È-2007 + VSB_HONDA_FIT_5 = 54, // ±¾Ìï-·É¶È-2008 + VSB_HONDA_FIT_6 = 55 // ±¾Ìï-·É¶È-2013,2011 +}VSB_HONDA_CLASS; + +//±êÖÂ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_PEUGEOT_CLASS +{ + VSB_PEUGEOT_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_PEUGEOT_2008 = 1, // ±êÖÂ2008 + VSB_PEUGEOT_207 = 2, // ±êÖÂ207 + VSB_PEUGEOT_SENNA = 3, // ÈüÄÉ + VSB_PEUGEOT_3008 = 4, // ±êÖÂ3008 + VSB_PEUGEOT_301 = 5, // ±êÖÂ301 + VSB_PEUGEOT_307 = 6, // ±êÖÂ307 + VSB_PEUGEOT_308 = 7, // ±êÖÂ308 + VSB_PEUGEOT_408 = 8, // ±êÖÂ408 + VSB_PEUGEOT_508 = 9, // ±êÖÂ508 + VSB_PEUGEOT_206 = 10, // ±êÖÂ206 + VSB_PEUGEOT_407 = 11, // ±êÖÂ407 + VSB_PEUGEOT_206_1 = 12, // ±êÖÂ-206-δ֪ + VSB_PEUGEOT_207_1 = 13, // ±êÖÂ-207Á½Ïá-2011,2010,2009 + VSB_PEUGEOT_207_2 = 14, // ±êÖÂ-207Á½Ïá-2013 + VSB_PEUGEOT_3008_1 = 15, // ±êÖÂ-3008-2014,2013 + VSB_PEUGEOT_301_1 = 16, // ±êÖÂ-301-δ֪ + VSB_PEUGEOT_307_1 = 17, // ±êÖÂ-307ÈýÏá-2007,2006,2005,2004 + VSB_PEUGEOT_307_2 = 18, // ±êÖÂ-307ÈýÏá-2010,2009,2008 + VSB_PEUGEOT_307_3 = 19, // ±êÖÂ-307Á½Ïá-2013_2012_2011CROSS + VSB_PEUGEOT_308_1 = 20, // ±êÖÂ-308-2014,2013,2012 + VSB_PEUGEOT_407_1 = 21, // ±êÖÂ-407-δ֪ + VSB_PEUGEOT_408_1 = 22, // ±êÖÂ-408-2012,2011,2010 + VSB_PEUGEOT_408_2 = 23, // ±êÖÂ-408-2013 + VSB_PEUGEOT_508_1 = 24, // ±êÖÂ-508-2014,2013,2012,2011 + VSB_PEUGEOT_207_3 = 25, // ±êÖÂ-207ÈýÏá-2011,2010,2009 + VSB_PEUGEOT_307_4 = 26 // ±êÖÂ-307Á½Ïá-2013,2012,2010,2009,2008 + +}VSB_PEUGEOT_CLASS; + +//·áÌï×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_TOYOTA_CLASS +{ + VSB_TOYOTA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_TOYOTA_HIGHLANDER = 1, // ººÀ¼´ï + VSB_TOYOTA_CAMRY = 2, // ¿­ÃÀÈð + VSB_TOYOTA_YARIS = 3, // ÑÅÁ¦Ê¿ + VSB_TOYOTA_YARISL = 4, // YARIS LÖÂìÅ + VSB_TOYOTA_VERSO = 5, // ÒÝÖ + VSB_TOYOTA_HUAGUAN = 6, // »¨¹Ú + VSB_TOYOTA_CROWN = 7, // »Ê¹Ú + VSB_TOYOTA_COROLLA = 8, // ¿¨ÂÞÀ­ + VSB_TOYOTA_COSTER = 9, // ¿Â˹´ï + VSB_TOYOTA_PRADO = 10, // ÆÕÀ­¶à + VSB_TOYOTA_PRIUS = 11, // ÆÕÈñ˹ + VSB_TOYOTA_RAV4 = 12, // ·áÌïRAV4 + VSB_TOYOTA_REZI = 13, // ÈñÖ¾ + VSB_TOYOTA_VIOS = 14, // Íþ³Û + VSB_TOYOTA_PREVIA = 15, // ÆÕÈðάÑÇ + VSB_TOYOTA_HIACE = 16, // º£Ê¨ + VSB_TOYOTA_86 = 17, // ·áÌï86 + VSB_TOYOTA_SPEQUOIA = 18, // ºìɼ + VSB_TOYOTA_LANDCRUISER = 19, // ½µØѲÑó½¢(À¼µÂ¿á·Ôó) + VSB_TOYOTA_SIENNA = 20, // ÈüÄÉ + VSB_TOYOTA_CAMRYHYBRID = 21, // ¿­ÃÀÈð-HYBRID + VSB_TOYOTA_GRACE = 22, // ¸óÈð˹ + VSB_TOYOTA_ALPHARD = 23, // °£¶û·¨ + VSB_TOYOTA_RAV4_1 = 24, // ·áÌï-RAV4-2012ÊÖ¶¯¾­µä°æ,2011,2010,2009 + VSB_TOYOTA_RAV4_2 = 25, // ·áÌï-RAV4-2013 + VSB_TOYOTA_86_1 = 26, // ·áÌï-·áÌï86-δ֪ + VSB_TOYOTA_JIAMEI_2 = 27, // ·áÌï-¼ÑÃÀ-2001,2000,1999,1998 + VSB_TOYOTA_JIAMEI_3 = 28, // ·áÌï-¼ÑÃÀ-2004,2003,2002 + VSB_TOYOTA_LANDEKLZ_1 = 29, // ·áÌï-À¼µÂ¿á·Ôó-2011Öж«°æ,2010,2007 + VSB_TOYOTA_KAIMEIRUI_1 = 30, // ·áÌï-¿­ÃÀÈð-2008,2007,2006 + VSB_TOYOTA_KAIMEIRUI_2 = 31, // ·áÌï-¿­ÃÀÈð-2012×ðÈð + VSB_TOYOTA_KAIMEIRUI_3 = 32, // ·áÌï-¿­ÃÀÈð-2012¾­µä°æ,2011,2010,2009 + VSB_TOYOTA_KAIMEIRUI_4 = 33, // ·áÌï-¿­ÃÀÈð-2013,2012 + VSB_TOYOTA_KAIMEIRUI_5 = 34, // ·áÌï-¿­ÃÀÈð-2013¾­µä°æ + VSB_TOYOTA_KAIMEIRUI_6 = 35, // ·áÌï-¿­ÃÀÈð-2014,2012¿¥Èð + VSB_TOYOTA_KALUOLA_1 = 36, // ·áÌï-¿¨ÂÞÀ­-2010,2009,2008,2007,2006 + VSB_TOYOTA_KALUOLA_2 = 37, // ·áÌï-¿¨ÂÞÀ­-2013,2012,2011 + VSB_TOYOTA_AIERFA_1 = 38, // ·áÌï-°£¶û·¨-2011,2010 + VSB_TOYOTA_AIERFA_2 = 39, // ·áÌï-°£¶û·¨-2013,2012 + VSB_TOYOTA_WEICHI_1 = 40, // ·áÌï-Íþ³Û-2004,2003 + VSB_TOYOTA_WEICHI_2 = 41, // ·áÌï-Íþ³Û-2007,2006,2005 + VSB_TOYOTA_WEICHI_3 = 42, // ·áÌï-Íþ³Û-2009,2008 + VSB_TOYOTA_WEICHI_4 = 43, // ·áÌï-Íþ³Û-2013,2012,2011,2010 + VSB_TOYOTA_WEICHI_5 = 44, // ·áÌï-Íþ³Û-2014 + VSB_TOYOTA_PULADUO_1 = 45, // ·áÌï-ÆÕÀ­¶à-2007,2006,2005,2004 + VSB_TOYOTA_PULADUO_2 = 46, // ·áÌï-ÆÕÀ­¶à-2010 + VSB_TOYOTA_PULADUO_3 = 47, // ·áÌï-ÆÕÀ­¶à-2014 + VSB_TOYOTA_PURUIWEIYA_1 = 48, // ·áÌï-ÆÕÈðάÑÇ-2004 + VSB_TOYOTA_PURUIWEIYA_4 = 49, // ·áÌï-ÆÕÈðάÑÇ-2005 + VSB_TOYOTA_PURUIWEIYA_2 = 50, // ·áÌï-ÆÕÈðάÑÇ-2006 + VSB_TOYOTA_PURUIWEIYA_3 = 51, // ·áÌï-ÆÕÈðάÑÇ-2012,2010,2008,2007 + VSB_TOYOTA_KESIDA_1 = 52, // ·áÌï-¿Â˹´ï-2007 + VSB_TOYOTA_KESIDA_2 = 53, // ·áÌï-¿Â˹´ï-2011 + VSB_TOYOTA_HANLANDA_1 = 54, // ·áÌï-ººÀ¼´ï-2011,2009 + VSB_TOYOTA_HANLANDA_2 = 55, // ·áÌï-ººÀ¼´ï-2012 + VSB_TOYOTA_HANLANDA_3 = 56, // ·áÌï-ººÀ¼´ï-2013 + VSB_TOYOTA_HAISHI_1 = 57, // ·áÌï-º£Ê¨-2001 + VSB_TOYOTA_HUANGGUAN_1 = 58, // ·áÌï-»Ê¹Ú-1999 + VSB_TOYOTA_HUANGGUAN_2 = 59, // ·áÌï-»Ê¹Ú-2009,2008,2007,2006,2005 + VSB_TOYOTA_HUANGGUAN_3 = 60, // ·áÌï-»Ê¹Ú-2010 + VSB_TOYOTA_HUANGGUAN_4 = 61, // ·áÌï-»Ê¹Ú-2012,2011 + VSB_TOYOTA_HONGSHAN_1 = 62, // ·áÌï-ºìɼ-δ֪ + VSB_TOYOTA_HUAGUAN_1 = 63, // ·áÌï-»¨¹Ú-2006,2005,2004 + VSB_TOYOTA_HUAGUAN_2 = 64, // ·áÌï-»¨¹Ú-2009,2008,2007 + VSB_TOYOTA_HUAGUAN_3 = 65, // ·áÌï-»¨¹Ú-2011,2010 + VSB_TOYOTA_YIZHI_1 = 66, // ·áÌï-ÒÝÖÂ-2014,2012,2011 + VSB_TOYOTA_RUIZHI_1 = 67, // ·áÌï-ÈñÖ¾-2006,2005 + VSB_TOYOTA_RUIZHI_2 = 68, // ·áÌï-ÈñÖ¾-2009,2008,2007 + VSB_TOYOTA_RUIZHI_3 = 69, // ·áÌï-ÈñÖ¾-2010·ç¶È°æ + VSB_TOYOTA_RUIZHI_4 = 70, // ·áÌï-ÈñÖ¾-2012,2010 + VSB_TOYOTA_LUDIXUNYANG_1 = 71, // ·áÌï-½µØѲÑó½¢-δ֪ + VSB_TOYOTA_YALISHI_1 = 72, // ·áÌï-ÑÅÁ¦Ê¿-2009,2008,2007 + VSB_TOYOTA_YALISHI_2 = 73, // ·áÌï-ÑÅÁ¦Ê¿-2012,2011,2010 + VSB_TOYOTA_RAV4_3 = 74, // ·áÌï-RAV4-2013¾­µä,¾«Ó¢,×ð³ç,2012 + VSB_TOYOTA_YARiSL_1 = 75, // ·áÌï-YARiS-L + VSB_TOYOTA_JIAMEI_1 = 76, // ·áÌï-¼ÑÃÀ-1996 + VSB_TOYOTA_PLATZ_1 = 77, // ·áÌï-PLATZ-1999 + VSB_TOYOTA_LANDEKLZ_2 = 78 // ·áÌï-À¼µÂ¿á·Ôó-2014,2012Öж«°æ,2012 +}VSB_TOYOTA_CLASS; + +//¸£ÌØ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_FORD_CLASS +{ + VSB_FORD_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_FORD_FOCUS = 1, // ¸£¿Ë˹ + VSB_FORD_FIESTA = 2, // ¼ÎÄ껪 + VSB_FORD_SMAX = 3, // Âó¿Â˹ + VSB_FORD_MONDEO = 4, // ÃɵÏÅ· + VSB_FORD_ECOSPORT = 5, // Òí²© + VSB_FORD_ESCAPE = 6, // Òí»¢ + VSB_FORD_ZHISHENG = 7, // ÖÂʤ + VSB_FORD_ESCORT = 8, // ¸£î£Ë¹ + VSB_FORD_EXPLORER = 9, // ¸£ÌØ̽ÏÕÕß + VSB_FORD_EDGE = 10, // Èñ½ç + VSB_FORD_TRANSIT = 11, // ȫ˳ + VSB_FORD_QUANSHUN_1 = 12, // ¸£ÌØ-ȫ˳-δ֪ + VSB_FORD_JIANIANHUA_1 = 13, // ¸£ÌØ-¼ÎÄ껪ÈýÏá-2006,2005,2004 + VSB_FORD_JIANIANHUA_2 = 14, // ¸£ÌØ-¼ÎÄ껪ÈýÏá-2011,2010,2009 + VSB_FORD_JIANIANHUA_3 = 15, // ¸£ÌØ-¼ÎÄ껪ÈýÏá-2013 + VSB_FORD_JIANIANHUA_4 = 16, // ¸£ÌØ-¼ÎÄ껪Á½Ïá-2012 + VSB_FORD_TANXIANZHE_1 = 17, // ¸£ÌØ-̽ÏÕÕß-2013,2011 + VSB_FORD_FOCUS_1 = 18, // ¸£ÌØ-¸£¿Ë˹ÈýÏá-2005 + VSB_FORD_FOCUS_2 = 19, // ¸£ÌØ-¸£¿Ë˹ÈýÏá-2005¾­µäÐÍ + VSB_FORD_FOCUS_3 = 20, // ¸£ÌØ-¸£¿Ë˹ÈýÏá-2008,2007,2006 + VSB_FORD_FOCUS_4 = 21, // ¸£ÌØ-¸£¿Ë˹ÈýÏá-2013,2012¾­µä,2011,2009 + VSB_FORD_FOCUS_5 = 22, // ¸£ÌØ-¸£¿Ë˹Á½Ïá-2012 + VSB_FORD_FOCUS_6 = 23, // ¸£ÌØ-¸£¿Ë˹Á½Ïá-2012»ù±¾,ʱÉÐ,2011,2010,2009,2008 + VSB_FORD_YIBO_1 = 24, // ¸£ÌØ-Òí²©-2013 + VSB_FORD_YIHU_1 = 25, // ¸£ÌØ-Òí»¢-2013 + VSB_FORD_MENGDIOU_1 = 26, // ¸£ÌØ-ÃɵÏÅ·-2003 + VSB_FORD_MENGDIOU_2 = 27, // ¸£ÌØ-ÃɵÏÅ·-2005,2004 + VSB_FORD_MENGDIOU_3 = 28, // ¸£ÌØ-ÃɵÏÅ·-2006 + VSB_FORD_MENGDIOU_4 = 29, // ¸£ÌØ-ÃɵÏÅ·-2013 + VSB_FORD_MENGDIOU_5 = 30, // ¸£ÌØ-ÃɵÏÅ·-ÖÂʤ-2010,2008,2007 + VSB_FORD_MENGDIOU_6 = 31, // ¸£ÌØ-ÃɵÏÅ·-ÖÂʤ-2011 + VSB_FORD_RUIJIE_1 = 32, // ¸£ÌØ-Èñ½ç-2012,2011 + VSB_FORD_MAIKESI_1 = 33 // ¸£ÌØ-Âó¿Â˹-2008,2007 +}VSB_FORD_CLASS; + +//ÈÕ²ú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_NISSAN_CLASS +{ + VSB_NISSAN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_NISSAN_XTRAIL = 1, // Ææ¿¥ + VSB_NISSAN_MURANO = 2, // Â¥À¼ + VSB_NISSAN_LIVINA = 3, // æêÍþ + VSB_NISSAN_MARCH = 4, // Âê³Û + VSB_NISSAN_TIIDA = 5, // æë´ï + VSB_NISSAN_TEANA = 6, // Ììô¥ + VSB_NISSAN_QASHQAI = 7, // åÐ¿Í + VSB_NISSAN_SYLPHY = 8, // ÐùÒÝ + VSB_NISSAN_SUNNY = 9, // Ñô¹â + VSB_NISSAN_D22PICKUP = 10, // D22Ƥ¿¨ + VSB_NISSAN_D22VAN = 11, // D22Ïáʽ³µ + VSB_NISSAN_CABSTAR = 12, // ¿­ÆÕ˹´ï + VSB_NISSAN_HV200 = 13, // NV200 + VSB_NISSAN_PALADIN = 14, // ÅÁÀ­¶¡ + VSB_NISSAN_YIDA = 15, // Òôï + VSB_NISSAN_DUCK = 16, // ¹«¾ô + VSB_NISSAN_CEFIRO = 17, // ·ç¶È + VSB_NISSAN_FENGSHENBLUEBIRD = 18, // ·çÉñÀ¶Äñ + VSB_NISSAN_FENGSHENSUNNY = 19, // ·çÉñÑô¹â + VSB_NISSAN_SUCCE = 20, // ˧¿Í + VSB_NISSAN_FUGA = 21, // ·çÑÅ + VSB_NISSAN_BLUEBIRD4 = 22, // À¶Äñ4´ú + VSB_NISSAN_VENUCIA = 23, // Æô³½ + VSB_NISSAN_QUEST = 24, // ¹óÊ¿ + VSB_NISSAN_GENISS = 25, // ¿¡ÒÝ + VSB_NISSAN_NV200_1 = 26, // ÈÕ²ú-NV200-2013,2012,2011,2010 + VSB_NISSAN_TIANLAI_1 = 27, // ÈÕ²ú-Ììô¥-2005,2004 + VSB_NISSAN_TIANLAI_2 = 28, // ÈÕ²ú-Ììô¥-2007,2006 + VSB_NISSAN_TIANLAI_3 = 29, // ÈÕ²ú-Ììô¥-2010,2008 + VSB_NISSAN_TIANLAI_4 = 30, // ÈÕ²ú-Ììô¥-2012,2011 + VSB_NISSAN_TIANLAI_5 = 31, // ÈÕ²ú-Ììô¥-2012ÔÆ°²È«°æ,2011¹«¾ô + VSB_NISSAN_TIANLAI_6 = 32, // ÈÕ²ú-Ììô¥-2014,2013 + VSB_NISSAN_QIJUN_1 = 33, // ÈÕ²ú-Ææ¿¥-2010,2008 + VSB_NISSAN_QIJUN_2 = 34, // ÈÕ²ú-Ææ¿¥-2012,2011½ø¿Ú + VSB_NISSAN_PALADING_1 = 35, // ÈÕ²ú-ÅÁÀ­¶¡-2013,2011,2006,2004 + VSB_NISSAN_LOULAN_1 = 36, // ÈÕ²ú-Â¥À¼-2013,2011 + VSB_NISSAN_LOULAN_2 = 37, // ÈÕ²ú-Âê³Û-2010 + VSB_NISSAN_LANNIAO_1 = 38, // ÈÕ²ú-À¶Äñ-2002 + VSB_NISSAN_LANNIAO_2 = 39, // ÈÕ²ú-À¶Äñ-2003 + VSB_NISSAN_LANNIAO_3 = 40, // ÈÕ²ú-À¶Äñ-2004 + VSB_NISSAN_GUISHI_1 = 41, // ÈÕ²ú-¹óÊ¿-2005 + VSB_NISSAN_XUANYI_1 = 42, // ÈÕ²ú-ÐùÒÝ-2006 + VSB_NISSAN_XUANYI_2 = 43, // ÈÕ²ú-ÐùÒÝ-2012¾­µä,2009,2007 + VSB_NISSAN_XUANYI_3 = 44, // ÈÕ²ú-ÐùÒÝ-2014,2012 + VSB_NISSAN_XIAOKE_1 = 45, // ÈÕ²ú-åпÍ-2009,2008 + VSB_NISSAN_XIAOKE_2 = 46, // ÈÕ²ú-åпÍ-2013,2012,2011 + VSB_NISSAN_SUNNY_3 = 47, // ÈÕ²ú-Ñô¹â-2004 + VSB_NISSAN_SUNNY_1 = 48, // ÈÕ²ú-Ñô¹â-2006,2005 + VSB_NISSAN_SUNNY_2 = 49, // ÈÕ²ú-Ñô¹â-2012,2011 + VSB_NISSAN_YIDA_1 = 50, // ÈÕ²ú-Òôï-2008,2006,2005 + VSB_NISSAN_YIDA_2 = 51, // ÈÕ²ú-Òôï-δ֪ + VSB_NISSAN_FENGDU_1 = 52, // ÈÕ²ú-·ç¶È-δ֪ + VSB_NISSAN_FENGYA_1 = 53, // ÈÕ²ú-·çÑÅ-δ֪ + VSB_NISSAN_LIWEI_1 = 54, // ÈÕ²ú-æêÍþ-2008,2007 + VSB_NISSAN_LIWEI_2 = 55, // ÈÕ²ú-æêÍþ-2009 + VSB_NISSAN_LIWEI_3 = 56, // ÈÕ²ú-æêÍþ-2010 + VSB_NISSAN_LIWEI_4 = 57, // ÈÕ²ú-æêÍþ-2011,2010¾¢Èñ,2008ìÅÄÜÐÍ + VSB_NISSAN_JUNYI_1 = 58, // ÈÕ²ú-¿¥ÒÝ-2006 + VSB_NISSAN_QIDA_1 = 59, // ÈÕ²ú-æë´ï-2006,2005 + VSB_NISSAN_QIDA_2 = 60, // ÈÕ²ú-æë´ï-2009,2008 + VSB_NISSAN_QIDA_3 = 61, // ÈÕ²ú-æë´ï-2013,2012,2011 + VSB_NISSAN_RUIQI_1 = 62 // ÈÕ²ú-ÈñæëƤ¿¨-2009ºÀ»ªÐÍ +}VSB_NISSAN_CLASS; + +//°ÂµÏ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_AUDI_CLASS +{ + VSB_AUDI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_AUDI_A3 = 1, // °ÂµÏA3 + VSB_AUDI_A4L = 2, // °ÂµÏA4L + VSB_AUDI_A6L = 3, // °ÂµÏA6L + VSB_AUDI_Q3 = 4, // °ÂµÏQ3 + VSB_AUDI_Q5 = 5, // °ÂµÏQ5 + VSB_AUDI_A1 = 6, // °ÂµÏA1 + VSB_AUDI_A4 = 7, // °ÂµÏA4 + VSB_AUDI_A5 = 8, // °ÂµÏA5 + VSB_AUDI_A6 = 9, // °ÂµÏA6 + VSB_AUDI_A7 = 10, // °ÂµÏA7 + VSB_AUDI_A8L = 11, // °ÂµÏA8L + VSB_AUDI_Q7 = 12, // °ÂµÏQ7 + VSB_AUDI_S5 = 13, // °ÂµÏS5 + VSB_AUDI_TT = 14, // °ÂµÏTT + VSB_AUDI_100 = 15, // °ÂµÏ100 + VSB_AUDI_200 = 16, // °ÂµÏ200 + VSB_AUDI_S7 = 17, // °ÂµÏS7 + VSB_AUDI_S8 = 18, // °ÂµÏS8 + VSB_AUDI_100_1 = 19, // °ÂµÏ-100-δ֪ + VSB_AUDI_200_1 = 20, // °ÂµÏ-200-δ֪ + VSB_AUDI_A1_1 = 21, // °ÂµÏ-A1-2014,2013,2012 + VSB_AUDI_A3_1 = 22, // °ÂµÏ-A3-2013,2010ÊæÊÊ°æ + VSB_AUDI_A3_2 = 23, // °ÂµÏ-A3-2013¼¼ÊõÐÍ,2011,2010 + VSB_AUDI_A4_1 = 24, // °ÂµÏ-A4-2005¹ú²ú,2000½ø¿Ú°æ + VSB_AUDI_A4_2 = 25, // °ÂµÏ-A4-2007,2006¹ú²ú,2004½ø¿Ú + VSB_AUDI_A4L_1 = 26, // °ÂµÏ-A4L-2013 + VSB_AUDI_A5_1 = 27, // °ÂµÏ-A5-2011,2010 + VSB_AUDI_A6_1 = 28, // °ÂµÏ-A6-1996,1995,1991 + VSB_AUDI_A6L_1 = 29, // °ÂµÏ-A6L-2008,2007,2006,2005 + VSB_AUDI_A6L_2 = 30, // °ÂµÏ-A6L-2011,2010,2009 + VSB_AUDI_A6L_3 = 31, // °ÂµÏ-A6L-2014,2013,2012 + VSB_AUDI_A7_1 = 32, // °ÂµÏ-A7-2014,2013½øÈ¡ÐÍ,2012,2011 + VSB_AUDI_A8L_1 = 33, // °ÂµÏ-A8L-2006 + VSB_AUDI_A8L_2 = 34, // °ÂµÏ-A8L-2009,2008 + VSB_AUDI_A8L_3 = 35, // °ÂµÏ-A8L-2011 + VSB_AUDI_A8L_4 = 36, // °ÂµÏ-A8L-2013,2012 + VSB_AUDI_Q3_1 = 37, // °ÂµÏ-Q3-2014,2013,2012 + VSB_AUDI_Q5_1 = 38, // °ÂµÏ-Q5-2012,2010Ô˶¯ + VSB_AUDI_Q5_2 = 39, // °ÂµÏ-Q5-2012ºÀ»ªÐÍ,2010Ô½Ò°°æ + VSB_AUDI_Q5_3 = 40, // °ÂµÏ-Q5-2012½øÈ¡ÐÍ,2011,2010,2009 + VSB_AUDI_Q5_4 = 41, // °ÂµÏ-Q5-2013 + VSB_AUDI_Q7_1 = 42, // °ÂµÏ-Q7-2007 + VSB_AUDI_Q7_2 = 43, // °ÂµÏ-Q7-2014,2013 + VSB_AUDI_S7_1 = 44, // °ÂµÏ-S7-2013 + VSB_AUDI_S8_1 = 45, // °ÂµÏ-S8-2013 + VSB_AUDI_TT_2 = 46, // °ÂµÏ-TT-2010,2008,2007 + VSB_AUDI_TT_3 = 47, // °ÂµÏ-TT-2012,2011 + VSB_AUDI_TT_4 = 48, // °ÂµÏ-TT-2013,2013,2011TTS + VSB_AUDI_TT_1 = 49 // °ÂµÏ-TT-2008TTS +}VSB_AUDI_CLASS; + +//Âí×Ô´ï×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_MAZDA_CLASS +{ + VSB_MAZDA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_MAZDA_CX5 = 1, // Âí×Ô´ïCX5 + VSB_MAZDA_2 = 2, // Âí×Ô´ï2 + VSB_MAZDA_3 = 3, // Âí×Ô´ï3 + VSB_MAZDA_6 = 4, // Âí×Ô´ï6 + VSB_MAZDA_8 = 5, // Âí×Ô´ï8 + VSB_MAZDA_COREWING = 6, // î£Òí + VSB_MAZDA_CX7 = 7, // Âí×Ô´ïCX7 + VSB_MAZDA_X5 = 8, // Âí×Ô´ïX5 + VSB_MAZDA_5 = 9, // Âí×Ô´ï5 + VSB_MAZDA_PREMACY = 10, // ÀÏ¿îÆÕÁ¦Âí + VSB_MAZDA_MPV = 11, // Âí×Ô´ïMPV + VSB_MAZDA_CX5_1 = 12, // Âí×Ô´ï-CX-5-2014,2013,2012½ø¿Ú + VSB_MAZDA_CX7_1 = 13, // Âí×Ô´ï-CX-7-2014,2013,2011,2010 + VSB_MAZDA_2_1 = 14, // Âí×Ô´ï-Mazda2Á½Ïá-2011,2009,2008,2007A + VSB_MAZDA_3_1 = 15, // Âí×Ô´ï-Mazda3ÈýÏá-2004,2002 + VSB_MAZDA_3_2 = 16, // Âí×Ô´ï-Mazda3ÈýÏá-2009,2007 + VSB_MAZDA_3_3 = 17, // Âí×Ô´ï-Mazda3ÈýÏá-2012,2010 + VSB_MAZDA_3_4 = 18, // Âí×Ô´ï-Mazda3ÐdzÒÁ½Ïá-2013,2012 + VSB_MAZDA_5_1 = 19, // Âí×Ô´ï-Mazda5-2010,2008,2007 + VSB_MAZDA_5_2 = 20, // Âí×Ô´ï-Mazda5-2013,2012,2011 + VSB_MAZDA_6_2 = 21, // Âí×Ô´ï-Mazda6-2006 + VSB_MAZDA_6_3 = 22, // Âí×Ô´ï-Mazda6-2007 + VSB_MAZDA_8_1 = 23, // Âí×Ô´ï-Mazda8-2013,2011,2010 + VSB_MAZDA_PREMACY_1 = 24, // Âí×Ô´ï-ÆÕÁ¦Âí-2003 + VSB_MAZDA_PREMACY_2 = 25, // Âí×Ô´ï-ÆÕÁ¦Âí-2006,2005,2004 + VSB_MAZDA_COREWING_1 = 26, // Âí×Ô´ï-î£Òí-2012,2011,2010,2009 + VSB_MAZDA_COREWING_2 = 27, // Âí×Ô´ï-î£Òí½ÎÅÜ-2011,2010 + VSB_MAZDA_COREWING_3 = 28, // Âí×Ô´ï-î£Òí½ÎÅÜ-2012 + VSB_MAZDA_2_2 = 29, // Âí×Ô´ï-Mazda2¾¢Ïè(ÈýÏá)-2011,2010,2008 + VSB_MAZDA_6_1 = 30, // Âí×Ô´ï-Mazda6-2004 + VSB_MAZDA_6_4 = 31 // Âí×Ô´ï-Mazda6-2014,2013,2012,2011,2010 +}VSB_MAZDA_CLASS; + +//Ñ©·ðÀ¼×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CHEVROLET_CLASS +{ + VSB_CHEVROLET_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CHEVROLET_NEWAVEO = 1, // °®Î¨Å· + VSB_CHEVROLET_EPICA = 2, // ¾°³Ì + VSB_CHEVROLET_CRUZE = 3, // ¿Æ³×È + VSB_CHEVROLET_CAPTIVA = 4, // ¿ÆÅÁÆæ + VSB_CHEVROLET_MALIBU = 5, // ÂõÈñ±¦ + VSB_CHEVROLET_SAIL = 6, // ÈüÅ· + VSB_CHEVROLET_CAMARO = 7, // ¿ÆÂõÂÞ + VSB_CHEVROLET_LECHENG = 8, // ÀÖ³É + VSB_CHEVROLET_LOVA = 9, // ÀÖ·ç + VSB_CHEVROLET_OLDAVEO = 10, // ÀÖ³Ò-ÀϿΨŷ + VSB_CHEVROLET_SPARK = 11, // ÀÖ³Û + VSB_CHEVROLET_SAILSRV = 12, // ÈüÅ·SRV + VSB_CHEVROLET_LOVA_1 = 13, // Ñ©·ðÀ¼-ÀÖ·ç-2009,2008,2007,2006 + VSB_CHEVROLET_LOVA_2 = 14, // Ñ©·ðÀ¼-ÀÖ·ç-2010 + VSB_CHEVROLET_SPARK_1 = 15, // Ñ©·ðÀ¼-ÀÖ³Û-2010,2009,2006,2005,2004 + VSB_CHEVROLET_SPARK_2 = 16, // Ñ©·ðÀ¼-ÀÖ³Û-2010Ô˶¯¿î + VSB_CHEVROLET_OLDAVEO_1 = 17, // Ñ©·ðÀ¼-ÀÖ³Ò-2005 + VSB_CHEVROLET_OLDAVEO_2 = 18, // Ñ©·ðÀ¼-ÀÖ³Ò-2010,2009,2008 + VSB_CHEVROLET_EPICA_1 = 19, // Ñ©·ðÀ¼-¾°³Ì-2005 + VSB_CHEVROLET_EPICA_3 = 20, // Ñ©·ðÀ¼-¾°³Ì-2012,2011,2010 + VSB_CHEVROLET_EPICA_4 = 21, // Ñ©·ðÀ¼-¾°³Ì-2012,2011,2010ÖÂÕæ°æ + VSB_CHEVROLET_EPICA_5 = 22, // Ñ©·ðÀ¼-¾°³Ì-2013 + VSB_CHEVROLET_NEWAVEO_1 = 23, // Ñ©·ðÀ¼-°®Î¨Å·ÈýÏá-2013,2012,2011 + VSB_CHEVROLET_CAPTIVA_1 = 24, // Ñ©·ðÀ¼-¿ÆÅÁÆæ-2010,2008 + VSB_CHEVROLET_CAPTIVA_2 = 25, // Ñ©·ðÀ¼-¿ÆÅÁÆæ-2014,2013,2012,2011 + VSB_CHEVROLET_KEMAILUO_1 = 26, // Ñ©·ðÀ¼-¿ÆÂõÂÞ-2012,2011 + VSB_CHEVROLET_CRUZE_1 = 27, // Ñ©·ðÀ¼-¿Æ³×È-2014,2013,2012,2011,2010,2009 + VSB_CHEVROLET_SAIL_1 = 28, // Ñ©·ðÀ¼-ÈüÅ·ÈýÏá-2005 + VSB_CHEVROLET_SAIL_2 = 29, // Ñ©·ðÀ¼-ÈüÅ·ÈýÏá-2013,2011,2010 + VSB_CHEVROLET_MALIBU_1 = 30, // Ñ©·ðÀ¼-ÂõÈñ±¦-2014,2013,2012 + VSB_CHEVROLET_EPICA_2 = 31 // Ñ©·ðÀ¼-¾°³Ì-2009,2008,2007 +}VSB_CHEVROLET_CLASS; + +//Ñ©ÌúÁú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CITROEN_CLASS +{ + VSB_CITROEN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CITROEN_C2 = 1, // Ñ©ÌúÁúC2 + VSB_CITROEN_C4L = 2, // Ñ©ÌúÁúC4L + VSB_CITROEN_C5 = 3, // Ñ©ÌúÁúC5 + VSB_CITROEN_ELYSEE = 4, // °®ÀöÉáÈýÏá + VSB_CITROEN_CQUATRELIANGXIANG = 5, // ÊÀ¼ÎÁ½Ïá + VSB_CITROEN_CQUATRESANXIANG = 6, // ÊÀ¼ÎÈýÏá + VSB_CITROEN_SAEAPICASSO = 7, // ÈøÀ­-±Ï¼ÓË÷ + VSB_CITROEN_PICASSO = 8, // ±Ï¼ÓË÷ + VSB_CITROEN_CTRIOMPHE = 9, // ¿­Ðý + VSB_CITROEN_XSARA = 10, // ÈûÄÉ + VSB_CITROEN_SHENLONGFUKANG = 11, // ÉñÁú¸»¿µ + VSB_CITROEN_CHANGANDS = 12, // ³¤°²DS + VSB_CITROEN_C2_1 = 13, // Ñ©ÌúÁú-C2-2012,2010,2008,2007,2006 + VSB_CITROEN_C4L_1 = 14, // Ñ©ÌúÁú-C4L-2014,2013 + VSB_CITROEN_C4PICASSO_1 = 15, // Ñ©ÌúÁú-C4±Ï¼ÓË÷-2009ÊæÊÊ°æ + VSB_CITROEN_C5_1 = 16, // Ñ©ÌúÁú-C5-2012,2011,2010 + VSB_CITROEN_CQUATRESANXIANG_1 = 17, // Ñ©ÌúÁú-ÊÀ¼ÎÈýÏá-2013,2012 + VSB_CITROEN_CQUATRELIANGXIANG_1 = 18, // Ñ©ÌúÁú-ÊÀ¼ÎÁ½Ïá-2011,2010,2009,2008 + VSB_CITROEN_CTRIOMPHE_1 = 19, // Ñ©ÌúÁú-¿­Ðý-2010,2009,2008,2006 + VSB_CITROEN_FUKANG_1 = 20, // Ñ©ÌúÁú-¸»¿µ-2006,2005,2004,2003,2002 + VSB_CITROEN_ELYSEE_1 = 21, // Ñ©ÌúÁú-°®ÀöÉáÈýÏá-2006,2005,2004,2003,2002 + VSB_CITROEN_ELYSEE_2 = 22, // Ñ©ÌúÁú-°®ÀöÉáÈýÏá-2013,2012,2011,2010,2009,2008,2007 + VSB_CITROEN_SAEAPICASSO_1 = 23 // Ñ©ÌúÁú-ÈøÀ­-±Ï¼ÓË÷-2014 +}VSB_CITROEN_CLASS; + +//ÏÖ´ú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HYUNDAI_CLASS +{ + VSB_HYUNDAI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HYUNDAI_IX35 = 1, // ÏÖ´úIX35 + VSB_HYUNDAI_LANGDONG = 2, // Àʶ¯ + VSB_HYUNDAI_MOINCA = 3, // ÃûÔ¦ + VSB_HYUNDAI_SHENGDA = 4, // ʤ´ï + VSB_HYUNDAI_VERNA = 5, // ÈðÄÉ + VSB_HYUNDAI_RUIYI = 6, // ÈðÞÈ + VSB_HYUNDAI_SONATAEIGHT = 7, // Ë÷ÄÉËþ°Ë + VSB_HYUNDAI_TUCSON = 8, // ;ʤ + VSB_HYUNDAI_YUEDONG = 9, // Ôö¯ + VSB_HYUNDAI_ELANTRA = 10, // ÒÁÀ¼ÌØ + VSB_HYUNDAI_GRANDSANTAFE = 11, // ¸ñÈñ + VSB_HYUNDAI_COUPE = 12, // ¿áÅÉ + VSB_HYUNDAI_MATRIX = 13, // ÃÀ¼Ñ + VSB_HYUNDAI_ACCENT = 14, // ÑÅÉðÌØ + VSB_HYUNDAI_IX30 = 15, // ÏÖ´úIX30 + VSB_HYUNDAI_SONATA = 16, // Ë÷ÄÉËþ + VSB_HYUNDAI_REFINE = 17, // ÏÖ´úÈð·çÉÌÎñ³µ + VSB_HYUNDAI_MISTRA = 18, // Ãûͼ + VSB_HYUNDAI_SONATAYUFENG = 19, // Ë÷ÄÉËþ-ÓùÏè + VSB_HYUNDAI_SANTAFE = 20, // ÏÖ´úÊ¥´ï·Æ + VSB_HYUNDAI_HUIYI = 21, // ½ø¿Ú»ÔÒí + VSB_HYUNDAI_I30_1 = 22, // ÏÖ´ú-i30-2010,2009 + VSB_HYUNDAI_IX35_1 = 23, // ÏÖ´ú-ix35-2012,2011,2010 + VSB_HYUNDAI_YILANTE_1 = 24, // ÏÖ´ú-ÒÁÀ¼ÌØ-2006,2005,2004 + VSB_HYUNDAI_YILANTE_2 = 25, // ÏÖ´ú-ÒÁÀ¼ÌØ-2007ÈýÏá + VSB_HYUNDAI_YILANTE_3 = 26, // ÏÖ´ú-ÒÁÀ¼ÌØ-2011 + VSB_HYUNDAI_SHENGDA_1 = 27, // ÏÖ´ú-È«ÐÂʤ´ï-2013,2012 + VSB_HYUNDAI_MINGTU_1 = 28, // ÏÖ´ú-Ãûͼ-2014,2013 + VSB_HYUNDAI_MINGYU_1 = 29, // ÏÖ´ú-ÃûÔ¦-2013,2011,2009 + VSB_HYUNDAI_SHENGDAFEI_1 = 30, // ÏÖ´ú-Ê¥´ï·Æ-δ֪ + VSB_HYUNDAI_YUXIANG_1 = 31, // ÏÖ´ú-ÓùÏè-2005ÊæÊÊ°æ + VSB_HYUNDAI_YUXIANG_2 = 32, // ÏÖ´ú-ÓùÏè-2006,2005 + VSB_HYUNDAI_YUEDONG_1 = 33, // ÏÖ´ú-Ôö¯-2010,2009,2008 + VSB_HYUNDAI_YUEDONG_2 = 34, // ÏÖ´ú-Ôö¯-2012,2011 + VSB_HYUNDAI_SHENGDA_2 = 35, // ÏÖ´ú-ÐÂʤ´ï-2009,2006 + VSB_HYUNDAI_SHENGDA_3 = 36, // ÏÖ´ú-ÐÂʤ´ï-2012,2011,2010 + VSB_HYUNDAI_LANGDONG_1 = 37, // ÏÖ´ú-Àʶ¯-2013,2012 + VSB_HYUNDAI_GERUI_1 = 38, // ÏÖ´ú-¸ñÈñ-δ֪ + VSB_HYUNDAI_RUIYI_1 = 39, // ÏÖ´ú-ÈðÞÈ-2014 + VSB_HYUNDAI_RUINA_1 = 40, // ÏÖ´ú-ÈðÄÉÈýÏá-2013,2010 + VSB_HYUNDAI_RUINA_2 = 41, // ÏÖ´ú-ÈðÄÉÁ½Ïá-2014,2013,2011 + VSB_HYUNDAI_RUIFENG_1 = 42, // ÏÖ´ú-Èð·ç-δ֪ + VSB_HYUNDAI_SUONATA_1 = 43, // ÏÖ´ú-Ë÷ÄÉËþ-2008,2007,2006,2004,2003±ê×¼ÐÍ + VSB_HYUNDAI_SUONATA_2 = 44, // ÏÖ´ú-Ë÷ÄÉËþ-2010,2009,2008,2006,2004 + VSB_HYUNDAI_SOUNATA_3 = 45, // ÏÖ´ú-Ë÷ÄÉËþ°Ë-2011,2010 + VSB_HYUNDAI_WEILAKESI_1 = 46, // ÏÖ´ú-άÀ­¿Ë˹-2012,2010,2008,2007 + VSB_HYUNDAI_MEIJIA_1 = 47, // ÏÖ´ú-ÃÀ¼Ñ-δ֪ + VSB_HYUNDAI_JINKOUHUIYI_1 = 48, // ÏÖ´ú-½ø¿Ú»ÔÒí-δ֪ + VSB_HYUNDAI_TUSHENG_1 = 49, // ÏÖ´ú-;ʤ-2005 + VSB_HYUNDAI_TUSHENG_2 = 50, // ÏÖ´ú-;ʤ-2011,2009,2008,2006 + VSB_HYUNDAI_TUSHENG_3 = 51, // ÏÖ´ú-;ʤ-2013 + VSB_HYUNDAI_KUPAI_1 = 52, // ÏÖ´ú-¿áÅÉ-δ֪ + VSB_HYUNDAI_YASHENTE_1 = 53, // ÏÖ´ú-ÑÅÉðÌØ-2008,2006 + VSB_HYUNDAI_YASHENTE_2 = 54, // ÏÖ´ú-ÑÅÉðÌØ-2011 + VSB_HYUNDAI_LINGXIANG_1 = 55, // ÏÖ´ú-ÁìÏè-2009,2008 + VSB_HYUNDAI_FEISI_1 = 56 // ÏÖ´ú-·É˼-2011 +}VSB_HYUNDAI_CLASS; + +//ÆæÈð×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CHERY_CLASS +{ + VSB_CHERY_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CHERY_A1 = 1, // ÆæÈðA1 + VSB_CHERY_A3 = 2, // ÆæÈðA3 + VSB_CHERY_EASTAR = 3, // ¶«·½Ö®×Ó + VSB_CHERY_FULWIN = 4, // ·çÔÆ + VSB_CHERY_QQ = 5, // ÆæÈðQQ + VSB_CHERY_E5 = 6, // ÆæÈðE5 + VSB_CHERY_COWIN = 7, // ÆìÔÆ + VSB_CHERY_TIGGO = 8, // È𻢠+ VSB_CHERY_A5 = 9, // ÆæÈðA5 + VSB_CHERY_S16 = 10, // ÆæÈðS16 + VSB_CHERY_YOUYA = 11, // ÓÅÑÅ + VSB_CHERY_V5 = 12, // ÆæÈðV5 + VSB_CHERY_E3 = 13, // ÆæÈðE3 + VSB_CHERY_A1_1 = 14, // ÆæÈð-A1-2011,2008,2007 + VSB_CHERY_A3LIANGXIANG_1 = 15, // ÆæÈð-A3Á½Ïá-2012,2010,2009 + VSB_CHERY_A5_1 = 16, // ÆæÈð-A5-2009,2007,2006 + VSB_CHERY_QQ_1 = 17, // ÆæÈð-QQ-2006,2005,2004 + VSB_CHERY_QQ_2 = 18, // ÆæÈð-QQ-2010,2007,2006 + VSB_CHERY_QQ_3 = 19, // ÆæÈð-QQ-2012,2011,2010,2009,2007 + VSB_CHERY_QQ_4 = 20, // ÆæÈð-QQ-2012Ô˶¯°æ + VSB_CHERY_QQ_5 = 21, // ÆæÈð-QQ-2013 + VSB_CHERY_DONGFANGZHIZI_1 = 22, // ÆæÈð-¶«·½Ö®×Ó-2005,2004,2003 + VSB_CHERY_DONGFANGZHIZI_2 = 23, // ÆæÈð-¶«·½Ö®×Ó-2007,2006 + VSB_CHERY_DONGFANGZHIZI_3 = 24, // ÆæÈð-¶«·½Ö®×ÓCROSS-2009,2008,2007 + VSB_CHERY_YOUYA_1 = 25, // ÆæÈð-ÓÅÑÅ-δ֪ + VSB_CHERY_E3_1 = 26, // ÆæÈð-ÆæÈðE3-2013 + VSB_CHERY_E5_1 = 27, // ÆæÈð-ÆæÈðE5-2014,2012,2011 + VSB_CHERY_QIYUN1_1 = 28, // ÆæÈð-ÆìÔÆ1-2010 + VSB_CHERY_QIYUN1_2 = 29, // ÆæÈð-ÆìÔÆ1-2012 + VSB_CHERY_QIYUN_1 = 30, // ÆæÈð-ÆìÔÆ-2004 + VSB_CHERY_QIYUN_2 = 31, // ÆæÈð-ÆìÔÆ-2009,2008,2007,2006 + VSB_CHERY_QIYUN2_1 = 32, // ÆæÈð-ÆìÔÆ2-2012 + VSB_CHERY_QIYUN2_2 = 33, // ÆæÈð-ÆìÔÆ2-2012ºÀ»ªÐÍ,2010 + VSB_CHERY_QIYUN3_1 = 34, // ÆæÈð-ÆìÔÆ3-2010 + VSB_CHERY_RUIHU_1 = 35, // ÆæÈð-Èð»¢-2007,2006,2005 + VSB_CHERY_RUIHU_2 = 36, // ÆæÈð-Èð»¢-2009,2007 + VSB_CHERY_RUIHU_3 = 37, // ÆæÈð-Èð»¢-2012,2011 + VSB_CHERY_RUIHU_4 = 38, // ÆæÈð-Èð»¢-2013,2012×Ô¶¯DVVTºÀ»ªÐÍ + VSB_CHERY_RUIHU_5 = 39, // ÆæÈð-Èð»¢-2013¾«Ó¢°æºÀ»ªÐÍ,2012¾«Ó¢°æÊæÊÊÐÍ + VSB_CHERY_FENGYUN2SANXIANG_1 = 40, // ÆæÈð-·çÔÆ2ÈýÏá-2010 + VSB_CHERY_AIRUIZE7_1 = 41 // ÆæÈð-°¬ÈðÔó7-2014,2013 +}VSB_CHERY_CLASS; + +//ÆðÑÇ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_KIA_CLASS +{ + VSB_KIA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_KIA_K2 = 1, // ÆðÑÇK2 + VSB_KIA_K3 = 2, // ÆðÑÇK3 + VSB_KIA_K5 = 3, // ÆðÑÇK5 + VSB_KIA_RIO = 4, // ÈñÅ· + VSB_KIA_CERATO = 5, // ÈüÀ­Í¼ + VSB_KIA_SPORTAGER = 6, // ʨÅÜ + VSB_KIA_SOUL = 7, // Ðã¶û + VSB_KIA_ZHIPAO = 8, // ÖÇÅÜ + VSB_KIA_CARENS = 9, // ¼ÑÀÖ + VSB_KIA_CARNIVAL = 10, // ¼Î»ª + VSB_KIA_OPTIMA = 11, // Ô¶½¢ + VSB_KIA_OPIRUS = 12, // Å··ÆÀ³Ë¹ + VSB_KIA_MAXIMA = 13, // ǧÀïÂí + VSB_KIA_FORTE = 14, // ¸£ÈðµÏ + VSB_KIA_SORENTO = 15, // Ë÷À¼ÍÐ + VSB_KIA_K2_1 = 16, // ÆðÑÇ-K2-2013,2012,2011 + VSB_KIA_K3_1 = 17, // ÆðÑÇ-K3-2012 + VSB_KIA_K5_1 = 18, // ÆðÑÇ-K5-2012,2011 + VSB_KIA_RUIOU_1 = 19, // ÆðÑÇ-RIOÈñÅ·-2009,2007 + VSB_KIA_QIANLIMA_1 = 20, // ÆðÑÇ-ǧÀïÂí-2004 + VSB_KIA_QIANLIMA_2 = 21, // ÆðÑÇ-ǧÀïÂí-2006,2005 + VSB_KIA_JIAHUA_1 = 22, // ÆðÑÇ-¼Î»ª-δ֪ + VSB_KIA_XINJIALE_1 = 23, // ÆðÑÇ-мÑÀÖ-2011 + VSB_KIA_ZHIPAO_1 = 24, // ÆðÑÇ-ÖÇÅÜ-2014,2012,2011,2010 + VSB_KIA_SHIPAO_1 = 25, // ÆðÑÇ-ʨÅÜ-2008,2007,2005 + VSB_KIA_SHIPAO_2 = 26, // ÆðÑÇ-ʨÅÜ-2011,2009 + VSB_KIA_SHIPAO_3 = 27, // ÆðÑÇ-ʨÅÜ-2012 + VSB_KIA_SHIPAO_4 = 28, // ÆðÑÇ-ʨÅÜ-2013 + VSB_KIA_FURUIDI_1 = 29, // ÆðÑÇ-¸£ÈðµÏ-2012,2011,2009 + VSB_KIA_FURUIDI_2 = 30, // ÆðÑÇ-¸£ÈðµÏ-2014 + VSB_KIA_XIUER_1 = 31, // ÆðÑÇ-Ðã¶û-2012,2010 + VSB_KIA_SUOLANTUO_1 = 32, // ÆðÑÇ-Ë÷À¼ÍÐ-2006 + VSB_KIA_SUOLANTUO_2 = 33, // ÆðÑÇ-Ë÷À¼ÍÐ-2012,2010,2009 + VSB_KIA_SAILATU_1 = 34, // ÆðÑÇ-ÈüÀ­Í¼-2006,2005 + VSB_KIA_SAILATU_2 = 35, // ÆðÑÇ-ÈüÀ­Í¼-2007 + VSB_KIA_SAILATU_3 = 36, // ÆðÑÇ-ÈüÀ­Í¼-2012,2010GLS + VSB_KIA_YUANJIAN_1 = 37 // ÆðÑÇ-Ô¶½¢-δ֪ +}VSB_KIA_CLASS; + +//±¼³Û×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BENZ_CLASS +{ + VSB_BENZ_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BENZ_C = 1, // ±¼³ÛC¼¶ + VSB_BENZ_E = 2, // ±¼³ÛE¼¶ + VSB_BENZ_GLK = 3, // ±¼³ÛGLK¼¶ + VSB_BENZ_WEITING = 4, // Íþöª-PINYIN + VSB_BENZ_SPRINTER = 5, // ÁèÌØ + VSB_BENZ_VIANO = 6, // ΨÑÅŵ + VSB_BENZ_M = 7, // ±¼³ÛMϵ + VSB_BENZ_CLK = 8, // ±¼³ÛCLKϵ + VSB_BENZ_G = 9, // ±¼³ÛGϵ + VSB_BENZ_GL = 10, // ±¼³ÛGLϵ + VSB_BENZ_R = 11, // ±¼³ÛRϵ + VSB_BENZ_S = 12, // ±¼³ÛSϵ + VSB_BENZ_A = 13, // ±¼³ÛAϵ + VSB_BENZ_SMART = 14, // ˹ÂêÌØ(¾«Áé) + VSB_BENZ_B = 15, // ±¼³ÛBϵ + VSB_BENZ_SLK = 16, // ±¼³ÛSLKϵ + VSB_BENZ_MB100 = 17, // ±¼³ÛMB100 + VSB_BENZ_VITO = 18, // ÍþÌØ + VSB_BENZ_CLS = 19, // ±¼³ÛCLSϵ + VSB_BENZ_SL = 20, // ±¼³ÛSLϵ + VSB_BENZ_AJI_1 = 21, // ±¼³Û-A¼¶-2011,2009 + VSB_BENZ_AJI_2 = 22, // ±¼³Û-A¼¶-2013 + VSB_BENZ_BJI_1 = 23, // ±¼³Û-B¼¶-2010,2009 + VSB_BENZ_CJI_1 = 24, // ±¼³Û-C¼¶-2010,2008,2007ʱÉÐÐÍ + VSB_BENZ_CJI_2 = 25, // ±¼³Û-C¼¶-2013,2011,CGI + VSB_BENZ_CJI_3 = 26, // ±¼³Û-C¼¶-2013,2011ʱÉÐÐÍ + VSB_BENZ_EJI_1 = 27, // ±¼³Û-E¼¶-2002 + VSB_BENZ_EJI_2 = 28, // ±¼³Û-E¼¶-2007,2006 + VSB_BENZ_EJI_3 = 29, // ±¼³Û-E¼¶-2013,2012,2011,2010,2009 + VSB_BENZ_EJI_4 = 30, // ±¼³Û-E¼¶-2013,2012,2011,2010,2009ʱÉÐÐÍ + VSB_BENZ_GLKJI_1 = 31, // ±¼³Û-GLK¼¶-2012,2011 + VSB_BENZ_GLKJI_2 = 32, // ±¼³Û-GLK¼¶-2012,2011ºÀ»ªÐÍ,2008 + VSB_BENZ_GLKJI_3 = 33, // ±¼³Û-GLK¼¶-2014,2013 + VSB_BENZ_GLJI_1 = 34, // ±¼³Û-GL¼¶-2011 + VSB_BENZ_GLJI_2 = 35, // ±¼³Û-GL¼¶-2011×ð¹óÐÍ,2010 + VSB_BENZ_GLJI_3 = 36, // ±¼³Û-GL¼¶-2012,2010±±ÃÀ°æ + VSB_BENZ_GJI_1 = 37, // ±¼³Û-G¼¶-2013,2010,2009 + VSB_BENZ_MB100_1 = 38, // ±¼³Û-MB100-2000 + VSB_BENZ_MLJI_1 = 39, // ±¼³Û-ML¼¶-2006,2005 + VSB_BENZ_MLJI_2 = 40, // ±¼³Û-ML¼¶-2010,2008 + VSB_BENZ_MLJI_3 = 41, // ±¼³Û-ML¼¶-2014,2012 + VSB_BENZ_RJI_1 = 42, // ±¼³Û-R¼¶-2006 + VSB_BENZ_RJI_2 = 43, // ±¼³Û-R¼¶-2007 + VSB_BENZ_RJI_3 = 44, // ±¼³Û-R¼¶-2014,2011,2010,2009 + VSB_BENZ_SLKJI_2 = 45, // ±¼³Û-SLK¼¶-2006,2004 + VSB_BENZ_SLKJI_3 = 46, // ±¼³Û-SLK¼¶-2010,2009 + VSB_BENZ_SLKJI_1 = 47, // ±¼³Û-SLK¼¶-2011 + VSB_BENZ_SJI_1 = 48, // ±¼³Û-S¼¶-2004 + VSB_BENZ_SJI_2 = 49, // ±¼³Û-S¼¶-2009_Hybrid,2008,2006 + VSB_BENZ_SJI_3 = 50, // ±¼³Û-S¼¶-2009,2008ÉÌÎñÐÍ + VSB_BENZ_SJI_4 = 51, // ±¼³Û-S¼¶-2012,2011,2010 + VSB_BENZ_LINGTE_1 = 52, // ±¼³Û-ÁèÌØ-2013,2012,2011 + VSB_BENZ_WEIYANUO_1 = 53, // ±¼³Û-ΨÑÅŵ-2010,2006,2004 + VSB_BENZ_WEIYANUO_2 = 54, // ±¼³Û-ΨÑÅŵ-2014,2013,2012,2011 + VSB_BENZ_WEITING_1 = 55, // ±¼³Û-Íþöª-2013,2011,2010 + VSB_BENZ_KECHE_1 = 56 // ±¼³Û-¿Í³µ³µÐÍ1-A¿î +}VSB_BENZ_CLASS; + +//˹¿Â´ï×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SKODA_CLASS +{ + VSB_SKODA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SKODA_HAORUI = 1, // ê»Èñ + VSB_SKODA_FABIA = 2, // ¾§Èñ + VSB_SKODA_OCTAVIA = 3, // Ã÷Èñ + VSB_SKODA_SUPERB = 4, // ËÙÅÉ + VSB_SKODA_SPACEBACK = 5, // 꿶¯ + VSB_SKODA_RAPID = 6, // ê¿Èñ + VSB_SKODA_YETI = 7, // Ò°µÛ + VSB_SKODA_HAORUI_1 = 8, // ˹¿Â´ï-ê»Èñ-2013,2012,2010,2009 + VSB_SKODA_MINGRUI_1 = 9, // ˹¿Â´ï-Ã÷Èñ-2009,2008,2007 + VSB_SKODA_MINGRUI_2 = 10, // ˹¿Â´ï-Ã÷Èñ-2014,2013,2012,2011,2010 + VSB_SKODA_MINGRUI_3 = 11, // ˹¿Â´ï-Ã÷ÈñRS-2010 + VSB_SKODA_XINRUI_1 = 12, // ˹¿Â´ï-ê¿Èñ-2013ÀÖÑ¡ÐÍ + VSB_SKODA_JINGRUI_1 = 13, // ˹¿Â´ï-¾§Èñ-2011,2009,2008 + VSB_SKODA_JINGRUI_2 = 14, // ˹¿Â´ï-¾§Èñ-2014,2013,2012 + VSB_SKODA_JINGRUI_3 = 15, // ˹¿Â´ï-¾§Èñ-2014,2013,2012Sport°æ + VSB_SKODA_SUPAI_1 = 16, // ˹¿Â´ï-ËÙÅÉ-2013 + VSB_SKODA_YEDI_1 = 17 // ˹¿Â´ï-Ò°µÛ-2014,2013 +}VSB_SKODA_CLASS; + +//¶«·ç×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_DONGFENG_CLASS +{ + VSB_DONGFENG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_DONGFENG_JOYEARX5 = 1, // ¾°ÒÝX5 + VSB_DONGFENG_LINGZHI = 2, // ÁâÖÇ + VSB_DONGFENG_JOYEARX3 = 3, // ¾°ÒÝX3 + VSB_DONGFENG_JOYEAR = 4, // ¾°ÒÝ + VSB_DONGFENG_FENGXINGCM7 = 5, // ·çÐÐCM7 + VSB_DONGFENG_YUFENG = 6, // Óù·ç + VSB_DONGFENG_FENGSHENA60 = 7, // ·çÉñA60 + VSB_DONGFENG_FENGSHENS30 = 8, // ·çÉñS30 + VSB_DONGFENG_FENGSHENH30CROSS = 9, // ·çÉñH30-CROSS + VSB_DONGFENG_PICKUP = 10, // ¶«·çƤ¿¨ + VSB_DONGFENG_ZHONGXINGMIANBAOCHE = 11, // ¶«·çÖÐÐÍÃæ°ü³µ + VSB_DONGFENG_XIAOXINGMIANBAOCHE = 12, // ¶«·çСÐÍÃæ°ü³µ + VSB_DONGFENG_ZHONGXINGVAN = 13, // ¶«·çÖØÐÍ»õ³µ + VSB_DONGFENG_QINGXINGXIANGSHIVAN = 14, // ¶«·çÇáÐÍÏáʽ»õ³µ + VSB_DONGFENG_QINGZHONGXINGVAN = 15, // ¶«·çÇáÖÐÐÍÆÕͨ»õ³µ + VSB_DONGFENG_FENGSHENMERCURY = 16, // ·çÉñË®ÐÇ + VSB_DONGFENG_SUCCE = 17, // ˧¿Í + VSB_DONGFENG_ODIN = 18, // °Â¶¡ + VSB_DONGFENG_YUMSUN = 19, // ÓùÐù + VSB_DONGFENG_RUIQI = 20, // Èñæë + VSB_DONGFENG_FENGGUANG = 21, // ·ç¹â + VBR_DONGFENG_C35_1 = 22, // ¶«·ç-C35-2013 + VBR_DONGFENG_K07_1 = 23, // ¶«·ç-K07-2008 + VBR_DONGFENG_K07_2 = 24, // ¶«·ç-K07-2010,2006 + VBR_DONGFENG_V21_1 = 25, // ¶«·ç-V21-2011 + VBR_DONGFENG_JIALONG_1 = 26, // ¶«·ç-¶«·ç¼ÎÁú-ÔØ»õ³µ + VBR_DONGFENG_XKFG_1 = 27, // ¶«·ç-¶«·çС¿µ·ç¹â-2013 + VBR_DONGFENG_CV03_1 = 28, // ¶«·ç-¿¡·çCV03-2012 + VBR_DONGFENG_KAIPUTE_1 = 29, // ¶«·ç-¿­ÆÕÌØ-C390 + VBR_DONGFENG_DUOLIKA_1 = 30, // ¶«·ç-¶àÀû¿¨-S2800 + VBR_DONGFENG_DUOLIKA_2 = 31, // ¶«·ç-¶àÀû¿¨-XLÖп¨ + VBR_DONGFENG_DUOLIKA_3 = 32, // ¶«·ç-¶àÀû¿¨-Öп¨ + VBR_DONGFENG_TIANJIN_1 = 33, // ¶«·ç-Ìì½õ-4X2ÔØ»õ³µ + VBR_DONGFENG_TIANJIN_2 = 34, // ¶«·ç-Ìì½õ-A¿î + VBR_DONGFENG_XBW_1 = 35, // ¶«·ç-С°ÔÍõ-ÇῨ1 + VBR_DONGFENG_XBW_2 = 36, // ¶«·ç-С°ÔÍõ-ÇῨ2 + VBR_DONGFENG_MENGKA_1 = 37, // ¶«·ç-Ãο¨-ÇῨ + VBR_DONGFENG_FURUIKA_1 = 38, // ¶«·ç-¸£Èð¿¨-ÇῨ1 + VBR_DONGFENG_RUIQI_1 = 39, // ¶«·ç-ÈñæëƤ¿¨-2013,2010,2009 + VBR_DONGFENG_A60_1 = 40, // ¶«·ç·çÉñ-A60-2014,2012 + VBR_DONGFENG_H30_1 = 41, // ¶«·ç·çÉñ-H30-Cross-2012,2011 + VBR_DONGFENG_H30_2 = 42, // ¶«·ç·çÉñ-H30-Cross-2014,2013 + VBR_DONGFENG_H30_3 = 43, // ¶«·ç·çÉñ-H30-2012 + VBR_DONGFENG_JINGYI_1 = 44, // ¶«·ç·çÐÐ-¾°ÒÝ-2014_2012LV,2011ºÀ»ªÐÍ + VBR_DONGFENG_JINGYI_2 = 45, // ¶«·ç·çÐÐ-¾°ÒÝ-2014_2012XL,2011,2010,2009,2008,2007 + VBR_DONGFENG_JINGYI_3 = 46, // ¶«·ç·çÐÐ-¾°ÒÝX5-2014,2013 + VBR_DONGFENG_LINGZHI_1 = 47, // ¶«·ç·çÐÐ-ÁâÖÇ-2004 + VBR_DONGFENG_LINGZHI_2 = 48, // ¶«·ç·çÐÐ-ÁâÖÇ-2011,2008,2007 + VBR_DONGFENG_LINGZHI_3 = 49, // ¶«·ç·çÐÐ-ÁâÖÇ-2011Q3±ê×¼ÐÍ,2010Q7 + VBR_DONGFENG_LINGZHI_4 = 50, // ¶«·ç·çÐÐ-ÁâÖÇ-2014_2013M3 + VBR_DONGFENG_LINGZHI_5 = 51 // ¶«·ç·çÐÐ-ÁâÖÇ-2014_2013V3,2011M3_ÉÌÓðæ_ÊæÊÊÐÍ +}VSB_DONGFENG_CLASS; + +//±ÈÑǵÏ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BYD_CLASS +{ + VSB_BYD_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BYD_F0 = 1, // ±ÈÑǵÏF0 + VSB_BYD_F3 = 2, // ±ÈÑǵÏF3 + VSB_BYD_F3R = 3, // ±ÈÑǵÏF3R + VSB_BYD_F6 = 4, // ±ÈÑǵÏF6 + VSB_BYD_G3 = 5, // ±ÈÑǵÏG3 + VSB_BYD_G3R = 6, // ±ÈÑǵÏG3R + VSB_BYD_G6 = 7, // ±ÈÑǵÏG6 + VSB_BYD_L3 = 8, // ±ÈÑǵÏL3 + VSB_BYD_M6 = 9, // ±ÈÑǵÏM6 + VSB_BYD_S6 = 10, // ±ÈÑǵÏS6 + VSB_BYD_SURUI = 11, // ËÙÈñ + VSB_BYD_FOLEL = 12, // ÇØ´¨¸£À³¶û + VSB_BYD_SIRUI = 13, // ˼Èñ + VSB_BYD_MT5 = 14, // ±ÈÑǵÏMT5(¾«Áé) + VSB_BYD_F0_1 = 15, // ±ÈÑǵÏ-F0-2013,2012,2011,2010,2009,2008 + VSB_BYD_F3R_1 = 16, // ±ÈÑǵÏ-F3R-2011,2009,2008,2007 + VSB_BYD_F6_1 = 17, // ±ÈÑǵÏ-F6-2011,2009,2008 + VSB_BYD_G3R_1 = 18, // ±ÈÑǵÏ-G3R-2011 + VSB_BYD_G6_1 = 19, // ±ÈÑǵÏ-G6-2013,2012,2011 + VSB_BYD_L3_1 = 20, // ±ÈÑǵÏ-L3-2013,2012,2011,2010 + VSB_BYD_M6_1 = 21, // ±ÈÑǵÏ-M6-2013,2011,2010 + VSB_BYD_S6_1 = 22, // ±ÈÑǵÏ-S6-2014,2013,2012,2011 + VSB_BYD_FULAIER_1 = 23, // ±ÈÑǵÏ-¸£À³¶û-2005ºÀ»ªÐÍ + VSB_BYD_SURUI_1 = 24 // ±ÈÑǵÏ-ËÙÈñ-2014,2013,2012 +}VSB_BYD_CLASS; + +//Áåľ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SUZUKI_CLASS +{ + VSB_SUZUKI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SUZUKI_ALTO = 1, // ³¤°²°ÂÍØ + VSB_SUZUKI_SCROSS = 2, // ·æÔ¦ + VSB_SUZUKI_SWIFT = 3, // ÓêÑà + VSB_SUZUKI_SX4 = 4, // ÌìÓï + VSB_SUZUKI_LINGYANG = 5, // ÁçÑò + VSB_SUZUKI_BEIDOUXING = 6, // ±±¶·ÐÇ + VSB_SUZUKI_LIANAA6 = 7, // ÀûÑÇÄÉ-A6 + VSB_SUZUKI_LANDY = 8, // ÀËµÏ + VSB_SUZUKI_SPLASH = 9, // ÅÉϲ + VSB_SUZUKI_GRANDVITARA = 10, // ³¬¼¶Î¬ÌØÀ­ + VSB_SUZUKI_JIMNY = 11, // ¼ªÄ·Äá + VSB_SUZUKI_KAZASHI = 12, // ¿­ÔóÎ÷ + VSB_SUZUKI_LIANA = 13, // ÀûÑÇÄÉ + VSB_SUZUKI_LIANA_1 = 14, // Áåľ-ÀûÑÇÄÉÈýÏá-2012,2011,2010,2008,2007,2005 + VSB_SUZUKI_LIANA_2 = 15, // Áåľ-ÀûÑÇÄÉÁ½Ïá-2013,2012,2011 + VSB_SUZUKI_BEIDOUXING_1 = 16, // Áåľ-±±¶·ÐÇ-2012,2011,2010,2009,2008,2007,2005,2004±ê×¼ÐÍ + VSB_SUZUKI_BEIDOUXING_2 = 17, // Áåľ-±±¶·ÐÇ-2013,2012,2011,2010,2009,2008,2007,2005,2004,2003 + VSB_SUZUKI_BEIDOUXING_3 = 18, // Áåľ-±±¶·ÐÇ-2013,2012,2011,2010,2009,2008,2007,2005,2004,2003ÊÊÓÃÐÍ + VSB_SUZUKI_BEIDOUXING_4 = 19, // Áåľ-±±¶·ÐÇ-2013X5 + VSB_SUZUKI_JIMUNI_1 = 20, // Áåľ-¼ªÄ·Äá-2011,2010,2009,2007 + VSB_SUZUKI_JIMUNI_2 = 21, // Áåľ-¼ªÄ·Äá-2012 + VSB_SUZUKI_SX4_1 = 22, // Áåľ-ÌìÓïSX4ÈýÏá-2008,2006 + VSB_SUZUKI_SX4_2 = 23, // Áåľ-ÌìÓïSX4ÈýÏá-2010,2009 + VSB_SUZUKI_SX4_3 = 24, // Áåľ-ÌìÓïSX4Á½Ïá-2011A,2009,2008,2007 + VSB_SUZUKI_SX4_4 = 25, // Áåľ-ÌìÓïSX4Á½Ïá-2011B + VSB_SUZUKI_SX4_5 = 26, // Áåľ-ÌìÓïSX4ÉÐÔÃ-2013,2012,2011 + VSB_SUZUKI_ALTO_1 = 27, // Áåľ-°ÂÍØ-2006,2001,2000,1999,1993±ê×¼ÐÍ + VSB_SUZUKI_ALTO_2 = 28, // Áåľ-°ÂÍØ-2006,2004,2001,2000,1999,1993 + VSB_SUZUKI_ALTO_3 = 29, // Áåľ-°ÂÍØ-2013 + VSB_SUZUKI_ALTO_4 = 30, // Áåľ-°ÂÍØ-2014,2012,2011,2010,2009 + VSB_SUZUKI_SPLASH_1 = 31, // Áåľ-ÅÉϲ-2013,2012,2011 + VSB_SUZUKI_LANDY_1 = 32, // Áåľ-À˵Ï-2011,2010,2007 + VSB_SUZUKI_LINGYANG_2 = 33, // Áåľ-ÁçÑò-2006,2004,2003 + VSB_SUZUKI_LINGYANG_3 = 34, // Áåľ-ÁçÑò-2009,2008,2007 + VSB_SUZUKI_LINGYANG_4 = 35, // Áåľ-ÁçÑò-2011 + VSB_SUZUKI_LINGYANG_5 = 36, // Áåľ-ÁçÑò-2012 + VSB_SUZUKI_GRANDVITARA_1 = 37, // Áåľ-³¬¼¶Î¬ÌØÀ­-2011,2008,2007,2006 + VSB_SUZUKI_FENGYU_1 = 38, // Áåľ-·æÔ¦-2014 + VSB_SUZUKI_SWIFT_1 = 39, // Áåľ-ÓêÑà-2011_1.3L,2009,2008,2007,2005 + VSB_SUZUKI_SWIFT_2 = 40, // Áåľ-ÓêÑà-2012,2011 + VSB_SUZUKI_KINGCHANG_1 = 41, // Áåľ-²ýÁåÍõ-2004 + VSB_SUZUKI_LINGYANG_1 = 42 // Áåľ-ÁçÑò-2002 +}VSB_SUZUKI_CLASS; + +//ÎåÁâ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SGMW_CLASS +{ + VSB_SGMW_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SGMW_HONGGUANG = 1, // ÎåÁâºê¹â + VSB_SGMW_HONGGUANGS = 2, // ÎåÁâºê¹âS + VSB_SGMW_ZHIGUANG = 3, // ÎåÁâÖ®¹â + VSB_SGMW_RONGGUANGS = 4, // ÎåÁâÈÙ¹âS + VSB_SGMW_RONGGUANG = 5, // ÎåÁâÈÙ¹â + VSB_SGMW_HONGTU = 6, // ÎåÁâºè; + VSB_SGMW_XINGWANG = 7, // ÎåÁâÐËÍú + VSB_SGMW_YANGGUANG = 8, // ÎåÁâÑï¹â + VSB_SGMW_XIAOXUANFENG = 9, // ÎåÁâСÐý·ç + VSB_SGMW_WULINGZHIGUANG_1 = 10, // ÎåÁâ-ÎåÁâÖ®¹â-2010,2009Á¢Òµ + VSB_SGMW_WULINGZHIGUANG_2 = 11, // ÎåÁâ-ÎåÁâÖ®¹â-2010¶Ì³µÉí,»ù±¾ÐÍ + VSB_SGMW_WULINGZHIGUANG_3 = 12, // ÎåÁâ-ÎåÁâÖ®¹â-2010³¤³µÉí,2008Ïáʽ,2007 + VSB_SGMW_XINGWANG_1 = 13, // ÎåÁâ-ÐËÍúÃæ°ü³µ-2003 + VSB_SGMW_XINGWANG_2 = 14, // ÎåÁâ-ÐËÍúÃæ°ü³µ-2009±ê×¼ + VSB_SGMW_XINGWANG_3 = 15, // ÎåÁâ-ÐËÍúÃæ°ü³µ-2010,2009,2007,2006,2005,2004 + VSB_SGMW_HONNGUANG_1 = 16, // ÎåÁâ-ºê¹â-2013,2010 + VSB_SGMW_HONNGUANG_2 = 17, // ÎåÁâ-ºê¹â-2014,2013S + VSB_SGMW_XIAOXUANFENG_1 = 18, // ÎåÁâ-СÐý·ç-2006 + VSB_SGMW_YANGGUANG_1 = 19, // ÎåÁâ-Ñï¹â-2006,2005,2004 + VSB_SGMW_YANGGUANG_2 = 20, // ÎåÁâ-Ñï¹â-2008,2007 + VSB_SGMW_YANGGUANG_3 = 21, // ÎåÁâ-Ñï¹â-2009,2006,2005ÊÖ¶¯±ê×¼ÐÍ + VSB_SGMW_RONGGUANG_1 = 22, // ÎåÁâ-ÈÙ¹âÃæ°ü³µ-2012,2011,2008»ù±¾ + VSB_SGMW_RONGGUANG_2 = 23, // ÎåÁâ-ÈÙ¹âÃæ°ü³µ-2012,2011,2008±ê×¼ + VSB_SGMW_HONGTU_1 = 24 // ÎåÁâ-ºè;-2010,2009,2008,2007 +}VSB_SGMW_CLASS; + +//³¤°²×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CHANA_CLASS +{ + VSB_CHANA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CHANA_HONOR = 1, // ŷŵ + VSB_CHANA_XINGKA = 2, // ³¤°²ÐÇ¿¨ + VSB_CHANA_ZHIXING = 3, // ³¤°²Ö®ÐÇ + VSB_CHANA_PICKUP = 4, // ³¤°²ÉñæëС¿¨(³¤°²Æ¤¿¨) + VSB_CHANA_ZHIXING2 = 5, // ³¤°²Ö®ÐÇ2´ú + VSB_CHANA_TAURUS = 6, // ½ðÅ£ÐÇ + VSB_CHANA_XINGGUANG = 7, // ³¤°²Ðǹâ + VSB_CHANA_BENNI = 8, // ±¼±¼ + VSB_CHANA_ALSVIN = 9, // ÔÃÏè + VSB_CHANA_CX20 = 10, // ³¤°²CX20 + VSB_CHANA_CX30 = 11, // ³¤°²CX30 + VSB_CHANA_EADO = 12, // Òݶ¯ + VSB_CHANA_ZHIXINGS460 = 13, // ³¤°²Ö®ÐÇS460 + VSB_CHANA_CM8 = 14, // ³¤°²CM8 + VSB_CHANA_XINBAO = 15, // бª + VSB_CHANA_XUNLONG = 16, // Ñ«Áú + VSB_CHANA_YUNTONG = 17, // ÔËͨ + VSB_CHANA_LEIMENG = 18, // ÀØÃÉ + VSB_CHANA_XINGYUN = 19, // ³¤°²ÐÇÔÏ + VSB_CHANA_OULIWEI = 20, // Å·Á¦Íþ + VSB_CHANA_EADOXT = 21, // ÖÂÉÐXT + VSB_CHANA_XINGYUN_1 = 22, // ³¤°²ÉÌÓÃ-ÐÇÔÏ-2004,2003,2000 + VSB_CHANA_OULIWEI_1 = 23, // ³¤°²ÉÌÓÃ-Å·Á¦Íþ-2013 + VSB_CHANA_YUNTONG_1 = 24, // ³¤°²ÉÌÓÃ-ÔËͨ-2004 + VSB_CHANA_TAURUS_1 = 25, // ³¤°²ÉÌÓÃ-½ðÅ£ÐÇ-2013,2012,2011,2010 + VSB_CHANA_LEIMENG_1 = 26, // ³¤°²ÉÌÓÃ-ÀØÃÉ-2005,2003 + VSB_CHANA_ZHIXING_1 = 27, // ³¤°²ÉÌÓÃ-³¤°²Ö®ÐÇ-2010,2009 + VSB_CHANA_ZHIXING_2 = 28, // ³¤°²ÉÌÓÃ-³¤°²Ö®ÐÇ-2013 + VSB_CHANA_ZHIXING_3 = 29, // ³¤°²ÉÌÓÃ-³¤°²Ö®ÐÇ2-2009,2008 + VSB_CHANA_ZHIXING_4 = 30, // ³¤°²ÉÌÓÃ-³¤°²Ö®ÐÇ2-2012 + VSB_CHANA_ZHIXING_5 = 31, // ³¤°²ÉÌÓÃ-³¤°²Ö®ÐÇS460-2010,2009 + VSB_CHANA_ZHIXING_6 = 32, // ³¤°²ÉÌÓÃ-³¤°²Ö®ÐÇSC6350-2003 + VSB_CHANA_PICKUP_1 = 33, // ³¤°²ÉÌÓÃ-³¤°²Î¢»õÉñæë-2013,2012 + VSB_CHANA_XINGGUANG_1 = 34, // ³¤°²ÉÌÓÃ-³¤°²Ðǹâ4500-2009,2007 + VSB_CHANA_XINGGUANG_2 = 35, // ³¤°²ÉÌÓÃ-³¤°²Ðǹâ4500-2012 + VSB_CHANA_HONOR_1 = 36 // ³¤°²ÉÌÓÃ-³¤°²Å·Åµ-2014,2012 +}VSB_CHANA_CLASS; + +//³¤°²½Î³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_EADO_CLASS +{ + VSB_EADO_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_EADO_CS_1 = 1, // ³¤°²½Î³µ-CS35-2014,2013,2012 + VSB_EADO_CX_1 = 2, // ³¤°²½Î³µ-CX20-2011 + VSB_EADO_CX_2 = 3, // ³¤°²½Î³µ-CX30Á½Ïá-2010 + VSB_EADO_BENBEN_1 = 4, // ³¤°²½Î³µ-±¼±¼-2008,2007,2006 + VSB_EADO_BENBEN_2 = 5, // ³¤°²½Î³µ-±¼±¼-2008¾­µäÐÍ,2007Ô˶¯ÐÍ + VSB_EADO_BENBEN_3 = 6, // ³¤°²½Î³µ-±¼±¼-2010 + VSB_EADO_BENBEN_4 = 7, // ³¤°²½Î³µ-±¼±¼MINI-2011,2010 + VSB_EADO_BENBEN_5 = 8, // ³¤°²½Î³µ-±¼±¼MINI-2012 + VSB_EADO_YUEXIANG_1 = 9, // ³¤°²½Î³µ-ÔÃÏè-2011,2010,2009 + VSB_EADO_YUEXIANG_2 = 10, // ³¤°²½Î³µ-ÔÃÏè-2012 + VSB_EADO_YUEXIANG_3 = 11, // ³¤°²½Î³µ-ÔÃÏèV3-2013,2012 + VSB_EADO_YUEXIANG_4 = 12, // ³¤°²½Î³µ-ÔÃÏèV5-2012 + VSB_EADO_YIDONG_1 = 13 // ³¤°²½Î³µ-Òݶ¯-2014,2013,2012 +}VSB_EADO_CLASS; + +//½ð±­×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JINBEI_CLASS +{ + VSB_JINBEI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JINBEI_GRACE = 1, // ½ð±­¸óÈð˹ + VSB_JINBEI_HIACE = 2, // ½ð±­º£Ê¨ + VSB_JINBEI_HAIXING = 3, // º£ÐÇ + VSB_JINBEI_BADAO = 4, // ½ð±­°ÔµÀ + VSB_JINBEI_LINGQI = 5, // Áìæë + VSB_JINBEI_JINQI = 6, // ½ðæë + VSB_JINBEI_LINGCHI = 7, // Áì³Û + VSB_JINBEI_QIYUN = 8, // æëÔË + VSB_JINBEI_ZHISHANG_1 = 9, // ½ð±­-ÖÇÉÐS30-2014,2013,2012 + VSB_JINBEI_HAIXING_1 = 10, // ½ð±­-º£ÐÇ-2012 + VSB_JINBEI_HAIXING_2 = 11, // ½ð±­-º£ÐÇ-2012A7ÌØ»ÝÐÍ,2011 + VSB_JINBEI_HIACE_1 = 12, // ½ð±­-º£Ê¨-2008 + VSB_JINBEI_HIACE_2 = 13, // ½ð±­-º£Ê¨-2013,2011,2010 + VSB_JINBEI_HIACE_3 = 14, // ½ð±­-º£Ê¨-2013ºÀ»ªÐÍ,2011ÆûÓÍ,2008±ê×¼ÐÍ + VSB_JINBEI_JINDIAN_1 = 15, // ½ð±­-½ðµä-2009 + VSB_JINBEI_GRACE_1 = 16, // ½ð±­-¸óÈð˹MPV-2011,2008,2007 + VSB_JINBEI_GRACE_2 = 17, // ½ð±­-¸óÈð˹MPV-2011ÓùÁìºÀ»ªÐÍ,2010,2009,2007±ê×¼9×ù + VSB_JINBEI_BADAO_1 = 18 // ½ð±­-°ÔµÀSUV-2011,2008 + +}VSB_JINBEI_CLASS; + +//¼ªÀû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_GEELY_CLASS +{ + VSB_GEELY_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_GEELY_EC7 = 1, // ¼ªÀûµÛºÀEC7 + VSB_GEELY_EC8 = 2, // ¼ªÀûµÛºÀEC8 + VSB_GEELY_SC3 = 3, // ¼ªÀûSC3 + VSB_GEELY_SC5RV = 4, // ¼ªÀûSC5-RV + VSB_GEELY_SC6 = 5, // ¼ªÀûSC6 + VSB_GEELY_JINGYING = 6, // ½ðÓ¥ + VSB_GEELY_JINGGANG = 7, // ½ð¸Õ + VSB_GEELY_SX7 = 8, // ¼ªÀûSX7 + VSB_GEELY_HAOQING = 9, // ºÀÇé + VSB_GEELY_MEIRI = 10, // ÃÀÈÕ + VSB_GEELY_YINGLUNSC7 = 11, // Ó¢Â×SC7 + VSB_GEELY_PANDA = 12, // ÐÜè + VSB_GEELY_YUANJING = 13, // Ô¶¾° + VSB_GEELY_ZIYOUJIAN = 14 // ×ÔÓɽ¢ +}VSB_GEELY_CLASS; + +//ÈýÁâ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_MITSUBISHI_CLASS +{ + VSB_MITSUBISHI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_MITSUBISHI_GALANT = 1, // ¸êÀ¶ + VSB_MITSUBISHI_ZINGER = 2, // ¾ý¸ó + VSB_MITSUBISHI_LANCER = 3, // À¶Éª + VSB_MITSUBISHI_LANCEREX = 4, // ÒíÉñ + VSB_MITSUBISHI_PAJERO = 5, // ÅÁ½ÜÂÞ + VSB_MITSUBISHI_PAJEROSPORT = 6, // ÅÁ½ÜÂÞ-¾¢³© + VSB_MITSUBISHI_JINGXUANASX = 7, // ¾¢ìÅASX + VSB_MITSUBISHI_GRANDIS = 8, // ÈýÁâ¸ñÀ¶µÏ + VSB_MITSUBISHI_OUTLANDER = 9, // Å·À¶µÂ + VSB_MITSUBISHI_QINXINGYUEYE = 10, // ÈýÁâÇáÐÍÔ½Ò° + VSB_MITSUBISHI_GTO = 11, // ÈýÁâGTO + VSB_MITSUBISHI_SOVERAN = 12, // ÈýÁâÁâÉð + VSB_MITSUBISHI_LIONVEL = 13, // ÈýÁâÁâÔà + VSB_MITSUBISHI_HAFEISIMBO = 14, // ¹þ·ÉÈüÂí + VSB_MITSUBISHI_LANCEREX_1 = 15, // ÈýÁâ-ÈýÁâÒíÉñ-2012,2011,2010 + VSB_MITSUBISHI_JINGXUAN_1 = 16, // ÈýÁâ-¾¢ìÅ-2012,2011 + VSB_MITSUBISHI_ZINGER_1 = 17, // ÈýÁâ-¾ý¸ó-2011,2009 + VSB_MITSUBISHI_PAJERO_1 = 18, // ÈýÁâ-ÅÁ½ÜÂÞ-2004¹ú²ú + VSB_MITSUBISHI_PAJERO_2 = 19, // ÈýÁâ-ÅÁ½ÜÂÞ-2004½ø¿Ú + VSB_MITSUBISHI_PAJERO_3 = 20, // ÈýÁâ-ÅÁ½ÜÂÞ-2010½ø¿Ú + VSB_MITSUBISHI_PAJEROSPORT_1 = 21, // ÈýÁâ-ÅÁ½ÜÂÞ¾¢³©-2011 + VSB_MITSUBISHI_GALANT_1 = 22, // ÈýÁâ-¸êÀ¶-2009 + VSB_MITSUBISHI_GALANDI_1 = 23, // ÈýÁâ-¸ñÀ¶µÏ-2007 + VSB_MITSUBISHI_GALANDI_2 = 24, // ÈýÁâ-¸ñÀ¶µÏ-2010 + VSB_MITSUBISHI_OUTLANDER_1 = 25, // ÈýÁâ-Å·À¶µÂ-2012,2011,2010 + VSB_MITSUBISHI_OUTLANDER_2 = 26, // ÈýÁâ-Å·À¶µÂ-2013 + VSB_MITSUBISHI_LINGYUE_1 = 27, // ÈýÁâ-ÁâÔÃ-δ֪ + VSB_MITSUBISHI_LANCER_1 = 28 // ÈýÁâ-À¶Éª-2010 +}VSB_MITSUBISHI_CLASS; + +//À׿ËÈø˹×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_LEXUS_CLASS +{ + VSB_LEXUS_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_LEXUS_ES = 1, // À׿ËÈø˹ES + VSB_LEXUS_CT = 2, // À׿ËÈø˹CT + VSB_LEXUS_RX = 3, // À׿ËÈø˹RX + VSB_LEXUS_IS = 4, // À׿ËÈø˹IS + VSB_LEXUS_LX = 5, // À׿ËÈø˹LX + VSB_LEXUS_GS = 6, // À׿ËÈø˹GS + VSB_LEXUS_GX = 7, // À׿ËÈø˹GX + VSB_LEXUS_LS = 8, // À׿ËÈø˹LS + VSB_LEXUS_CT_1 = 9, // À׿ËÈø˹-CT-2013,2012,2011 + VSB_LEXUS_ES_1 = 10, // À׿ËÈø˹-ES-1994 + VSB_LEXUS_ES_2 = 11, // À׿ËÈø˹-ES-2010,2009,2006 + VSB_LEXUS_ES_3 = 12, // À׿ËÈø˹-ES-2013,2012 + VSB_LEXUS_GS_1 = 13, // À׿ËÈø˹-GS-2011,2010,2009,2008,2005 + VSB_LEXUS_GX_1 = 14, // À׿ËÈø˹-GX-2012,2010 + VSB_LEXUS_IS_1 = 15, // À׿ËÈø˹-IS-2011 + VSB_LEXUS_LS_1 = 16, // À׿ËÈø˹-LS-1994 + VSB_LEXUS_LS_2 = 17, // À׿ËÈø˹-LS-2005,2004 + VSB_LEXUS_LS_3 = 18, // À׿ËÈø˹-LS-2009,2007,2006 + VSB_LEXUS_LX_1 = 19, // À׿ËÈø˹-LX-2013,2012 + VSB_LEXUS_RX_1 = 20, // À׿ËÈø˹-RX-2011,2010,2009 + VSB_LEXUS_RX_2 = 21, // À׿ËÈø˹-RX-2013,2012 + VSB_LEXUS_RX_3 = 22 // À׿ËÈø˹-RX-2007 +}VSB_LEXUS_CLASS; + +//ÈÙÍþ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ROEWE_CLASS +{ + VSB_ROEWE_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ROEWE_350 = 1, // ÈÙÍþ350 + VSB_ROEWE_550 = 2, // ÈÙÍþ550 + VSB_ROEWE_W5 = 3, // ÈÙÍþW5 + VSB_ROEWE_950 = 4, // ÈÙÍþ950 + VSB_ROEWE_750 = 5, // ÈÙÍþ750 + VSB_ROEWE_350_1 = 6, // ÈÙÍþ-350-2011ѸÖÇ°æ,2010 + VSB_ROEWE_350_2 = 7, // ÈÙÍþ-350-2014,2013,2012,2011 + VSB_ROEWE_550_1 = 8, // ÈÙÍþ-550-2012,2010,2009,2008 + VSB_ROEWE_750_1 = 9, // ÈÙÍþ-750-2009,2008,2007,2006 + VSB_ROEWE_750_2 = 10, // ÈÙÍþ-750-2012,2011 + VSB_ROEWE_950_1 = 11 // ÈÙÍþ-950-2012 +}VSB_ROEWE_CLASS; + + +//º£Âí×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HAIMA_CLASS +{ + VSB_HAIMA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HAIMA_PREMARIN = 1, // ÆÕÁ¦Âí + VSB_HAIMA_S7 = 2, // º£ÂíS7 + VSB_HAIMA_PRINCE = 3, // º£ÂíÍõ×Ó + VSB_HAIMA_CUPID = 4, // º£Âí2-Çð±ÈÌØ + VSB_HAIMA_HATCHBACK = 5, // º£Âí3-»¶¶¯ + VSB_HAIMA_KNIGHT = 6, // ÆïÊ¿ + VSB_HAIMA_HAPPIN = 7, // º£¸£ÐÇ + VSB_HAIMA_FAMILY = 8, // ¸£ÃÀÀ´ + VSB_HAIMA_M3 = 9, // º£ÂíM3 + VSB_HAIMA_CUPID_1 = 10, // º£Âí-Çð±ÈÌØ-2012,2011,2010 + VSB_HAIMA_PREMARIN_1 = 11, // º£Âí-ÆÕÁ¦Âí-2007 + VSB_HAIMA_PREMARIN_2 = 12, // º£Âí-ÆÕÁ¦Âí-2012,2010 + VSB_HAIMA_HATCHBACK_1 = 13, // º£Âí-»¶¶¯-2010,2009 + VSB_HAIMA_HAPPIN_1 = 14, // º£Âí-º£¸£ÐÇ-2010,2009,2008,2007,2004 + VSB_HAIMA_HAPPIN_2 = 15, // º£Âí-º£¸£ÐÇ-2012,2011 + VSB_HAIMA_M3_1 = 16, // º£Âí-º£Âí3-2010,2008,2007 + VSB_HAIMA_FAMILY_1 = 17, // º£Âí-¸£ÃÀÀ´-2007,2006 + VSB_HAIMA_FAMILY_2 = 18, // º£Âí-¸£ÃÀÀ´-2010,2009,2008 + VSB_HAIMA_FAMILY_3 = 19, // º£Âí-¸£ÃÀÀ´-2011 + VSB_HAIMA_FAMILY_4 = 20, // º£Âí-¸£ÃÀÀ´-2014,2013,2012 + VSB_HAIMA_KNIGHT_1 = 21, // º£Âí-ÆïÊ¿-2013_2012A,2011,2010 + VSB_HAIMA_KNIGHT_2 = 22, // º£Âí-ÆïÊ¿-2013_2012B + VSB_HAIMA_NEWHONGDA_1 = 23, // º£ÂíÉÌÓóµ-кè´ï-2009 + VSB_HAIMA_NEWHONDGA_2 = 24, // º£ÂíÉÌÓóµ-кè´ï-2012 + VSB_HAIMA_PRINCE_1 = 25, // º£ÂíÉÌÓóµ-º£ÂíÍõ×Ó-2010 + VSB_HAIMA_RONGDA_1 = 26 // º£ÂíÉÌÓóµ-ÈÙ´ï-2012 + +}VSB_HAIMA_CLASS; + +//³¤³Ç×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_GREATWALL_CLASS +{ + VSB_GREATWALL_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_GREATWALL_SING = 1, // ÈüÓ° + VSB_GREATWALL_SAIJUN = 2, // Èü¿¥ + VSB_GREATWALL_HAVAL = 3, // ¹þ¸¥ + VSB_GREATWALL_SAFE = 4, // Èü¸¥ + VSB_GREATWALL_SAIKU = 5, // Èü¿á + VSB_GREATWALL_SAILING = 6, // ÈüÁå + VSB_GREATWALL_KINGDEER = 7, // ½ðµÏ¶û + VSB_GREATWALL_DEER = 8, // µÏ¶û + VSB_GREATWALL_WINGLE = 9, // ·ç¿¥ + VSB_GREATWALL_COOLBEAR = 10, // ¿áÐÜ + VSB_GREATWALL_LINGAO = 11, // Áè°Á + VSB_GREATWALL_CROSS = 12, // ìÅÀö + VSB_GREATWALL_GWPERI = 13, // ¾«Áé + VSB_GREATWALL_COWRY = 14, // ÌÚÒí + VSB_GREATWALL_M4 = 15, // ³¤³ÇM4 + VSB_GREATWALL_LINGAO_1 = 16, // ³¤³Ç-Áè°Á-2010 + VSB_GREATWALL_HAVAL_1 = 17, // ³¤³Ç-¹þ¸¥H3-2010,2009 + VSB_GREATWALL_HAVAL_2 = 18, // ³¤³Ç-¹þ¸¥H3-2012,2010,2009ÈñÒâ°æ + VSB_GREATWALL_HAVAL_3 = 19, // ³¤³Ç-¹þ¸¥H5-2012,2011,2010 + VSB_GREATWALL_HAVAL_4 = 20, // ³¤³Ç-¹þ¸¥H5-2012,2011,2010Â̾²ºÀ»ªÐÍ + VSB_GREATWALL_HAVAL_5 = 21, // ³¤³Ç-¹þ¸¥H5-2012ÊæÊÊÐÍ + VSB_GREATWALL_HAVAL_6 = 22, // ³¤³Ç-¹þ¸¥H5-2014,2013 + VSB_GREATWALL_HAVAL_8 = 23, // ³¤³Ç-¹þ¸¥H6-2014,2013Éý¼¶°æ + VSB_GREATWALL_HAVAL_9 = 24, // ³¤³Ç-¹þ¸¥M2-2010 + VSB_GREATWALL_HAVAL_10 = 25, // ³¤³Ç-¹þ¸¥M2-2013,2012 + VSB_GREATWALL_HAVAL_11 = 26, // ³¤³Ç-¹þ¸¥M4-2012 + VSB_GREATWALL_HAVAL_12 = 27, // ³¤³Ç-¹þ¸¥ÅÉ-2011 + VSB_GREATWALL_CROSS_1 = 28, // ³¤³Ç-ìÅÀö-2009,2008 + VSB_GREATWALL_CROSS_2 = 29, // ³¤³Ç-ìÅÀöCROSS-2011,2009 + VSB_GREATWALL_JINGLING_1 = 30, // ³¤³Ç-¾«Áé-δ֪ + VSB_GREATWALL_SING_1 = 31, // ³¤³Ç-ÈüÓ°-2003 + VSB_GREATWALL_SAIKU_1 = 32, // ³¤³Ç-Èü¿á-2004 + VSB_GREATWALL_SAILING_1 = 33, // ³¤³Ç-ÈüÁå-δ֪ + VSB_GREATWALL_DIER_1 = 34, // ³¤³Ç-µÏ¶û-δ֪ + VSB_GREATWALL_COOLBEAR_1 = 35, // ³¤³Ç-¿áÐÜ-2010,2009 + VSB_GREATWALL_KINGDEER_1 = 36, // ³¤³Ç-½ðµÏ¶û-2008,2007,2004,2003 + VSB_GREATWALL_GREATWALL_1 = 37, // ³¤³Ç-³¤³ÇC20R-2013,2011 + VSB_GREATWALL_GREATWALL_2 = 38, // ³¤³Ç-³¤³ÇC30-2010 + VSB_GREATWALL_GREATWALL_3 = 39, // ³¤³Ç-³¤³ÇC30-2012 + VSB_GREATWALL_GREATWALL_4 = 40, // ³¤³Ç-³¤³ÇC30-2013 + VSB_GREATWALL_GREATWALL_5 = 41, // ³¤³Ç-³¤³ÇC50-2013,2012 + VSB_GREATWALL_GREATWALL_6 = 42, // ³¤³Ç-³¤³ÇV80-2013,2012,2010,2009,2008 + VSB_GREATWALL_WINGLE_1 = 43, // ³¤³Ç-·ç¿¥3-2011,2010,2007,2006 + VSB_GREATWALL_WINGLE_2 = 44, // ³¤³Ç-·ç¿¥5-2014,2012,2011,2009 + VSB_GREATWALL_HAVAL_7 = 45 // ³¤³Ç-¹þ¸¥H6-2013,2012,2011 +}VSB_GREATWALL_CLASS; + +//µÀÆæ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_DS_CLASS +{ + VSB_DS_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_DS_KUBO_1 = 1, // µÀÆæ-¿á²«-2011,2010,2009,2008 + VSB_DS_KUWEI_1 = 2, // µÀÆæ-¿áÍþ-2011,2010,2009 + VSB_DS_KUWEI_2 = 3 // µÀÆæ-¿áÍþ-2013 +}VSB_DS_CLASS; + +//·»¢×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_LANDROVER_CLASS +{ + VSB_LANDROVER_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_LANDROVER_FAXIAN_1 = 1, // ·»¢-·¢ÏÖ-2005,2004 + VSB_LANDROVER_FAXIAN_2 = 2, // ·»¢-·¢ÏÖ-2013,2011,2010 + VSB_LANDROVER_LANSHENG_1 = 3, // ·»¢-À¿Ê¤-2012,2011,2010 + VSB_LANDROVER_LANSHENG_2 = 4, // ·»¢-À¿Ê¤¼«¹â-2014,2013,2012,2011 + VSB_LANDROVER_LANSHENG_3 = 5, // ·»¢-À¿Ê¤Ô˶¯°æ-2013,2012,2011,2010 + VSB_LANDROVER_LANSHENG_4 = 6, // ·»¢-À¿Ê¤Ô˶¯°æ-2013Ô¦ºìÏÞÁ¿°æ + VSB_LANDROVER_SXZ_1 = 7 // ·»¢-ÉñÐÐÕß2´ú-2014,2013,2011 +}VSB_LANDROVER_CLASS; + +//Ãû¾ô×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_MG_CLASS +{ + VSB_MG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_MG_3SW_1 = 1, // MG-MG-3SW-2009,2008 + VSB_MG_MG3_1 = 2, // MG-MG3-2013,2012,2011 + VSB_MG_MG5_1 = 3, // MG-MG5-2014,2013,2012 + VSB_MG_MG6_1 = 4, // MG-MG6ÈýÏá-2012,2011 + VSB_MG_MG7_1 = 5, // MG-MG7-2010,2009,2008,2007 +}VSB_MG_CLASS; + +//Ò»Æû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_FAW_CLASS +{ + VSB_FAW_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_FAW_501_1 = 1, //Ò»Æû-501-ÇῨ + VSB_FAW_N3_1 = 2, //Ò»Æû-N3+Á½Ïá-2006 + VSB_FAW_N3_2 = 3, //Ò»Æû-N3+Á½Ïá-2008 + VSB_FAW_JIABAO_1 = 4, //Ò»Æû-¼Ñ±¦»õ³µ-2011T50,T57 + VSB_FAW_JIABAO_2 = 5, //Ò»Æû-¼Ñ±¦Ãæ°ü³µ-2000 + VSB_FAW_JIABAO_3 = 6, //Ò»Æû-¼Ñ±¦Ãæ°ü³µ-2006 + VSB_FAW_JIABAO_4 = 7, //Ò»Æû-¼Ñ±¦Ãæ°ü³µ-2012,2011V50ÊæÊÊ°æ + VSB_FAW_JIABAO_5 = 8, //Ò»Æû-¼Ñ±¦Ãæ°ü³µ-2012,2011V70 + VSB_FAW_JIABAO_6 = 9, //Ò»Æû-¼Ñ±¦Ãæ°ü³µ-2013,2012,2011V52ʵÓÃÐÍ + VSB_FAW_JIABAO_7 = 10, //Ò»Æû-¼Ñ±¦Ãæ°ü³µ-2014,2013V80 + VSB_FAW_XIALI_1 = 11, //Ò»Æû-ÏÄÀû-1999,1997 + VSB_FAW_XIALI_2 = 12, //Ò»Æû-ÏÄÀû2000-2003,2002 + VSB_FAW_XIALI_3 = 13, //Ò»Æû-ÏÄÀûA+-2011,2010,2006,2005 + VSB_FAW_XIALI_4 = 14, //Ò»Æû-ÏÄÀûN3-2012 + VSB_FAW_XIALI_5 = 15, //Ò»Æû-ÏÄÀûN5-2014,2013,2011,2010,2009 + VSB_FAW_XIALI_6 = 16, //Ò»Æû-ÏÄÀûN7-2013 + VSB_FAW_AOWEI_1 = 17, //Ò»Æû-°ÂÍþJ5P-2005,2004,2003 + VSB_FAW_AOWEI_2 = 18, //Ò»Æû-°ÂÍþJ5P-4X2¸´ºÏÐÍÇ£Òý³µ,×Ôж³µ + VSB_FAW_AOWEI_3 = 19, //Ò»Æû-°ÂÍþJ5P-4X2Ç£Òý³µ,ж»õ³µ + VSB_FAW_AOWEI_4 = 20, //Ò»Æû-°ÂÍþJ5P-6X6Ô½Ò°×Ôж³µ + VSB_FAW_AOXING_1 = 21, //Ò»Æû-°ÂÐÇ-2004 + VSB_FAW_WEILE_1 = 22, //Ò»Æû-ÍþÀÖ-2004 + VSB_FAW_WEILE_2 = 23, //Ò»Æû-ÍþÀÖ-2008,2007 + VSB_FAW_WEIZI_1 = 24, //Ò»Æû-Íþ×Ë-2004 + VSB_FAW_WEIZHI_1 = 25, //Ò»Æû-ÍþÖ¾V2-2012ÊÖ¶¯CROSS + VSB_FAW_WEIZHI_2 = 26, //Ò»Æû-ÍþÖ¾V2-2012×Ô¶¯CROSS,2010 + VSB_FAW_WEIZHI_3 = 27, //Ò»Æû-ÍþÖ¾V5-2013,2012 + VSB_FAW_WEIZHI_4 = 28, //Ò»Æû-ÍþÖ¾ÈýÏá-2009,2008,2007 + VSB_FAW_WEIZHI_5 = 29, //Ò»Æû-ÍþÖ¾ÈýÏá-2011 + VSB_FAW_XIAOJIEFANG_1 = 30, //Ò»Æû-С½â·Å-90,109ÂíÁ¦ÇῨ + VSB_FAW_HANWEI_1 = 31, //Ò»Æû-º·ÍþJ5M-4X4ÔØ»õ³µ + VSB_FAW_HANWEI_2 = 32, //Ò»Æû-º·ÍþJ5M-6X6Ç£Òý³µ,6X4×Ôж³µ + VSB_FAW_HANWEI_3 = 33, //Ò»Æû-º·ÍþJ5M-8X8×Ôж³µ + VSB_FAW_XINDAWEI_1 = 34, //Ò»Æû-дóÍþ-2010 + VSB_FAW_XINHANWEI_1 = 35, //Ò»Æû-к·Íþ-2011 + VSB_FAW_SENYA_1 = 36, //Ò»Æû-É­ÑÅM80-2012,2011,2009 + VSB_FAW_TENGWEI_1 = 37, //Ò»Æû-ÌÚÍþL5M-ÖØ¿¨ + VSB_FAW_JIEFANG_1 = 38, //Ò»Æû-½â·ÅJ4R-A¿î + VSB_FAW_JIEFANG_2 = 39, //Ò»Æû-½â·ÅJ4R-×Ôж³µ,Ç£Òý³µ + VSB_FAW_JIEFANG_3 = 40, //Ò»Æû-½â·ÅJ6-2004 + VSB_FAW_JIEFANG_4 = 41, //Ò»Æû-½â·ÅJ6-ÖØ¿¨ + VSB_FAW_JIEFANG_5 = 42, //Ò»Æû-½â·ÅJ6L-Öп¨ + VSB_FAW_JIEFANG_6 = 43, //Ò»Æû-½â·ÅL5-A¿î + VSB_FAW_SAILONG_1 = 44, //Ò»Æû-ÈüÁú-Öп¨ + VSB_FAW_JUNWEI_1 = 45, //Ò»Æû-¿¥ÍþJ5K-Öп¨ + VSB_FAW_B50_1 = 46, //Ò»Æû-±¼ÌÚB50-2012,2011,2009 + VSB_FAW_B50_2 = 47 //Ò»Æû-±¼ÌÚB50-2013 +}VSB_FAW_CLASS; + + +//ÉÏÆû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SAICMOTOR_CLASS +{ + VSB_SAICMOTOR_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HONGYAN_JIESHI_1 = 1, // ÉÏÆûÒÀά¿ÂºìÑÒ-½Üʨ-2012 + VSB_DATONG_V80_1 = 2 // ÉÏÆû´óͨ-V80-2014,2013,2012,2011 +}VSB_SAICMOTOR_CLASS; + +//¶«ÄÏÆû³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SOUEAST_CLASS +{ + VSB_SOUEAST_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SOUEAST_V3_1 = 1, // ¶«ÄÏ-V3ÁâÔÃ-2011³¬ÖµÐÒ¸£°æ,2010,2009,2008 + VSB_SOUEAST_V3_2 = 2, // ¶«ÄÏ-V3ÁâÔÃ-2012 + VSB_SOUEAST_V3_3 = 3, // ¶«ÄÏ-V3ÁâÔÃ-2012Æì½¢°æ,2011,2010зç²É°æ + VSB_SOUEAST_V3_4 = 4, // ¶«ÄÏ-V3ÁâÔÃ-2012·ç²É°æ + VSB_SOUEAST_V5_1 = 5, // ¶«ÄÏ-V5ÁâÖÂ-2014,2013,2012 + VSB_SOUEAST_XIWANG_1 = 6, // ¶«ÄÏ-Ï£Íú-2011,2010 + VSB_SOUEAST_DELIKA_1 = 7, // ¶«ÄÏ-µÃÀû¿¨-2003,2002 + VSB_SOUEAST_DELIKA_2 = 8, // ¶«ÄÏ-µÃÀû¿¨-2005 + VSB_SOUEAST_DELIKA_3 = 9, // ¶«ÄÏ-µÃÀû¿¨-2008 + VSB_SOUEAST_DELIKA_4 = 10, // ¶«ÄÏ-µÃÀû¿¨-2009 + VSB_SOUEAST_LINGSHUAI_1 = 11, // ¶«ÄÏ-Áâ˧-2005,2004GLXi + VSB_SOUEAST_FULIKA_1 = 12, // ¶«ÄÏ-¸»Àû¿¨-2005 + VSB_SOUEAST_FULIKA_2 = 13 // ¶«ÄÏ-¸»Àû¿¨-2007 +}VSB_SOUEAST_CLASS; + + +//ÖÐÐËÆû³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ZTE_CLASS +{ + VSB_ZTE_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ZTE_WEIHU_1 = 1, // ÖÐÐË-Íþ»¢-2012,2010 + VSB_ZTE_WEIHU_2 = 2, // ÖÐÐË-Íþ»¢TUV-2010,2006 + VSB_ZTE_WUXIAN_1 = 3, // ÖÐÐË-ÎÞÏÞ-2008 + VSB_ZTE_WUXIAN_2 = 4 // ÖÐÐË-ÎÞÏÞ-2012,2011,2010,2009 +}VSB_ZTE_CLASS; + + +//ÖлªÆû³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ZHONGHUA_CLASS +{ + VSB_ZHONGHUA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ZHONGHUA_H230_1 = 1, // Öлª-H230-2012 + VSB_ZHONGHUA_H320_1 = 2, // Öлª-H320-2012 + VSB_ZHONGHUA_H330_1 = 3, // Öлª-H330-2013 + VSB_ZHONGHUA_H530_1 = 4, // Öлª-H530-2012,2011 + VSB_ZHONGHUA_V5_1 = 5, // Öлª-V5-2012,2011 + VSB_ZHONGHUA_ZUNCHI_1 = 6, // Öлª-×ð³Û-2004 + VSB_ZHONGHUA_ZUNCHI_2 = 7, // Öлª-×ð³Û-2005,2003 + VSB_ZHONGHUA_KUBAO_1 = 8, // Öлª-¿á±¦-2007 + VSB_ZHONGHUA_JUNJIE_1 = 9, // Öлª-¿¥½Ý-2010,2009,2008,2007,2006 + VSB_ZHONGHUA_JUNJIE_2 = 10, // Öлª-¿¥½Ý-2012,2011 + VSB_ZHONGHUA_JUNJIECROSS_1 = 11, // Öлª-¿¥½Ýcross-2010,2009 + VSB_ZHONGHUA_JUNJIEFRV_1 = 12, // Öлª-¿¥½ÝFRV-2009,2008 + VSB_ZHONGHUA_JUNJIEFRV_2 = 13, // Öлª-¿¥½ÝFRV-2010 + VSB_ZHONGHUA_JUNJIEFSV_1 = 14, // Öлª-¿¥½ÝFSV-2009 + VSB_ZHONGHUA_JUNJIEFSV_2 = 15, // Öлª-¿¥½ÝFSV-2010 + VSB_ZHONGHUA_JUNJIEFSV_3 = 16 // Öлª-¿¥½ÝFSV-2011 +}VSB_ZHONGHUA_CLASS; + + +//ÖйúÖØÆû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CNHTC_CLASS +{ + VSB_CNHTC_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CNHTC_HOKA_2 = 1, // ÖйúÖØÆû-HOKA-Ç£Òý³µ,×Ôж³µ + VSB_CNHTC_HOWO_1 = 2, // ÖйúÖØÆû-HOWO-A7 + VSB_CNHTC_HOWO_2 = 3, // ÖйúÖØÆû-HOWO-T7H + VSB_CNHTC_HOWO_3 = 4, // ÖйúÖØÆû-HOWO-ÇῨ + VSB_CNHTC_HOWO_4 = 5, // ÖйúÖØÆû-HOWOÖØ¿¨-Ç£Òý³µ + VSB_CNHTC_HOWO_5 = 6, // ÖйúÖØÆû-HOWOÖØ¿¨-×Ôж³µA + VSB_CNHTC_HOWO_6 = 7, // ÖйúÖØÆû-HOWOÖØ¿¨-×Ôж³µB + VSB_CNHTC_HOWO_7 = 8, // ÖйúÖØÆû-HOWOÖØ¿¨-ÔØ»õ³µA + VSB_CNHTC_HOWO_8 = 9, // ÖйúÖØÆû-HOWOÖØ¿¨-ÔØ»õ³µC + VSB_CNHTC_SITAIERWANG_1 = 10, // ÖйúÖØÆû-˹̫¶ûÍõ-Ç£Òý³µA,ÔØ»õ³µ,½Á°è³µ + VSB_CNHTC_HAOHAN_1 = 11, // ÖйúÖØÆû-ºÀå«-A¿î + VSB_CNHTC_HAOYUN_1 = 12, // ÖйúÖØÆû-ºÀÔË-Ç£Òý³µB,ÔØ»õ³µ,×Ôж³µ + VSB_CNHTC_JINWANGZI_1 = 13, // ÖйúÖØÆû-½ðÍõ×ÓÖØ¿¨-Ç£Òý³µB + VSB_CNHTC_HOKA_1 = 14 // ÖйúÖØÆû-HOKA-H7 +}VSB_CNHTC_CLASS; + +//ÖÐͨ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ZHONGTONG_CLASS +{ + VSB_ZHONGTONG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ZHONGTONG_KAICHI_1 = 1, // ÖÐͨ¿Í³µ-¿­³ÛA-A¿î + VSB_ZHONGTONG_LINGYU_1 = 2, // ÖÐͨ¿Í³µ-ÁìÓù-A¿î + VSB_ZHONGTONG_LINGXIU_1 = 3, // ÖÐͨ¿Í³µ-ÁìÐã-A¿î + VSB_ZHONGTONG_LINGHANG_1 = 4, // ÖÐͨ¿Í³µ-Á캽-A¿î + VSB_ZHONGTONG_SHIJI_1 = 5, // ÖÐͨ¿Í³µ-ÊÀ¼Í-A¿î + VSB_ZHONGTONG_KAIXUAN_1 = 6, // ÖÐͨ¿Í³µ-¿­Ðý-A¿î + VSB_ZHONGTONG_LINGYUN_1 = 7, // ÖÐͨ¿Í³µ-ÁìÔÏA-A¿î + VSB_ZHONGTONG_YANGGUANG_1 = 8 // ÖÐͨ¿Í³µ-Ñô¹â-A¿î +}VSB_ZHONGTONG_CLASS; + + +//¾ÅÁú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JIULONG_CLASS +{ + VSB_JIULONG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JIULONG_JIULONGA5_1 = 1, // ¾ÅÁú-¾ÅÁúA5-2011 +}VSB_JIULONG_CLASS; + +//ÖÚÌ©×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ZOTYE_CLASS +{ + VSB_ZOTYE_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ZOTYE_2008_2 = 1, // ÖÚÌ©-2008-2011,2010,2008 + VSB_ZOTYE_5008_1 = 2, // ÖÚÌ©-5008-2013,2011,2010,2008 + VSB_ZOTYE_Z300_1 = 3, // ÖÚÌ©-Z300-2013,2012 + VSB_ZOTYE_2008_1 = 4 // ÖÚÌ©-2008-2007 +}VSB_ZOTYE_CLASS; + +//ÒÀά¿Â×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_NAVECO_CLASS +{ + VSB_NAVECO_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_NAVECO_Daily_1 = 1, // ÒÀά¿Â-Daily-2006,2004,2003 + VSB_NAVECO_Power_1 = 2, // ÒÀά¿Â-Power-Daily + VSB_NAVECO_Turbo_1 = 3, // ÒÀά¿Â-Turbo-Daily-2014,2012,2011 + VSB_NAVECO_Venice_1 = 4, // ÒÀά¿Â-Venice-2011,2008 + VSB_NAVECO_BAODI_1 = 5, // ÒÀά¿Â-±¦µÏ-2012,2009 + VSB_NAVECO_DEYIHUOCHE_1 = 6, // ÒÀά¿Â-µÃÒâ»õ³µ-2011 + VSB_NAVECO_DULING_1 = 7 // ÒÀά¿Â-¶¼Áé-2010,2009,2007 +}VSB_NAVECO_CLASS; + +//±£Ê±½Ý×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_PORSCHE_CLASS +{ + VSB_PORSCHE_OTHER = 0, // ÆäËû£¨±£Áô£© + VBR_PORSCHE_PANAMERA_1 = 1, // ±£Ê±½Ý-panamera-2013,2012,2010 + VBR_PORSCHE_CAYENNE_1 = 2, // ±£Ê±½Ý-¿¨ÑçCayenne-2014,2013,2011,2010 +}VSB_PORSCHE_CLASS; + + +//¿ËÀ³Ë¹ÀÕ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CHRYSLER_CLASS +{ + VSB_CHRYSLER_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CHRYSLER_300C_1 = 1, // ¿ËÀ³Ë¹ÀÕ-300C-2007,2006,2004 + VSB_CHRYSLER_PTMANBUZHE_1 = 2, // ¿ËÀ³Ë¹ÀÕ-PTÂþ²½Õß-2007 +}VSB_CHRYSLER_CLASS; + +//¿­µÏÀ­¿Ë×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CADILLAC_CLASS +{ + VSB_CADILLAC_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CADILLAC_ATS_1 = 1, // ¿­µÏÀ­¿Ë-ATS-2014 + VSB_CADILLAC_CTS_1 = 2, // ¿­µÏÀ­¿Ë-CTS-2012 + VSB_CADILLAC_CTS_3 = 3, // ¿­µÏÀ­¿Ë-CTS-2012¾«Ó¢Ô˶¯ÐÍ,2011,2010,2009,2008 + VSB_CADILLAC_SLS_1 = 4, // ¿­µÏÀ­¿Ë-SLSÈüÍþ-2007,2006 + VSB_CADILLAC_SLS_2 = 5, // ¿­µÏÀ­¿Ë-SLSÈüÍþ-2012,2011,2010 + VSB_CADILLAC_SRX_1 = 6, // ¿­µÏÀ­¿Ë-SRX-2012,2011,2010,2009 + VSB_CADILLAC_CTS_2 = 7, // ¿­µÏÀ­¿Ë-CTS-2012,2009CTS + VSB_CADILLAC_KAILEIDE_1 = 8 // ¿­µÏÀ­¿Ë-¿­À×µÂ-2011,2010,2008,2007,2006 +}VSB_CADILLAC_CLASS; + + +//¿­ÂíKAMA×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_KAMA_CLASS +{ + VSB_KAMA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_KAMA_QINGKA_2 = 1, // ¿­ÂíKAMA-¿­Âí-ÇῨD + VSB_KAMA_FULAIKA_1 = 2, // ¿­ÂíKAMA-¸£À´¿¨-ÇῨA + VSB_KAMA_JINYUNKA_1 = 3, // ¿­ÂíKAMA-½ðÔË¿¨-ÇῨ + VSB_KAMA_JUNWEIKA_1 = 4, // ¿­ÂíKAMA-¿¥Íþ¿¨³µ-2014,2011 + VSB_KAMA_QINGKA_1 = 5 // ¿­ÂíKAMA-¿­Âí-ÇῨC +}VSB_KAMA_CLASS; + +//Á¦·«×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_LIFAN_CLASS +{ + VSB_LIFAN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_LIFAN_320_1 = 1, // Á¦·«-320-2012,2011,2009 + VSB_LIFAN_520_1 = 2, // Á¦·«-520-2007,2006 + VSB_LIFAN_520_2 = 3, // Á¦·«-520-2013,2011,2010,2008 + VSB_LIFAN_620_1 = 4, // Á¦·«-620-2012,2010,2009,2008 + VSB_LIFAN_X60_1 = 5, // Á¦·«-X60-2013,2012,2011 + VSB_LIFAN_FENGSHUN_1 = 6 // Á¦·«-·á˳-2011 +}VSB_LIFAN_CLASS; + + +//±±¾©×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BEIJING_CLASS +{ + VSB_BEIJING_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BEIJING_E_1 = 1, // ±±¾©Æû³µ-EϵÁÐÁ½Ïá-2014,2013,2012 +}VSB_BEIJING_CLASS; + +//±±±¼ÖØÆû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BEIBEN_CLASS +{ + VSB_BEIBEN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BEIBEN_NG80_1 = 1, // ±±±¼ÖØÆû-NG80-ÖØ¿¨A + VSB_BEIBEN_NG80_2 = 2, // ±±±¼ÖØÆû-NG80-ÖØ¿¨B + VSB_BEIBEN_NG80_3 = 3, // ±±±¼ÖØÆû-NG80-ÖØ¿¨C + VSB_BEIBEN_V3_1 = 4, // ±±±¼ÖØÆû-±±±¼V3-V3H1 + VSB_BEIBEN_V3_2 = 5 // ±±±¼ÖØÆû-±±±¼V3-ÖØ¿¨A +}VSB_BEIBEN_CLASS; + +//±±·½¿Í³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BEIFANG_CLASS +{ + VSB_BEIFANG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BEIFANG_A_1 = 1 // ±±·½¿Í³µ-¿Í³µ³µÐÍ1-A¿î +}VSB_BEIFANG_CLASS; + + +//±±ÆûÖÆÔì×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BAW_CLASS +{ + VSB_BAW_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BAW_YUSHENG007_1 = 1, // ±±ÆûÖÆÔì-Óòʤ007-2013,2011 + VSB_BAW_QILING_1 = 2, // ±±ÆûÖÆÔì-ÆìÁå-A¿î + VSB_BAW_LUBA_1 = 3, // ±±ÆûÖÆÔì-½°Ô-2004 + VSB_BAW_QISHI_1 = 4 // ±±ÆûÖÆÔì-ÆïÊ¿-2009,2007 +}VSB_BAW_CLASS; + +//±±ÆûÍþÍú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BQWEIWANG_CLASS +{ + VSB_BQWEIWANG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BQWEIWANG_205_1 = 1, // ±±ÆûÍþÍú-205-2013 + VSB_BQWEIWANG_306_1 = 2 // ±±ÆûÍþÍú-306-2014,2013,2011 +}VSB_BQWEIWANG_CLASS; + + +//»ªÆÕ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SMA_CLASS +{ + VSB_SMA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SMA_HAIYU_1 = 1, // »ªÆÕ-º£Óò-2007,2005,2004 + VSB_SMA_HAIYU_2 = 2, // »ªÆÕ-º£Óò-2007º£ÓòMB + VSB_SMA_HAISHANG_1 = 3, // »ªÆÕ-º£ÉÐ-2008,2005 + VSB_SMA_HAIJING_1 = 5, // »ªÆÕ-º£¾°-2010,2009 + VSB_SMA_HAIXUN_1 = 4, // »ªÆÕ-º£Ñ¸-2005,2004ì­·ç + VSB_SMA_HAIXUN_2 = 6, // »ªÆÕ-º£Ñ¸-2007,2006 +}VSB_SMA_CLASS; + +//»ªÁâÐÇÂí×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_XINGMA_CLASS +{ + VSB_XINGMA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_XINGMA_XINGKAIMA_1 = 1 // »ªÁâÐÇÂí-ÐÇ¿­Âí-Ç£Òý³µÐÍ1,ÔØ»õ³µÐÍ1 +}VSB_XINGMA_CLASS; + +//Ë«»·×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SHUANGHUAN_CLASS +{ + VSB_SHUANGHUAN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SHUANGHUAN_SCEO_1 = 1, // Ë«»·-SCEO-2011,2009,2006,2005 +}VSB_SHUANGHUAN_CLASS; + +//¼ªÆÕ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JEEP_CLASS +{ + VSB_JEEP_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JEEP_DAQIENUOJI_1 = 1, // ¼ªÆÕ-´óÇÐŵ»ù(½ø¿Ú)-2014,2013,2012,2011 + VSB_JEEP_DAQIENUOJI_2 = 2, // ¼ªÆÕ-´óÇÐŵ»ù(½ø¿Ú)-2014ÊæÏíµ¼º½°æ + VSB_JEEP_ZHINANZHE_1 = 3, // ¼ªÆÕ-Ö¸ÄÏÕß-2010,2007 + VSB_JEEP_ZHINANZHE_2 = 4, // ¼ªÆÕ-Ö¸ÄÏÕß-2014,2013,2012,2011 + VSB_JEEP_MUMAREN_1 = 5, // ¼ªÆÕ-ÄÁÂíÈË-2012ʹÃüÕÙ»½ÏÞÁ¿°æ,2011 + VSB_JEEP_MUMAREN_2 = 6, // ¼ªÆÕ-ÄÁÂíÈË-2014,2013,2012,2011,2010,2009,2008 + VSB_JEEP_ZIYOUKE = 7, // ¼ªÆÕ-×ÔÓÉ¿Í-2014,2013,2012,2011 +}VSB_JEEP_CLASS; + +//Æô³½×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_VENUCIA_CLASS +{ + VSB_VENUCIA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_VENUCIA_D50_1 = 1 // Æô³½-D50-2014,2013,2012 +}VSB_VENUCIA_CLASS; + +//¹þ·É×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HAFEI_CLASS +{ + VSB_HAFEI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HAFEI_XINMINYI_1 = 1, // ¹þ·É-ÐÂÃñÒâ»õ³µ-2010 + VSB_HAFEI_XINMINYI_2 = 2, // ¹þ·É-ÐÂÃñÒâÃæ°ü³µ-2012 + VSB_HAFEI_MINYI_1 = 3, // ¹þ·É-ÃñÒâ»õ³µ-2006 + VSB_HAFEI_MINYI_2 = 4, // ¹þ·É-ÃñÒâÃæ°ü³µ-2008 + VSB_HAFEI_SAIBAO_1 = 5, // ¹þ·É-Èü±ª¢ó-2012 + VSB_HAFEI_SAIMA_1 = 6, // ¹þ·É-ÈüÂí-2002 + VSB_HAFEI_SAIMA_2 = 7, // ¹þ·É-ÈüÂí-2004,2003 + VSB_HAFEI_SAIMA_3 = 8, // ¹þ·É-ÈüÂí-2009 + VSB_HAFEI_LUBAO_1 = 9, // ¹þ·É-·±¦-2004 + VSB_HAFEI_LUBAO_2 = 10, // ¹þ·É-·±¦-2008,2007 + VSB_HAFEI_LUBAO_3 = 11, // ¹þ·É-·±¦-2012 + VSB_HAFEI_LUZUNXIAOBAWANG_1 = 12, // ¹þ·É-·×ðС°ÔÍõ-2011,2010 + VSB_HAFEI_RUIYI_1 = 13, // ¹þ·É-ÈñÒâ-2009 + VSB_HAFEI_JUNYI_1 = 14 // ¹þ·É-¿¥Òâ-2012,2010 +}VSB_HAFEI_CLASS; + +//ÌÆ¿¥Å·Áå×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_TKING_CLASS +{ + VSB_TKING_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_TKING_OUGUAN_1 = 1, // ÌÆ¿¥Å·Áå-Å·¹Ú-2011 + VSB_TKING_OUGUAN_2 = 2, // ÌÆ¿¥Å·Áå-Å·¹Ú-ÇῨB + VSB_TKING_OUTENG_1 = 3, // ÌÆ¿¥Å·Áå-Å·ÌÚ-ÇῨA + VSB_TKING_FUXING_1 = 4, // ÌÆ¿¥Å·Áå-¸£ÐÇ-2006 + VSB_TKING_QINGKAWANG_1 = 5, // ÌÆ¿¥Å·Áå-ÇῨÍõ-ÇῨ + VSB_TKING_AFANDA_1 = 6, // ÌÆ¿¥Å·Áå-°¢·²´ï-ÖÐÖØ¿¨ + VSB_TKING_JUNQI_1 = 7 // ÌÆ¿¥Å·Áå-¿¥÷è-ÖÐÖØ¿¨A +}VSB_TKING_CLASS; + +//´óÓî×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_DAEWOO_CLASS +{ + VSB_DAEWOO_OTHER = 0, // ÆäËû£¨±£Áô£© + VBR_DAEWOO_6960H3_1 = 1 // ´óÓî-6960H3-A¿î +}VSB_DAEWOO_CLASS; + +//´óÔËÆû³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_DAYUN_CLASS +{ + VSB_DAYUN_OTHER = 0, // ÆäËû£¨±£Áô£© + VBR_DAYUN_ZHONGKA_1 = 1 // ´óÔËÆû³µ-ÖØ¿¨-A¿î +}VSB_DAYUN_CLASS; + +//±¼ÌÚ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BESTURN_CLASS +{ + VSB_BESTURN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BESTURN_B70_1 = 1, // ±¼ÌÚ-B70-2009,2007,2006 + VSB_BESTURN_B70_2 = 2, // ±¼ÌÚ-B70-2011 + VSB_BESTURN_B70_3 = 3, // ±¼ÌÚ-B70-2011¾«Ó¢ÐÍ,2010 + VSB_BESTURN_B70_4 = 4, // ±¼ÌÚ-B70-2012 + VSB_BESTURN_B90_1 = 5, // ±¼ÌÚ-B90-2012 + VSB_BESTURN_AOXING_1 = 6 // Ò»Æû-°ÂÐÇ-2004 +}VSB_BESTURN_CLASS; + +//Íþ÷ë×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_WEILIN_CLASS +{ + VSB_WEILIN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_WEILIN_H3_1 = 1, // Íþ÷ë-H3-2011 + VSB_WEILIN_V5_1 = 2, // Íþ÷ë-V5-2012,2009 + VSB_WEILIN_X5_1 = 3 // Íþ÷ë-X5-2012,2011,2010 +}VSB_WEILIN_CLASS; + +//Óîͨ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_YUTONG_CLASS +{ + VSB_YUTONG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_YUTONG_8XI_1 = 1, // Óîͨ-8ϵ-2012,2005 + VSB_YUTONG_KECHE_1 = 2, // Óîͨ-¿Í³µ³µÐÍ10-2013,2010 + VSB_YUTONG_KECHE_3 = 3, // Óîͨ-¿Í³µ³µÐÍ2-A¿î + VSB_YUTONG_KECHE_4 = 4, // Óîͨ-¿Í³µ³µÐÍ8-2004 + VSB_YUTONG_KECHE_5 = 5, // Óîͨ-¿Í³µ³µÐÍ9-2014 + VSB_YUTONG_KECHE_2 = 6 // Óîͨ-¿Í³µ³µÐÍ12-A¿î +}VSB_YUTONG_CLASS; + +//°²¿­×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ANKAI_CLASS +{ + VSB_ANKAI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ANKAI_KECHE_1 = 1, // °²¿­-¿Í³µ³µÐÍ1-A¿î + VSB_ANKAI_KECHE_2 = 2 // °²¿­-¿Í³µ³µÐÍ3-A¿î +}VSB_ANKAI_CLASS; + +//±¦¿¥×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BAOJUN_CLASS +{ + VSB_BAOJUN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BAOJUN_630_1 = 1 // ±¦¿¥-±¦¿¥630-2014,2013,2012,2011 +}VSB_BAOJUN_CLASS; + +//±öÀû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_BINLI_CLASS +{ + VSB_BINLI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_BINLI_OULU_1 = 1 // ±öÀû-ŷ½-2009,2008 +}VSB_BINLI_CLASS; + +//¹ãÆû´«ì÷×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_TRUMPCHE_CLASS +{ + VSB_TRUMPCHE_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_TRUMPCHE_GA5_1 = 1, // ¹ãÆû´«ì÷-GA5-2012,2011 + VSB_TRUMPCHE_GA5_2 = 3, // ¹ãÆû´«ì÷-GA5-2013,2012×Ô¶¯¾«Ó¢°æ + VSB_TRUMPCHE_GS5_1 = 2 // ¹ãÆû´«ì÷-GS5-2014,2013,2012 +}VSB_TRUMPCHE_CLASS; + +//¹ãÆû¼ª°Â ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_GONOW_CLASS +{ + VSB_GONOW_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_GONOW_G3_1 = 1, // ¹ãÆû¼ª°Â-G3-2011 + VSB_GONOW_G5_1 = 2, // ¹ãÆû¼ª°Â-G5-2012,2011 + VSB_GONOW_SHUAIJIAN_1 = 4, // ¹ãÆû¼ª°Â-˧½¢-2012,2009 + VSB_GONOW_XINGWANGM1_1 = 3, // ¹ãÆû¼ª°Â-ÐÇÍúM1-2012 + VSB_GONOW_CAIYUN500_1 = 5 // ¹ãÆû¼ª°Â-²ÆÔË500-2010 +}VSB_GONOW_CLASS; + +//ÇìÁå×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ISUZU_CLASS +{ + VSB_ISUZU_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ISUZU_ZHONGXINGSHANGYONG_1 = 1, // ÇìÁå-ÖÐÐÍÉÌÓóµ-2011 + VSB_ISUZU_WUSHILINGPIKA_1 = 2, // ÇìÁå-ÎåÊ®ÁåƤ¿¨-2009 + VSB_ISUZU_WUSHILINGPIKA_2 = 3, // ÇìÁå-ÎåÊ®ÁåƤ¿¨-2014,2009 + VSB_ISUZU_JINGJIZHE_1 = 4 // ÇìÁå-¾º¼¼Õß-2004,2002 +}VSB_ISUZU_CLASS; + + +//¿ªÈð×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_KARRY_CLASS +{ + VSB_KARRY_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_KARRY_YOU_2 = 1, // ¿ªÈð-ÓÅÓÅ-2013,2012 + VSB_KARRY_YOUJIN_1 = 2, // ¿ªÈð-Óž¢-2012,2011»ù±¾ÐÍ,2010 + VSB_KARRY_YOUSHENG_1 = 3, // ¿ªÈð-ÓÅʤ-2010 + VSB_KARRY_YOUSHENG_2 = 4, // ¿ªÈð-ÓÅʤ-2012,2011 + VSB_KARRY_YOUYA = 5, // ¿ªÈð-ÓÅÑÅ-2012,2011,2007 + VSB_KARRY_YOU_1 = 6 // ¿ªÈð-ÓÅÓÅ-2011,2010,2009 +}VSB_KARRY_CLASS; + +//½Ý±ª×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_GAGUAR_CLASS +{ + VSB_GAGUAR_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_GAGUAR_XF_1 = 1, // ½Ý±ª-XF-2014,2013 + VSB_GAGUAR_XJ_1 = 2 // ½Ý±ª-XJ-2014,2013,2012,2011,2010 +}VSB_GAGUAR_CLASS; + +//˹°Í³×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SUBARU_CLASS +{ + VSB_SUBARU_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SUBARU_AOHU_1 = 1, // ˹°Í³-°Á»¢-2012,2011,2010 + VSB_SUBARU_LISHI_1 = 2, // ˹°Í³-Á¦Ê¨½Î³µ-2008,2006 + VSB_SUBARU_LISHI_2 = 3, // ˹°Í³-Á¦Ê¨½Î³µ-2011,2010 + VSB_SUBARU_XV_1 = 4, // ˹°Í³-˹°Í³XV-2014,2012 + VSB_SUBARU_SENLINREN_1 = 5, // ˹°Í³-É­ÁÖÈË-2007,2006 + VSB_SUBARU_SENLINREN_2 = 6 // ˹°Í³-É­ÁÖÈË-2012,2011,2010,2009,2008 +}VSB_SUBARU_CLASS; + +//ʱ´úÆû³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ERA_CLASS +{ + VSB_ERA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ERA_XIAOKA_1 = 1, // ʱ´úÆû³µ-С¿¨Ö®ÐÇ-С¿¨Ö®ÐÇ1,2,Q2 + VSB_ERA_XIAOKA_3 = 2, // ʱ´úÆû³µ-С¿¨Ö®ÐÇ-С¿¨Ö®ÐÇ5 + VSB_ERA_XIAOKA_4 = 3, // ʱ´úÆû³µ-С¿¨Ö®ÐÇ-¸£Èñ + VSB_ERA_KANGRUI_1 = 4, // ʱ´úÆû³µ-¿µÈð-¿µÈðH1 + VSB_ERA_KANGRUI_2 = 5, // ʱ´úÆû³µ-¿µÈð-¿µÈðH3 + VSB_ERA_KANGRUI_3 = 6, // ʱ´úÆû³µ-¿µÈð-¿µÈðK1,KQ1 + VSB_ERA_RUIWO_1 = 7, // ʱ´úÆû³µ-ÈðÎÖ-RC1 + VSB_ERA_RUIWO_2 = 8, // ʱ´úÆû³µ-ÈðÎÖ-RC2 + VSB_ERA_RUIWO_3 = 9, // ʱ´úÆû³µ-ÈðÎÖ-ÈðÎÖIIÇῨA + VSB_ERA_JINGANG = 10, // ʱ´úÆû³µ-½ð¸Õ-½ð¸Õ568 + VSB_ERA_LINGHANG_1 = 11, // ʱ´úÆû³µ-Á캽-Á캽2 + VSB_ERA_LINGHANG_2 = 12, // ʱ´úÆû³µ-Á캽-Á캽3 + VSB_ERA_YULING_1 = 13, // ʱ´úÆû³µ-Ô¦Áâ-Ô¦ÁâV1 + VSB_ERA_YULING_2 = 14, // ʱ´úÆû³µ-Ô¦Áâ-Ô¦ÁâV5,VQ5 + VSB_ERA_YULING_3 = 15, // ʱ´úÆû³µ-Ô¦Áâ-Ô¦ÁâVQ1,VQ2 + VSB_ERA_YULING_4 = 17, // ʱ´úÆû³µ-Ô¦Áâ-ºèÔË + VSB_ERA_XIAOKA_2 = 17, // ʱ´úÆû³µ-С¿¨Ö®ÐÇ-С¿¨Ö®ÐÇ3 +}VSB_ERA_CLASS; + +//²ýºÓ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CHANGHE_CLASS +{ + VSB_CHANGHE_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CHANGHE_CH6321_1 = 1, // ²ýºÓ-CH6321-2000 + VSB_CHANGHE_DANSHUANGPAI_1 = 2, // ²ýºÓ-²ýºÓе¥Ë«ÅÅ-1999 + VSB_CHANGHE_AIDIER_1 = 3, // ²ýºÓ-°®µÏ¶û-2004 + VSB_CHANGHE_AIDIER_2 = 4, // ²ýºÓ-°®µÏ¶û¢ò-2007,2006 + VSB_CHANGHE_FURUIDA_1 = 5 // ²ýºÓ-¸£Èð´ïÃæ°ü³µ-2014,2013,2011,2009 +}VSB_CHANGHE_CLASS; + +//Å·±¦×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_OPEL_CLASS +{ + VSB_OPEL_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_OPEL_YATE_1 = 1 // Å·±¦-ÑÅÌØ-2010GTCÈ«¾°·çµ²°æ,2007,2006 +}VSB_OPEL_CLASS; + +//ÓÀÔ´×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JONWAY_CLASS +{ + VSB_JONWAY_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JONWAY_A380_1 = 1 // ÓÀÔ´-A380-2010,2009,2008 +}VSB_JONWAY_CLASS; + +//½­ÄÏ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JIANGNAN_CLASS +{ + VSB_JIANGNAN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JIANGNAN_TT_1 = 1 // ½­ÄÏ-½­ÄÏTT-2011,2010,2004 +}VSB_JIANGNAN_CLASS; + +//¼ªÀûÈ«ÇòÓ¥×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_GLEAGLE_CLASS +{ + VSB_GLEAGLE_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_GLEAGLE_EAGLE_GC7_1 = 1, // ¼ªÀûÈ«ÇòÓ¥-GC7-2013,2012 + VSB_GLEAGLE_EAGLE_GX2_1 = 2, // ¼ªÀûÈ«ÇòÓ¥-GX2-2012,2011 + VSB_GLEAGLE_EAGLE_GX7_1 = 3, // ¼ªÀûÈ«ÇòÓ¥-GX7-2013,2012 + VSB_GLEAGLE_EAGLE_PANDA_1 = 4, // ¼ªÀûÈ«ÇòÓ¥-ÐÜè-2013,2011,2010,2009 + VSB_GLEAGLE_EAGLE_ZIYOUJIAN_1 = 5, // ¼ªÀûÈ«ÇòÓ¥-×ÔÓɽ¢-2009¾«Ö±ê×¼ÐÍ,2007 + VSB_GLEAGLE_EAGLE_ZIYOUJIAN_2 = 6, // ¼ªÀûÈ«ÇòÓ¥-×ÔÓɽ¢-2010,2009,2008,2006,2005 + VSB_GLEAGLE_EAGLE_ZIYOUJIAN_3 = 7, // ¼ªÀûÈ«ÇòÓ¥-×ÔÓɽ¢-2012,2011 + VSB_GLEAGLE_EAGLE_YUANJING_1 = 8, // ¼ªÀûÈ«ÇòÓ¥-Ô¶¾°-2011,2010,2009,2008,2006 + VSB_GLEAGLE_EAGLE_YUANJING_2 = 9, // ¼ªÀûÈ«ÇòÓ¥-Ô¶¾°-2013,2012 +}VSB_GLEAGLE_CLASS; + +//¼ªÀûµÛºÀ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_EMGRAND_CLASS +{ + VSB_EMGRAND_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_EMGRAND_EC7_2 = 1, // ¼ªÀûµÛºÀ-EC7-2013 + VSB_EMGRAND_EC7_3 = 2, // ¼ªÀûµÛºÀ-EC7-RV + VSB_EMGRAND_EC8_1 = 3, // ¼ªÀûµÛºÀ-EC8-2013,2011,2010 + VSB_EMGRAND_EC7_1 = 4 // ¼ªÀûµÛºÀ-EC7-2012,2010,2009 +}VSB_EMGRAND_CLASS; + + +//¼ªÀûÓ¢Â××ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_ENGLON_CLASS +{ + VSB_ENGLON_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_ENGLON_SC3_1 = 1, // ¼ªÀûÓ¢Â×-SC3-2012 + VSB_ENGLON_SC5_1 = 2, // ¼ªÀûÓ¢Â×-SC5-RV-2012 + VSB_ENGLON_SC6_1 = 3, // ¼ªÀûÓ¢Â×-SC6-2012 + VSB_ENGLON_SC7_1 = 4, // ¼ªÀûÓ¢Â×-SC7-2013,2012,2011,2010 + VSB_ENGLON_SX7_1 = 5, // ¼ªÀûÓ¢Â×-SX7-2014,2013 + VSB_ENGLON_JINGANG_1 = 6, // ¼ªÀûÓ¢Â×-½ð¸Õ-2010,2007,2006 + VSB_ENGLON_JINYING_1 = 7 // ¼ªÀûÓ¢Â×-½ðÓ¥-2011,2010,2008 +}VSB_ENGLON_CLASS; + + +//½­»´-×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JAC_CLASS +{ + VSB_JAC_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JAC_TONGYUE_1 = 1, // ½­»´-ͬÔÃ-2012,2010,2008 + VSB_JAC_HEYUE_1 = 2, // ½­»´-ºÍÔÃ-2012,2011,2010 + VSB_JAC_HEYUEA30_2 = 3, // ½­»´-ºÍÔÃA30-2013 + VSB_JAC_HEYUERS_3 = 4, // ½­»´-ºÍÔÃRS-2012,2011 + VSB_JAC_HAOYUN_1 = 5, // ½­»´-ºÃÔË-ÇῨ1 + VSB_JAC_WEILING_2 = 6, // ½­»´-ÍþÁå-ÅÅ°ëÇῨ + VSB_JAC_WEILING_3 = 7, // ½­»´-ÍþÁå-À¸°åÔØ»õ³µ + VSB_JAC_WEILING_4 = 8, // ½­»´-ÍþÁå-ÇῨ + VSB_JAC_KECHE_1 = 9, // ½­»´-¿Í³µ-A¿î + VSB_JAC_BINYUE_1 = 10, // ½­»´-±öÔÃ-2010,2008 + VSB_JAC_SHUAILING_2 = 11, // ½­»´-˧Áå-ÇῨ + VSB_JAC_KANGLING_1 = 12, // ½­»´-¿µÁå-ÇῨ1 + VSB_JAC_KANGLING_2 = 13, // ½­»´-¿µÁå-ÇῨ2 + VSB_JAC_YUEYUE_1 = 14, // ½­»´-ÔÃÔÃ-2013,2012,2011,2010 + VSB_JAC_XINGRUI_1 = 15, // ½­»´-ÐÇÈñ-2012,2011 + VSB_JAC_GEERFA_H_1 = 16, // ½­»´-¸ñ¶û·¢H-À¸°åÔØ»õ³µ + VSB_JAC_GEERFA_K_2 = 17, // ½­»´-¸ñ¶û·¢K-ÖØ¿¨1 + VSB_JAC_GEERFA_K_3 = 18, // ½­»´-¸ñ¶û·¢K-ÖØ¿¨2 + VSB_JAC_GEERFA_M_4 = 19, // ½­»´-¸ñ¶û·¢M-À¸°åÔØ»õ³µ + VSB_JAC_RUIFENG_1 = 20, // ½­»´-Èð·ç-2011,2009,2007ÊÖ¶¯ + VSB_JAC_RUIFENG_2 = 21, // ½­»´-Èð·ç-2013,2012,2011,2010,2007,2005 + VSB_JAC_RUIFENG_3 = 22, // ½­»´-Èð·çM5-2012,2011 + VSB_JAC_RUIFENG_4 = 23, // ½­»´-Èð·çS5-2013 + VSB_JAC_RUIYING_1 = 24, // ½­»´-ÈðÓ¥-2009,2007 + VSB_JAC_RUIYING_2 = 25, // ½­»´-ÈðÓ¥-2013,2012,2011 + VSB_JAC_JUNLING_2 = 26, // ½­»´-¿¥Áå-Õ­Ìå°æ,ÖÐÌå°æ + VSB_JAC_WEILING_1 = 27, // ½­»´-ÍþÁå-ÏáʽÇῨ + VSB_JAC_SHUAILING_1 = 28, // ½­»´-˧Áå-ÎåÊ®Áå + VSB_JAC_RUILING_1 = 29, // ½­»´-ÈðÁå-2012 + VSB_JAC_JUNLING_1 = 30 // ½­»´-¿¥Áå-Æì½¢°æ +}VSB_JAC_CLASS; + + +//½­Áå×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_JMC_CLASS +{ + VSB_JMC_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_JMC_KAIYUN_1 = 1, // ½­Áå-¿­ÔË-102,109ÂíÁ¦ÇῨ + VSB_JMC_KAIYUN_2 = 2, // ½­Áå-¿­ÔË-95ÂíÁ¦ÇῨ + VSB_JMC_YUHU_1 = 3, // ½­Áå-Óò»¢-2012 + VSB_JMC_BAODIAN_1 = 4, // ½­Áå-±¦µä-2007 + VSB_JMC_BAODIAN_2 = 5, // ½­Áå-±¦µä-2009±ê×¼ÐÍ,2008 + VSB_JMC_BAODIAN_3 = 6, // ½­Áå-±¦µä-2014,2012,2009ºÀ»ªÐÍ + VSB_JMC_BAOWEI_1 = 7, // ½­Áå-±¦Íþ-2005 + VSB_JMC_BAOWEI_2 = 8, // ½­Áå-±¦Íþ-2009 + VSB_JMC_QUANSHUN_1 = 9, // ½­Áå-¸£ÌØÐÂÊÀ´úȫ˳-2010,2008 + VSB_JMC_QUANSHUN_2 = 10, // ½­Áå-¾­µäȫ˳-2006 + VSB_JMC_QUANSHUN_3 = 11, // ½­Áå-¾­µäȫ˳-2013,2011,2010 + VSB_JMC_SHUNDA_1 = 12, // ½­Áå-˳´ï-2004,2003 + VSB_JMC_SHUNDA_2 = 13, // ½­Áå-˳´ï-2011,2010,2008 + VSB_JMC_YUSHENG_1 = 14, // ½­Áå-Ԧʤ-2013 + VSB_JMC_YUSHENG_2 = 15 // ½­Áå-Ԧʤ-2013ÊÖ¶¯ÌØ×°°æ,2012,2011 +}VSB_JMC_CLASS; + +// ÎÖ¶ûÎÖ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_VOLVO_CLASS +{ + VSB_VOLVO_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_VOLVO_C30_1 = 1, // ÎÖ¶ûÎÖ-C30-2013,2012,2011,2010 + VSB_VOLVO_S40_1 = 2, // ÎÖ¶ûÎÖ-S40-2012,2011,2010,2009,2008,2007 + VSB_VOLVO_S60_1 = 3, // ÎÖ¶ûÎÖ-S60-2003 + VSB_VOLVO_S60_2 = 4, // ÎÖ¶ûÎÖ-S60-2013,2012,2011 + VSB_VOLVO_S80L_1 = 5, // ÎÖ¶ûÎÖ-S80L-2012,2011,2010,2009 + VSB_VOLVO_XC60_1 = 6, // ÎÖ¶ûÎÖ-XC60-2013,2012,2011,2010,2009 + VSB_VOLVO_XC90_1 = 7 // ÎÖ¶ûÎÖ-XC90-2013,2012,2011,2008 +}VSB_VOLVO_CLASS; + +// º£¸ñ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HIGER_CLASS +{ + VSB_HIGER_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HIGER_H8_1 = 1, // º£¸ñ-H8-A¿î + VSB_HIGER_H92_1 = 2, // º£¸ñ-H92-A¿î + VSB_HIGER_V7_1 = 3, // º£¸ñ-V7,V8-2006 + VSB_HIGER_KECHE_1 = 4, // º£¸ñ-¿Í³µ³µÐÍ5-A¿î + VSB_HIGER_LONGWEI_1 = 5, // º£¸ñ-ÁúÍþ-2012,2011 + VSB_HIGER_H7V_1 = 6 // º£¸ñ-º£¸ñH7V-2010 +}VSB_HIGER_CLASS; + +// Èð÷è×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_RUILIN_CLASS +{ + VSB_RUILIN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_RUILIN_G3_1 = 1, // Èð÷è-G3-2012,2010 + VSB_RUILIN_G5_1 = 2, // Èð÷è-G5-2012,2011,2010 + VSB_RUILIN_M1_1 = 3, // Èð÷è-M1-2013,2011,2010,2009 + VSB_RUILIN_X1_1 = 4, // Èð÷è-X1-2012A,2011,2010 + VSB_RUILIN_X1_2 = 5 // Èð÷è-X1-2012B +}VSB_RUILIN_CLASS; + +// ÉêÁú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SHENLONG_CLASS +{ + VSB_SHENLON_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SHENLONG_KECHE_1 = 1 //ÉêÁú¿Í³µ-¿Í³µ³µÐÍ4-A¿î +}VSB_SHENLONG_CLASS; + +// ¸£Ìï×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_FOTON_CLASS +{ + VSB_FOTON_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_FOTON_AOLING_1 = 1, // ¸£Ìï-°ÂÁå-Öп¨ + VSB_FOTON_AOLING_2 = 2, // ¸£Ìï-°ÂÁå-Ïáʽ»õ³µ + VSB_FOTON_AOLING_3 = 3, // ¸£Ìï-°ÂÁå-°ÂÁåTX,CTX + VSB_FOTON_OUMAN_1 = 4, // ¸£Ìï-Å·Âü-GTL6ϵB + VSB_FOTON_OUMAN_2 = 5, // ¸£Ìï-Å·Âü-TX6ϵ,9ϵ + VSB_FOTON_OUMAN_3 = 6, // ¸£Ìï-Å·Âü-Å·ÂüÖØ¿¨1 + VSB_FOTON_OUMAN_4 = 7, // ¸£Ìï-Å·Âü-ÐÛʨ6ϵ,9ϵ + VSB_FOTON_OUHUI_1 = 8, // ¸£Ìï-Å·»Ô¿Í³µ-D¿î + VSB_FOTON_OUMAKE_1 = 9, // ¸£Ìï-Å·Âí¿É-3ϵ + VSB_FOTON_OUMAKE_2 = 10, // ¸£Ìï-Å·Âí¿É-5ϵ + VSB_FOTON_SAPU_1 = 11, // ¸£Ìï-ÈøÆÕ-2011 + VSB_FOTON_SAPU_3 = 12, // ¸£Ìï-ÈøÆÕ-2011²ñÓ͹²¹ì + VSB_FOTON_MENGPAIKE_1 = 13, // ¸£Ìï-ÃÉÅÉ¿Ë-2013 + VSB_FOTON_MIDI_1 = 14, // ¸£Ìï-ÃÔµÏ-2011,2009 + VSB_FOTON_FENGJING_1 = 15, // ¸£Ìï-·ç¾°ÏµÁÐ-2012,2011,2009 + VSB_FOTON_SAPU_2 = 16 // ¸£Ìï-ÈøÆÕ-2011ËÄÇýÕ÷·þÕßZ7 +}VSB_FOTON_CLASS; + +//¸£µÏ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_FODAY_CLASS +{ + VSB_FODAY_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_FODAY_CHAOREN_1 = 1, // ¸£µÏ-С³¬ÈËƤ¿¨-2009,2006 + VSB_FODAY_CHAOREN_2 = 2, // ¸£µÏ-С³¬ÈËƤ¿¨-2011 + VSB_FODAY_TANSUOZHE_1 = 3, // ¸£µÏ-̽Ë÷Õß6-2013,2011,2010 + VSB_FODAY_TANSUOZHE_2 = 4, // ¸£µÏ-̽Ë÷Õߢò-2011,2010,2009 + VSB_FODAY_TANSUOZHE_3 = 5, // ¸£µÏ-̽Ë÷Õߢó-2011,2004 + VSB_FODAY_XIONGSHI_1 = 6 // ¸£µÏ-ÐÛʨF16Ƥ¿¨-2012 +}VSB_FODAY_CLASS; + +// ºìÆì×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HONGQI_CLASS +{ + VSB_HONGQI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HONGQI_MINGSHI_1 = 1 // ºìÆì-Ã÷ÊË-2007,2003,2001,2000,1999 +}VSB_HONGQI_CLASS; + + +// ÄÉÖÇ½Ý ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_LUXGEN_CLASS +{ + VSB_LUXGEN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_LUXGEN_DASEVEN_1 = 1 // ÄÉÖǽÝ-´ó7-SUV +}VSB_LUXGEN_CLASS; + +// ÏÄÀû×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_XIALI_CLASS +{ + VSB_XIALI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_XIALI_QIBING_1 = 1, // ÃÀÑÇ(ÏÄÀû)-Ææ±ø-2010 +}VSB_XIALI_CLASS; + +// Êæ³Û¿Í³µ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SHUCHI_CLASS +{ + VSB_SHUCHI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SHUCHI_A_1 = 1 // Êæ³Û¿Í³µ-¿Í³µ-A¿î +}VSB_SHUCHI_CLASS; + +//Ó¢·ÆÄáµÏ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_INFINITI_CLASS +{ + VSB_INFINITI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_INFINITI_EX_1 = 1, // Ó¢·ÆÄáµÏ-EX-2013,2011,2010,2009,2008 + VSB_INFINITI_FX_1 = 2, // Ó¢·ÆÄáµÏ-FX-2007 + VSB_INFINITI_FX_2 = 3, // Ó¢·ÆÄáµÏ-FX-2011,2010,2009 + VSB_INFINITI_FX_3 = 4, // Ó¢·ÆÄáµÏ-FX-2013,2012FX35 + VSB_INFINITI_G_1 = 5, // Ó¢·ÆÄáµÏ-G-2013,2010 + VSB_INFINITI_JX_1 = 6 // Ó¢·ÆÄáµÏ-JX-2013,2011 +}VSB_INFINITI_CLASS; + + +// Á«»¨×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_LOTUS_CLASS +{ + VSB_LOTUS_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_LOTUS_L3_1 = 1, // Á«»¨-L3ÈýÏá-2010ºÀ»ªÐÍ,2009 + VSB_LOTUS_L3_2 = 2 // Á«»¨-L5ÈýÏá-2012,2011 +}VSB_LOTUS_CLASS; + +//·ÆÑÇÌØ×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_FIAT_CLASS +{ + VSB_FIAT_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_FIAT_FEIYUE_1 = 1 // ·ÆÑÇÌØ-·ÆÔ¾-2014,2013,2012 +}VSB_FIAT_CLASS; + +//Ú©¸è×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_OGA_CLASS +{ + VSB_OGA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_OGA_MDX_1 = 1, // Ú©¸è-MDX-2010 + VSB_OGA_MDX_2 = 2 // Ú©¸è-MDX-2011 +}VSB_OGA_CLASS; + + + +// Ô¾½ø×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_YUEJIN_CLASS +{ + VSB_YUEJIN_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_YUEJIN_SHUAIHU_1 = 1, // Ô¾½ø-˧»¢-H100,H300 + VSB_YUEJIN_CAISHEN_1 = 2, // Ô¾½ø-²ÆÉñ-S100 + VSB_YUEJIN_CAISHEN_2 = 3, // Ô¾½ø-²ÆÉñ-S300 + VSB_YUEJIN_CAISHEN_3 = 4 // Ô¾½ø-²ÆÉñ-S500 +}VSB_YUEJIN_CLASS; + +//Ò°Âí×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_YEMA_CLASS +{ + VSB_YEMA_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_YEMA_F99_1 = 1 // Ò°Âí-F99-2012,2011,2010,2009 +}VSB_YEMA_CLASS; + +//½ðÁú×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SZKINGLONG_CLASS +{ + VSB_SZKINGLONG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SZKINGLONG_BUS11_1 = 1, // ½ðÁú-¿Í³µ³µÐÍ11-A¿î + VSB_SZKINGLONG_BUS12_1 = 2, // ½ðÁú-¿Í³µ³µÐÍ12-A¿î + VSB_SZKINGLONG_BUS13_1 = 3, // ½ðÁú-¿Í³µ³µÐÍ13-A¿î + VSB_SZKINGLONG_BUS14_1 = 4, // ½ðÁú-¿Í³µ³µÐÍ14-A¿î + VSB_SZKINGLONG_BUS16_1 = 5, // ½ðÁú-¿Í³µ³µÐÍ16-A¿î + VSB_SZKINGLONG_BUS18_1 = 6, // ½ðÁú-¿Í³µ³µÐÍ18-A¿î + VSB_SZKINGLONG_BUS1_1 = 7, // ½ðÁú-¿Í³µ³µÐÍ1-A¿î + VSB_SZKINGLONG_BUS20_1 = 8, // ½ðÁú-¿Í³µ³µÐÍ20-A¿î + VSB_SZKINGLONG_BUS2_1 = 9, // ½ðÁú-¿Í³µ³µÐÍ2-A¿î + VSB_SZKINGLONG_BUS5_1 = 10, // ½ðÁú-¿Í³µ³µÐÍ5-A¿î + VSB_SZKINGLONG_BUS6_1 = 11, // ½ðÁú-¿Í³µ³µÐÍ6-A¿î + VSB_SZKINGLONG_BUS9_1 = 12, // ½ðÁú-¿Í³µ³µÐÍ9-A¿î + VSB_SZKINGLONG_BUS10_1 = 13, // ½ðÁú-¿Í³µ³µÐÍ10-A¿î + VSB_SZKINGLONG_BUS15_1 = 14 // ½ðÁú-¿Í³µ³µÐÍ15-A¿î +}VSB_SZKINGLONG_CLASS; + +//³¤·áÁÔ±ª×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_CHANGFENG_CLASS +{ + VSB_CHANGFENG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_CHANGFENG_CS7_1 = 1, // ³¤·áÁÔ±ª-CS7-2009 + VSB_CHANGFENG_QIBING_1 = 2, // ³¤·áÁÔ±ª-Ææ±ø-2010,2009 + VSB_CHANGFENG_LIEBAO_1 = 3, // ³¤·áÁÔ±ª-ÁÔ±ªCS6-2010,2008 + VSB_CHANGFENG_FULING_1 = 4, // ³¤·áÁÔ±ª-¸£ÁåƤ¿¨-A¿î + VSB_CHANGFENG_FEIYANG_1 = 5, // ³¤·áÁÔ±ª-·ÉÑïƤ¿¨-2010,2009,2005 + VSB_CHANGFENG_FEITENG_1 = 6, // ³¤·áÁÔ±ª-·ÉÌÚ-2010,2009,2006 + VSB_CHANGFENG_BLACKJINGANG_1 = 7, // ³¤·áÁÔ±ª-ºÚ½ð¸Õ-2013,2010,2009,2008,2006 +}VSB_CHANGFENG_CLASS; + +//½·ç×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_LUFENG_CLASS +{ + VSB_LUFENG_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_LUFENG_X6_1 = 1, // ½·ç-X6-2005 + VSB_LUFENG_X6_2 = 2, // ½·ç-X6-2006 + VSB_LUFENG_X6_3 = 3, // ½·ç-X6-2011,2010,2008,2007 + VSB_LUFENG_LUFENGX5_1 = 4, // ½·ç-½·çX5-2013 + VSB_LUFENG_LUFENGX8_1 = 5, // ½·ç-½·çX8-2013,2012,2011,2009 + VSB_LUFENG_LUFENGX8_2 = 6, // ½·ç-½·çX8-2014,2012̽Ë÷°æ + VSB_LUFENG_FENGHUA_1 = 7, // ½·ç-·ç»ª-2008,2007 + VSB_LUFENG_X6_4 = 8, // ½·ç-X6-2011Á½Çý + VSB_LUFENG_FENGSHANG_1 = 9 // ½·ç-·çÉÐ-2011,2006 +}VSB_LUFENG_CLASS; + +//ÉÂÆûÖØ¿¨×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_SHANQI_CLASS +{ + VSB_SHANQI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_SHANQI_AOLONG_1 = 1, // ÉÂÆûÖØ¿¨-°ÂÁú-ÖØ¿¨A + VSB_SHANQI_AOLONG_2 = 2, // ÉÂÆûÖØ¿¨-°ÂÁú-ÖØ¿¨B + VSB_SHANQI_DELONG_1 = 3, // ÉÂÆûÖØ¿¨-µÂÁúF2000-4X2Ç£Òý³µ + VSB_SHANQI_DELONG_2 = 4, // ÉÂÆûÖØ¿¨-µÂÁúF3000-B¿î + VSB_SHANQI_DELONG_3 = 5, // ÉÂÆûÖØ¿¨-µÂÁúM3000-ÖØ¿¨ +}VSB_SHANQI_CLASS; + + +//Ò°Âí×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_RENAULT_CLASS +{ + VSB_RENAULT_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_RENAULT_MEIGANNA_1 = 1, // À×ŵ-÷¸ÊÄÈ-2006 + VSB_RENAULT_KELEIAO_1 = 2, // À×ŵ-¿ÆÀ×°Á-2010,2009 + VSB_RENAULT_KELEIAO_2 = 3, // À×ŵ-¿ÆÀ×°Á-2013,2012 + VSB_RENAULT_SCENE_1 = 4, // À×ŵ-·ç¾°-2007 + VSB_RENAULT_FENGLANG_1 = 5, // À×ŵ-·çÀÊ-2011 + VSB_RENAULT_TAFEIKE_1 = 6 // À×ŵ-Ëþ·Æ¿Ë-2004 +}VSB_RENAULT_CLASS; + +//»Æº£×ÓÆ·ÅÆÀàÐÍ +typedef enum _VSB_HUANGHAI_CLASS +{ + VSB_HUANGHAI_OTHER = 0, // ÆäËû£¨±£Áô£© + VSB_HUANGHAI_DACAISHEN_1 = 1, // »Æº£-´ó²ñÉñ-2013,2012 + VSB_HUANGHAI_DACAISHEN_2 = 2, // »Æº£-´ó²ñÉñ-2013,2012,2011,2010,2009²ñÓÍ°æ + VSB_HUANGHAI_BUS4_1 = 3, // »Æº£-¿Í³µ³µÐÍ4-2012,2011 + VSB_HUANGHAI_CHALLENGER_1 = 4, // »Æº£-ÌôÕ½Õß-2011,2010,2009,2008 + VSB_HUANGHAI_AOLONGCUV_1 = 5, // »Æº£-°¿ÁúCUV-2010,2009 + VSB_HUANGHAI_AOJUN_1 = 6, // »Æº£-°Á¿¥-2009 + VSB_HUANGHAI_AOJUN_2 = 7, // »Æº£-°Á¿¥-2010,2009 + VSB_HUANGHAI_QISHENGV3_1 = 8, // »Æº£-ÆìʤV3-2011 + VSB_HUANGHAI_LINGHANGZHE_1 = 9, // »Æº£-Á캽Õß-2007,2005 + VSB_HUANGHAI_FENGCHI_1 = 10 // »Æº£-·ç³Û-A¿î +}VSB_HUANGHAI_CLASS; + +/********************³µÁ¾Æ·ÅÆ×ÓÀàÐÍEnd*************************/ + +//³µÁ¾ÐÅÏ¢ +typedef struct tagNET_DVR_VEHICLE_INFO_ +{ + DWORD dwIndex; //³µÁ¾ÐòºÅ + BYTE byVehicleType; //³µÁ¾ÀàÐÍ 0 ±íʾÆäËü³µÐÍ£¬1 ±íʾСÐͳµ£¬2 ±íʾ´óÐͳµ ,3±íʾÐÐÈË´¥·¢ ,4±íʾ¶þÂÖ³µ´¥·¢ 5±íʾÈýÂÖ³µ´¥·¢(3.5Ver) 6±íʾ»ú¶¯³µ´¥·¢ + BYTE byColorDepth; //³µÉíÑÕÉ«Éîdz + BYTE byColor; //³µÉíÑÕÉ«,²Î¿¼VCR_CLR_CLASS + /*À×´ïÒ쳣״̬£º + 0~À×´ïÕý³££¬ + 1~À×´ï¹ÊÕÏ + 2~À×´ïÒ»Ö±·¢ËÍijһ¸öÏàͬËÙ¶ÈÖµ + 3~À×´ïËͳöÊý¾ÝΪ0 + 4~À×´ïËͳöÊý¾Ý¹ý´ó»òÕß¹ýС + */ + BYTE byRadarState; + WORD wSpeed; //µ¥Î»km/h + WORD wLength; //Ç°Ò»Á¾³µµÄ³µÉí³¤¶È + /*Î¥¹æÀàÐÍ£¬0-Õý³££¬1-µÍËÙ£¬2-³¬ËÙ£¬3-ÄæÐУ¬4-´³ºìµÆ,5-ѹ³µµÀÏß,6-²»°´µ¼Ïò£¬7-·¿ÚÖÍÁô£¬ + 8-»úÕ¼·Ç£¬9-Î¥·¨±äµÀ£¬10-²»°´³µµÀ 11-Î¥·´½ûÁ12-·¿ÚÍ£³µ£¬13-Â̵ÆÍ£³µ, 14-δÀñÈÃÐÐÈË(Î¥·¨´úÂë1357), + 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-ÎüÑÌ + */ + BYTE byIllegalType; + BYTE byVehicleLogoRecog; //²Î¿¼Ã¶¾ÙÀàÐÍ VLR_VEHICLE_CLASS + BYTE byVehicleSubLogoRecog; //³µÁ¾Æ·ÅÆ×ÓÀàÐÍʶ±ð£»²Î¿¼VSB_VOLKSWAGEN_CLASSµÈ×ÓÀàÐÍö¾Ù¡£ + BYTE byVehicleModel; //³µÁ¾×ÓÆ·ÅÆÄê¿î£¬0-δ֪£¬²Î¿¼"³µÁ¾×ÓÆ·ÅÆÄê¿î.xlsx" + BYTE byCustomInfo[16]; //×Ô¶¨ÒåÐÅÏ¢ + WORD wVehicleLogoRecog; //³µÁ¾Ö÷Æ·ÅÆ£¬²Î¿¼"³µÁ¾Ö÷Æ·ÅÆ.xlsx" (¸Ã×ֶμæÈÝbyVehicleLogoRecog); + BYTE byIsParking;//ÊÇ·ñÍ£³µ 0-ÎÞЧ£¬1-Í£³µ£¬2-δͣ³µ + BYTE byRes;//±£Áô×Ö½Ú + DWORD dwParkingTime; //Í£³µÊ±¼ä£¬µ¥Î»£ºs + BYTE byBelieve; //byIllegalTypeÖÃÐŶȣ¬1-100 + BYTE byCurrentWorkerNumber;//µ±Ç°×÷ÒµÈËÊý + BYTE byCurrentGoodsLoadingRate;//µ±Ç°»õÎï×°ÔØÂÊ 0-¿Õ 1-ÉÙ 2-ÖÐ 3-¶à 4-Âú + BYTE byDoorsStatus;//³µÃÅ״̬ 0-³µÃÅ¹Ø±Õ 1-³µÃÅ¿ªÆô + BYTE byRes3[4]; +}NET_DVR_VEHICLE_INFO, *LPNET_DVR_VEHICLE_INFO; + +//³µÅƼì²â½á¹û +typedef struct tagNET_DVR_PLATE_RESULT +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byResultType; //0-ÊÓƵʶ±ð½á¹û£¬1ͼÏñʶ±ð½á¹û 2 ´óÓÚ10Mʱ×ßÏÂÔØ·Ïß + BYTE byChanIndex; //ͨµÀºÅ + WORD wAlarmRecordID; //±¨¾¯Â¼ÏñID(ÓÃÓÚ²éѯ¼Ïñ£¬½öµ±byResultTypeΪ2ʱÓÐЧ) + DWORD dwRelativeTime; //Ïà¶Ôʱ¼äµã + BYTE byAbsTime[32]; //¾ø¶Ôʱ¼äµã,yyyymmddhhmmssxxx,e.g.20090810235959999£¨ºÁÃ룩 + DWORD dwPicLen; //ͼƬ³¤¶È(½ü¾°Í¼) + DWORD dwPicPlateLen; //³µÅÆСͼƬ³¤¶È + DWORD dwVideoLen; //¼ÏñÄÚÈݳ¤¶È + BYTE byTrafficLight; //0-·ÇºìÂ̵Æ×¥ÅÄ£¬1-Â̵ÆʱץÅÄ£»2-ºìµÆʱץÅÄ + BYTE byPicNum; //Á¬ÅĵÄͼƬÐòºÅ + BYTE byDriveChan; //´¥·¢³µµÀºÅ + BYTE byVehicleType; //³µÁ¾ÀàÐÍ£¬²Î¿¼VTR_RESULT + DWORD dwBinPicLen; //³µÅƶþֵͼ³¤¶È + DWORD dwCarPicLen; //³µÁ¾Ô­Í¼³¤¶È + DWORD dwFarCarPicLen; //Ô¶¾°Í¼³¤¶È + BYTE *pBuffer3; //³µÅƶþֵͼ + BYTE *pBuffer4; //³µÁ¾Ô­Í¼ + BYTE *pBuffer5; //Ô¶¾°Í¼ + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byCarDirectionType; //³µÁ¾¾ßÌåÐÐÊ»µÄ·½Ïò£¬0±íʾ´ÓÉÏÍùÏ£¬1±íʾ´ÓÏÂÍùÉÏ£¨¸ù¾Ýʵ¼Ê³µÁ¾µÄÐÐÊ»·½ÏòÀ´µÄÇø·Ö£©,2±íʾδ֪ + BYTE byRes3[6]; + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ + BYTE *pBuffer1; // µ±ÉÏ´«µÄÊÇͼƬ(½ü¾°Í¼)£¬Ö¸ÕëÖ¸ÏòͼƬÐÅÏ¢£¬µ±ÉÏ´«µÄÊÇÊÓƵ£¬Ö¸ÕëÖ¸ÏòÊÓƵÐÅÏ¢£¬Èç¹û²»Ïë»ñµÃͼƬ»òÊÓƵÐÅÏ¢£¬´«NULL(DVS³µÁ¾½ü¾°Í¼) + BYTE *pBuffer2; // µ±ÉÏ´«µÄÊÇͼƬ(³µÅÆͼ)ʱ£¬Ö¸Ïò³µÅÆͼƬµÄÖ¸Õ루DVS³µÅƲÊͼ£© +}NET_DVR_PLATE_RESULT, *LPNET_DVR_PLATE_RESULT; +//ºóÃæ½ô¸úͼƬÊý¾ÝºÍ¼ÏñÊý¾Ý£¬Ö»´«Ò»ÖÖ£¬Í¼Æ¬Êý¾ÝΪ³¡¾°Í¼Æ¬+³µÅÆСͼƬ + +typedef struct tagNET_VPD_SHUTTER +{ + DWORD dwCommmand; //ÃüÁî:0,²»¿ØÖÆ 1,µ÷ÁÁ 2,µ÷°µ 3,±£³Ö 4,Ö±½ÓÊäÈë¿ìÃÅÖµ + DWORD dwCode; //¿ìÃÅÖµ, µ±²ÎÊýdwCommmandΪ4, ¸Ã²ÎÊý²»ÄÜΪ¿Õ + BYTE byRes[60]; //±£Áô +}NET_VPD_SHUTTER, *LPNET_VPD_SHUTTER; + +//ͼÏñµþ¼ÓÐÅÏ¢ÅäÖà +typedef struct tagNET_DVR_IMAGEOVERLAYCFG +{ + DWORD dwSize; + BYTE byOverlayInfo;//µþ¼ÓʹÄÜ¿ª¹Ø£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayMonitorInfo;//ÊÇ·ñµþ¼Ó¼à²âµãÐÅÏ¢£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayTime;//ÊÇ·ñµþ¼Óʱ¼ä£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlaySpeed;//ÊÇ·ñµþ¼ÓËٶȣ¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlaySpeeding;//ÊÇ·ñµþ¼Ó³¬ËÙ±ÈÀý£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayLimitFlag;//ÊÇ·ñµþ¼ÓÏÞËÙ±êÖ¾£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayPlate;//ÊÇ·ñµþ¼Ó³µÅƺţ¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayColor;//ÊÇ·ñµþ¼Ó³µÉíÑÕÉ«£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayLength;//ÊÇ·ñµþ¼Ó³µ³¤£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayType;//ÊÇ·ñµþ¼Ó³µÐÍ£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayColorDepth;//ÊÇ·ñµþ¼Ó³µÉíÑÕÉ«Éîdz£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayDriveChan;//ÊÇ·ñµþ¼Ó³µµÀ£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayMilliSec; //µþ¼ÓºÁÃëÐÅÏ¢ 0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayIllegalInfo; //µþ¼ÓÎ¥ÕÂÐÅÏ¢ 0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayRedOnTime; //µþ¼ÓºìµÆÒÑÁÁʱ¼ä 0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byFarAddPlateJpeg; //Ô¶¾°Í¼ÊÇ·ñµþ¼Ó³µÅƽØͼ,0-²»µþ¼Ó,1-µþ¼Ó + BYTE byNearAddPlateJpeg; //½ü¾°Í¼ÊÇ·ñµþ¼Ó³µÅƽØͼ,0-²»µþ¼Ó,1-µþ¼Ó + BYTE byRes1[3]; //±£Áô + BYTE byMonitorInfo1[32]; //¼à²âµãÐÅÏ¢1 + BYTE byMonitorInfo2[44]; //¼ì²âµãÐÅÏ¢2 + BYTE byRes2[52]; //±£Áô +}NET_DVR_IMAGEOVERLAYCFG, *LPNET_DVR_IMAGEOVERLAYCFG; + +//µ¥IO´¥·¢×¥ÅŦÄÜÅäÖà +typedef struct tagNET_DVR_SNAPCFG +{ + DWORD dwSize; + BYTE byRelatedDriveWay;//´¥·¢IO¹ØÁªµÄ³µµÀºÅ + BYTE bySnapTimes; //ÏßȦץÅÄ´ÎÊý£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬Ä¿Ç°×î´ó5´Î + WORD wSnapWaitTime; //×¥Åĵȴýʱ¼ä£¬µ¥Î»ms£¬È¡Öµ·¶Î§[0,60000] + WORD wIntervalTime[MAX_INTERVAL_NUM];//Á¬Åļä¸ôʱ¼ä£¬ms + DWORD dwSnapVehicleNum; //×¥ÅijµÁ¾ÐòºÅ¡£ + NET_DVR_JPEGPARA struJpegPara;//×¥ÅÄͼƬ²ÎÊý + BYTE byRes2[16];//±£Áô×Ö½Ú +}NET_DVR_SNAPCFG, *LPNET_DVR_SNAPCFG; + +typedef enum _ITC_MAINMODE_ABILITY_ +{ + ITC_MODE_UNKNOW = 0x0, //ÎÞ + ITC_POST_MODE = 0x1, //¿¨¿Úģʽ + ITC_EPOLICE_MODE = 0x2, //µç¾¯Ä£Ê½ + ITC_POSTEPOLICE_MODE = 0x4 //¿¨Ê½µç¾¯Ä£Ê½ +}ITC_MAINMODE_ABILITY; + +typedef enum _ITC_RECOG_REGION_TYPE_ +{ + ITC_REGION_RECT = 0x0, //¾ØÐÎ + ITC_REGION_POLYGON = 0x1, //¶à±ßÐÎ +}ITC_RECOG_REGION_TYPE; + +typedef struct tagNET_DVR_SNAP_ABILITY +{ + DWORD dwSize; + BYTE byIoInNum;//IOÊäÈë¿ÚÊý + BYTE byIoOutNum;//IOÊä³ö¿ÚÊý + BYTE bySingleSnapNum;//µ¥IO´¥·¢×éÊý + BYTE byLightModeArrayNum;//ºìÂ̵Æģʽ×éÊý + BYTE byMeasureModeArrayNum;//²âËÙģʽ×éÊý + BYTE byPlateEnable; //³µÅÆʶ±ðÄÜÁ¦ + BYTE byLensMode;//¾µÍ·Ä£Ê½0-CCD,1-CMOS + BYTE byPreTriggerSupport; //ÊÇ·ñÖ§³ÖÔ­´¥·¢Ä£Ê½£¬0-Ö§³Ö£¬1-²»Ö§³Ö + DWORD dwAbilityType; //Ö§³ÖµÄ´¥·¢Ä£Ê½ÄÜÁ¦£¬°´Î»±íʾ£¬¶¨Òå¼ûITC_MAINMODE_ABILITY + BYTE byIoSpeedGroup; //Ö§³ÖµÄIO²âËÙ×éÊý + BYTE byIoLightGroup; //Ö§³ÖµÄIOºìÂ̵Æ×éÊý + BYTE byRecogRegionType; //ÅÆʶÇøÓòÖ§³ÖµÄÀàÐÍ£¬Ïê¼û¶¨ÒåITC_RECOG_REGION_TYPE + BYTE bySupport; //É豸ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + // bySupport&0x1£¬±íʾÊÇ·ñÖ§³ÖÀ©Õ¹µÄ×Ö·ûµþ¼ÓÅäÖà + // bySupport&0x2£¬±íʾÊÇ·ñÖ§³ÖÀ©Õ¹µÄУʱÅäÖýṹ + // bySupport&0x4, ±íʾÊÇ·ñÖ§³Ö¶àÍø¿¨(¶àÍø¸ôÀë) + // bySupport&0x8, ±íʾÊÇ·ñÖ§³ÖÍø¿¨µÄbonding¹¦ÄÜ(ÍøÂçÈÝ´í) + // bySupport&0x10, ±íʾÊÇ·ñÖ§³ÖÓïÒô¶Ô½² + //2013-07-09 ÄÜÁ¦¼¯·µ»Ø + WORD wSupportMultiRadar;// É豸ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + // wSupportMultiRadar&0x1£¬±íʾ ¿¨¿ÚRS485À×´ï Ö§³Ö³µµÀ¹ØÁªÀ×´ï´¦Àí + // wSupportMultiRadar&0x2£¬±íʾ ¿¨¿ÚÐéÄâÏßȦ Ö§³Ö³µµÀ¹ØÁªÀ×´ï´¦Àí + // wSupportMultiRadar&0x4£¬±íʾ »ìÐп¨¿Ú Ö§³Ö³µµÀ¹ØÁªÀ×´ï´¦Àí + // wSupportMultiRadar&0x8£¬±íʾ ÊÓƵ¼ì²â Ö§³Ö³µµÀ¹ØÁªÀ×´ï´¦Àí + BYTE byICRPresetNum; + // ±íʾ֧³ÖµÄICRÔ¤Öõ㣨Â˹âƬƫÒƵ㣩Êý + BYTE byICRTimeSlot;//±íʾ֧³ÖµÄICRµÄʱ¼ä¶ÎÊý£¨1¡«8£© + BYTE bySupportRS485Num;//±íʾ֧³ÖµÄRS485¿ÚµÄÊýÁ¿ + BYTE byExpandRs485SupportSensor;// É豸ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + // byExpandRs485SupportSensor &0x1£¬±íʾµç¾¯³µ¼ìÆ÷Ö§³Ö³µ¼ìÆ÷ + // byExpandRs485SupportSensor &0x2£¬±íʾ¿¨Ê½µç¾¯³µ¼ìÆ÷Ö§³Ö³µ¼ìÆ÷ + BYTE byExpandRs485SupportSignalLampDet;// É豸ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + // byExpandRs485SupportSignalLampDet &0x1£¬±íʾµç¾¯³µ¼ìÆ÷Ö§³ÖÍâ½ÓÐźŵƼì²âÆ÷ + // byExpandRs485SupportSignalLampDet &0x2£¬±íʾ¿¨Ê½µç¾¯³µ¼ìÆ÷Ö§³ÖÍâ½ÓÐźŵƼì²âÆ÷ + BYTE byRelayNum;// ±íʾ֧³Ö¼ÌµçÆ÷µÄ¸öÊý 2013-11-04 + BYTE bySupport1; //É豸ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + // bySupport1&0x1£¬±íʾÊÇ·ñÖ§³Ö×Ô¶¨ÒåУʱÐÅÏ¢ÅäÖà + // bySupport1&0x2, ±íʾÊÇ·ñÖ§³ÖÊÓƵ´¥·¢ÓÅ»¯·½°¸ + // bySupport1&0x4, ±íʾÊÇ·ñÖ§³ÖDDNSÅäÖ÷½°¸ + // bySupport1&0x8, ±íʾÊÇ·ñÖ§³Ö»ñÈ¡É豸µ±Ç°´¥·¢Ä£Ê½½Ó¿ÚÃüÁî + // bySupport1&0x10, ±íʾÊÇ·ñÖ§³Ö³öÈë¿ÚÅäÖà 2014-03-03 + // bySupport1&0x20, ±íʾÊÇ·ñÖ§³ÖGPSÄ£¿é²ÎÊýÅäÖà + // bySupport1&0x40, ±íʾÊÇ·ñÖ§³ÖNTPУʱ¼ä¸ôÖ§³Ö·ÖÖÓÉèÖà + // bySupport1&0x80, ±íʾÊÇ·ñÖ§³Ötps±¨¾¯Êý¾ÝÉÏ´« + BYTE bySupport2; //É豸ÄÜÁ¦£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + // bySupport2&0x01, ±íʾÊÇ·ñÖ§³ÖÂëÁ÷¸½¼ÓÐÅÏ¢ÅäÖà + // bySupport2&0x02, ±íʾͨµÀͼÏñ²ÎÊý£¨INTER_PICCFG_V30£©ÖÐÊÇ·ñÖ§³ÖÊÓƵµþ¼Óʱ¼äºÁÃëÆôÓòÎÊý£¨byOSDMilliSecondEnable£© + // bySupport2&0x04, ±íʾµÀÕ¢¿ØÖÆ£¨NET_DVR_BARRIERGATE_CFG£©ÖÐbyBarrierGateCtrl×Ö¶ÎÖ§³ÖË÷Òý4~½âËøµÀÕ¢£¬ÇÒÖ§³ÖbyUnlock½âËøʹÄÜ¡£·´Ö®Ôò±êʶ²»Ö§³Ö + BYTE bySupportWhiteBalance; //°×ƽºâÄÜÁ¦£¬Ä¬È϶¼ÊÇÖ§³ÖÊÖ¶¯°×ƽºâ¡¢×Ô¶¯°×ƽºâ¡¢×Ô¶¯°×ƽºâ2Õâ3ÖÖģʽ¡£ + // bySupportWhiteBalance &0x01, ±íʾÊÇ·ñÖ§³ÖÈÕ¹âµÆģʽ + // bySupportWhiteBalance &0x02, ±íʾÊÇ·ñÖ§³Ö×ÔÈ»¹âģʽ + // bySupportWhiteBalance &0x04, ±íʾÊÇ·ñÖ§³Öů¹âµÆģʽ + // bySupportWhiteBalance &0x08, ±íʾÊÇ·ñÖ§³Ö°×³ãµÆģʽ + BYTE byRes[9]; +} NET_DVR_SNAP_ABILITY, *LPNET_DVR_SNAP_ABILITY; + +typedef struct tagNET_DVR_TRANSFER_CAP +{ + BYTE byAbility; + BYTE byRes[63]; +}NET_DVR_TRANSFER_CAP, *LPNET_DVR_TRANSFER_CAP; + +typedef struct tagNET_ITC_ICRTIMECFG +{ + NET_DVR_SCHEDTIME struTime; + BYTE byAssociateRresetNo;//Ô¤ÖõãºÅ1¡«8 , 0´ú±íÎÞ + BYTE bySubSwitchMode;//1~°×Ì죬2~ÍíÉÏ (µ±Ô¤ÖõãµÈÓÚ0 µÄʱºòÉúЧ) + BYTE byRes[10]; +}NET_ITC_ICRTIMECFG, *LPNET_ITC_ICRTIMECFG; + +typedef struct tagNET_ITC_ICR_TIMESWITCH_PARAM //156 +{ + NET_ITC_ICRTIMECFG struAutoCtrlTime[MAX_TIMESEGMENT_V30];//×Ô¶¯Çл»Ê±¼ä¶Î (×Ô¶¯Çл»Ï ʱ¿ÕÏÂÉúЧ ÏÖÔÚÖ§³Ö4×飬ԤÁô4×é) + BYTE byICRPreset[MAX_ICR_NUM]; //ʵ¼ÊÉúЧ¸ù¾ÝÄÜÁ¦¼¯¶¯Ì¬ÏÔʾ [0~100] Êý×éϱê±íʾԤÖõãºÅ1¡«8 £¨0¡«7 Ïà¶ÔÓ¦£© + BYTE byRes[20]; +}NET_ITC_ICR_TIMESWITCH_PARAM, *LPNET_ITC_ICR_TIMESWITCH_PARAM; + +typedef struct tagNET_ITC_ICR_MANUALSWITCH_PARAM +{ + BYTE byICRPreset[MAX_ICR_NUM]; //ʵ¼ÊÉúЧ¸ù¾ÝÄÜÁ¦¼¯¶¯Ì¬ÏÔʾ [0~100] + BYTE bySubSwitchMode;//1~°×Ì죬2~ÍíÉÏ + BYTE byRes[147]; +}NET_ITC_ICR_MANUALSWITCH_PARAM, *LPNET_ITC_ICR_MANUALSWITCH_PARAM; + +typedef struct tagNET_ITC_ICR_AOTOSWITCH_PARAM +{ + BYTE byICRPreset[MAX_ICR_NUM]; //ʵ¼ÊÉúЧ¸ù¾ÝÄÜÁ¦¼¯¶¯Ì¬ÏÔʾ [0~100] Êý×éϱê±íʾԤÖõãºÅ1¡«8 £¨0¡«7 Ïà¶ÔÓ¦£© + BYTE byICRAutoSwitch; // ICR×Ô¶¯Çл»¼ÓãÐֵѡÏî, È¡Öµ·¶Î§[0 100] + BYTE byRes[147]; +}NET_ITC_ICR_AOTOSWITCH_PARAM, *LPNET_ITC_ICR_AOTOSWITCH_PARAM; + +//Ëã·¨×Ô¶¯ +typedef struct tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM +{ + BYTE byDetectThreshold;//¼ì²âãÐÖµ,·¶Î§[0,100],ĬÈÏ 58 + BYTE byAbBrightnessThreshold; //Òì³£ÁÁ¶ÈãÐÖµ£¬·¶Î§[0,100]£¬Ä¬ÈÏ12 + BYTE byRes[154]; +}NET_ITC_ICR_ALGAOTOSWITCH_PARAM, *LPNET_ITC_ICR_ALGAOTOSWITCH_PARAM; + +typedef union tagNET_ITC_ICR_PARAM_UNION +{ + BYTE uLen[156]; + NET_ITC_ICR_AOTOSWITCH_PARAM struICRAutoSwitch; + NET_ITC_ICR_MANUALSWITCH_PARAM struICRManualSwitch; + NET_ITC_ICR_TIMESWITCH_PARAM struICRTimeSwitch; + NET_ITC_ICR_ALGAOTOSWITCH_PARAM strICRAlgorithmAutoSwitch; +}NET_ITC_ICR_PARAM_UNION,*LPNET_ITC_ICR_PARAM_UNION; + +typedef struct tagNET_ITC_ICRCFG +{ + DWORD dwSize; + BYTE bySwitchType;//1~×Ô¶¯Çл»£¬2~ÊÖ¶¯Çл» ,3~¶¨Ê±Çл»,4~Ëã·¨×Ô¶¯ + BYTE byRes[3]; + NET_ITC_ICR_PARAM_UNION uICRParam; +}NET_ITC_ICRCFG, *LPNET_ITC_ICRCFG; + +//2013-07-09 Òì³£´¦Àí +typedef struct +{ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö£¨¼ÌµçÆ÷Êä³ö£©*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + BYTE byEnable; //0¡«²»ÆôÓã¬1¡«ÆôÓà + BYTE byRes; + WORD wDuration;//³ÖÐøʱ¼ä(µ¥Î»/s) + BYTE byAlarmOutTriggered[MAX_ITC_EXCEPTIONOUT];//´¥·¢Êä³öͨµÀ + BYTE byRes1[8]; +} NET_ITC_HANDLEEXCEPTION, *LPNET_ITC_HANDLEEXCEPTION; + +typedef struct +{ + DWORD dwSize; + NET_ITC_HANDLEEXCEPTION struSnapExceptionType[MAX_EXCEPTIONNUM_V30]; //Êý×éµÄÿ¸öÔªËض¼±íʾһÖÖÒì³££¬Êý×é0- Ó²Å̳ö´í,1-ÍøÏ߶Ï,2-IP µØÖ·³åÍ», 3-³µ¼ìÆ÷Òì³£, 4-ÐźŵƼì²âÆ÷Òì³£ +}NET_ITC_EXCEPTION,*LPNET_ITC_EXCEPTION; + +typedef struct tagNET_DVR_TRIGCOORDINATE +{ + WORD wTopLeftX; /*ÏßȦ×óÉϽǺá×ø±ê£¨2¸ö×Ö½Ú£©*/ + WORD wTopLeftY; /*ÏßȦ×óÉϽÇ×Ý×ø±ê£¨2¸ö×Ö½Ú£©*/ + WORD wWdith; /*ÏßȦ¿í¶È£¨2¸ö×Ö½Ú£©*/ + WORD wHeight; /*ÏßȦ¸ß¶È£¨2¸ö×Ö½Ú£©*/ +} NET_DVR_TRIGCOORDINATE, *LPNET_DVR_TRIGCOORDINATE; + +typedef enum _PROVINCE_CITY_IDX_ +{ + ANHUI_PROVINCE = 0, //°²»Õ + AOMEN_PROVINCE = 1, //°ÄÃÅ + BEIJING_PROVINCE = 2, //±±¾© + CHONGQING_PROVINCE = 3, //ÖØÇì + FUJIAN_PROVINCE = 4, //¸£½¨ + GANSU_PROVINCE = 5, //¸ÊËà + GUANGDONG_PROVINCE = 6, //¹ã¶« + GUANGXI_PROVINCE = 7, //¹ãÎ÷ + GUIZHOU_PROVINCE = 8, //¹óÖÝ + HAINAN_PROVINCE = 9, //º£ÄÏ + HEBEI_PROVINCE = 10, //ºÓ±± + HENAN_PROVINCE = 11, //ºÓÄÏ + HEILONGJIANG_PROVINCE = 12, //ºÚÁú½­ + HUBEI_PROVINCE = 13, //ºþ±± + HUNAN_PROVINCE = 14, //ºþÄÏ + JILIN_PROVINCE = 15, //¼ªÁÖ + JIANGSU_PROVINCE = 16, //½­ËÕ + JIANGXI_PROVINCE = 17, //½­Î÷ + LIAONING_PROVINCE = 18, //ÁÉÄþ + NEIMENGGU_PROVINCE = 19, //ÄÚÃɹŠ+ NINGXIA_PROVINCE = 20, //ÄþÏÄ + QINGHAI_PROVINCE = 21, //Çຣ + SHANDONG_PROVINCE = 22, //ɽ¶« + SHANXI_JIN_PROVINCE = 23, //ɽÎ÷ + SHANXI_SHAN_PROVINCE = 24, //ÉÂÎ÷ + SHANGHAI_PROVINCE = 25, //ÉϺ£ + SICHUAN_PROVINCE = 26, //ËÄ´¨ + TAIWAN_PROVINCE = 27, //̨Íå + TIANJIN_PROVINCE = 28, //Ìì½ò + XIZANG_PROVINCE = 29, //Î÷²Ø + XIANGGANG_PROVINCE = 30, //Ïã¸Û + XINJIANG_PROVINCE = 31, //н® + YUNNAN_PROVINCE = 32, //ÔÆÄÏ + ZHEJIANG_PROVINCE = 33 //Õã½­ +}PROVINCE_CITY_IDX; + +typedef struct tagNET_DVR_GEOGLOCATION +{ + int iRes[2]; /*±£Áô*/ + DWORD dwCity; /*³ÇÊУ¬Ïê¼ûPROVINCE_CITY_IDX */ +}NET_DVR_GEOGLOCATION, *LPNET_DVR_GEOGLOCATION; + +//³¡¾°Ä£Ê½ +typedef enum _SCENE_MODE_ +{ + UNKOWN_SCENE_MODE = 0, //δ֪³¡¾°Ä£Ê½ + HIGHWAY_SCENE_MODE = 1, //¸ßËÙ³¡¾°Ä£Ê½ + SUBURBAN_SCENE_MODE = 2, //½¼Çø³¡¾°Ä£Ê½(±£Áô) + URBAN_SCENE_MODE = 3, //ÊÐÇø³¡¾°Ä£Ê½ + TUNNEL_SCENE_MODE = 4 //ËíµÀ³¡¾°Ä£Ê½(±£Áô) +}SCENE_MODE; +// ˽ÓÐÐÅϢģ¿éÀàÐÍ +typedef enum _PRIDATA_RENDER +{ + RENDER_ANA_INTEL_DATA = 0x00000001, //ÖÇÄÜ·ÖÎö + RENDER_MD = 0x00000002, //Òƶ¯Õì²â + RENDER_ADD_POS = 0x00000004, //POSÐÅÏ¢ºóµþ¼Ó + RENDER_ADD_PIC = 0x00000008, //ͼƬµþ¼Ó + RENDER_FIRE_DETCET = 0x00000010, //ÈȳÉÏñÐÅÏ¢ + RENDER_TEM = 0x00000020, //ζÈÐÅÏ¢ + RENDER_TRACK_TEM = 0x00000040, //¹ì¼£ÐÅÏ¢ + RENDER_THERMAL = 0x00000080 //·ÏÆø¼ì²âºÍÑÌ»ðÆÁ±ÎÐÅÏ¢ +}PRIDATA_RENDER; + +typedef enum _THERMAL_FLAG +{ + THERMAL_FIREMASK = 0x00000001, //ÑÌ»ðÆÁ±Î + THERMAL_RULEGAS = 0x00000002, //¹æÔò·ÏÆø¼ì²â + THERMAL_TARGETGAS = 0x00000004 //Ä¿±ê·ÏÆø¼ì²â +}THERMAL_FLAG; + +typedef enum _FIRE_ALARM{ + FIRE_FRAME_DIS = 0x00000001, //»ðµã¿òÏÔʾ + FIRE_MAX_TEMP = 0x00000002, //×î¸ßÎÂ¶È + FIRE_MAX_TEMP_POSITION = 0x00000004, //×î¸ßζÈλÖÃÏÔʾ + FIRE_DISTANCE = 0x00000008, //×î¸ßζȾàÀë}FIRE_ALARM +}FIRE_ALARM; + +typedef enum _TEM_FLAG{ + TEM_REGION_BOX = 0x00000001, //¿ò²âΠ+ TEM_REGION_LINE = 0x00000002, //Ïß²âΠ+ TEM_REGION_POINT = 0x00000004, //µã²âÎÂ}TEM_FLAG +}TEM_FLAG; + +typedef enum _TRACK_FLAG +{ + TRACK_PEOPLE = 0x00000001, //È˹켣 + TRACK_VEHICLE = 0x00000002 //³µ¹ì¼£ +}TRACK_FLAG; + +typedef struct tagNET_DVR_VTPARAM +{ + DWORD dwSize; + BYTE byEnable; /* ÊÇ·ñʹÄÜÐéÄâÏßȦ£¬0-²»Ê¹Óã¬1-ʹÓÃ*/ + BYTE byIsDisplay; /* ÊÇ·ñÏÔʾÐéÄâÏßȦ£¬0-²»ÏÔʾ£¬1-ÏÔʾ*/ + BYTE byLoopPos; //Íí¼ä´¥·¢ÏßȦµÄÆ«Ïò£º0-ÏòÉÏ£¬1-ÏòÏ + BYTE bySnapGain; /*×¥ÅÄÔöÒæ*/ + DWORD dwSnapShutter; /*×¥ÅÄ¿ìÃÅËÙ¶È*/ + NET_DVR_TRIGCOORDINATE struTrigCoordinate; //±£Áô + NET_DVR_TRIGCOORDINATE struRes[MAX_VL_NUM]; + BYTE byTotalLaneNum;/*ÊÓƵ´¥·¢µÄ³µµÀÊý1*/ + BYTE byPolarLenType; /*Æ«Õñ¾µÀàÐÍ£¬0£º²»¼ÓÆ«Õñ¾µ£»1£º¼ÓÊ©Ä͵ÂÆ«Õñ¾µ¡£*/ + BYTE byDayAuxLightMode; /*°×Ì츨ÖúÕÕÃ÷ģʽ£¬0£ºÎÞ¸¨ÖúÕÕÃ÷£»1£ºLEDµÆÕÕÃ÷£»2£ºÉÁ¹âµÆÕÕÃ÷*/ + BYTE byLoopToCalRoadBright; /*ÓÃÒÔ¼ÆËã·ÃæÁÁ¶ÈµÄ³µµÀ(ÐéÄâÏßȦ)*/ + BYTE byRoadGrayLowTh; /*·ÃæÁÁ¶ÈµÍãÐÖµ³õʼ»¯Öµ1*/ + BYTE byRoadGrayHighTh; /*·ÃæÁÁ¶È¸ßãÐÖµ³õʼ»¯Öµ140*/ + WORD wLoopPosBias; /*Íí¼ä´¥·¢ÏßȦλÒÆ30*/ + DWORD dwHfrShtterInitValue; /*Á¬ÐøͼÏñÆعâʱ¼äµÄ³õʼֵ2000*/ + DWORD dwSnapShtterInitValue; /*×¥ÅÄͼÏñÆعâʱ¼äµÄ³õʼֵ500*/ + DWORD dwHfrShtterMaxValue; /*Á¬ÐøͼÏñÆعâʱ¼äµÄ×î´óÖµ20000*/ + DWORD dwSnapShtterMaxValue; /*×¥ÅÄͼÏñÆعâʱ¼äµÄ×î´óÖµ1500*/ + DWORD dwHfrShtterNightValue; /*Íí¼äÁ¬ÐøͼÏñÆعâʱ¼äµÄÉèÖÃÖµ3000*/ + DWORD dwSnapShtterNightMinValue; /*Íí¼ä×¥ÅÄͼÏñÆعâʱ¼äµÄ×îСֵ3000*/ + DWORD dwSnapShtterNightMaxValue; /*Íí¼ä×¥ÅÄͼÏñÆعâʱ¼äµÄ×î´óÖµ5000*/ + DWORD dwInitAfe; /*ÔöÒæµÄ³õʼֵ200*/ + DWORD dwMaxAfe; /*ÔöÒæµÄ×î´óÖµ400*/ + WORD wResolutionX;/* É豸µ±Ç°·Ö±æÂÊ¿í*/ + WORD wResolutionY;/* É豸µ±Ç°·Ö±æÂʸß*/ + DWORD dwGainNightValue; /*Íí¼äÔöÒ棬ĬÈÏÖµ70*/ + DWORD dwSceneMode; /*³¡¾°Ä£Ê½£¬ Ïê¼ûSCENE_MODE */ + DWORD dwRecordMode; /*¼Ïñ±êÖ¾£º0-²»Â¼Ïñ£¬1-¼Ïñ*/ + NET_DVR_GEOGLOCATION struGeogLocation; /*µØַλÖÃ*/ + BYTE byTrigFlag[MAX_VL_NUM]; /*´¥·¢±êÖ¾£¬0-³µÍ·´¥·¢£»1-³µÎ²´¥·¢£»2-³µÍ·/³µÎ²¶¼´¥·¢*/ + BYTE byTrigSensitive[MAX_VL_NUM]; /*´¥·¢ÁéÃô¶È£¬1-100*/ + BYTE byRes2[62]; +}NET_DVR_VTPARAM, *LPNET_DVR_VTPARAM; + +typedef struct tagNET_DVR_SNAPENABLECFG +{ + DWORD dwSize; + BYTE byPlateEnable;//ÊÇ·ñÖ§³Ö³µÅÆʶ±ð£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byRes1[2]; //±£Áô + BYTE byFrameFlip; //ͼÏñÊÇ·ñ·­×ª 0-²»·­×ª£¬1-·­×ª + WORD wFlipAngle; //ͼÏñ·­×ª½Ç¶È 0,90,180,270 + WORD wLightPhase; //Ïàλ£¬È¡Öµ·¶Î§[0, 360] + BYTE byLightSyncPower; //ÊÇ·ñÐźŵƵçԴͬ²½£¬0-²»Í¬²½£»1-ͬ²½ + BYTE byFrequency; //ÐźÅƵÂÊ + BYTE byUploadSDEnable; //ÊÇ·ñ×Ô¶¯ÉÏ´«SDͼƬ£¬0-·ñ£»1-ÊÇ + BYTE byPlateMode; //ʶ±ðģʽ²ÎÊý:0-ÊÓƵ´¥·¢,1-Íⲿ´¥·¢ + BYTE byUploadInfoFTP; //ÊÇ·ñÉÏ´«×¥Åĸ½¼ÓÐÅÏ¢µ½FTP£¬0-·ñ£¬1-ÊÇ + BYTE byAutoFormatSD; //ÊÇ·ñ×Ô¶¯¸ñʽ»¯SD¿¨£¬0-·ñ£¬1-ÊÇ + WORD wJpegPicSize; //JpegͼƬ´óС[64-8196] + BYTE bySnapPicResolution; //×¥ÅÄͼƬ·Ö±æÂÊ(ÓëNET_DVR_COMPRESSION_INFO_V30ÖзֱæÂʱ£³ÖÒ»ÖÂ) + BYTE byRes[55]; //±£Áô +}NET_DVR_SNAPENABLECFG, *LPNET_DVR_SNAPENABLECFG; + +/*ftpÉÏ´«²ÎÊý*/ +typedef struct +{ + DWORD dwSize; + DWORD dwEnableFTP; /*ÊÇ·ñÆô¶¯ftpÉÏ´«¹¦ÄÜ*/ + char sFTPIP[16]; /*ftp ·þÎñÆ÷*/ + DWORD dwFTPPort; /*ftp¶Ë¿Ú*/ + BYTE sUserName[NAME_LEN]; /*Óû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë*/ + DWORD dwDirLevel; /*0 = ²»Ê¹ÓÃĿ¼½á¹¹£¬Ö±½Ó±£´æÔÚ¸ùĿ¼,1 = ʹÓÃ1¼¶Ä¿Â¼,2=ʹÓÃ2¼¶Ä¿Â¼*/ + WORD wTopDirMode; /* Ò»¼¶Ä¿Â¼£¬0x1 = ʹÓÃÉ豸Ãû,0x2 = ʹÓÃÉ豸ºÅ,0x3 = ʹÓÃÉ豸ipµØÖ·£¬0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ),0x=6×Ô¶¨Òå,0x7=Î¥¹æÀàÐÍ,0x8=·½Ïò,0x9=µØµã*/ + WORD wSubDirMode; /* ¶þ¼¶Ä¿Â¼£¬0x1 = ʹÓÃͨµÀÃû,0x2 = ʹÓÃͨµÀºÅ£¬,0x3=ʹÓÃʱ¼ä(ÄêÔÂÈÕ),0x4=ʹÓóµµÀºÅ,0x=5×Ô¶¨Òå,0x6=Î¥¹æÀàÐÍ,0x7=·½Ïò,0x8=µØµã*/ + BYTE byEnableAnony; //ÆôÓÃÄäÃû£¬0-·ñ£¬1-ÊÇ + BYTE byPicArchivingInterval;//ͼƬ¹éµµ¼ä¸ô[1~30],0±íʾ¹Ø±Õ + BYTE byRes[22]; +}NET_DVR_FTPCFG, *LPNET_DVR_FTPCFG; + +/*¿ÉÓÃÀ´ÃüÃûͼƬµÄÏà¹ØÔªËØ */ +#define PICNAME_ITEM_DEV_NAME 1 /*É豸Ãû*/ +#define PICNAME_ITEM_DEV_NO 2 /*É豸ºÅ*/ +#define PICNAME_ITEM_DEV_IP 3 /*É豸IP*/ +#define PICNAME_ITEM_CHAN_NAME 4 /*ͨµÀÃû*/ +#define PICNAME_ITEM_CHAN_NO 5 /*ͨµÀºÅ*/ +#define PICNAME_ITEM_TIME 6 /*ʱ¼ä*/ +#define PICNAME_ITEM_CARDNO 7 /*¿¨ºÅ*/ +#define PICNAME_ITEM_PLATE_NO 8 /*³µÅƺÅÂë*/ +#define PICNAME_ITEM_PLATE_COLOR 9 /*³µÅÆÑÕÉ«*/ +#define PICNAME_ITEM_CAR_CHAN 10 /*³µµÀºÅ*/ +#define PICNAME_ITEM_CAR_SPEED 11 /*³µÁ¾ËÙ¶È*/ +#define PICNAME_ITEM_CARCHAN 12 /*¼à²âµã*/ +#define PICNAME_ITEM_PIC_NUMBER 13 //ͼƬÐòºÅ +#define PICNAME_ITEM_CAR_NUMBER 14 //³µÁ¾ÐòºÅ +#define PICNAME_MAXITEM 15 + +#define PICNAME_ITEM_SPEED_LIMIT_VALUES 15 //ÏÞËÙÖµ +#define PICNAME_ITEM_ILLEGAL_CODE 16 //¹ú±êÎ¥·¨´úÂë +#define PICNAME_ITEM_CROSS_NUMBER 17 //·¿Ú±àºÅ +#define PICNAME_ITEM_DIRECTION_NUMBER 18 //·½Ïò±àºÅ + +//(3.7Ver) +#define PICNAME_ITEM_CAR_COLOR 19 //³µÉíÑÕÉ« +#define PICNAME_ITEM_PLATE_COORDINATE 20 //³µÅÆ×ø±ê +#define PICNAME_ITEM_CAR_TYPE 21 //³µÁ¾ÀàÐÍ +#define PICNAME_ITEM_VIOLATION_TYPE 22 //Î¥¹æÀàÐÍ +#define PICNAME_ITEM_CUSTOM 255//×Ô¶¨Òå + + + +//ͼƬÃüÃû +typedef struct +{ + BYTE byItemOrder[PICNAME_MAXITEM]; /* èñÊý×鶨ÒåÎļþÃüÃûµÄ¹æÔò */ + BYTE byDelimiter; /*·Ö¸ô·û£¬Ò»°ãΪ'_'*/ +}NET_DVR_PICTURE_NAME, *LPNET_DVR_PICTURE_NAME; + +//ÃüÃû¹æÔò£º2013-09-27 +#define PICNAME_ITEM_PARK_DEV_IP 1 /*É豸IP*/ +#define PICNAME_ITEM_PARK_PLATE_NO 2 /*³µÅƺÅÂë*/ +#define PICNAME_ITEM_PARK_TIME 3 /*ʱ¼ä*/ +#define PICNAME_ITEM_PARK_INDEX 4 /*³µÎ»±àºÅ*/ +#define PICNAME_ITEM_PARK_STATUS 5 /*³µÎ»×´Ì¬*/ +#define PICNAME_ITEM_BUILDING_NUMBER 6 /*¶°ºÅµ¥ÔªºÅ*/ +#define PICNAME_ITEM_OUTDOOR_UNIT_ID 7 /*ÃÅ¿Ú»ú±àºÅ*/ +#define PICNAME_ITEM_UNLOCK_TYPE 8 /*¿ªËø·½Ê½*/ +#define PICNAME_ITEM_DEVICE_NAME 9 //É豸Ãû³Æ +#define PICNAME_ITEM_PERIOD_NO 10 /*ÆÚºÅ*/ +#define PICNAME_ITEM_DEV_INDEX 11 /*É豸±àºÅ*/ +#define PICNAME_PREFIX 32 /*ͼƬÃû×Ô¶¨Òåǰ׺³¤¶È*/ +//ͼƬÃüÃûÀ©Õ¹ 2013-09-27 +typedef struct +{ + BYTE byItemOrder[PICNAME_MAXITEM]; /* èñÊý×鶨ÒåÎļþÃüÃûµÄ¹æÔò */ + BYTE byDelimiter; /*·Ö¸ô·û£¬Ò»°ãΪ'_'*/ + BYTE byPicNamePrefix[PICNAME_PREFIX/*32*/]; //ͼƬÃû×Ô¶¨Òåǰ׺ +}NET_DVR_PICTURE_NAME_EX, *LPNET_DVR_PICTURE_NAME_EX; + +/* ´®¿ÚץͼÉèÖÃ*/ +typedef struct +{ + BYTE byStrFlag; /*´®¿ÚÊý¾Ý¿ªÊ¼·û*/ + BYTE byEndFlag; /*½áÊø·û*/ + WORD wCardIdx; /*¿¨ºÅÏà¶ÔÆðʼλ*/ + DWORD dwCardLen; /*¿¨ºÅ³¤¶È*/ + DWORD dwTriggerPicChans; /*Ëù´¥·¢µÄͨµÀºÅ£¬°´Î»£¬´ÓµÚ1λ¿ªÊ¼¼Æ£¬¼´0x2±íʾµÚһͨµÀ*/ +}NET_DVR_SERIAL_CATCHPIC_PARA, *LPNET_DVR_SERIAL_CATCHPIC_PARA; + +//DVRץͼ²ÎÊýÅäÖ㨻ùÏߣ© +typedef struct +{ + DWORD dwSize; + NET_DVR_JPEGPARA struJpegPara[MAX_CHANNUM_V30]; /*ÿ¸öͨµÀµÄͼÏñ²ÎÊý*/ + WORD wBurstMode; /*ץͼ·½Ê½,°´Î»ÉèÖÃ.0x1=±¨¾¯ÊäÈë´¥·¢£¬0x2=Òƶ¯Õì²â´¥·¢ 0x4=232´¥·¢£¬0x8=485´¥·¢£¬0x10=ÍøÂç´¥·¢*/ + WORD wUploadInterval; /*ͼƬÉÏ´«¼ä¸ô(Ãë)[0,65535]*/ + NET_DVR_PICTURE_NAME struPicNameRule; /* ͼƬÃüÃû¹æÔò */ + BYTE bySaveToHD; /*ÊÇ·ñ±£´æµ½Ó²ÅÌ*/ + BYTE byRes1; + WORD wCatchInterval; /*ץͼ¼ä¸ô(ºÁÃë)[0,65535]*/ + BYTE byRes2[12]; + NET_DVR_SERIAL_CATCHPIC_PARA struRs232Cfg; + NET_DVR_SERIAL_CATCHPIC_PARA struRs485Cfg; + DWORD dwTriggerPicTimes[MAX_CHANNUM_V30]; /* ÿ¸öͨµÀÒ»´Î´¥·¢ÅÄÕÕ´ÎÊý */ + DWORD dwAlarmInPicChanTriggered[MAX_ALARMIN_V30]; /*±¨¾¯´¥·¢×¥ÅÄͨµÀ,°´Î»ÉèÖ㬴ӵÚ1λ¿ªÊ¼*/ +}NET_DVR_JPEGCFG_V30, *LPNET_DVR_JPEGCFG_V30; + +//×¥ÅÄ´¥·¢ÇëÇó½á¹¹(±£Áô) +typedef struct tagNET_DVR_MANUALSNAP +{ + BYTE byOSDEnable;//0-²»¹Ø±Õ(ĬÈÏ)£¬1-¹Ø±Õ + BYTE byLaneNo;//³µµÀºÅ, ·¶Î§Îª1-6£¬Ä¬ÈÏΪ1(×¥ÅÄ»úÄÚ²¿²âÊÔʹÓÃ) + BYTE byChannel;//ͨµÀºÅ + BYTE byRes[21]; //±£Áô +}NET_DVR_MANUALSNAP, *LPNET_DVR_MANUALSNAP; + +typedef struct tagNET_DVR_SPRCFG +{ + DWORD dwSize; + BYTE byDefaultCHN[MAX_CHJC_NUM]; /*É豸ÔËÐÐÊ¡·ÝµÄºº×Ö¼òд*/ + BYTE byPlateOSD; /*0:²»·¢ËͳµÅƲÊɫͼ,1:·¢ËͳµÅƲÊɫͼ*/ + BYTE bySendJPEG1; /*0-²»´«Ëͽü¾°JPEGͼ,1-´«Ëͽü¾°JPEGͼ*/ + BYTE bySendJPEG2; /*0-²»´«ËÍÔ¶¾°JPEGͼ,1-´«ËÍÔ¶¾°JPEGͼ*/ + WORD wDesignedPlateWidth; /*³µÅÆÉè¼Æ¿í¶È*/ + BYTE byTotalLaneNum; /*ʶ±ðµÄ³µµÀÊý*/ + BYTE byRes1; /*±£Áô*/ + WORD wRecognizedLane; /*ʶ±ðµÄ³µµÀºÅ£¬°´Î»±íʾ£¬bit0±íʾ³µµÀ1ÊÇ·ñʶ±ð£¬0-²»Ê¶±ð£¬1-ʶ±ð*/ + NET_VCA_RECT struLaneRect[MAX_LANERECT_NUM]; /*³µµÀʶ±ðÇøÓò*/ + DWORD dwRecogMode; /*ʶ±ðµÄÀàÐÍ£¬ + bit0-±³Ïòʶ±ð£º0-ÕýÏò³µÅÆʶ±ð£¬1-±³Ïòʶ±ð(βÅÆʶ±ð) £» + bit1-´ó³µÅÆʶ±ð»òС³µÅÆʶ±ð£º0-С³µÅÆʶ±ð£¬1-´ó³µÅÆʶ±ð £» + bit2-³µÉíÑÕɫʶ±ð£º0-²»²ÉÓóµÉíÑÕɫʶ±ð£¬ÔÚ±³Ïòʶ±ð»òС³µÅÆʶ±ðʱ½ûÖ¹ÆôÓã¬1-³µÉíÑÕɫʶ±ð£» + bit3-Å©ÓóµÊ¶±ð£º0-²»²ÉÓÃÅ©ÓóµÊ¶±ð£¬1-Å©ÓóµÊ¶±ð£» + bit4-Ä£ºýʶ±ð£º0-²»²ÉÓÃÄ£ºýʶ±ð£¬1-Ä£ºýʶ±ð£» + bit5-Ö¡¶¨Î»»ò³¡¶¨Î»£º0-Ö¡¶¨Î»£¬1-³¡¶¨Î»£» + bit6-֡ʶ±ð»ò³¡Ê¶±ð£º0-֡ʶ±ð£¬1-³¡Ê¶±ð£» + bit7-ÍíÉÏ»ò°×Ì죺0-°×Ì죬1-ÍíÉÏ */ + BYTE bySendPRRaw; //ÊÇ·ñ·¢ËÍԭͼ£º0-²»·¢ËÍ£¬1-·¢ËÍ + BYTE bySendBinImage; //ÊÇ·ñ·¢ËͳµÅƶþֵͼ£º0-²»·¢ËÍ£¬1-·¢ËÍ + BYTE byDelayCapture; //ÑÓʱץÅÄ¿ØÖÆ,µ¥Î»£ºÖ¡ + BYTE byUseLED; //ʹÓÃLED¿ØÖÆ£¬0-·ñ£¬1-ÊÇ + BYTE byRes2[68]; //±£Áô +}NET_DVR_SPRCFG, *LPNET_DVR_SPRCFG; + +typedef struct tagNET_DVR_PLCCFG +{ + DWORD dwSize; + BYTE byPlcEnable; //ÊÇ·ñÆôÓóµÅÆÁÁ¶È²¹³¥£¨Ä¬ÈÏÆôÓã©£º0-¹Ø±Õ£¬1-ÆôÓà + BYTE byPlateExpectedBright; //³µÅƵÄÔ¤ÆÚÁÁ¶È£¨Ä¬ÈÏÖµ50£©, ·¶Î§[0, 100] + BYTE byRes1[2]; //±£Áô + BYTE byTradeoffFlash; //ÊÇ·ñ¿¼ÂÇÉÁ¹âµÆµÄÓ°Ïì: 0 - ·ñ; 1 - ÊÇ(ĬÈÏ); + //ʹÓÃÉÁ¹âµÆ²¹¹âʱ, Èç¹û¿¼ÂǼõÈõÉÁ¹âµÆµÄÁÁ¶ÈÔöǿЧӦ, ÔòÐèÒªÉèΪ1;·ñÔòΪ0 + BYTE byCorrectFactor; //¾ÀÕýϵÊý, ·¶Î§[0, 100], ĬÈÏÖµ50 (ÔÚtradeoff_flashÇл»Ê±,»Ö¸´Ä¬ÈÏÖµ£© + WORD wLoopStatsEn; //ÊÇ·ñ¸ÃÏßȦµÄÁÁ¶È£¬°´Î»±íʾ£¬0-²»Í³¼Æ£¬1-ͳ¼Æ + BYTE byPlcBrightOffset;// ³µÅÆÁÁ¶È²¹³¥ÁéÃô¶È(ÐéÄâÏßȦģʽÆðЧ)£¬È¡Öµ·¶Î§1~100 + BYTE byRes[19]; +}NET_DVR_PLCCFG, *LPNET_DVR_PLCCFG; + +typedef struct tagNET_DVR_DEVICESTATECFG +{ + DWORD dwSize; + WORD wPreviewNum; //Ô¤ÀÀÁ¬½Ó¸öÊý + WORD wFortifyLinkNum; //²¼·ÀÁ¬½Ó¸öÊý + NET_DVR_IPADDR struPreviewIP[MAX_LINK]; //Ô¤ÀÀµÄÓû§IPµØÖ· + NET_DVR_IPADDR struFortifyIP[MAX_FORTIFY_NUM]; //²¼·ÀÁ¬½ÓµÄÓû§IPµØÖ· + DWORD dwVideoFrameRate; //Ö¡ÂÊ£º0-È«²¿; 1-1/16; 2-1/8; 3-1/4; 4-1/2; 5-1; 6-2; 7-4; 8-6; 9-8; 10-10; 11-12; 12-16; 13-20; 14-15; 15-18; 16-22; + BYTE byResolution; //·Ö±æÂÊ0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF 5£¨±£Áô£©,16-VGA£¨640*480£©, 17-UXGA£¨1600*1200£©, 18-SVGA £¨800*600£©,19-HD720p£¨1280*720£©,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048 + BYTE bySnapResolution; //×¥ÅÄ·Ö±æÂÊ0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF 5£¨±£Áô£©,16-VGA£¨640*480£©, 17-UXGA£¨1600*1200£©, 18-SVGA £¨800*600£©,19-HD720p£¨1280*720£©,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048 + BYTE byStreamType; //´«ÊäÀàÐÍ£º0-Ö÷ÂëÁ÷£»1-×ÓÂëÁ÷ + BYTE byTriggerType; //´¥·¢Ä£Ê½£º0-ÊÓƵ´¥·¢£»1-ÆÕͨ´¥·¢ + DWORD dwSDVolume; //SD¿¨ÈÝÁ¿ + DWORD dwSDFreeSpace; //SD¿¨Ê£Óà¿Õ¼ä + BYTE byDetectorState[MAX_DRIVECHAN_NUM][MAX_COIL_NUM]; //³µ¼ìÆ÷״̬£º0-δʹÓã»1-Õý³££»2-Òì³£ + BYTE byDetectorLinkState; //³µ¼ìÆ÷Á¬½Ó״̬£º0-δÁ¬½Ó£»1-Á¬½Ó + BYTE bySDStatus; //SD¿¨×´Ì¬ 0£­»î¶¯£»1£­ÐÝÃߣ»2£­Òì³££¬3-ÎÞsd¿¨ + BYTE byFortifyLevel[MAX_FORTIFY_NUM]; //²¼·ÀµÈ¼¶£¬0-ÎÞ£¬1-Ò»µÈ¼¶£¨¸ß£©£¬2-¶þµÈ¼¶£¨ÖУ©£¬3-ÈýµÈ¼¶£¨µÍ£© + BYTE byRes2[116]; //±£Áô +}NET_DVR_DEVICESTATECFG, *LPNET_DVR_DEVICESTATECFG; + +typedef struct tagNET_DVR_POSTEPOLICECFG +{ + DWORD dwSize; + DWORD dwDistance;//ÏßȦ¾àÀë,µ¥Î»cm£¬È¡Öµ·¶Î§[0,20000] + DWORD dwLightChan[MAX_SIGNALLIGHT_NUM]; //ÐźŵÆͨµÀºÅ + BYTE byCapSpeed;//±êÖ¾ÏÞËÙ£¬µ¥Î»km/h£¬È¡Öµ·¶Î§[0,255] + BYTE bySpeedLimit;//ÏÞËÙÖµ£¬µ¥Î»km/h£¬È¡Öµ·¶Î§[0,255] + BYTE byTrafficDirection;//³µÁ÷·½Ïò£¬0-Óɶ«ÏòÎ÷£¬1-ÓÉÎ÷Ïò¶«£¬2-ÓÉÄÏÏò±±£¬3-Óɱ±ÏòÄÏ + BYTE byRes1; //±£Áô + WORD wLoopPreDist; /*´¥·¢ÑÓ³Ù¾àÀë £¬µ¥Î»£º·ÖÃ×*/ + WORD wTrigDelay; /*´¥·¢Ó²ÑÓʱʱ¼ä £¬µ¥Î»£ººÁÃë*/ + BYTE byRes[124];//±£Áô×Ö½Ú +}NET_DVR_POSTEPOLICECFG, *LPNET_DVR_POSTEPOLICECFG; + + +//ÐźŵÆÒì³£¼ì²â +typedef struct tagNET_DVR_SIGNALLAMP_DETCFG +{ + DWORD dwSize; //½á¹¹³¤¶È + //¾ø¶Ôʱ¼äµã,yyyymmddhhmmssxxx,e.g.20090810235959999 ×îºóÈýλΪºÁÃëÊý + BYTE byAbsTime[32]; + NET_DVR_IPADDR struAlarmCamIP;//±¨¾¯ÉãÏñ»úIP + DWORD dwPic1Len; //Ò쳣ͼƬ1³¤¶È + DWORD dwPic2Len; //Ò쳣ͼƬ2³¤¶È + char *pPic1Buffer; //Êý¾ÝÖ¸Õë µþ¼Ó³µµÀÏßͼƬ + char *pPic2Buffer; //Êý¾ÝÖ¸Õë µþ¼ÓÐźŵÆ״̬ͼƬ + BYTE byRes[128]; +}NET_DVR_SIGNALLAMP_DETCFG, *LPNET_DVR_SIGNALLAMP_DETCFG; + +typedef struct tagNET_DVR_EXDEVDET_COND +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byExternalDevType;// 0-ÎÞЧֵ£¨±£Áô£©1-ÐźŵÆ,2-ÉÁ¹âµÆ + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_EXDEVDET_COND,*LPNET_DVR_EXDEVDET_COND; + +typedef struct tagNET_DVR_EXDEVDET_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byExternalDevStatus;// 0-Õý³£1-Òì³£ + BYTE byRes[63];// ±£Áô×Ö½Ú +} NET_DVR_EXDEVDET_CFG,*LPNET_DVR_EXDEVDET_CFG; + +/***************************** end *********************************************/ + +#define IPC_PROTOCOL_NUM 50 //ipc ЭÒé×î´ó¸öÊý + +//ЭÒéÀàÐÍ +typedef struct tagNET_DVR_PROTO_TYPE +{ + DWORD dwType; /*ipcЭÒéÖµ*/ + BYTE byDescribe[DESC_LEN]; /*ЭÒéÃèÊö×Ö¶Î*/ +}NET_DVR_PROTO_TYPE, *LPNET_DVR_PROTO_TYPE; + +//ЭÒéÁбí +typedef struct tagNET_DVR_IPC_PROTO_LIST +{ + DWORD dwSize; + DWORD dwProtoNum; /*ÓÐЧµÄipcЭÒéÊýÄ¿*/ + NET_DVR_PROTO_TYPE struProto[IPC_PROTOCOL_NUM]; /*ÓÐЧµÄipcЭÒé*/ + BYTE byRes[8]; +}NET_DVR_IPC_PROTO_LIST, *LPNET_DVR_IPC_PROTO_LIST; + +//ЭÒéÁбíV41 +typedef struct tagNET_DVR_IPC_PROTO_LIST_V41 +{ + DWORD dwSize; + DWORD dwProtoNum; //ÓÐЧµÄipcЭÒéÊýÄ¿ + BYTE *pBuffer; //ЭÒéÁÐ±í»º³åÇø, dwProtoNum ¸öNET_DVR_PROTO_TYPE½á¹¹ + DWORD dwBufferLen; //»º³åÇø³¤¶È + BYTE byRes[32]; +}NET_DVR_IPC_PROTO_LIST_V41, *LPNET_DVR_IPC_PROTO_LIST_V41; + +typedef struct tagNET_DVR_PTZPOS_INFO +{ + DWORD dwPanPos; // P²ÎÊý£¨Ë®Æ½²ÎÊý£© + DWORD dwTiltPos; // T²ÎÊý£¨´¹Ö±²ÎÊý£© + DWORD dwZoomPos; // Z²ÎÊý£¨±ä±¶²ÎÊý£© +}NET_DVR_PTZPOS_INFO, *LPNET_DVR_PTZPOS_INFO; + +//ÈËÌåÌØÕ÷ʶ±ð½á¹û½á¹¹Ìå +typedef struct tagNET_VCA_HUMAN_FEATURE +{ + BYTE byAgeGroup; //ÄêÁä¶Î,²Î¼û HUMAN_AGE_GROUP_ENUM + BYTE bySex; //ÐÔ±ð, 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,1 ¨C ÄÐ , 2 ¨C Å®, 0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byEyeGlass; //ÊÇ·ñ´÷ÑÛ¾µ 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,1 ¨C²»´÷, 2 ¨C´÷ÑÛ¾µ, 3 ¨C´÷Ä«¾µ,0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + //×¥ÅÄͼƬÈËÁ³ÄêÁäµÄʹÓ÷½Ê½£¬ÈçbyAgeΪ15,byAgeDeviationΪ1,±íʾ£¬Êµ¼ÊÈËÁ³Í¼Æ¬ÄêÁäµÄΪ14-16Ö®¼ä + BYTE byAge;//ÄêÁä 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byAgeDeviation;//ÄêÁäÎó²îÖµ + BYTE byRes0; + BYTE byMask; //ÊÇ·ñ´÷¿ÚÕÖ 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,1 ¨C ²»´÷, 2 ¨C ´÷, 0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE bySmile; //ÊÇ·ñ΢Ц 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,1 ¨C ²»Î¢Ð¦, 2 ¨C ΢Ц, 0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byFaceExpression; /* ±íÇé,²Î¼ûFACE_EXPRESSION_GROUP_ENUM*/ + BYTE byRes1; + BYTE byRes2; + BYTE byHat; // ñ×Ó, 0-²»Ö§³Ö,1-²»´÷ñ×Ó,2-´÷ñ×Ó, 3-Í·¿ø 0xff-unknow±íʾδ֪,Ëã·¨Ö§³Öδ¼ì³ö + BYTE byRes[4]; //±£Áô +}NET_VCA_HUMAN_FEATURE ,*LPNET_VCA_HUMAN_FEATURE; + +//ÎïÌåÑÕÉ«ÊôÐÔ +typedef struct tagNET_DVR_OBJECT_FEATURE +{ + BYTE byColorRatel; //ÑÕÉ«ÔÚÒƶ¯ÎïÌåÖеÄÕ¼±ÈãÐÖµ + BYTE byRed; // RGBÑÕÉ«Èý·ÖÁ¿ÖеĺìÉ« + BYTE byGreen; // RGBÑÕÉ«Èý·ÖÁ¿ÖеÄÂÌÉ« + BYTE byBlue; // RGBÑÕÉ«Èý·ÖÁ¿ÖеÄÀ¼É« + BYTE byRes[32]; +}NET_DVR_OBJECT_FEATURE ,*LPNET_DVR_OBJECT_FEATURE; + +//×éºÏËÑË÷Ìõ¼þ +typedef union tagNET_DVR_ADVANCE_COND_UNION +{ + BYTE byLen[36]; //ÁªºÏÌ峤¶È + NET_VCA_HUMAN_FEATURE struHumanFeature; //ÈËÌåÊôÐÔ + NET_DVR_OBJECT_FEATURE struObjectFeature; //ÎïÌåÊôÐÔ +}NET_DVR_ADVANCE_COND_UNION,*LPNET_DVR_ADVANCE_COND_UNION; + + +#define MAX_ALERTLINE_NUM 8 //×î´ó¾¯½äÏßÌõÊý + + +typedef struct tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND +{ + NET_VCA_TRAVERSE_PLANE struVcaTraversePlane[MAX_ALERTLINE_NUM/*8*/]; //´©Ô½¾³½çÃæ²ÎÊý + DWORD dwPreTime; /*ÖÇÄܱ¨¾¯Ìáǰʱ¼ä µ¥Î»:Ãë*/ + DWORD dwDelayTime; /*ÖÇÄܱ¨¾¯ÑÓ³Ùʱ¼ä µ¥Î»:Ãë*/ + NET_DVR_PTZPOS_INFO struPTZPosInfo; //PTZ×ø±êÐÅÏ¢ + BYTE byAdvanceType; //×éºÏ·½Ê½£¬0-²»Ê¹ÓÃ×éºÅ£¬1-ºÍÈËÁ³ÊôÐÔ×éºÏ£¬2-ÓëÎïÌåÑÕÉ«Õ¼±È×éºÏ + BYTE byRes1[3]; //±£Áô + NET_DVR_ADVANCE_COND_UNION uAdvanceCond; //×éºÏÊôÐÔ + BYTE byRes[5604]; //±£Áô +}NET_DVR_TRAVERSE_PLANE_SEARCHCOND, *LPNET_DVR_TRAVERSE_PLANE_SEARCHCOND; //Ô½½çÕì²â²éѯÌõ¼þ + +#define MAX_INTRUSIONREGION_NUM 8 //×î´óÇøÓòÊýÊý +typedef struct tagNET_DVR_INTRUSION_SEARCHCOND +{ + NET_VCA_INTRUSION struVcaIntrusion[MAX_INTRUSIONREGION_NUM/*8*/]; //ÈëÇÖÇøÓò + DWORD dwPreTime; /*ÖÇÄܱ¨¾¯Ìáǰʱ¼ä µ¥Î»:Ãë*/ + DWORD dwDelayTime; /*ÖÇÄܱ¨¾¯ÑÓ³Ùʱ¼ä µ¥Î»:Ãë*/ + NET_DVR_PTZPOS_INFO struPTZPosInfo; //PTZ×ø±êÐÅÏ¢ + BYTE byAdvanceType;//×éºÏ·½Ê½£¬0-²»Ê¹ÓÃ×éºÅ£¬1-ºÍÈËÁ³ÊôÐÔ×éºÏ£¬2-ÓëÎïÌåÑÕÉ«Õ¼±È×éºÏ + BYTE byRes1[3]; //±£Áô + NET_DVR_ADVANCE_COND_UNION uAdvanceCond; //×éºÏÊôÐÔ + BYTE byRes[5348]; //±£Áô +} NET_DVR_INTRUSION_SEARCHCOND, *LPNET_DVR_INTRUSION_SEARCHCOND; //ÇøÓòÈëÇÖ + + +typedef struct tagNET_DVR_FACEDETECTION_SEARCHCOND +{ + NET_VCA_POLYGON struFacePolygon; //ʶ±ðÇøÓò + DWORD dwPreTime; /*ÖÇÄܼÏñÌáǰʱ¼ä µ¥Î»:Ãë*/ + DWORD dwDelayTime; /*ÖÇÄܼÏñÑÓ³Ùʱ¼ä µ¥Î»:Ãë*/ + BYTE byRes[5972]; //±£Áô +}NET_DVR_FACEDETECTION_SEARCHCOND, *LPNET_DVR_FACEDETECTION_SEARCHCOND; //ÈËÁ³¼ì²â + + +typedef union tagNET_DVR_AREA_SMARTSEARCH_COND_UNION +{ + BYTE byLen[6144]; //½á¹¹Ì峤¶È + BYTE byMotionScope[64][96]; //Õì²âÇøÓò 0-96λ±íʾ64ÐУ¬¹²ÓÐ96*64¸öСºê¿é£¬1-ÊÇÒƶ¯Õì²âÇøÓò£¬0-·ÇÒƶ¯Õì²âÇøÓò + NET_DVR_TRAVERSE_PLANE_SEARCHCOND struTraversPlaneCond; //Ô½½çÕì²â + NET_DVR_INTRUSION_SEARCHCOND struIntrusionCond; //ÇøÓòÈëÇÖ + NET_DVR_FACEDETECTION_SEARCHCOND struFaceSnapCond; //ÈËÁ³Õì²âÌõ¼þ +}NET_DVR_AREA_SMARTSEARCH_COND_UNION, +*LPNET_DVR_AREA_SMARTSEARCH_COND_UNION; + + +//ÖÇÄÜËÑË÷²ÎÊý +typedef struct tagNET_DVR_SMART_SEARCH_PARAM +{ + BYTE byChan; //ͨµÀºÅ + BYTE bySearchCondType; //ÖÇÄܲéÕÒÁªºÏÌåNET_DVR_AREA_SMARTSEARCH_COND_UNIONµÄË÷Òý + /*0-Òƶ¯Õì²âÇøÓò £¬1-Ô½½çÕì²â£¬ 2-ÇøÓòÈëÇÖ, 3-ÈËÁ³Õì²â */ + WORD wChan; //ͨµÀºÅ£¬ ¸Ã×Ö¶ÎÊǶÔbyChanµÄÀ©Õ¹£¬Ê¹ÓøÃ×ֶκóbyChan¿ÉÒÔ²»ÔÙʹÓà + NET_DVR_TIME struStartTime; //¼Ïñ¿ªÊ¼µÄʱ¼ä + NET_DVR_TIME struEndTime; //¼ÏñÍ£Ö¹µÄʱ¼ä + NET_DVR_AREA_SMARTSEARCH_COND_UNION uSmartSearchCond; //ÖÇÄܲéÕÒÌõ¼þ + BYTE bySensitivity; //Òƶ¯Õì²âËÑË÷ÁéÃô¶È,1 >80% 2 40%~80% 3 1%~40% + BYTE byRes2[11]; +}NET_DVR_SMART_SEARCH_PARAM, *LPNET_DVR_SMART_SEARCH_PARAM; + +typedef struct tagNET_DVR_SMART_SEARCH_PARAM_V40 +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_STREAM_INFO struIDInfo; //ͨµÀÐÅÏ¢ + BYTE bySearchCondType; //ÖÇÄܲéÕÒÁªºÏÌåË÷Òý 0-Õì²âÇøÓò, 1-Ô½½çÕì²â, 2-ÇøÓòÈëÇÖ,3-ÈËÁ³Õì²â, 4-³µÅƼì²â + BYTE bySensitivity; //Õì²âÇøÓò¶¯Ì¬·ÖÎöÁéÃô¶È,1-100 + BYTE byRes1[2]; + NET_DVR_TIME_EX struStartTime; + NET_DVR_TIME_EX struEndTime; + NET_DVR_AREA_SMARTSEARCH_COND_UNION uSmartSearchCond; //ÖÇÄܲéÕÒÌõ¼þ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø£¬byISO8601Ϊ1ʱÓÐЧ + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø£¬byISO8601Ϊ1ʱÓÐЧ + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø£¬byISO8601Ϊ1ʱÓÐЧ + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø£¬byISO8601Ϊ1ʱÓÐЧ + BYTE byRes2[251]; +}NET_DVR_SMART_SEARCH_PARAM_V40,*LPNET_DVR_SMART_SEARCH_PARAM_V40; + + + +typedef struct tagNET_DVR_SMART_SEARCH_RET +{ + NET_DVR_TIME struStartTime; //Òƶ¯Õì²â±¨¾¯¿ªÊ¼µÄʱ¼ä + NET_DVR_TIME struEndTime; //ʼþÍ£Ö¹µÄʱ¼ä + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes[59]; +}NET_DVR_SMART_SEARCH_RET, *LPNET_DVR_SMART_SEARCH_RET; + +// IPSAN ÎļþĿ¼²éÕÒ +typedef struct tagNET_DVR_IPSAN_SERACH_PARAM +{ + NET_DVR_IPADDR struIP; // IPSAN IPµØÖ· + WORD wPort; // IPSAN ¶Ë¿Ú + BYTE byRes[10]; // ±£Áô×Ö½Ú +}NET_DVR_IPSAN_SERACH_PARAM, *LPNET_DVR_IPSAN_SERACH_PARAM; + +typedef struct tagNET_DVR_IPSAN_SERACH_RET +{ + BYTE byDirectory[128]; // ·µ»ØµÄÎļþĿ¼ + BYTE byRes[20]; +}NET_DVR_IPSAN_SERACH_RET, *LPNET_DVR_IPSAN_SERACH_RET; + +//DVRÉ豸²ÎÊý +typedef struct +{ + DWORD dwSize; + BYTE sDVRName[NAME_LEN]; //DVRÃû³Æ + DWORD dwDVRID; //DVR ID,ÓÃÓÚÒ£¿ØÆ÷ //V1.4(0-99), V1.5(0-255) + DWORD dwRecycleRecord; //ÊÇ·ñÑ­»·Â¼Ïñ,0:²»ÊÇ; 1:ÊÇ + //ÒÔϲ»¿É¸ü¸Ä + BYTE sSerialNumber[SERIALNO_LEN]; //ÐòÁкŠ+ DWORD dwSoftwareVersion; //Èí¼þ°æ±¾ºÅ,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwSoftwareBuildDate; //Èí¼þÉú³ÉÈÕÆÚ,0xYYYYMMDD + DWORD dwDSPSoftwareVersion; //DSPÈí¼þ°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwDSPSoftwareBuildDate; // DSPÈí¼þÉú³ÉÈÕÆÚ,0xYYYYMMDD + DWORD dwPanelVersion; // Ç°Ãæ°å°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwHardwareVersion; // Ó²¼þ°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + BYTE byAlarmInPortNum; //DVR±¨¾¯ÊäÈë¸öÊý + BYTE byAlarmOutPortNum; //DVR±¨¾¯Êä³ö¸öÊý + BYTE byRS232Num; //DVR 232´®¿Ú¸öÊý + BYTE byRS485Num; //DVR 485´®¿Ú¸öÊý + BYTE byNetworkPortNum; //ÍøÂç¿Ú¸öÊý + BYTE byDiskCtrlNum; //DVR Ó²ÅÌ¿ØÖÆÆ÷¸öÊý + BYTE byDiskNum; //DVR Ó²Å̸öÊý + BYTE byDVRType; //DVRÀàÐÍ, 1:DVR 2:ATM DVR 3:DVS ...... + BYTE byChanNum; //DVR ͨµÀ¸öÊý + BYTE byStartChan; //ÆðʼͨµÀºÅ,ÀýÈçDVS-1,DVR - 1 + BYTE byDecordChans; //DVR ½âÂë·Êý + BYTE byVGANum; //VGA¿ÚµÄ¸öÊý + BYTE byUSBNum; //USB¿ÚµÄ¸öÊý + BYTE byAuxoutNum; //¸¨¿ÚµÄ¸öÊý + BYTE byAudioNum; //ÓïÒô¿ÚµÄ¸öÊý + BYTE byIPChanNum; //×î´óÊý×ÖͨµÀÊý µÍ8룬¸ß8λ¼ûbyHighIPChanNum + BYTE byZeroChanNum; //ÁãͨµÀ±àÂë¸öÊý + BYTE bySupport; //ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö£¬ + //bySupport & 0x1, ±íʾÊÇ·ñÖ§³ÖÖÇÄÜËÑË÷ + //bySupport & 0x2, ±íʾÊÇ·ñÖ§³Ö±¸·Ý + //bySupport & 0x4, ±íʾÊÇ·ñÖ§³ÖѹËõ²ÎÊýÄÜÁ¦»ñÈ¡ + //bySupport & 0x8, ±íʾÊÇ·ñÖ§³Ö¶àÍø¿¨ + //bySupport & 0x10, ±íʾ֧³ÖÔ¶³ÌSADP + //bySupport & 0x20, ±íʾ֧³ÖRaid¿¨¹¦ÄÜ + //bySupport & 0x40, ±íʾ֧³ÖIPSANËÑË÷ + //bySupport & 0x80, ±íʾ֧³Örtp over rtsp + BYTE byEsataUseage; //EsataµÄĬÈÏÓÃ;£¬0-ĬÈϱ¸·Ý£¬1-ĬÈϼÏñ + BYTE byIPCPlug; //0-¹Ø±Õ¼´²å¼´Óã¬1-´ò¿ª¼´²å¼´Óà + BYTE byStorageMode; //0-ÅÌ×éģʽ,1-´ÅÅÌÅä¶î, 2³é֡ģʽ, 3-×Ô¶¯ + BYTE bySupport1; //ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport1 & 0x1, ±íʾÊÇ·ñÖ§³Ösnmp v30 + //bySupport1 & 0x2, Ö§³ÖÇø·Ö»Ø·ÅºÍÏÂÔØ + //bySupport1 & 0x4, ÊÇ·ñÖ§³Ö²¼·ÀÓÅÏȼ¶ + //bySupport1 & 0x8, ÖÇÄÜÉ豸ÊÇ·ñÖ§³Ö²¼·Àʱ¼ä¶ÎÀ©Õ¹ + //bySupport1 & 0x10, ±íʾÊÇ·ñÖ§³Ö¶à´ÅÅÌÊý£¨³¬¹ý33¸ö£© + //bySupport1 & 0x20, ±íʾÊÇ·ñÖ§³Örtsp over http + WORD wDevType;//É豸ÐͺŠ+ BYTE byDevTypeName[DEV_TYPE_NAME_LEN];//É豸ÐͺÅÃû³Æ + BYTE bySupport2; //ÄÜÁ¦¼¯À©Õ¹£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport2 & 0x1, ±íʾÊÇ·ñÖ§³ÖÀ©Õ¹µÄOSD×Ö·ûµþ¼Ó(Öն˺Í×¥ÅÄ»úÀ©Õ¹Çø·Ö) + BYTE byAnalogAlarmInPortNum; //Ä£Äⱨ¾¯ÊäÈë¸öÊý + BYTE byStartAlarmInNo; //Ä£Äⱨ¾¯ÊäÈëÆðʼºÅ + BYTE byStartAlarmOutNo; //Ä£Äⱨ¾¯Êä³öÆðʼºÅ + BYTE byStartIPAlarmInNo; //IP±¨¾¯ÊäÈëÆðʼºÅ + BYTE byStartIPAlarmOutNo; //IP±¨¾¯Êä³öÆðʼºÅ + BYTE byHighIPChanNum; //Êý×ÖͨµÀ¸öÊý£¬¸ß8λ + BYTE byEnableRemotePowerOn;//ÊÇ·ñÆôÓÃÔÚÉ豸ÐÝÃßµÄ״̬ÏÂÔ¶³Ì¿ª»ú¹¦ÄÜ£¬0-²»ÆôÓã¬1-ÆôÓà + WORD wDevClass; //É豸´óÀ౸ÊÇÊôÓÚÄĸö²úÆ·Ïߣ¬0 ±£Áô£¬1-50 DVR£¬51-100 DVS£¬101-150 NVR£¬151-200 IPC£¬65534 ÆäËû£¬¾ßÌå·ÖÀà·½·¨¼û¡¶É豸ÀàÐͶÔÓ¦ÐòÁкźÍÀàÐÍÖµ.docx¡· + BYTE byRes2[6]; //±£Áô +}NET_DVR_DEVICECFG_V40, *LPNET_DVR_DEVICECFG_V40; + +typedef struct +{ + DWORD dwSize; + BYTE sDVRName[NET_DEV_NAME_LEN]; //DVRÃû³Æ + DWORD dwDVRID; //DVR ID,ÓÃÓÚÒ£¿ØÆ÷ //V1.4(0-99), V1.5(0-255) + DWORD dwRecycleRecord; //ÊÇ·ñÑ­»·Â¼Ïñ,0:²»ÊÇ; 1:ÊÇ + //ÒÔϲ»¿É¸ü¸Ä + BYTE sSerialNumber[SERIALNO_LEN]; //ÐòÁкŠ+ DWORD dwSoftwareVersion; //Èí¼þ°æ±¾ºÅ,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwSoftwareBuildDate; //Èí¼þÉú³ÉÈÕÆÚ,0xYYYYMMDD + DWORD dwDSPSoftwareVersion; //DSPÈí¼þ°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwDSPSoftwareBuildDate; // DSPÈí¼þÉú³ÉÈÕÆÚ,0xYYYYMMDD + DWORD dwPanelVersion; // Ç°Ãæ°å°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + DWORD dwHardwareVersion; // Ó²¼þ°æ±¾,¸ß16λÊÇÖ÷°æ±¾,µÍ16λÊǴΰ汾 + BYTE byAlarmInPortNum; //DVR±¨¾¯ÊäÈë¸öÊý + BYTE byAlarmOutPortNum; //DVR±¨¾¯Êä³ö¸öÊý + BYTE byRS232Num; //DVR 232´®¿Ú¸öÊý + BYTE byRS485Num; //DVR 485´®¿Ú¸öÊý -- + BYTE byNetworkPortNum; //ÍøÂç¿Ú¸öÊý + BYTE byDiskCtrlNum; //DVR Ó²ÅÌ¿ØÖÆÆ÷¸öÊý + BYTE byDiskNum; //DVR Ó²Å̸öÊý + BYTE byDVRType; //DVRÀàÐÍ, 1:DVR 2:ATM DVR 3:DVS ......-- + BYTE byChanNum; //DVR ͨµÀ¸öÊý + BYTE byStartChan; //ÆðʼͨµÀºÅ,ÀýÈçDVS-1,DVR - 1 + BYTE byDecordChans; //DVR ½âÂë·Êý + BYTE byVGANum; //VGA¿ÚµÄ¸öÊý -- + BYTE byUSBNum; //USB¿ÚµÄ¸öÊý + BYTE byAuxoutNum; //¸¨¿ÚµÄ¸öÊý + BYTE byAudioNum; //ÓïÒô¿ÚµÄ¸öÊý + BYTE byIPChanNum; //×î´óÊý×ÖͨµÀÊý -- + BYTE byZeroChanNum; //ÁãͨµÀ±àÂë¸öÊý + BYTE bySupport; //ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö£¬ + //bySupport & 0x1, ±íʾÊÇ·ñÖ§³ÖÖÇÄÜËÑË÷ + //bySupport & 0x2, ±íʾÊÇ·ñÖ§³Ö±¸·Ý + //bySupport & 0x4, ±íʾÊÇ·ñÖ§³ÖѹËõ²ÎÊýÄÜÁ¦»ñÈ¡ + //bySupport & 0x8, ±íʾÊÇ·ñÖ§³Ö¶àÍø¿¨ + //bySupport & 0x10, ±íʾ֧³ÖÔ¶³ÌSADP + //bySupport & 0x20, ±íʾ֧³ÖRaid¿¨¹¦ÄÜ + //bySupport & 0x40, ±íʾ֧³ÖIPSANËÑË÷ + //bySupport & 0x80, ±íʾ֧³Örtp over rtsp + BYTE byEsataUseage; //EsataµÄĬÈÏÓÃ;£¬0-ĬÈϱ¸·Ý£¬1-ĬÈϼÏñ + BYTE byIPCPlug; //0-¹Ø±Õ¼´²å¼´Óã¬1-´ò¿ª¼´²å¼´Óà + BYTE byStorageMode; //0-ÅÌ×éģʽ,1-´ÅÅÌÅä¶î,2³é֡ģʽ + BYTE bySupport1; //ÄÜÁ¦£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport1 & 0x1, ±íʾÊÇ·ñÖ§³Ösnmp v30 + //bySupport1 & 0x2, Ö§³ÖÇø·Ö»Ø·ÅºÍÏÂÔØ + //bySupport1 & 0x4, ÊÇ·ñÖ§³Ö²¼·ÀÓÅÏȼ¶ + //bySupport1 & 0x8, ÖÇÄÜÉ豸ÊÇ·ñÖ§³Ö²¼·Àʱ¼ä¶ÎÀ©Õ¹ + //bySupport1 & 0x10, ±íʾÊÇ·ñÖ§³Ö¶à´ÅÅÌÊý£¨³¬¹ý33¸ö£© + //bySupport1 & 0x20, ±íʾÊÇ·ñÖ§³Örtsp over http + WORD wDevType;//É豸ÐͺÅÀ©Õ¹ + BYTE byDevTypeName[NET_DEV_TYPE_NAME_LEN];//É豸ÐͺÅÃû³Æ + BYTE bySupport2; //ÄÜÁ¦¼¯À©Õ¹£¬Î»Óë½á¹ûΪ0±íʾ²»Ö§³Ö£¬1±íʾ֧³Ö + //bySupport2 & 0x1, ±íʾÊÇ·ñÖ§³ÖÀ©Õ¹µÄOSD×Ö·ûµþ¼Ó(Öն˺Í×¥ÅÄ»úÀ©Õ¹Çø·Ö) + BYTE byAnalogAlarmInPortNum; //Ä£Äⱨ¾¯ÊäÈëÊýÄ¿ + BYTE byStartAlarmInNo; //Ä£Äⱨ¾¯ÊäÈëÆðʼºÅ + BYTE byStartAlarmOutNo; //Ä£Äⱨ¾¯Êä³öÆðʼºÅ + BYTE byStartIPAlarmInNo; //IP±¨¾¯ÊäÈëÆðʼºÅ + BYTE byStartIPAlarmOutNo; //IP±¨¾¯Êä³öÆðʼºÅ + BYTE byHighIPChanNum; //Êý×ÖͨµÀ¸öÊý£¬¸ß8λ + BYTE byEnableRemotePowerOn;//ÊÇ·ñÆôÓÃÔÚÉ豸ÐÝÃßµÄ״̬ÏÂÔ¶³Ì¿ª»ú¹¦ÄÜ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes[256]; //±£Áô +}NET_DVR_DEVICECFG_V50, *LPNET_DVR_DEVICECFG_V50; +#define MAX_ZEROCHAN_NUM 16 +//ÁãͨµÀѹËõÅäÖòÎÊý +typedef struct tagNET_DVR_ZEROCHANCFG +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnable; //0-Í£Ö¹ÁãͨµÀ±àÂ룬1-±íʾÆôÓÃÁãͨµÀ±àÂë + BYTE byRes1[3]; //±£Áô + DWORD dwVideoBitrate; //ÊÓƵÂëÂÊ 0-±£Áô 1-16K(±£Áô) 2-32K 3-48k 4-64K 5-80K 6-96K 7-128K 8-160k 9-192K 10-224K 11-256K 12-320K + // 13-384K 14-448K 15-512K 16-640K 17-768K 18-896K 19-1024K 20-1280K 21-1536K 22-1792K 23-2048K + //×î¸ßλ(31λ)ÖóÉ1±íʾÊÇ×Ô¶¨ÒåÂëÁ÷, 0-30λ±íʾÂëÁ÷Öµ(MIN-32K MAX-8192K)¡£ + DWORD dwVideoFrameRate; //Ö¡ÂÊ 0-È«²¿; 1-1/16; 2-1/8; 3-1/4; 4-1/2; 5-1; 6-2; 7-4; 8-6; 9-8; 10-10; 11-12; 12-16; 13-20, //V2.0Ôö¼Ó14-15, 15-18, 16-22; + BYTE byRes2[32]; //±£Áô +}NET_DVR_ZEROCHANCFG, *LPNET_DVR_ZEROCHANCFG; + +//ÁãͨµÀËõ·Å²ÎÊý +typedef struct tagNET_DVR_ZERO_ZOOMCFG +{ + DWORD dwSize; //½á¹¹³¤¶È + NET_VCA_POINT struPoint; //»­ÃæÖеÄ×ø±êµã + BYTE byState; //ÏÖÔÚµÄ״̬£¬0-ËõС£¬1-·Å´ó + BYTE byPreviewNumber; //Ô¤ÀÀÊýÄ¿,0-1»­Ãæ,1-4»­Ãæ,2-9»­Ãæ,3-16»­Ãæ ¸Ã²ÎÊýÖ»¶Á + BYTE byPreviewSeq[MAX_WINDOW_V30];//»­ÃæͨµÀÐÅÏ¢ ¸Ã²ÎÊýÖ»¶Á + BYTE byRes[30]; //±£Áô +}NET_DVR_ZERO_ZOOMCFG, *LPNET_DVR_ZERO_ZOOMCFG; + +#define DESC_LEN_64 64 +typedef struct tagNET_DVR_SNMPCFG +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnable; //0-½ûÓÃSNMP£¬1-±íʾÆôÓÃSNMP + BYTE byRes1[3]; //±£Áô + WORD wVersion; //snmp °æ±¾ v1 = 1, v2 =2, v3 =3£¬É豸Ŀǰ²»Ö§³Ö v3 + WORD wServerPort; //snmpÏûÏ¢½ÓÊն˿ڣ¬Ä¬ÈÏ 161 + BYTE byReadCommunity[NAME_LEN]; //¶Á¹²Í¬Ì壬×î¶à31,ĬÈÏ"public" + BYTE byWriteCommunity[NAME_LEN];//д¹²Í¬Ìå,×î¶à31 ×Ö½Ú,ĬÈÏ "private" + BYTE byTrapHostIP [DESC_LEN_64]; //×ÔÏÝÖ÷»úipµØÖ·ÃèÊö£¬Ö§³ÖIPV4 IPV6ºÍÓòÃûÃèÊö + WORD wTrapHostPort; // trapÖ÷»ú¶Ë¿Ú + BYTE byTrapName[NAME_LEN]; + BYTE byRes2[70]; //±£Áô +}NET_DVR_SNMPCFG, *LPNET_DVR_SNMPCFG; + +typedef struct tagNET_DVR_SNMPv3_USER +{ + BYTE byUserName[NAME_LEN]; // Óû§Ãû + BYTE bySecLevel; // °²È«¼¶±ð 0-±£Áô 1-ÎÞУÑé 2-ÎÞÊÚȨУÑé 3-ÊÚȨУÑé + BYTE byAuthtype; // ÈÏÖ¤ÀàÐÍ 0-MD5ÈÏÖ¤ 1-SHAÈÏÖ¤ 2: none + BYTE byPrivtype; // 0: DES; 1: AES; 2: none; + BYTE byRes[5]; + BYTE byAuthpass[PASSWD_LEN]; // ÈÏÖ¤ÃÜÂë + BYTE byPrivpass[PASSWD_LEN]; // ¼ÓÃÜÃÜÂë +}NET_DVR_SNMPv3_USER, *LPNET_DVR_SNMPv3_USER; + +// snmpv30 +typedef struct tagNET_DVR_SNMPCFG_V30 +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnableV1; //0-½ûÓÃSNMP V1£¬1-±íʾÆôÓÃSNMP V1 + BYTE byEnableV2; //0-½ûÓÃSNMP V2£¬1-±íʾÆôÓÃSNMP V2 + BYTE byEnableV3; //0-½ûÓÃSNMP V3£¬1-±íʾÆôÓÃSNMP V3 + BYTE byRes1[3]; + WORD wServerPort; //snmpÏûÏ¢½ÓÊն˿ڣ¬Ä¬ÈÏ 161 + BYTE byReadCommunity[NAME_LEN]; //¶Á¹²Í¬Ì壬×î¶à31,ĬÈÏ"public" + BYTE byWriteCommunity[NAME_LEN]; //д¹²Í¬Ìå,×î¶à31 ×Ö½Ú,ĬÈÏ "private" + BYTE byTrapHostIP [DESC_LEN_64]; //×ÔÏÝÖ÷»úipµØÖ·ÃèÊö£¬Ö§³ÖIPV4 IPV6ºÍÓòÃûÃèÊö + WORD wTrapHostPort; // trapÖ÷»ú¶Ë¿Ú + BYTE byRes2[2]; + NET_DVR_SNMPv3_USER struRWUser; // ¶ÁдÓû§ + NET_DVR_SNMPv3_USER struROUser; // Ö»¶ÁÓû§ + BYTE byTrapName[NAME_LEN]; +}NET_DVR_SNMPCFG_V30, *LPNET_DVR_SNMPCFG_V30; + +#define PROCESSING 0 //ÕýÔÚ´¦Àí +#define PROCESS_SUCCESS 100 //¹ý³ÌÍê³É +#define PROCESS_EXCEPTION 400 //¹ý³ÌÒì³£ +#define PROCESS_FAILED 500 //¹ý³Ìʧ°Ü +#define PROCESS_QUICK_SETUP_PD_COUNT 501 //Ò»¼üÅäÖÃÖÁÉÙ3¿éÓ²ÅÌ + +#define SOFTWARE_VERSION_LEN 48 +#define NET_SDK_DEVICE_MODEL_LEN 24 //É豸Ðͺų¤¶È +typedef struct tagNET_DVR_SADPINFO +{ + NET_DVR_IPADDR struIP; // É豸IPµØÖ· + WORD wPort; // É豸¶Ë¿ÚºÅ + WORD wFactoryType; // É豸³§¼ÒÀàÐÍ + char chSoftwareVersion[SOFTWARE_VERSION_LEN]; + char chSerialNo[16]; // ÐòÁкŠ+ WORD wEncCnt; // ±àÂëͨµÀ¸öÊý + BYTE byMACAddr[MACADDR_LEN]; // MAC µØÖ· + NET_DVR_IPADDR struSubDVRIPMask; // DVR IPµØÖ·ÑÚÂë + NET_DVR_IPADDR struGatewayIpAddr; // Íø¹Ø + NET_DVR_IPADDR struDnsServer1IpAddr; /* ÓòÃû·þÎñÆ÷1µÄIPµØÖ· */ + NET_DVR_IPADDR struDnsServer2IpAddr; /* ÓòÃû·þÎñÆ÷2µÄIPµØÖ· */ + BYTE byDns; + BYTE byDhcp; + BYTE szGB28181DevID[DEV_ID_LEN]; //GB28181ЭÒé½ÓÈëʱµÄÉ豸ID£¬ÓÃÓÚIPCÒÔGB28181ЭÒé½ÓÈë + BYTE byActivated;//0-ÎÞЧ£¬1-ÒѼ¤»î£¬2-δ¼¤»î + BYTE byDeviceModel[NET_SDK_DEVICE_MODEL_LEN/*24*/];//É豸ÐͺŠ+ BYTE byRes[101]; // ±£Áô×Ö½Ú +}NET_DVR_SADPINFO, *LPNET_DVR_SADPINFO; + +#define MAX_SADP_NUM 256 // ËÑË÷µ½É豸×î´óÊýÄ¿ +typedef struct tagNET_DVR_SADPINFO_LIST +{ + DWORD dwSize; // ½á¹¹´óС + WORD wSadpNum; // ËÑË÷µ½É豸ÊýÄ¿ + BYTE byRes[6]; // ±£Áô×Ö½Ú + NET_DVR_SADPINFO struSadpInfo[MAX_SADP_NUM]; // ËÑË÷ +}NET_DVR_SADPINFO_LIST, *LPNET_DVR_SADPINFO_LIST; + +typedef struct tagNET_DVR_SADP_VERIFY +{ + char chPassword[PASSWD_LEN]; + NET_DVR_IPADDR struOldIP; + WORD wOldPort; + BYTE byRes[62]; +}NET_DVR_SADP_VERIFY, *LPNET_DVR_SADP_VERIFY; + +/*******************************±¸·Ý½Ó¿Ú begin********************************/ +//»ñÈ¡±¸·ÝÉ豸ÐÅÏ¢½Ó¿Ú¶¨Òå +#define DESC_LEN_32 32 //ÃèÊö×Ö³¤¶È +#define MAX_NODE_NUM 256 //½Úµã¸öÊý + +typedef struct tagNET_DVR_DESC_NODE +{ + int iValue; + BYTE byDescribe[DESC_LEN_32]; //ÃèÊö×ֶΠ+ DWORD dwFreeSpace; //»ñÈ¡´ÅÅÌÁбíרÓÃ,µ¥Î»ÎªM + BYTE byRes[12]; //±£Áô +}NET_DVR_DESC_NODE, *LPNET_DVR_DESC_NODE; + +typedef struct tagNET_DVR_DISKABILITY_LIST +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwNodeNum; //ÄÜÁ¦½áµã¸öÊý + NET_DVR_DESC_NODE struDescNode[MAX_NODE_NUM]; //ÃèÊö²ÎÊý +}NET_DVR_DISKABILITY_LIST, *LPNET_DVR_DISKABILITY_LIST; + +//±¸·Ý½ø¶ÈÁбí +#define BACKUP_SUCCESS 100 //±¸·ÝÍê³É +#define BACKUP_CHANGE_DEVICE 101 //±¸·ÝÉ豸ÒÑÂú£¬¸ü»»É豸¼ÌÐø±¸·Ý + +#define BACKUP_SEARCH_DEVICE 300 //ÕýÔÚËÑË÷±¸·ÝÉ豸 +#define BACKUP_SEARCH_FILE 301 //ÕýÔÚËÑË÷¼ÏñÎļþ +#define BACKUP_SEARCH_LOG_FILE 302 //ÕýÔÚËÑË÷ÈÕÖ¾Îļþ +#define BACKUP_CHANGE_DISK 303 //ÕýÔÚ¸ü»»¹âÅÌ + +#define BACKUP_EXCEPTION 400 //±¸·ÝÒì³£ +#define BACKUP_FAIL 500 //±¸·Ýʧ°Ü + +#define BACKUP_TIME_SEG_NO_FILE 501 //ʱ¼ä¶ÎÄÚÎÞ¼ÏñÎļþ +#define BACKUP_NO_RESOURCE 502 //ÉêÇë²»µ½×ÊÔ´ +#define BACKUP_DEVICE_LOW_SPACE 503 //±¸·ÝÉ豸ÈÝÁ¿²»×ã +#define BACKUP_DISK_FINALIZED 504 //¿Ì¼¹âÅÌ·âÅÌ +#define BACKUP_DISK_EXCEPTION 505 //¿Ì¼¹âÅÌÒì³£ +#define BACKUP_DEVICE_NOT_EXIST 506 //±¸·ÝÉ豸²»´æÔÚ +#define BACKUP_OTHER_BACKUP_WORK 507 //ÓÐÆäËû±¸·Ý²Ù×÷ÔÚ½øÐÐ +#define BACKUP_USER_NO_RIGHT 508 //Óû§Ã»ÓвÙ×÷ȨÏÞ +#define BACKUP_OPERATE_FAIL 509 //²Ù×÷ʧ°Ü +#define BACKUP_NO_LOG_FILE 510 //Ó²ÅÌÖÐÎÞÈÕÖ¾ + +//±¸·Ý¹ý³Ì½Ó¿Ú¶¨Òå +typedef struct tagNET_DVR_BACKUP_NAME_PARAM +{ + DWORD dwFileNum; //Îļþ¸öÊý + NET_DVR_FINDDATA_V30 struFileList[MAX_RECORD_FILE_NUM]; //ÎļþÁбí + BYTE byDiskDes[DESC_LEN_32]; //±¸·Ý´ÅÅÌÃèÊö + BYTE byWithPlayer; //ÊÇ·ñ±¸·Ý²¥·ÅÆ÷ + BYTE byContinue; /*ÊÇ·ñ¼ÌÐø±¸·Ý 0²»¼ÌÐø 1¼ÌÐø*/ + BYTE byRes[34]; //±£Áô +}NET_DVR_BACKUP_NAME_PARAM, *LPNET_DVR_BACKUP_NAME_PARAM; + +typedef struct tagNET_DVR_BACKUP_TIME_PARAM +{ + LONG lChannel; //°´Ê±¼ä±¸·ÝµÄͨµÀ + NET_DVR_TIME struStartTime; //±¸·ÝµÄÆðʼʱ¼ä + NET_DVR_TIME struStopTime; //±¸·ÝµÄÖÕֹʱ¼ä + BYTE byDiskDes[DESC_LEN_32]; //±¸·Ý´ÅÅÌÃèÊö + BYTE byWithPlayer; //ÊÇ·ñ±¸·Ý²¥·ÅÆ÷ + BYTE byContinue; //ÊÇ·ñ¼ÌÐø±¸·Ý 0²»¼ÌÐø 1¼ÌÐø + BYTE byDrawFrame; //0 ²»³éÖ¡ 1 ³éÖ¡ + BYTE byUseBackCfgParam; //ʹÓñ¸·ÝÅäÖÃÖеIJÎÊý£¬0-ÎÞЧ£¬1-ÆôÓÃ(ÆôÓúó£¬Í¨µÀºÅÎÞЧ)£¬2-²»ÆôÓà + DWORD dwStreamType; //±¸·ÝÂëÁ÷ÀàÐÍ£¬°´Î»±íʾ + //&0x1-±íʾÖ÷ÂëÁ÷ + //&0x2-±íʾ×ÓÂëÁ÷ + //&0x4-±íʾÂëÁ÷Èý + BYTE byRes[28]; // ±£Áô×Ö½Ú +}NET_DVR_BACKUP_TIME_PARAM, *LPNET_DVR_BACKUP_TIME_PARAM; +/********************************* end *******************************************/ + +typedef enum _COMPRESSION_ABILITY_TYPE_ +{ + COMPRESSION_STREAM_ABILITY = 0, //ÂëÁ÷ѹËõÀàÐÍ + MAIN_RESOLUTION_ABILITY = 1, //Ö÷ÂëÁ÷ѹËõ·Ö±æÂÊ + SUB_RESOLUTION_ABILITY = 2, //×ÓÂëÁ÷ѹËõ·Ö±æÂÊ + EVENT_RESOLUTION_ABILITY = 3, //ʼþѹËõ²ÎÊý·Ö±æÂÊ + FRAME_ABILITY = 4, //Ö¡ÂÊÄÜÁ¦ + BITRATE_TYPE_ABILITY = 5, //λÂÊÀàÐÍÄÜÁ¦ + BITRATE_ABILITY = 6, //λÂÊÉÏÏÞ + THIRD_RESOLUTION_ABILITY = 7, //ÈýÂëÁ÷ѹËõ·Ö±æÂÊ + STREAM_TYPE_ABILITY = 8, //ÂëÁ÷ÀàÐÍ + PIC_QUALITY_ABILITY = 9, //ͼÏñÖÊÁ¿ + INTERVAL_BPFRAME_ABILITY = 10, //BPÖ¡¼ä¸ô + VIDEO_ENC_ABILITY = 11, //ÊÓƵ±àÂëÄÜÁ¦ + AUDIO_ENC_ABILITY = 12, //ÒôƵ±àÂëÄÜÁ¦ + VIDEO_ENC_COMPLEXITY_ABILITY = 13, //ÊÓƵ±àÂ븴ÔÓ¶ÈÄÜÁ¦ + FORMAT_ABILITY = 14, //·â×°¸ñʽÄÜÁ¦ +}COMPRESSION_ABILITY_TYPE; + +//ÄÜÁ¦Áбí +typedef struct tagNET_DVR_ABILITY_LIST +{ + DWORD dwAbilityType; //ÄÜÁ¦ÀàÐÍ COMPRESSION_ABILITY_TYPE + BYTE byRes[32]; //±£Áô×Ö½Ú + DWORD dwNodeNum; //ÄÜÁ¦½áµã¸öÊý + NET_DVR_DESC_NODE struDescNode[MAX_NODE_NUM]; //ÃèÊö²ÎÊý +}NET_DVR_ABILITY_LIST, *LPNET_DVR_ABILITY_LIST; + +#define MAX_ABILITYTYPE_NUM 12 //×î´óÄÜÁ¦Ïî +// ѹËõ²ÎÊýÄÜÁ¦Áбí +typedef struct tagNET_DVR_COMPRESSIONCFG_ABILITY +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwAbilityNum; //ÄÜÁ¦ÀàÐ͸öÊý + NET_DVR_ABILITY_LIST struAbilityNode[MAX_ABILITYTYPE_NUM]; //ÃèÊö²ÎÊý +}NET_DVR_COMPRESSIONCFG_ABILITY, *LPNET_DVR_COMPRESSIONCFG_ABILITY; +/********************************9000RH begin****************************************/ +#define SUPPORT_PD_NUM 16 +#define SUPPORT_ARRAY_NUM 8 +#define SUPPORT_VD_NUM 128 +#define SUPPORT_PD_NUM_ 16 +#define SUPPORT_PD_NUM_PARTTWO 8 + +typedef enum tagRAID_MODE +{ + RAID0 = 1, + RAID1, + RAID10, + RAID1E, + RAID5, + RAID6, + RAID50, + JBOD, + RAID60 +}RAID_MODE; + +typedef enum tagHD_SUPPORT_TYPE +{ + HD_TYPE_SATA = 0x01, + HD_TYPE_PATA = 0x02, + HD_TYPE_SAS = 0x04, + HD_TYPE_ATAPI = 0x08, + HD_TYPE_TAPE = 0x10, + HD_TYPE_SES = 0x20 +}HD_SUPPORT_TYPE; + +// °´Î»±íʾ λΪ0±íʾ²»Ö§³Ö 1±íʾ֧³Ö +typedef enum tagSUPPORT_RAID_TYPE +{ + RAID0_ABILITY = 0x0001, + RAID1_ABILITY = 0x0002, + RAID10_ABILITY = 0x0004, + RAID1E_ABILITY = 0x0008, + RAID5_ABILITY = 0x0010, + RAID6_ABILITY = 0x0020, + RAID50_ABILITY = 0x0040, + JBOD_ABILITY = 0x0080, + RAID60_ABILITY = 0x0100 +}SUPPORT_RAID_TYPE; + +// ÎïÀí´ÅÅÌ +typedef struct tagNET_DVR_PHY_DISK_INFO +{ + WORD wPhySlot; // Ó²Å̲Ûλ + BYTE byType; // Ó²ÅÌÐÅÏ¢£»0 ÆÕͨ£¬1È«¾ÖÈȱ¸£¬2-ÕóÁÐÈȱ¸ 3-ÕóÁÐÅÌ + BYTE byStatus; // Ó²ÅÌ״̬£» 0-Õý³£ 1-½µ¼¶ 2-ÒÑɾ³ý 3-´ÅÅ̶ªÊ§ 4-ÏÂÏß 5-´ÎÕý³£ 6-ÍâÀ´ 7-Òì³£ 8-SMART״̬Òì³£ 9-ÐÝÃß 10-Óлµ¿é,11-SMRÓ²Å̲»Ö§³ÖÕóÁй¦ÄÜ,0xff-²»´æÔÚ + BYTE byMode[40]; // Ó²ÅÌÀàÐÍ ×Ö·û´® + DWORD dwHCapacity; // ´ÅÅÌ×ÜÁ¿¸ß32λ µ¥Î»kb + DWORD dwLCapacity; // ´ÅÅÌ×ÜÁ¿µÍ32λ + BYTE byArrrayName[MAX_NAMELEN]; + WORD wArrayID; // ËùÊôÕóÁÐID + BYTE byArrayInformation; // ÊÇ·ñº¬ÓÐÕóÁÐÐÅÏ¢£º0 ·ñ£¬1ÊÇ + BYTE byRes[101]; // ±£Áô×Ö½Ú +}NET_DVR_PHY_DISK_INFO, *LPNET_DVR_PHY_DISK_INFO; + +typedef struct tagNET_DVR_PHY_DISK_LIST +{ + DWORD dwSize; + DWORD dwCount; + NET_DVR_PHY_DISK_INFO struPhyDiskInfo[SUPPORT_PD_NUM]; +}NET_DVR_PHY_DISK_LIST, *LPNET_DVR_PHY_DISK_LIST; + +typedef enum tagBGA_TYPE +{ + BGA_REBUILD = 0x01, // Öؽ¨ + BGA_CONSISTENCY_FIX = 0x02, // Ò»ÖÂÐÔ¼ì²é²¢ÐÞ¸´ + BGA_CONSISTENCY_CHECK = 0x04, // Ò»ÖÂÐÔ¼ì²é + BGA_INIT_QUICK = 0x08, // ³õʼ»¯(¿ì) + BGA_INIT_BACK = 0x10, // ³õʼ»¯(ÍêÈ«) + BGA_MIGRATION = 0x20, // ǨÒÆ + BGA_INIT_FORE = 0x40, // ³õʼ»¯ + BGA_COPYBACK = 0x80 // »ØǨ +}BGA_TYPE; + +typedef enum tagBGA_STATE +{ + BGA_STATE_NONE = 0, // ÎÞºǫ́ÈÎÎñ + BGA_STATE_RUNNING, // ºǫ́ÈÎÎñÕýÔÚÔËÐÐ + BGA_STATE_ABORTED, // ºǫ́ÈÎÎñÈ¡Ïû + BGA_STATE_PAUSED // ºǫ́ÈÎÎñÔÝÍ£ +}BGA_STATE; +typedef struct tagNET_DVR_BGA_INFO +{ + BYTE byBga; // ºǫ́ÈÎÎñ¼°ÀàÐÍ + BYTE byBgaState; /*º¯Êý·µ»ØÖµ--ºǫ́ÈÎÎñ״̬*/ + WORD wBgaPercentage; /*º¯Êý·µ»ØÖµ--ºǫ́ÈÎÎñÖ´ÐаٷֱÈ*/ + BYTE byRes[4]; // ±£Áô×Ö½Ú +}NET_DVR_BGA_INFO, *LPNET_DVR_BGA_INFO; + +// ÕóÁÐÐÅÏ¢ +typedef struct tagNET_DVR_ARRAY_INFO +{ + WORD wArrayID; // ÕóÁÐID + BYTE byRaidMode; // raidģʽ ²ÎÕÕRAID_MODE + BYTE byStatus; // 0-ÔÚÏß 1-´ÅÅ̶ªÊ§ 2-ÏÂÏß 3-½µ¼¶ 4-Òì³£ 5-´ÎÕý³£ 6-ÍâÀ´ÅÌ 7-ÒÑɾ³ý 8-SMART״̬Òì³£ 0xff-²»´æÔÚ + DWORD dwHCapacity; // ÕóÁÐÈÝÁ¿¸ß32λ + DWORD dwLCapacity; // ÕóÁÐÈÝÁ¿µÍ32λ + DWORD dwHFreeSpace; // ÕóÁÐÊ£Óà¿Õ¼ä¸ß32λ + DWORD dwLFreeSpace; // ÕóÁÐÊ£Óà¿Õ¼ä¸ß32λ + BYTE byArrayName[MAX_NAMELEN]; // ÕóÁÐÃû³Æ + BYTE byPDCount; // ÎïÀí´ÅÅÌÊýÄ¿ + BYTE bySpareCount; // Èȱ¸ÊýÄ¿ + BYTE byRes1[2]; + WORD wPDSlots[SUPPORT_PD_NUM]; // ÎïÀí´ÅÅÌË÷Òý + WORD wSparePDSlots[SUPPORT_PD_NUM]; // Èȱ¸´ÅÅÌË÷Òý + NET_DVR_BGA_INFO struBgaInfo; // ºǫ́ÈÎÎñÔËÐÐ״̬ + WORD wPDSlotsPartTwo[SUPPORT_PD_NUM_PARTTWO]; //ÎïÀí´ÅÅÌË÷ÒýÀ©Õ¹£¬0±íʾÎÞЧ + WORD wSparePDSlotsPartTwo[SUPPORT_PD_NUM_PARTTWO]; // Èȱ¸´ÅÅÌË÷ÒýÀ©Õ¹£¬0±íʾÎÞЧ + BYTE byRes2[48]; // ±£Áô×Ö½Ú +}NET_DVR_ARRAY_INFO, *LPNET_DVR_ARRAY_INFO; + + +typedef struct tagNET_DVR_ARRAY_LIST +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwCount; // ÕóÁиöÊý + NET_DVR_ARRAY_INFO struArrayInfo[SUPPORT_ARRAY_NUM]; +}NET_DVR_ARRAY_LIST, *LPNET_DVR_ARRAY_LIST; + +//ÐéÄâ´ÅÅÌÐÅÏ¢ +typedef struct tagNET_DVR_VD_INFO +{ + WORD wSlot; //ÐéÄâ´ÅÅ̲Ûλ + BYTE byStatus; // ״̬0-Õý³£ 1-½µ¼¶ 2-ÒÑɾ³ý 3-´ÅÅ̶ªÊ§ 4-ÏÂÏß 5-´ÎÕý³£ 6-ÍâÀ´ 7-Òì³£ 8-SMART״̬Òì³£ 0xff-²»´æÔÚ + BYTE byRaidMode; // Raid ģʽ ²ÎÕÕ RAID_MODE + WORD wArrayID; // ËùÊôÕóÁÐID + BYTE byRepair; // ÊÇ·ñÐèÒªÐÞ¸´ 0 ²»ÐèÒª 1ÐèÒª + BYTE byUsage; //LUN¾íµÄʹÓ÷½Ê½ 0-IPSAN 1-FCSAN 2-DVRÍøÅÌ 3-NAS 4-¼Ïñ¾í + BYTE byArrayName[MAX_NAMELEN]; + BYTE byName[MAX_NAMELEN]; // ÐéÄâ´ÅÅÌÃûÃû³Æ + DWORD dwHCapacity; // ÐéÄâ´ÅÅÌÈÝÁ¿¸ß32λ + DWORD dwLCapacity; // ÐéÄâ´ÅÅÌÈÝÁ¿µÍ32λ + DWORD dwHFreeSpace; // ÐéÄâ´ÅÅÌÊ£Óà¿Õ¼ä¸ß32λ + DWORD dwLFreeSpace; // ÐéÄâ´ÅÅÌÊ£Óà¿Õ¼äµÍ32λ + NET_DVR_BGA_INFO struBgaInfo; // ºǫ́ÔËÐÐ״̬ + DWORD dwBlockSize; //×îС´æ´¢µ¥Ôª¿é´óС + NET_DVR_IPADDR struWarrantIP; // ÊÚȨµÄDVRÍøÅÌIP + char szArrayGroup[NAME_LEN]; //ʹÓõÄÕóÁÐÃû³Æ×飬ÒÔ¶ººÅ¸ô¿ª£¬Îª¿ÕÔòʹÓÃĬÈÏÕóÁÐ + BYTE byRes[20]; +}NET_DVR_VD_INFO, *LPNET_DVR_VD_INFO; + +typedef struct tagNET_DVR_VD_LIST +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwCount; // ÐéÄâ´ÅÅ̸öÊý + NET_DVR_VD_INFO struVDInfo[SUPPORT_VD_NUM]; //ÐéÄâ´ÅÅÌÊý×é +}NET_DVR_VD_LIST, *LPNET_DVR_VD_LIST; + +typedef struct tagNET_DVR_ADAPTER_VERSION +{ + WORD wMajorVersion; + WORD wMinorVersion; + WORD wRevisionNumber; + WORD wBuildNumber; +}NET_DVR_ADAPTER_VERSION, *LPNET_DVR_ADAPTER_VERSION; + +typedef struct tagNET_DVR_VD_SLOT +{ + WORD wVDSlot; + BYTE byAlloc; // ÊÇ·ñÒѾ­·ÖÅä + BYTE byRes[5]; + DWORD dwHVDSlotSize; // ÐéÄâ´ÅÅÌ¿Õ¼ä´óС¸ß32λ + DWORD dwLVDSlotSize; // ÐéÄâ´ÅÅÌ¿Õ¼ä´óСµÍ32λ +}NET_DVR_VD_SLOT, *LPNET_DVR_VD_SLOT; + +typedef struct tagNET_DVR_ARRAY_SPACE_ALLOC_INFO +{ + BYTE byVDSlotCount; /*current number of slots in DG*/ + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_VD_SLOT struVDSlots[SUPPORT_VD_NUM]; +}NET_DVR_ARRAY_SPACE_ALLOC_INFO, *LPNET_DVR_ARRAY_SPACE_ALLOC_INFO; + +typedef struct tagNET_DVR_RAID_ADAPTER_INFO +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_ADAPTER_VERSION struVersion; // ÊÊÅäÆ÷°æ±¾ºÅ + BYTE bySlotCount; //ÊÊÅäÆ÷²ÛλÊý + BYTE bySupportMigrate; // ǨÒÆ(1-Ö§³Ö 0-²»Ö§³Ö) + BYTE bySupportExpand; // À©ÈÝ (1-Ö§³Ö 0-²»Ö§³Ö) + BYTE bySupportRebuild; // ÊÇ·ñÖ§³ÖÖؽ¨ÕóÁÐ (1¡¢Ö§³Ö 0-²»Ö§³Ö) + WORD wSlotSupportType; // °´Î»±íʾ HD_SUPPORT_TYPE + WORD wSupportRaidType; // Ö§³ÖRaid ÀàÐÍ °´Î»±íʾ + BYTE byAutoRebuild; // 0 ²»×Ô¶¯Öؽ¨ 1×Ô¶¯Öؽ¨ ¿ÉÉè + BYTE byRes[27]; // ±£Áô×Ö½Ú +}NET_DVR_RAID_ADAPTER_INFO, *LPNET_DVR_RAID_ADAPTER_INFO; + +typedef struct tagNET_DVR_OPERATE_ARRAY_PARAM +{ + //ÊÇ·ñÒ»¼ü´´½¨ Èç¹ûΪһ¼ü´´½¨£¬Ôò´´½¨Ê±Ê±ºòµÄÖ®ÐèÒªarrayÃû³Æ£¬¶ø²»ÐèÒªÆäËû²ÎÊý + // ÆäËû²ÎÊýÓÐÉ豸×ÔÐд´½¨ + BYTE byRaidMode; // ´´½¨/ǨÒÆʱRaidµÄÀàÐÍ + BYTE byPDCount; // ÎïÀí´ÅÅÌÊýÄ¿ + WORD wArrayID; // ǨÒÆ»òÕßÖؽ¨Ê±ÐèÒªÖ¸³öÕóÁÐID + WORD wPDSlots[SUPPORT_PD_NUM];// ÎïÀí´ÅÅÌ + BYTE byName[MAX_NAMELEN]; // array Ãû³Æ + BYTE byInitMode; //³õʼ»¯·½Ê½ + BYTE byRes1; + WORD wPDSlotsPartTwo[SUPPORT_PD_NUM_PARTTWO]; //ÎïÀí´ÅÅÌÐÅÏ¢ + BYTE byRes2[2]; +}NET_DVR_OPERATE_ARRAY_PARAM, *LPNET_DVR_OPERATE_ARRAY_PARAM; + + +#define INIT_QUICK 0 /*¿ìËÙ³õʼ»¯*/ +#define INIT_FULLFOREGROUND 1 /*ÍêÈ«³õʼ»¯(ǰ̨)*/ +#define INIT_FULLBACKGROUND 2 /*ÍêÈ«³õʼ»¯(ºǫ́)*/ + +typedef struct tagNET_DVR_OPERATE_VD_PARAM +{ + WORD wArrayID; // ÕóÁÐID + BYTE bySlot; // ´´½¨ÐéÄâ´ÅÅÌÖ¸¶¨²Ûλ + BYTE byInitType; // ´´½¨ÐéÄâ´ÅÅÌʱ³õʼ»¯ÀàÐÍ 0 - ¿ìËÙ³õʼ»¯ 1 - ǰ̨ÍêÈ«³õʼ»¯ 2 - ºǫ́ÍêÈ«³õʼ»¯ + DWORD dwHCapacity; // ÐéÄâ´ÅÅÌ´óС¸ß32λ + DWORD dwLCapacity; // ÐéÄâ´ÅÅÌ´óСµÍ32λ + BYTE byName[MAX_NAMELEN]; // ÐéÄâ´ÅÅÌÃû³Æ + BYTE byRes2[16]; // ±£Áô×Ö½Ú +}NET_DVR_OPERATE_VD_PARAM, *LPNET_DVR_OPERATE_VD_PARAM; + + +typedef struct tagNET_DVR_SPARE_DISK_PARAM +{ + WORD wPDSlot; // ÎïÀí´ÅÅ̲Ûλ + WORD wArrayID; // ËùÊôµÄÕóÁÐ + BYTE bySpareType; // Èȱ¸ÀàÐÍ 1-È«¾ÖÈȱ¸ 2 Ö¸¶¨ÕóÁÐ µ±ÎªÖ¸¶¨ÕóÁеÄʱºòÐèÒªÖ¸³öËùÊôÕóÁеÄID + BYTE byRes[7]; // ±£Áô×Ö½Ú +}NET_DVR_SPARE_DISK_PARAM, *LPNET_DVR_SPARE_DISK_PARAM; + +/********************************9000RH End****************************************/ + + +#define MATRIX_MAXDECSUBSYSTEMCHAN 4//ÊÓƵ×ÛºÏƽ̨½âÂë×ÓϵͳͨµÀºÅ + +//»ñÈ¡½âÂë×Óϵͳ¹ØÁªÐÅÏ¢ +typedef struct tagNET_DVR_DECSUBSYSTEMJIONSTATUS +{ + BYTE byJoinStatus;//¹ØÁª×´Ì¬£¬0-ûÓйØÁª£¬1-ÒѾ­¹ØÁª + BYTE byJoinSubSystem;//Ëù¹ØÁª×Óϵͳ²ÛλºÅ + BYTE byJoinDispNum;//Ëù¹ØÁªÏÔʾͨµÀºÅ + BYTE byJoinSubWindowNum;//Ëù¹ØÁª×Ó´°¿ÚºÅ + BYTE byRes[4]; +}NET_DVR_DECSUBSYSTEMJIONSTATUS,LPNET_DVR_DECSUBSYSTEMJIONSTATUS; + +typedef struct tagNET_DVR_SINGLESUBSYSTEMJOININFO +{ + BYTE bySubSystemType;//×ÓϵͳÀàÐÍ£¬0-ÎÞ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ,5-Âë·Ö×Óϵͳ£¬6-±¨¾¯×Óϵͳ + BYTE byConnectStatus;//¼¶ÁªÏµÍ³¹ØÁª×´Ì¬£¬1-Á¬½ÓÕý³££¬2-Á¬½Ó¶Ï¿ª + BYTE byMatrixNum;//¼¶ÁªÊÓƵ×ÛºÏƽ̨ºÅ£¬×ÓϵͳÀàÐÍÊÇ3»ò4ʱ¿ÉÓà + BYTE bySubSystemNum;//¼¶Áª×Óϵͳ²ÛλºÅ£¬0~79£¬×ÓϵͳÀàÐÍÊÇ3»ò4ʱ¿ÉÓà + NET_DVR_DECSUBSYSTEMJIONSTATUS struDecSub [MATRIX_MAXDECSUBSYSTEMCHAN]; + BYTE byBindStatus;//°ó¶¨×´Ì¬£¬0-ûÓа󶨣¬1-ÒѾ­°ó¶¨£¨´óÆÁÆ´½ÓʱÓõ½£© + BYTE byRes[7]; +}NET_DVR_SINGLESUBSYSTEMJOININFO,LPNET_DVR_SINGLESUBSYSTEMJOININFO; + +typedef struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO +{ + DWORD dwSize; + NET_DVR_SINGLESUBSYSTEMJOININFO struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM];//80 + BYTE byRes[8]; +}NET_DVR_ALLDECSUBSYSTEMJOININFO, *LPNET_DVR_ALLDECSUBSYSTEMJOININFO; + +//2010-04-13 Ôö¼ÓNAT¹¦ÄÜÏà¹ØÅäÖà +typedef struct tagNET_DVR_NATASSOCIATECFG +{ + DWORD dwSize; + NET_DVR_NETCFG_V30 struNatIpAddress[2];//NAT IPµØÖ· + BYTE byNATEnable;//ÊÇ·ñÆôÓÃNAT¹¦ÄÜ£¬0-²»ÆôÓ㬷Ç0-ÆôÓà + BYTE byNATCfgMode; //NATÅäÖÃģʽ£¬0-ÊÖ¶¯·ÖÅ䣬1-×Ô¶¯·ÖÅä + BYTE byRes[62]; +}NET_DVR_NATASSOCIATECFG, *LPNET_DVR_NATASSOCIATECFG; + +//2010-06-01 ÊÓƵ×ÛºÏƽ̨±¨¾¯ÅäÖà +typedef struct tagNET_DVR_TEMPERATUREALARMCFG +{ + BYTE byEnableTemperatureAlarm;//ʹÄÜζȳ¬ÏÞ±¨¾¯£¬0-±¨¾¯£¬1-²»±¨¾¯ + BYTE byRes1[3]; + int iTemperatureUpLimited; //¾«È·µ½Ð¡ÊýµãºóÁ½Î»£¬Èç1234±íʾζÈ12.34¶È + int iTemperatureDownLimited; + NET_DVR_HANDLEEXCEPTION_V30 struTempHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + BYTE byRes2[32]; +}NET_DVR_TEMPERATUREALARMCFG, *LPNET_DVR_TEMPERATUREALARMCFG; + +typedef struct tagNET_DVR_BOARDALARMCFG +{ + BYTE byEnablePullAlarm;//ÈȲå°Î±¨¾¯Ê¹ÄÜ£¬1-±¨¾¯£¬0-²»±¨¾¯ + BYTE byRes1[3]; + NET_DVR_HANDLEEXCEPTION_V30 struBoardHandleType; /* ´¦Àí·½Ê½ */ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + BYTE byRes2[32]; +}NET_DVR_BOARDALARMCFG, *LPNET_DVR_BOARDALARMCFG; + + +typedef struct tagNET_DVR_VIDEOPLATFORMALARMCFG +{ + DWORD dwSize; + NET_DVR_TEMPERATUREALARMCFG struTempAlarmCfg; + NET_DVR_BOARDALARMCFG struBoardAlarmCfg; + NET_DVR_HANDLEEXCEPTION_V30 struHandleException[MAX_EXCEPTIONNUM];//0-·çÉÈÒì³££¬1-×ÓϵͳÒì³££¬2-IPµØÖ·³åÍ»£¬3-ÍøÏ߶ϣ¬4-·Ç·¨·ÃÎÊ£¬5-¹âÏËÒì³££¬6-Ç°Ãæ°åÒì³£ + BYTE byRes[32]; +}NET_DVR_VIDEOPLATFORMALARMCFG,*LPNET_DVR_VIDEOPLATFORMALARMCFG; +//2010-05-17 +typedef struct tagNET_DVR_CODESPLITTERASSOCIATE +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; /*±àÂëÆ÷IPµØÖ·*/ + WORD wPort; //±àÂëÆ÷¶Ë¿ÚºÅ + BYTE byRes1[6]; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû£¨32£© */ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë £¨16£©*/ + BYTE byChan;//±àÂëÆ÷ͨµÀºÅ + BYTE byRes2[15]; +} NET_DVR_CODESPLITTERASSOCIATE, *LPNET_DVR_CODESPLITTERASSOCIATE; + +//2010-06-01 ÊÓƵ×ÛºÏƽ̨±¨¾¯ÉÏ´«½á¹¹ +typedef struct tagNET_DVR_MATRIXSUBSYSTEMINFO +{ + BYTE byMatrixNum;//ÊÓƵ×ÛºÏƽ̨ºÅ + BYTE bySubSystemNum;//×Óϵͳ²ÛλºÅ + BYTE byRes [14]; +} NET_DVR_MATRIXSUBSYSTEMINFO, *LPNET_DVR_MATRIXSUBSYSTEMINFO; + +typedef struct tagNET_DVR_VIDEOPLATFORM_ALRAMINFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byAlarmType; // 0-°Î³ö×Ӱ壬1-²åÈë×Ó°å,2-ζȳ¬ÉÏÏÞ±¨¾¯£¬3-ζȳ¬ÏÂÏÞ±¨¾¯£¬4-·çÉÈ״̬Òì³££¬5-×ÓϵͳÒì³£,6-·Ç·¨·ÃÎÊ£¬7-¹âÏËÒì³£±¨¾¯,8-Ç°Ãæ°åÒì³£±¨¾¯ + BYTE byBoardNum; //×Ó°åºÅ£¬´Ó1Æð£¬B10²»Ö§³Ö¸Ã×ֶΣ¬ÎÞЧ£¬ÖÃΪ0xff + BYTE byRes1[2]; + BYTE bySubSystemChan[8]; //×Ó°å²ÛλºÅ,Ò»¸ö×Ó°åÖÐÓÐ8¸ö×Óϵͳ£¬Æä·Ö±ð¶ÔÓ¦µÄ²ÛλºÅ£¬×ÓϵͳÒ쳣ʱ£¬bySubSystemChan[0]±íʾ¶ÔÓ¦×ÓϵͳÐòºÅ + int iTemperature; //ζȳ¬ÏÞ±¨¾¯Ê±ÓÐÓã¬Î¶ÈÖµ + BYTE byMainboardSeq;//ζȳ¬ÏÞ±¨¾¯Ê±ÓÐÓã¬0-·ÇÖ÷°å£¬1-Ö÷°å + BYTE byRes2[3]; + BYTE byFanSequence[32];//Òì³£·çÉÈ£¬byFanSequence[i] = 1±íʾ·çÉÈi+1Òì³££¬byFanSequence[i] = 0±íʾ·çÉÈi+1Õý³£ + NET_DVR_MATRIXSUBSYSTEMINFO struInputNote;// ¹âÏËÒì³£±¨¾¯Ê±Ê¹Óã¬ÊäÈë½áµã + NET_DVR_MATRIXSUBSYSTEMINFO struOutputNote;//¹âÏËÒì³£±¨¾¯Ê±Ê¹Óã¬Êä³ö½áµã + BYTE byRes3[68]; +}NET_DVR_VIDEOPLATFORM_ALRAMINFO,*LPNET_DVR_VIDEOPLATFORM_ALRAMINFO; + +/***************************ÉóѶDVR begin *****************************/ +#define MAX_INQUEST_PIP_NUM 3 //µ¥Í¨µÀÏÔʾµÄ»­Öл­ÊýÄ¿ +#define MAX_INQUEST_CDRW_NUM 4 //×î´ó¿Ì¼»úÊýÄ¿ +#define MAX_INQUEST_PIP_NUM_EX 16 //ÉóѶ»ú»­Öл­×î´ó¸öÊý + +typedef struct +{ + DWORD dwSize; + DWORD dwNum; //¿Ì¼»úµÄÊýÁ¿ + DWORD dwRwSelectPara[MAX_CHANNUM_V30];// ÊÇ·ñÑ¡ÖиùâÇý + DWORD dwModeSelect; //0±íʾѭ»·¿Ì¼ģʽ 1±íʾ²¢Ðп̼ģʽ(ĬÈÏģʽ) + BYTE byRes[24]; //±£Áô + DWORD dwStartCDRW; //DVR ±¾µØÒѾ­¿ªÊ¼¿Ì¼ + DWORD dwHdExcp; //Ó²ÅÌÓÐÒì ³£ + DWORD dwInterval; //ʱ¼ä¼ä¸ô£¬10·ÖÖÓ(0)¡¢20·ÖÖÓ(1)¡¢30·ÖÖÓ(2) + char sLable[64]; //¹âÅÌÃû³Æ +}NET_DVR_INQUEST_CDRW_CFG, *LPNET_DVR_INQUEST_CDRW_CFG; + +typedef struct +{ + char sFileName[36]; //ÎļþÃû + DWORD dwFileLen; //Îļþ³¤¶È +}NET_DVR_INQUEST_FILEINFO, *LPNET_DVR_INQUEST_FILEINFO; + +typedef struct +{ + DWORD dwFileNum; // ÐèÒª¿Ì¼»òÕßɾ³ýµÄÎļþÊý£¬×î¶àÒ»´Î20¸ö + NET_DVR_INQUEST_FILEINFO struFileInfo[MAX_RECORD_FILE_NUM]; + //ÏÂÃæÁ½¸ö²ÎÊýÔÚ±íʾ¿Ì¼µÄÎļþʱʹÓà + DWORD dwCDIndex; //¿Ì¼»úµÄË÷Òý£º1:Ñ¡Ôñ1ºÅ¿Ì¼»ú£»2:Ñ¡Ôñ2ºÅ¿Ì¼»ú£» 3:3ºÅ¿Ì¼»ú,4:4ºÅ¿Ì¼»ú,5:ËùÓп̼»ú + DWORD bFinalizeDisc; // 0=¿Ì¼ÍêÖ®ºó²»·âÅÌ£»1=¿Ì¼ÍêÖ®ºó·âÅÌ +}NET_DVR_INQUEST_FILES, *LPNET_DVR_INQUEST_FILES; + +typedef struct +{ + DWORD dwEnable; //¿Ì¼»ú״̬ÊÇ·ñÓÐЧ,0-ÎÞЧ,1-ÓÐЧ + DWORD dwStatus; /* µ±dwType=0ʱ£¬ + 0-¹âÅÌÕý³££¬1-ÎÞ¹âÅÌ»ò¹âÅÌÒì³£, + µ±dwType=1»ò2ʱ£¬ + 0-¿Ì¼Õý³££¬1-ÎÞ¹âÅÌ»ò¹âÅÌÒì³££¬ + 2-¹âÅÌÒÑ·âÅÌ(81²»Ö§³Ö)£¬3-¹âÅ̿ռ䲻×㣬 + 4-Òì³£µ¼ÖÂÉóѶÖÕÖ¹(81²»Ö§³Ö) + µ±dwType=3ʱ£¬ + 0-¿Ì¼Õý³££¬1-ÎÞ¹âÅÌ»ò¹âÅÌÒì³££¬ + 2-¹âÅÌÒÑ·âÅÌ(81²»Ö§³Ö)£¬3-¹âÅ̿ռ䲻×ã + µ±dwType=4ʱ£¬ + 0-¿Ì¼Õý³££¬1-ÎÞ¹âÅÌ»ò¹âÅÌÒì³££¬ + 2-¹âÅÌÒÑ·âÅÌ(81²»Ö§³Ö)£¬3-¹âÅ̿ռ䲻×ã + µ±dwType=5ʱ, + 0-¹âÅÌÕý³££¬ 1-ÎÞ¹âÅÌ»ò¹âÅÌÒì³£, + 2-¹âÅÌÒÑ·âÅÌ(81²»Ö§³Ö) + µ±dwType=6»ò7ʱ, + 0-¿Ì¼Õý³£, 1-ÎÞ¹âÅÌ»ò¹âÅÌÒì³£, + 2-¹âÅÌÒÑ·âÅÌ(81²»Ö§³Ö), 3-¹âÅ̿ռ䲻×ã*/ + DWORD dwVolumn; //¹âÅÌÈÝÁ¿,µ¥Î»M + DWORD dwFreeSpace; //¹âÅÌÊ£ÓàÈÝÁ¿,µ¥Î»M + DWORD dwTimeLeft; // ¹âÅÌÊ£Óàʱ¼ä£¬µ¥Î»Ãë + BYTE byCDType; // ¹âÅÌÀàÐÍ + BYTE byRes[3]; //±£Áô×Ö½Ú +}NET_DVR_INQUEST_CDRW, *LPNET_DVR_INQUEST_CDRW; + +typedef struct +{ +/*ÔËÐÐ״̬£º0-ÉóѶ¿ªÊ¼£¬ +1-ÉóѶ¹ý³ÌÖп̼£¬2-ÉóѶֹͣ£¬ +3-¿Ì¼ÉóѶÎļþ, +4-±¸·Ý(ʺ󱸷ݺͱ¾µØ±¸·Ý) +5-¿ÕÏÐ +6-³õʼ»¯Ó²ÅÌ + 7-»Ö¸´ÉóѶ*/ + DWORD dwType; + NET_DVR_INQUEST_CDRW strCDRWNum[MAX_INQUEST_CDRW_NUM]; //Êý×é0±íʾ¿Ì¼»ú1 + NET_DVR_TIME_EX struInquestStartTime; //ÉóѶ¿ªÊ¼µÄʱ¼äµã + BYTE byRes[16]; //±£Áô +}NET_DVR_INQUEST_CDRW_STATUS, *LPNET_DVR_INQUEST_CDRW_STATUS; + +typedef struct +{ + BYTE byPipChan; //»­Öл­ÏÔʾµÄͨµÀ 0xFF¹Ø±Õ + BYTE byRes[3]; //±£Áô×Ö½Ú + WORD wTopLeftX; //»­Öл­µÄx×ø±ê + WORD wTopLeftY; //»­Öл­µÄY×ø±ê +}NET_DVR_INQUEST_PIP_PARAM, *LPNET_DVR_INQUEST_PIP_PARAM; + +typedef struct +{ + BYTE byBaseChan; //ÏÔʾ»­Öл­ËùÔÚµÄͨµÀ + BYTE byBackChan; //ÏÔʾ»­Öл­±³¾°Í¨µÀ + BYTE byPIPMode; /*ÊÇ·ñ¿ªÆô, + 0 µ±Ç°´°¿ÚÎÞС»­Ãæ + 1 µ±Ç°´°¿ÚÓÐ1¸öС»­Ãæ + 2 µ±Ç°´°¿ÚÓÐ2¸öС»­Ãæ + 3 µ±Ç°´°¿ÚÓÐ3¸öС»­Ãæ + */ + BYTE byRes; //±£Áô×Ö½Ú + NET_DVR_INQUEST_PIP_PARAM strPipPara[MAX_INQUEST_PIP_NUM]; //»­ÃæλÖõIJÎÊý +}NET_DVR_INQUEST_PIP_STATUS, *LPNET_DVR_INQUEST_PIP_STATUS; + +//V40À©Õ¹£¬½«»­Öл­¸öÊýÀ©Õ¹Îª32¸ö +typedef struct tagNET_DVR_INQUEST_PIP_PARAM_V40 +{ + BYTE byPipChan; /*»­Öл­ÏÔʾµÄͨµÀ 0xFF¹Ø±Õ*/ + BYTE byRes1[3]; + WORD wTopLeftX; /*»­Öл­µÄx×ø±ê*/ + WORD wTopLeftY; /*»­Öл­µÄY×ø±ê*/ + WORD wHeight; /*»­Öл­µÄ¸ß */ + WORD wWidth; /*»­Öл­µÄ¿í */ + BYTE byRes2[32]; +}NET_DVR_INQUEST_PIP_PARAM_V40, *LPNET_DVR_INQUEST_PIP_PARAM_V40; + +typedef struct tagNET_DVR_INQUEST_PIP_STATUS_V40 +{ + NET_DVR_STRUCTHEAD struStructHead; + BYTE byBaseChan; /*ÏÔʾ»­Öл­ËùÔÚµÄͨµÀ*/ + BYTE byBackChan; /*ÏÔʾ»­Öл­±³¾°Í¨µÀ*/ + BYTE byPIPMode; /*ÊÇ·ñ¿ªÆô, 0 µ±Ç°´°¿ÚÎÞС»­Ãæ + 1 µ±Ç°´°¿ÚÓÐ1¸öС»­Ãæ + 2 µ±Ç°´°¿ÚÓÐ2¸öС»­Ãæ + 3 µ±Ç°´°¿ÚÓÐ3¸öС»­Ãæ + 4 µ±Ç°´°¿ÚÓÐ4¸öС»­Ãæ + 5 µ±Ç°´°¿ÚÓÐ5¸öС»­Ãæ + 6 µ±Ç°»­ÃæÓÐ6¸öС»­Ãæ + 7 µ±Ç°´°¿ÚÓÐ7¸öС»­Ãæ + 8 µ±Ç°´°¿ÚÓÐ8¸öС»­Ãæ + 9 µ±Ç°´°¿ÚÓÐ9¸öС»­Ãæ + 255 µ±Ç°´°¿Ú¹Ø±ÕÔ¤ÀÀ»­Ãæ*/ + BYTE byPipCount; /*С»­ÃæµÄ¸öÊý*/ + BYTE byPicShowMode; /*»­ÃæÏÔʾģʽ£¬0-»­Öл­£¬1-»­Ãæ¾ù·Ö2-»­ÃæÆ´½Ó*/ + BYTE byRes[31]; /*±£Áô*/ + NET_DVR_INQUEST_PIP_PARAM_V40 strPipPara[MAX_INQUEST_PIP_NUM_EX]; /*»­ÃæλÖõIJÎÊý*/ +}NET_DVR_INQUEST_PIP_STATUS_V40, *LPNET_DVR_INQUEST_PIP_STATUS_V40; + +typedef struct +{ + BYTE sSecretKey[16]; /*ÂëÁ÷¼ÓÃÜÃÜÔ¿*/ + BYTE byRes[64]; /*±£Áô×Ö½Ú*/ +}NET_DVR_INQUEST_SECRET_INFO, *LPNET_DVR_INQUEST_SECRET_INFO; + + +/***************************ÉóѶDVR end *****************************/ + + +/********************************½Ó¿Ú²ÎÊý½á¹¹(end)*********************************/ +#define MAX_BIGSCREENNUM 100//×î¶à´óÆÁÆ´½ÓÊý + +typedef struct tagNET_DVR_SINGLESCREENCFG +{ + BYTE byScreenSeq;//ÆÁÄ»ÐòºÅ£¬0xff±íʾ²»ÓôËÆÁ,64-T½âÂëÆ÷µÚÒ»¸ö±íʾÖ÷ÆÁ + BYTE bySubSystemNum;//½âÂë×Óϵͳ²ÛλºÅ,½âÂëÆ÷´ËֵûÓÐÓà + BYTE byDispNum;//½âÂë×ÓϵͳÉ϶ÔÓ¦ÏÔʾͨµÀºÅ£¬64-T½âÂëÆ÷ÖиÃÖµ±íʾ½âÂëÆ÷µÄÏÔʾͨµÀºÅ + BYTE byRes[9]; +}NET_DVR_SINGLESCREENCFG, *LPNET_DVR_SINGLESCREENCFG; + +typedef struct tagNET_DVR_BIGSCREENCFG +{ + DWORD dwSize; + BYTE byEnable;//´óÆÁÆ´½ÓʹÄÜ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byModeX;/*´óÆÁÆ´½Óģʽ*/ + BYTE byModeY; + BYTE byMainDecodeSystem;//×ÛºÏƽ̨µÄ½âÂë°åÖиÃÖµ±íʾÖ÷ÆÁ²ÛλºÅ£¬64-T½âÂëÆ÷ÖиÃÖµ±íʾ½âÂëͨµÀºÅ + BYTE byMainDecoderDispChan;//Ö÷ÆÁËùÓÃÏÔʾͨµÀºÅ£¬1.1netra°æ±¾ÐÂÔö£¬netra½âÂëÆ÷ÓÐÁ½¸öÏÔʾͨµÀ£¬¶¼Äܹ»×÷ΪÖ÷ÆÁ¡£64-TÖиÃÖµÎÞЧ + BYTE byVideoStandard; //´óÆÁÿ¸ö×ÓÆÁÖÆʽÏàͬ 1:NTSC,2:PAL + BYTE byRes1[2]; + DWORD dwResolution; //´óÆÁÿ¸ö×ÓÆÁ·Ö±æÂÊÏàͬ + //´óÆÁÆ´½Ó´ÓÆÁÄ»ÐÅÏ¢ + NET_DVR_SINGLESCREENCFG struFollowSingleScreen[MAX_BIGSCREENNUM]; + //Æðʼ×ø±ê±ØÐëΪ»ù×¼×ø±êµÄÕûÊý±¶ + WORD wBigScreenX; //´óÆÁÔÚµçÊÓǽÖÐÆðʼX×ø±ê + WORD wBigScreenY; //´óÆÁÔÚµçÊÓǽÖÐÆðʼY×ø±ê + BYTE byRes2[12]; +}NET_DVR_BIGSCREENCFG, *LPNET_DVR_BIGSCREENCFG; + + +#define DECODEPIC_LEFTADJUST 1 /*ͼÏñ×óÒÆ*/ +#define DECODEPIC_RIGHTADJUST 2 /*ͼÏñÓÒÒÆ*/ +#define DECODEPIC_UPADJUST 3 /*ͼÏñÉÏÒÆ*/ +#define DECODEPIC_DOWNADJUST 4 /*ͼÏñÏÂÒÆ*/ +#define DECODEPIC_REDUCEADJUST 5 /*ͼÏñËõС*/ +#define DECODEPIC_FULL_SCREEN_ADJUST 6 /*ͼÏñÈ«ÆÁ*/ +#define DECODEPIC_CANCEL_FULL_SCREEN_ADJUST 7 /*ͼÏñÈ¡ÏûÈ«ÆÁÏÔʾ*/ +#define DECODEPIC_AUTOADJUST 8 /* ͼÏñ×Ô¶¯µ÷Õû */ +#define DECODEPIC_HEIGHTADJUST 9 /* ͼÏñ¸ß¶Èµ÷Õû */ +#define DECODEPIC_WIDTHADJUST 10 /* ͼÏñ¿í¶Èµ÷Õû */ + +#define MAX_UNITEDMATRIX_NUM 8//¼¶ÁªÖÐ×î¶àÊÓƵ×ÛºÏƽ̨ÊýÁ¿ +#define MAX_SUBDOMAIN_NUM 4//¼¶ÁªÖÐ×î¶à×ÓÓòÊýÁ¿ +typedef struct tagNET_DVR_SUBSERVERINFO +{ + BYTE bySequence;//ÐòºÅ£¬¶ÔÓÚ×ÓÓò£¬ÊÇ×ÓÓòºÅ£¬¶ÔÓÚÊÓƵ×ÛºÏƽ̨£¬ÊÇƽ̨ºÅ£¬0±íʾÎÞ´Ëƽ̨\×ÓÓò + BYTE byBelongSubDomain;//¶ÔÓÚƽ̨ÓÐЧ£¬±íʾÊôÓÚÄĸö×ÓÓò + BYTE byRes1[6]; + DWORD dwMaxIpcNums;//Á¬½ÓµÄ×î¶àIPCÊýÁ¿ + NET_DVR_IPADDR struSubMatrixIP; /*IPµØÖ·*/ + WORD wSubMatrixPort; /*×Óϵͳ¶Ë¿ÚºÅ*/ + BYTE byRes2[6]; +}NET_DVR_SUBSERVERINFO, *LPNET_DVR_SUBSERVERINFO; + +typedef struct tagNET_DVR_UNITEDMATRIXINFO +{ + DWORD dwSize; + NET_DVR_SUBSERVERINFO struDomainInfo; + NET_DVR_SUBSERVERINFO struSubDomainInfo[MAX_SUBDOMAIN_NUM];//×ÓÓòÐÅÏ¢ + NET_DVR_SUBSERVERINFO struMatrixInfo[MAX_UNITEDMATRIX_NUM];//ÊÓƵ×ÛºÏƽ̨ÐÅÏ¢ + BYTE byRes[32]; +}NET_DVR_UNITEDMATRIXINFO, *LPNET_DVR_UNITEDMATRIXINFO; + +typedef struct tagNET_DVR_REGCALLBACKPARAM +{ + char sDeviceID[NAME_LEN];//É豸ID´® + char sPassword[PASSWD_LEN]; + BYTE sSerialNumber[SERIALNO_LEN]; /* É豸ÐòÁкŠ*/ + DWORD dwDeviceType;//É豸ÀàÐÍ + BYTE nStatus;// ÉÏÏÂÏß״̬£¨0ÏÂÏߣ¬1ÉÏÏߣ© + /* net type, 0: unknow; 1: 2G wireless networks; 2: 3G wireless networks; 3: line networks */ + BYTE byNetType; + BYTE byRes[14]; +}NET_DVR_REGCALLBACKPARAM, *LPNET_DVR_REGCALLBACKPARAM; + +typedef struct tagNET_DVR_LOGONREPONSEPARAM +{ + //ÐÄÌøʱ¼ä¼ä¸ô£¬µ¥Î»£ºÃë, 5µÄ±¶Êý£¬180ÃëÒÔÄÚ¡£Ä¬ÈÏÊÇ15Ãë¡£ + WORD wHeartbeatTime; + BYTE byOvertimes;// É豸ÐÄÌø³¬Ê±´ÎÊý£¬Ä¬ÈÏÊÇ3´Î + BYTE byRes[13]; +}NET_DVR_LOGONREPONSEPARAM, *LPNET_DVR_LOGONREPONSEPARAM; + + +typedef struct tagNET_DVR_PREVIEWPARAM +{ + BYTE byTransProtol; //´«ÊäЭÒ飬0-TCP, 1-UDP + BYTE byTransMode; ///* ´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷*/ + NET_DVR_IPADDR struCuIp; //CU¶ËIPµØÖ· + WORD wPort;/*CU¶Ë¿Ú*/ + WORD wUdpPort; + BYTE bySupportQos;//ÊÇ·ñÆôÓÃQOS,1-ÆôÓã¬0-²»ÆôÓà + //ÊÇ·ñÊÇNATÔ¤ÀÀÇëÇó£¬0-·ñ£¬1-ÊÇ(Ö»ÐèbyTransMode×Ö¶Î) + BYTE byNatRequest; + BYTE byPreviewType;// 0-ÆÕͨԤÀÀ 1-ÑÓʱԤÀÀ + BYTE byRes[7]; +}NET_DVR_PREVIEWPARAM, *LPNET_DVR_PREVIEWPARAM; +typedef struct tagNET_DVR_DEVICENATINFO +{ + NET_DVR_IPADDR struPuIp; //PU¶ËÍâÍøIPµØÖ· + WORD wOuterPort;/*PUÍâÍø¶Ë¿Ú*/ + WORD wInterPort;//PU·¢ËÍÊÓƵµÄ±¾µØ¶Ë¿Ú + DWORD nSessionID;//CMS·ÖÅäµÄsessionID + BYTE byRes[4]; +}NET_DVR_DEVICENATINFO, *LPNET_DVR_DEVICENATINFO; + + +typedef struct tagNET_DVR_PREVIEWCALLBACKPARAM +{ + LONG lChannel; + BYTE nLinkProtocol; + BYTE nTransMode; + BYTE byPreviewType; //0-ÆÕͨԤÀÀ 1-ÑÓʱԤÀÀ + BYTE byRes[5]; + DWORD nSessionID;//CMS·ÖÅäµÄsessionID +}NET_DVR_PREVIEWCALLBACKPARAM, *LPNET_DVR_PREVIEWCALLBACKPARAM; + +//»Ø·Å +typedef struct tagNET_DVR_PLAYBACKREQUESTPARAM +{ + BYTE byPlayBackMode; /* »Ø·ÅÏÂÔØģʽ 1£­°´Ãû×Ö 2£­°´Ê±¼ä */ + BYTE byRes1[3]; + union + { + char sFileName [100]; /* »Ø·ÅµÄÎļþÃû */ + struct + { + LONG lChannel; /*»Ø·ÅµÄͨµÀºÅ*/ + NET_DVR_TIME struStartTime; /* °´Ê±¼ä»Ø·ÅµÄ¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME struStopTime; /* °´Ê±¼ä»Ø·ÅµÄ½áÊøʱ¼ä */ + BYTE byRes[48]; + }struPlayBackbyTime; + }playbackmode; + NET_DVR_IPADDR struCuIp; //CU¶ËIPµØÖ· + WORD wPort;/*CU¶Ë¿Ú*/ + BYTE byRes2[2]; + DWORD dwSessionID;//CMS·ÖÅäµÄsessionID,Êä³ö²ÎÊý + BYTE byRes3[16]; +}NET_DVR_PLAYBACKREQUESTPARAM, *LPNET_DVR_PLAYBACKREQUESTPARAM; + +//2010-10-06 +typedef struct tagNET_DVR_PLAYBACKCALLBACKPARAM +{ + BYTE byPlayBackMode; /* »Ø·ÅÏÂÔØģʽ 1£­°´Ãû×Ö 2£­°´Ê±¼ä */ + BYTE byRes1[3]; + union + { + char sFileName [100]; /* »Ø·ÅµÄÎļþÃû */ + struct + { + LONG lChannel; /*»Ø·ÅµÄͨµÀºÅ*/ + NET_DVR_TIME struStartTime; /* °´Ê±¼ä»Ø·ÅµÄ¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME struStopTime; /* °´Ê±¼ä»Ø·ÅµÄ½áÊøʱ¼ä */ + BYTE byRes[48]; + }struPlayBackbyTime; + }playbackmode; + DWORD nSessionID;//CMS·ÖÅäµÄsessionID + BYTE byRes2[44]; +}NET_DVR_PLAYBACKCALLBACKPARAM, *LPNET_DVR_PLAYBACKCALLBACKPARAM; + +typedef struct tagNET_DVR_VOICEREQUESETPARAM +{ + BYTE nVoiceChannel; //¶Ô½²Í¨µÀºÅ + BYTE byRes1[3]; + NET_DVR_IPADDR struCuIp; //CU¶ËIPµØÖ· + WORD wPort;/*CU¶Ë¿Ú*/ + BYTE byRes2[10]; +}NET_DVR_VOICEREQUESTPARAM, *LPNET_DVR_VOICEREQUESTPARAM; + +typedef struct tagNET_DVR_ALARMSETUPREQUESETPARAM +{ + NET_DVR_IPADDR struCuIp; //CU¶ËIPµØÖ· + WORD wPort;/*CU¶Ë¿Ú*/ + BYTE byRes[2]; +}NET_DVR_ALARMSETUPREQUESTPARAM, *LPNET_DVR_ALARMSETUPREQUESTPARAM; + +typedef struct tagNET_DVR_GPSALARMINFO +{ + BYTE byDeviceID[NAME_LEN];/*É豸µÄID´®*/ + NET_DVR_TIME_EX struGpsTime; /*GPSÉÏ´«µÄʱ¼ä*/ + DWORD dwLongitude; /* ¾­¶È*/ + DWORD dwLatitude; /* γ¶È*/ + int iTimeZone; /*ʱÇø£¬Ó÷ÖÖÓÊý±íʾ£¬+60´ú±í¶«1Çø£¬+480´ú±í¶«8Çø£¬-60´ú±íÎ÷Çø£¬-480´ú±íÎ÷8Çø£¬¸Ã×ֶκÍGPSTime¹¹³ÉÒ»¸öÍêÕûµÄʱ¼äÃèÊö*/ + DWORD dwDirection; /*³µÁ¾·½Ïò=ʵ¼Ê·½Ïò£¨ÒÔ¶ÈΪµ¥Î»£¬Õý±±·½ÏòΪ£¬Ë³Ê±Õë·½Ïò¼ÆË㣩*100*/ + WORD wSatellites; /*ÎÀÐÇÊýÁ¿*/ + WORD wPrecision; /*¾«¶È*/ + DWORD dwHeight; /*¸ß¶È:ÀåÃ×£¬Ô¤Áô*/ + DWORD dwGPSSeq; /*GPSÐòºÅ£¬GPS²¹´«Ê±ÒªÓõ½*/ + WORD wSpeed;//Ëٶȣ¬µ¥Î»£¬km/h + /* direction[0]:'E'or'W'(¶«¾­/Î÷¾­), direction[1]:'N'or'S'(±±Î³/ÄÏγ)*/ + char sDirection[2]; + BYTE byLocateMode;/*¶¨Î»Ä£Ê½(³õÖµ0)£¬1,×ÔÖ÷¶¨Î»,2,²î·Ö3,¹ÀËã,4,Êý¾ÝÎÞЧ£¬65,ÓÐЧ¶¨Î»£¬78£¬ÎÞЧ¶¨Î»*/ + BYTE byRes[3]; +}NET_DVR_GPSALARMINFO, *LPNET_DVR_GPSALARMINFO; + +//ͼƬÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_PICINFO +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byChanIndex; //ͨµÀºÅ + BYTE byRes1[3]; //±£Áô + BYTE byDeviceID[NAME_LEN];/*É豸µÄID´®*/ + BYTE byAbsTime[32]; //¾ø¶Ôʱ¼äµã, yyyymmddhhmmssxxx, + DWORD dwPicLen; //ͼƬ³¤¶È + BYTE byRes2[32]; + BYTE *pPicBuffer; +}NET_DVR_PICTUREINFO, *LPNET_DVR_PICTUREINFO; + +//ƽ̨²ÎÊý +typedef struct tagNET_DVR_CMSPARAM +{ + DWORD dwSize; + NET_DVR_IPADDR struCmsAddr; + WORD wCmsPort; + BYTE byRes1[2]; + BYTE sDeviceID[NAME_LEN]; + BYTE byPassword[PASSWD_LEN]; + NET_DVR_IPADDR struPicServerAddr; + WORD wPicServerPort; + WORD wCmsUdpPort;//CMSÓÃÓÚUDPÍâÍø²éѯµÄ¶Ë¿Ú + BYTE byRes2[12]; +}NET_DVR_CMSPARAM, *LPNET_DVR_CMSPARAM; + +///²¦ºÅ¹¦ÄÜ +#define DIALPASSWD_LEN 32 //²¦ºÅÃÜÂ볤¶È + +typedef struct tagNET_DVR_QOSPARAM +{ + WORD wMaxBitUL; /* the maximum number of kbits/s in up-link traffic */ + WORD wMaxBitDL; /* the maximum number of kbits/s in down-link traffic */ + BYTE byTrafficClass; /* 0: conversationnal; 1: streaming; 2: interactive;3: background; 4: subscribed value(default) */ + BYTE byRes[7]; +}NET_DVR_QOSPARAM, *LPNET_DVR_QOSPARAM; + + +typedef struct tagNET_DVR_PPPDPARAM +{ + BYTE byDialNum[NAME_LEN]; /* dial number, eg. "#777" */ + BYTE byUserName[NAME_LEN]; /* user name, eg. "card" */ + BYTE byPassword[DIALPASSWD_LEN]; /* password, eg. "card" */ + BYTE byApn[NAME_LEN]; /* access point name, eg. "cmnet" */ + NET_DVR_IPADDR struLocalIp;/* local IP address */ + NET_DVR_IPADDR struRemoteIp;/* remote IP address */ + WORD wMtuSize; /* max transfer unit of ppp interface */ + BYTE byVerifyProtocal; /* IPCP verify protocal: 0: auto; 1: CHAP; 2: PAP */ + BYTE byRes[25]; +}NET_DVR_PPPDPARAM, *LPNET_DVR_PPPDPARAM; + +#define MAX_PHONE_NUM 32//×ºÅÂ볤¶È + +typedef struct tagNET_DVR_DIALPARAM +{ + DWORD dwSize; + BYTE bEnable3G; /* 0: disable; 1: enable 3g */ + BYTE byDialMethod; /* dial methold: 0: auto dial; 1: manual dial; */ + BYTE bySwitchMethod; /* switch methold: 0: auto switch;1£º3GÓÅÏÈ£¬2: manual switch to 2G; 3: manual switch to 3G; */ + BYTE byEnaAlarmInDial; /* ʹÄܱ¨¾¯ÊäÈë´¥·¢²¦ºÅ; 0: disable; 1: enable */ + BYTE byRes1[10]; + WORD wOffLineTime; /* auto off line when no connection exist,µ¥Î»£º·ÖÖÓ£¬·¶Î§£º5~65535·ÖÖÓ */ + NET_DVR_PPPDPARAM struPppdParam; + NET_DVR_QOSPARAM struQosParam; + BYTE byUimNumber[MAX_PHONE_NUM]; + BYTE byRes2[24]; +}NET_DVR_DIALPARAM, *LPNET_DVR_DIALPARAM; + +typedef struct tagNET_DVR_DIALREQUEST +{ + BYTE byConnNum; /*Íø¿¨ÐòºÅ*/ + BYTE byNetType; /* Ö¸¶¨»ñµÃij¸öÍøÂçµÄĬÈϲ¦ºÅ²ÎÊý£¬ÉèÖÃʱ´Ë²ÎÊýûÓá£0£º×Ô¶¯£»1£ºCDMA£»2£ºEVDO£»3£ºWCDMA£»4£ºTD-SCDMA */ + BYTE byRes[6]; +} NET_DVR_DIALREQUEST, *LPNET_DVR_DIALREQUEST; + + +/* UIM card information */ +typedef enum +{ + UIM_UNKNOWN = 0, + UIM_VALID = 1, + UIM_NOVALID = 4, + UIM_ROAM = 11, + UIM_NOEXIST = 255 +}UIM_INFO; + +/* real 3g mode */ +typedef enum +{ + /* evdo */ + RMODE_CDMA1X = 12, + RMODE_EVDO = 14, + RMODE_CDMAHYBRID = 18, + /* wcdma */ + RMODE_GSM = 21, + RMODE_GPRS = 22, + RMODE_EDGE = 23, + RMODE_WCDMA = 24, + RMODE_HSDPA = 25, + RMODE_HSUPA = 26, + RMODE_HSPA = 27, + /* tdscdma */ + RMODE_TGSM = 31, + RMODE_TGPRS = 32, + RMODE_TEDGE = 33, + RMODE_TDSCDMA = 34, + RMODE_TDHSDPA = 35, + RMODE_TDHSUPA = 36, + RMODE_TDHSPA = 37 +}REAL_MODE; + +typedef struct tagNET_DVR_DIALSTATUS +{ + BYTE byRealMode; /* REAL_MODE ,real 3g mode networks */ + BYTE byUimCard; /* UIM_INFO ,UIM card information */ + BYTE byRes1[6]; + DWORD dwSignal; /* signal RSSI */ + DWORD dwDialStatus; /* dial status */ + NET_DVR_IPADDR struLocalIp; /* wireless networks IP address */ + NET_DVR_IPADDR struRemoteIp; /* wireless networks gateway */ + NET_DVR_IPADDR struNetMask; /* wireless networks netmask */ + NET_DVR_IPADDR struDns; /* wireless networks DNS */ + BYTE byRes2[16]; +}NET_DVR_DIALSTATUS, *LPNET_DVR_DIALSTATUS; + +//¶ÌÐŹ¦ÄÜ +#define MAX_ALLOWLIST_NUM 8 //×î´óÔÊÐíÃûµ¥Êý +#define NET_SDK_MAX_ALLOWLIST_NUM_32 32 //×î´óÔÊÐíÃûµ¥Êý + +#define HARDDISKFULL_EXCEPTION 0x0 /*Ó²ÅÌÂú*/ +#define HARDDISKERROR_EXCEPTION 0x1 /*Ó²ÅÌ´í*/ +#define ETHERNETBROKEN_EXCEPTION 0x2 /*ÍøÏ߶Ï*/ +#define IPADDRCONFLICT_EXCEPTION 0x3 /*IPµØÖ·³åÍ»*/ +#define ILLEGALACCESS_EXCEPTION 0x4 /*·Ç·¨·ÃÎÊ*/ +#define VI_EXCEPTION 0x5 /*ÊÓƵÐźÅÒì³£*/ +#define VS_MISMATCH_EXCEPTION 0x6 /*ÊäÈë/Êä³öÊÓƵÖÆʽ²»Æ¥Åä */ +#define VIDEOCABLELOSE_EXCEPTION 0x7 /*ÊÓƵÎÞÐźÅ*/ +#define AUDIOCABLELOSE_EXCEPTION 0x8 /*ÒôƵÎÞÐźÅ*/ +#define ALARMIN_EXCEPTION 0x9 /*±¨¾¯ÊäÈë*/ +#define MASKALARM_EXCEPTION 0xa /*ÕÚµ²±¨¾¯*/ +#define MOTDET_EXCEPTION 0xb /*Òƶ¯Õì²â*/ +#define RECORDING_EXCEPTION 0xc /*¼ÏñÒì³£*/ +#define WIRELESS_EXCEPTION 0xd /*PIR±¨¾¯*/ +#define PIR_EXCEPTION 0xe /*ÎÞÏß±¨¾¯*/ +#define CALLHELP_EXCEPTION 0xf /*ºô¾È±¨¾¯*/ + +#define AUDIO_DETECTION_EXCEPTION 0x10 /*ÒôƵÒì³£Õì²â±¨¾¯*/ +#define SCENECHANGE_DETECTION_EXCEPTION 0x11 /*³¡¾°Õì²â±¨¾¯*/ +#define DEFOCUS_DETECTION_EXCEPTION 0x12 /*Ðé½¹Õì²â±¨¾¯*/ +#define FACE_DETECTION_ENTRANCE_EXCEPTION 0x13 /*ÈËÁ³Õì²â±¨¾¯*/ +#define LINE_DETECTION_ENTRANCE_EXCEPTION 0x14 /*Ô½½çÕì²â±¨¾¯*/ +#define FIELD_DETECTION_ENTRANCE_EXCEPTION 0x15 /*ÇøÓòÈëÇÖÕì²â±¨¾¯*/ +#define REGION_EXITING_EXCEPTION 0x16 /*À뿪ÇøÓòÕì²â±¨¾¯*/ +#define REGION_ENTRANCE_EXCEPTION 0x17 /*½øÈëÇøÓò±¨¾¯*/ +#define LOITERING_EXCEPTION 0x18 /*ÈËÔ±ÅÇ»²Õì²â±¨¾¯*/ +#define GROUP_EXCEPTION 0x19 /*ÈËÔ±¾Û¼¯Õì²â±¨¾¯*/ +#define RAPIDMOVE_EXCEPTION 0x1a /*¿ìËÙÒƶ¯Õì²â±¨¾¯*/ +#define PARKING_EXCEPTION 0x1b /*Í£³µÕì²â±¨¾¯*/ +#define UNATTENDEDBAGGAGE_EXCEPTION 0x1c /*ÎïÆ·ÒÅÁôÕì²â±¨¾¯*/ +#define ATTENDEDBAGGAGE_EXCEPTION 0x1d /*ÎïÆ·ÄÃÈ¡Õì²â±¨¾¯*/ +#define DATATRAFFIC_EXCESS 0x1e /*Á÷Á¿³¬¶î*/ +#define VOLTAGEINSTABLE_EXCEPTION 0x1f /*µçÔ´µçѹÒì³£±¨¾¯*/ +#define ALL_EXCEPTION 0xff /*ËùÓÐʼþ£¬¸ù¾ÝʼþÁª¶¯·½Ê½ÅжÏÊÇ·ñ¿ªÆô¶ÌÐÅÁª¶¯*/ + + +#define PHONECFG_RECEIVE_SMS 0x0 /* Ö§³Ö½ÓÊÕ±¨¾¯¶ÌÐÅ */ +#define PHONECFG_SMS_CONTROL 0x1 /* Ö§³Ö¶ÌÐÅ¿ØÖÆÉÏÏÂÏß */ +#define PHONECFG_CALL_CONTROL 0x2 /* Ö§³Öºô½Ð¿ØÖÆÉÏÏß */ +#define PHONECFG_SMS_REBOOT 0x3 /*Ö§³Ö¶ÌÐÅÖØÆô*/ +#define PHONECFG_DOOR_CONTROL 0x4 /* Ö§³ÖÃŲÙ×÷¿ØÖÆ*/ +#define PHONECFG_SMS_GET_DAIL_STATUS 0x5 /* Ö§³Ö¶ÌÐÅ»ñÈ¡²¦ºÅ״̬*/ + + +typedef struct tagNET_DVR_PHONECFG +{ + BYTE byAllowList[MAX_PHONE_NUM]; + BYTE byPhonePerssion[32]; /*°´×Ö½Ú±íʾÊÇ·ñʹÄܸúÅÂëµÄij¹¦ÄÜ£¬¾ßÌåλ´ú±íµÄº¬Òå + ¼ûPHONECFG_RECEIVE_SMSµÈ¶¨Òå */ + BYTE byAlarmHandler[32]; /*°´×Ö½Ú±íʾÊÇ·ñʹÄܶÔij¸ö±¨¾¯ÀàÐ͵ĶÌÐÅ·¢ËÍ*/ + BYTE byRes[128]; +} NET_DVR_PHONECFG, *LPNET_DVR_PHONECFG; + +typedef struct tagNET_DVR_SMSRELATIVEPARAM +{ + DWORD dwSize; + BYTE bEnableSmsAlarm; /* 0: disable; 1: enable 3g */ + BYTE byRes1[7]; + NET_DVR_PHONECFG struAllowList[MAX_ALLOWLIST_NUM]; + BYTE byRes2[32]; +}NET_DVR_SMSRELATIVEPARAM, *LPNET_DVR_SMSRELATIVEPARAM; + +typedef struct tagNET_DVR_PHONECFG_V50 +{ + BYTE byAllowList[MAX_PHONE_NUM]; + BYTE byPhonePerssion[32]; /*°´×Ö½Ú±íʾÊÇ·ñʹÄܸúÅÂëµÄij¹¦ÄÜ£¬¾ßÌåλ´ú±íµÄº¬Òå + ¼ûPHONECFG_RECEIVE_SMSµÈ¶¨Òå */ + BYTE byAlarmHandler[32]; /*°´×Ö½Ú±íʾÊÇ·ñʹÄܶÔij¸ö±¨¾¯ÀàÐ͵ĶÌÐÅ·¢ËÍ(ÃŽûÖ÷»úÔÝʱÓò»µ½)*/ + BYTE byAcsPassword[16]; /*¿ªÃÅÃüÁî*/ + BYTE byName[NAME_LEN/*32*/]; /*ÐÕÃû*/ + BYTE byRes[80]; +} NET_DVR_PHONECFG_V50, *LPNET_DVR_PHONECFG_V50; + +typedef struct tagNET_DVR_SMSRELATIVEPARAM_V50 +{ + DWORD dwSize; + BYTE bEnableSmsAlarm; /* 0: disable; 1: enable 3g */ + BYTE byRes1[7]; + NET_DVR_PHONECFG_V50 struAllowList[NET_SDK_MAX_ALLOWLIST_NUM_32]; + BYTE byRes2[32]; +}NET_DVR_SMSRELATIVEPARAM_V50, *LPNET_DVR_SMSRELATIVEPARAM_V50; + +#define NET_SDK_MONITOR_ID_LEN 64 //¼à¿ØµãID³¤¶È + +typedef struct tagNET_DVR_ACS_EVENT_COND +{ + DWORD dwSize; + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¬²Î¿¼Ê¼þÉÏ´«ºê¶¨Ò壬0-È«²¿ + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¬²Î¿¼Ê¼þÉÏ´«ºê¶¨Ò壬0-È«²¿ + NET_DVR_TIME struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME struEndTime; //½áÊøʱ¼ä + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byName[NAME_LEN]; //³Ö¿¨ÈËÐÕÃû + BYTE byPicEnable; //ÊÇ·ñ´øͼƬ£¬0-²»´øͼƬ£¬1-´øͼƬ + BYTE byTimeType; //ʱ¼äÀàÐÍ£º0-É豸±¾µØʱ¼ä£¨Ä¬ÈÏ£©£¬1-UTCʱ¼ä£¨struStartTimeºÍstruEndTimeµÄʱ¼ä£© + BYTE byRes2[2]; //±£Áô + DWORD dwBeginSerialNo; //ÆðʼÁ÷Ë®ºÅ£¨Îª0ʱĬÈÏÈ«²¿£© + DWORD dwEndSerialNo; //½áÊøÁ÷Ë®ºÅ£¨Îª0ʱĬÈÏÈ«²¿£© + DWORD dwIOTChannelNo; //IOTͨµÀºÅ£¬0-ÎÞЧ + WORD wInductiveEventType; //¹éÄÉʼþÀàÐÍ£¬0-ÎÞЧ£¬ÆäËûÖµ²Î¼û2.2Õ½ڣ¬¿Í»§¶ËÅжϸÃֵΪ·Ç0Öµºó£¬±¨¾¯ÀàÐÍͨ¹ý¹éÄÉʼþÀàÐÍÇø·Ö£¬·ñÔòͨ¹ýÔ­Óб¨¾¯Ö÷´ÎÀàÐÍ£¨dwMajor¡¢dwMinor£©Çø·Ö + BYTE bySearchType; //ËÑË÷·½Ê½£º0-±£Áô£¬1-°´Ê¼þÔ´ËÑË÷£¨´ËʱͨµÀºÅΪ·ÇÊÓƵͨµÀºÅ£©£¬2-°´¼à¿ØµãIDËÑË÷ + BYTE byEventAttribute; //ʼþÊôÐÔ£º0-䶨Ò壬1-ºÏ·¨Ê¼þ£¬2-ÆäËü + char szMonitorID[NET_SDK_MONITOR_ID_LEN/*64*/]; //¼à¿ØµãID£¨ÓÉÉ豸ÐòÁкš¢Í¨µÀÀàÐÍ¡¢±àºÅ×é³É£¬ÀýÈçÃŽûµã£ºÉ豸ÐòÁкÅ+¡°DOOR¡±+ÃűàºÅ£© + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byRes[140]; //±£Áô +}NET_DVR_ACS_EVENT_COND, *LPNET_DVR_ACS_EVENT_COND; + +typedef struct tagNET_DVR_ACS_EVENT_DETAIL +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ£¨macµØÖ·£©£¬Îª0ÎÞЧ + BYTE byCardType; //¿¨ÀàÐÍ£¬1-ÆÕͨ¿¨£¬2-ÌØÊâȺÌ忨£¬3-½ûÖ¹Ãûµ¥¿¨£¬4-Ѳ¸ü¿¨£¬5-вÆÈ¿¨£¬6-³¬¼¶¿¨£¬7-À´±ö¿¨£¬8-½â³ý¿¨£¬Îª0ÎÞЧ + BYTE byAllowListNo; //ÔÊÐíÃûµ¥µ¥ºÅ,1-8£¬Îª0ÎÞЧ + BYTE byReportChannel; //±¨¸æÉÏ´«Í¨µÀ£¬1-²¼·ÀÉÏ´«£¬2-ÖÐÐÄ×é1ÉÏ´«£¬3-ÖÐÐÄ×é2ÉÏ´«£¬Îª0ÎÞЧ + BYTE byCardReaderKind; //¶Á¿¨Æ÷ÊôÓÚÄÄÒ»À࣬0-ÎÞЧ£¬1-IC¶Á¿¨Æ÷£¬2-Éí·ÝÖ¤¶Á¿¨Æ÷£¬3-¶þάÂë¶Á¿¨Æ÷,4-Ö¸ÎÆÍ· + DWORD dwCardReaderNo; //¶Á¿¨Æ÷±àºÅ£¬Îª0ÎÞЧ + DWORD dwDoorNo; //ÃűàºÅ£¨Â¥²ã±àºÅ£©£¬Îª0ÎÞЧ + DWORD dwVerifyNo; //¶àÖØ¿¨ÈÏÖ¤ÐòºÅ£¬Îª0ÎÞЧ + DWORD dwAlarmInNo; //±¨¾¯ÊäÈëºÅ£¬Îª0ÎÞЧ + DWORD dwAlarmOutNo; //±¨¾¯Êä³öºÅ£¬Îª0ÎÞЧ + DWORD dwCaseSensorNo; //ʼþ´¥·¢Æ÷±àºÅ + DWORD dwRs485No; //RS485ͨµÀºÅ£¬Îª0ÎÞЧ + DWORD dwMultiCardGroupNo; //Ⱥ×é±àºÅ + WORD wAccessChannel; //ÈËԱͨµÀºÅ + BYTE byDeviceNo; //É豸±àºÅ£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byDistractControlNo;//·Ö¿ØÆ÷±àºÅ£¬Îª0ÎÞЧ + DWORD dwEmployeeNo; //¹¤ºÅ£¬Îª0ÎÞЧ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷±àºÅ£¬0-ÃŽûÖ÷»ú£¬1-64´ú±í¾ÍµØ¿ØÖÆÆ÷ + BYTE byInternetAccess; //Íø¿ÚID£º£¨1-ÉÏÐÐÍø¿Ú1,2-ÉÏÐÐÍø¿Ú2,3-ÏÂÐÐÍø¿Ú1£© + BYTE byType; //·ÀÇøÀàÐÍ£¬0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø,10-ÃŽû½ô¼±¿ªÃÅ·ÀÇø£¬11-ÃŽû½ô¼±¹ØÃÅ·ÀÇø 0xff-ÎÞ + BYTE byMACAddr[MACADDR_LEN]; //ÎïÀíµØÖ·£¬Îª0ÎÞЧ + BYTE bySwipeCardType;//Ë¢¿¨ÀàÐÍ£¬0-ÎÞЧ£¬1-¶þάÂë + BYTE byEventAttribute; //ʼþÊôÐÔ£º0-䶨Ò壬1-ºÏ·¨ÈÏÖ¤£¬2-ÆäËü + DWORD dwSerialNo; //ʼþÁ÷Ë®ºÅ£¬Îª0ÎÞЧ + BYTE byChannelControllerID; //ͨµÀ¿ØÖÆÆ÷ID£¬Îª0ÎÞЧ£¬1-Ö÷ͨµÀ¿ØÖÆÆ÷£¬2-´ÓͨµÀ¿ØÖÆÆ÷ + BYTE byChannelControllerLampID; //ͨµÀ¿ØÖÆÆ÷µÆ°åID£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byChannelControllerIRAdaptorID; //ͨµÀ¿ØÖÆÆ÷ºìÍâת½Ó°åID£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byChannelControllerIREmitterID; //ͨµÀ¿ØÖÆÆ÷ºìÍâ¶ÔÉäID£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + DWORD dwRecordChannelNum; //¼ÏñͨµÀÊýÄ¿ + char *pRecordChannelData;//¼ÏñͨµÀ£¬´óСΪsizeof(DWORD)* dwRecordChannelNum + BYTE byUserType; //ÈËÔ±ÀàÐÍ£º0-ÎÞЧ£¬1-ÆÕͨÈË£¨Ö÷ÈË£©£¬2-À´±ö£¨·Ã¿Í£©£¬3-½ûÖ¹Ãûµ¥ÈË£¬4-¹ÜÀíÔ± + BYTE byCurrentVerifyMode; //¶Á¿¨Æ÷µ±Ç°ÑéÖ¤·½Ê½£º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-ÈËÁ³»òË¢¿¨»òÃÜÂë»òºçĤ + BYTE byAttendanceStatus; //¿¼ÇÚ״̬£º0-䶨Òå,1-Éϰ࣬2-Ï°࣬3-¿ªÊ¼ÐÝÏ¢£¬4-½áÊøÐÝÏ¢£¬5-¿ªÊ¼¼Ó°à£¬6-½áÊø¼Ó°à + BYTE byStatusValue; //¿¼ÇÚ״ֵ̬ + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£©£¨¶ÔÓÚÉ豸À´Ëµ£¬Èç¹ûʹÓÃÁ˹¤ºÅ£¨ÈËÔ±ID£©×ֶΣ¬byEmployeeNoÒ»¶¨Òª´«µÝ£¬Èç¹ûbyEmployeeNo¿Éת»»ÎªdwEmployeeNo£¬ÄÇô¸Ã×Ö¶ÎÒ²Òª´«µÝ£»¶ÔÓÚÉϲãƽ̨»ò¿Í»§¶ËÀ´Ëµ£¬ÓÅÏȽâÎöbyEmployeeNo×ֶΣ¬Èç¸Ã×Ö¶ÎΪ¿Õ£¬ÔÙ¿¼ÂǽâÎödwEmployeeNo×ֶΣ© + BYTE byRes1; //±£Áô + BYTE byMask; //ÊÇ·ñ´ø¿ÚÕÖ£º0-±£Áô£¬1-δ֪£¬2-²»´÷¿ÚÕÖ£¬3-´÷¿ÚÕÖ + BYTE byThermometryUnit; //²âε¥Î»£¨0-ÉãÊ϶ȣ¨Ä¬ÈÏ£©£¬1-»ªÊ϶ȣ¬2-¿ª¶ûÎÄ£© + BYTE byIsAbnomalTemperature; //ÈËÁ³×¥ÅIJâÎÂÊÇ·ñζÈÒì³££º1-ÊÇ£¬0-·ñ + float fCurrTemperature; //ÈËÁ³Î¶ȣ¨¾«È·µ½Ð¡Êýµãºóһ룩 + NET_VCA_POINT struRegionCoordinates; //ÈËÁ³Î¶È×ø±ê + WORD wXCoordinate; //x×ø±ê£¬ÈËÁ³¿ò×óÉϽÇÏà¶ÔÓÚͼƬµÄ¹éÒ»»¯×ø±ê£¬·¶Î§0-1000 + WORD wYCoordinate; //y×ø±ê£¬ÈËÁ³¿ò×óÉϽÇÏà¶ÔÓÚͼƬµÄ¹éÒ»»¯×ø±ê£¬·¶Î§0-1000 + WORD wWidth; //ÈËÁ³¿ò¿í¶È£¬·¶Î§0-1000 + WORD wHeight; //ÈËÁ³¿ò¸ß¶È£¬·¶Î§0-1000 + BYTE byHealthCode; //½¡¿µÂë״̬, 0-±£Áô, 1-δÇëÇó, 2-δÉêÁì, 3-ÂÌÂë, 4-»ÆÂë, 5-ºìÂë, 6-ÎÞ´ËÈËÔ±, 7-ÆäËû´íÎóÐÅÏ¢£¨Èç½Ó¿ÚÒì³£µ¼Ö²éѯʧ°Ü£©, 8-²éѯ½¡¿µÂ볬ʱ + BYTE byNADCode; //ºËËá¼ì²â½á¹û, 0-±£Áô, 1-δ²éѯµ½ºËËá¼ì²â½á¹û, 2-ºËËá¼ì²âÒõÐÔ£¨´ú±íÕý³££©, 3-ºËËá¼ì²âÑôÐÔ£¨´ú±íÈ·Õ, 4-ºËËá¼ì²âÓÐЧÆÚÒѹý + BYTE byTravelCode; //Ðг̱àÂë, 0-±£Áô, 1-14ÌìÄÚÒ»Ö±ÔÚµ±µØ, 2-14ÌìÄÚÀ뿪¹ýµ±µØ, 3-14ÌìÄÚµ½¹ýÒßÇø, 4-ÆäËû + BYTE byVaccineStatus; //´òÒßÃç״̬, 0-±£Áô, 1-δ´òÒßÃç, 2-²¿·Ö×¢ÉäÒßÃç, 3-´ò¹ýÒßÃç + BYTE byRes[36]; +}NET_DVR_ACS_EVENT_DETAIL, *LPNET_DVR_ACS_EVENT_DETAIL; + +typedef struct tagNET_DVR_ACS_EVENT_CFG +{ + DWORD dwSize; + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¬²Î¿¼ºê¶¨Òå + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¬²Î¿¼ºê¶¨Òå + NET_DVR_TIME struTime; //ʱ¼ä + BYTE sNetUser[MAX_NAMELEN];//ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr;//Ô¶³ÌÖ÷»úµØÖ· + NET_DVR_ACS_EVENT_DETAIL struAcsEventInfo; //Ïêϸ²ÎÊý + DWORD dwPicDataLen; //ͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pPicData; + WORD wInductiveEventType; //¹éÄÉʼþÀàÐÍ£¬0-ÎÞЧ£¬ÆäËûÖµ²Î¼û2.2Õ½ڣ¬¿Í»§¶ËÅжϸÃֵΪ·Ç0Öµºó£¬±¨¾¯ÀàÐÍͨ¹ý¹éÄÉʼþÀàÐÍÇø·Ö£¬·ñÔòͨ¹ýÔ­Óб¨¾¯Ö÷´ÎÀàÐÍ£¨dwMajor¡¢dwMinor£©Çø·Ö + BYTE byTimeType; //ʱ¼äÀàÐÍ£º0-É豸±¾µØʱ¼ä£¨Ä¬ÈÏ£©£¬1-UTCʱ¼ä£¨struTimeµÄʱ¼ä£© + BYTE byRes1; + DWORD dwQRCodeInfoLen; //¶þάÂëÐÅÏ¢³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + DWORD dwVisibleLightDataLen; //ÈȳÉÏñÏà»ú¿É¼û¹âͼƬ³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + DWORD dwThermalDataLen; //ÈȳÉÏñͼƬ³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pQRCodeInfo; //¶þάÂëÐÅÏ¢Ö¸Õë + char *pVisibleLightData; //ÈȳÉÏñÏà»ú¿É¼û¹âͼƬָÕë + char *pThermalData; //ÈȳÉÏñͼƬָÕë + BYTE byRes[36]; +}NET_DVR_ACS_EVENT_CFG, *LPNET_DVR_ACS_EVENT_CFG; + +typedef struct tagNET_DVR_SMSLISTINFO +{ + DWORD dwSize; + DWORD dwTotalSmsNum;//¶ÌÐÅÌõÊý + BYTE byRes[8]; + BYTE *pSmsParam; + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +}NET_DVR_SMSLISTINFO, *LPNET_DVR_SMSLISTINFO; + +typedef struct tagNET_DVR_SMSPARAM +{ + DWORD dwIndex; /* the index of sms */ + BYTE byStatus; /* read yet or not */ + BYTE byRes[7]; + NET_DVR_TIME_EX struRecvTime; /* sms receive time */ +}NET_DVR_SMSPARAM, *LPNET_DVR_SMSPARAM; + +#define MAX_SMSCONTENT_LEN 140//¶ÌÐÅÄÚÈݳ¤¶È +typedef struct tagNET_DVR_SMSCONTENT +{ + BYTE byPhoneNum[MAX_PHONE_NUM]; + BYTE byMsg[MAX_SMSCONTENT_LEN]; +}NET_DVR_SMSCONTENT, *LPNET_DVR_SMSCONTENT; + +//pinÂëÅäÖà +typedef enum +{ + CPIN_READY = 1, + CPIN_PIN = 2, + CPIN_PUK = 3, + CPIN_PIN2 = 4, + CPIN_PUK2 = 5 +}PIN_READY; + +typedef struct tagNET_DVR_PINSTATUS +{ + DWORD dwSize; + BYTE byStatus; /* PIN status, defination see enum: PIN_READY */ + BYTE byPinTimes; /* remain input PIN times */ + BYTE byPukTimes; /* remain input PUK times */ + BYTE bEnableLock; /* now the PIN locking function is enabled or not: 0, not enabled lock; 1, lock enabled */ + BYTE byRes[4]; +}NET_DVR_PINSTATUS, *LPNET_DVR_PINSTATUS; + +typedef enum +{ + PIN_ENABLE = 1, + PIN_DISABLE = 2, + PIN_VERIFY = 3, + PUK_VERIFY = 4, + PIN_CHANGE = 5 +}PIN_CMD; +#define MAX_PIN_LEN 12 //PINÂë×î´ó³¤¶È +typedef struct tagNET_DVR_PINCODEPARAM +{ + DWORD dwSize; + BYTE byPinCmd; /* PIN command, defination see enum: PIN_CMD */ + BYTE byRes1[3]; + BYTE byPinCode[MAX_PIN_LEN]; /* pin/puk code */ + BYTE byNewPinCode[MAX_PIN_LEN]; /* new pin code */ + BYTE byRes2[16]; +}NET_DVR_PINCODEPARAM, *LPNET_DVR_PINCODEPARAM; + + +//ͼƬÖÊÁ¿ +typedef struct +{ + /* 0=CIF, 1=QCIF, 2=D1 3=UXGA(1600x1200), 4=SVGA(800x600), 5=HD720p(1280x720),6=VGA*/ + WORD wPicSize; + WORD wPicQuality; /* ͼƬÖÊÁ¿ÏµÊý 0-×îºÃ 1-½ÏºÃ 2-Ò»°ã */ + //ץͼͼƬ´¦Àí·½Ê½£¬1-ÉÏ´«ÖÐÐÄ£¬2-É豸±¾µØ±£´æ£¬3-ÉÏ´«ÖÐÐÄͬʱÉ豸±¾µØ±£´æ + BYTE byPicTackleMode; + BYTE byRes[11]; +}NET_DVR_PUSHJPEGPARA, *LPNET_DVR_PUSHJPEGPARA; + + +#define COM_PUSHALARM 0x1200 //É豸»ù±¾±¨¾¯ÐÅÏ¢ÉÏ´«£¬ÍÆģʽÉ豸ʹÓà +#define COM_PUSHALARM_V30 0x1201 //É豸»ù±¾±¨¾¯ÐÅÏ¢ÉÏ´«v30£¬ÍÆģʽÉ豸ʹÓà +typedef struct tagNET_DVR_PUSHALARMINFO +{ + DWORD dwAlarmType;/*0-ÐźÅÁ¿±¨¾¯,1-Ó²ÅÌÂú,2-ÐźŶªÊ§,3£­Òƶ¯Õì²â,4£­Ó²ÅÌδ¸ñʽ»¯,5-¶ÁдӲÅ̳ö´í,6-ÕÚµ²±¨¾¯,7-ÖÆʽ²»Æ¥Åä, 8-·Ç·¨·ÃÎÊ*/ + DWORD dwAlarmInputNumber;/*±¨¾¯ÊäÈë¶Ë¿Ú*/ + DWORD dwAlarmOutputNumber[MAX_ALARMOUT];/*´¥·¢µÄÊä³ö¶Ë¿Ú£¬ÄÄһλΪ1±íʾ¶ÔÓ¦ÄÄÒ»¸öÊä³ö*/ + DWORD dwAlarmRelateChannel[MAX_CHANNUM];/*´¥·¢µÄ¼ÏñͨµÀ£¬ÄÄһλΪ1±íʾ¶ÔÓ¦ÄÄһ·¼Ïñ, dwAlarmRelateChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + DWORD dwChannel[MAX_CHANNUM];/*dwAlarmTypeΪ2»ò3,6ʱ£¬±íʾÄĸöͨµÀ£¬dwChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + DWORD dwDiskNumber[MAX_DISKNUM];/*dwAlarmTypeΪ1,4,5ʱ,±íʾÄĸöÓ²ÅÌ, dwDiskNumber[0]λ¶ÔÓ¦µÚ1¸öÓ²ÅÌ*/ + BYTE byDeviceID[NAME_LEN];/*É豸µÄID´®*/ + BYTE byRes[4]; +}NET_DVR_PUSHALARMINFO, *LPNET_DVR_PUSHALARMINFO; + +typedef struct +{ + DWORD dwAlarmType;/*0-ÐźÅÁ¿±¨¾¯,1-Ó²ÅÌÂú,2-ÐźŶªÊ§,3£­Òƶ¯Õì²â,4£­Ó²ÅÌδ¸ñʽ»¯,5-¶ÁдӲÅ̳ö´í,6-ÕÚµ²±¨¾¯,7-ÖÆʽ²»Æ¥Åä, 8-·Ç·¨·ÃÎÊ, 9-ÊÓƵÐźÅÒì³££¬10-¼ÏñÒì³£ 11- ÖÇÄܳ¡¾°±ä»¯ 12-ÕóÁÐÒì³£ */ + DWORD dwAlarmInputNumber;/*±¨¾¯ÊäÈë¶Ë¿Ú*/ + BYTE byAlarmOutputNumber[MAX_ALARMOUT_V30];/*´¥·¢µÄÊä³ö¶Ë¿Ú£¬Îª1±íʾ¶ÔÓ¦Êä³ö*/ + BYTE byAlarmRelateChannel[MAX_CHANNUM_V30];/*´¥·¢µÄ¼ÏñͨµÀ£¬Îª1±íʾ¶ÔӦ¼Ïñ, dwAlarmRelateChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + BYTE byChannel[MAX_CHANNUM_V30];/*dwAlarmTypeΪ2»ò3,6£¬9£¬10ʱ£¬±íʾÄĸöͨµÀ£¬dwChannel[0]¶ÔÓ¦µÚ1¸öͨµÀ*/ + BYTE byDiskNumber[MAX_DISKNUM_V30];/*dwAlarmTypeΪ1,4,5ʱ,±íʾÄĸöÓ²ÅÌ, dwDiskNumber[0]¶ÔÓ¦µÚ1¸öÓ²ÅÌ*/ + BYTE byDeviceID[NAME_LEN];/*É豸µÄID´®*/ + BYTE byRes[7]; +}NET_DVR_PUSHALARMINFO_V30, *LPNET_DVR_PUSHALARMINFO_V30; + +//2011-04-20 +//Æô¶¯¿ØÖÆ +typedef struct tagNET_DVR_MB_AUTOWORKPARA +{ + /*µ±Ç°Æô¶¯¿ØÖÆ·½Ê½ 0: Ô¤Áô, 1: ÑÓʱ¹Ø»ú, 2: ×Ô¶¯¿ª¹Ø»ú*/ + BYTE byCurPowerCtrlType; + BYTE byRes[3]; + NET_DVR_SCHEDTIME struWorkTime[MAX_DAYS][2]; +}NET_DVR_MB_AUTOWORKPARA, *LPNET_DVR_MB_AUTOWORKPARA; + +typedef struct tagNET_DVR_MB_POWERCTRLPARA +{ + DWORD dwSize; + DWORD dwHaltDelay; /* ¹Ø»úÑÓ³Ùʱ¼ä,µ¥Î»min */ + NET_DVR_MB_AUTOWORKPARA struAutoWorkPara;/*Æô¶¯¿ØÖÆÏà¹Ø²ÎÊýÉèÖÃ*/ + BYTE byEnableUnderVoltProtect; /*ÊÇ·ñ¿ªÆôǷѹ±£»¤*/ + BYTE byUnderVoltPercent; /*Ƿѹ±£»¤°Ù·Ö±È£¬ÓÐ85¡¢90¡¢95Èý¸öÓÐЧֵ*/ + BYTE byRes[34]; +}NET_DVR_MB_POWERCTRLPARA, *LPNET_DVR_MB_POWERCTRLPARA; +/*×¢£º1£©¡¢¹Ø»úÑÓ³Ùʱ¼ä, ¿Éѡʱ¼äΪ 0£¬5·ÖÖÓ£¬10·ÖÖÓ £¬20·ÖÖÓ 25·ÖÖÓ 30·ÖÖÓ 35·ÖÖÓ 40·ÖÖÓ £¬45 ·ÖÖÓ 50·ÖÖÓ £¬60·ÖÖÓ £¬60*2·ÖÖÓ £¬60*3 60 *4 60*5 60*6 */ + +//×Ô¶¯±¸·Ý +typedef struct tagNET_DVR_MB_AUTOBACKUPPARA +{ + DWORD dwSize; + BYTE byEnableAutoBackup; /* ÊÇ·ñ¿ªÆô×Ô¶¯±¸·Ý 0 ¹Ø±Õ £¬1 ¿ªÆô */ + BYTE byRes1[3]; + BYTE byBackupChannel[MAX_CHANNUM_V30]; /*ÐèÒª±¸·ÝµÄͨµÀ*/ + BYTE byBackupDays[MAX_CHANNUM_V30];/*±¸·ÝÌìÊý*/ + /* ±¸·ÝÎļþÀàÐÍ + {0,ALL_RECORD_TYPE,È«²¿}, + {1,TIMING_REC,¶¨Ê±}, + {2,MOTION_DETECT_REC,Òƶ¯Õì²â }, + {3,ALARM_REC,±¨¾¯ }, + {4,MANUAL_REC,ÊÖ¶¯Â¼Ïñ}*/ + BYTE byBackupFileType[MAX_CHANNUM_V30]; + NET_DVR_SCHEDTIME struBackupTime[MAX_CHANNUM_V30][2]; /* ×Ô¶¯±¸·Ýʱ¼ä¶Î*/ + BYTE byRes2[36]; /* ±£Áô×Ö½Ú*/ +}NET_DVR_MB_AUTOBACKUPPARA, *LPNET_DVR_MB_AUTOBACKUPPARA; + + +typedef struct tagNET_DVR_MB_GPSPARA +{ + DWORD dwSize; + BYTE byEnableGPS; /*ÊÇ·ñÆôÓÃGPS */ + BYTE byGpsInterface;/*gps½ÓÊÕ½Ó¿Ú0-rs232, 1-rs485, 2-frontpanel, 3-lcd */ + BYTE bySpeedUnit; /*Ëٶȵ¥Î»£¬0£º¹«Àï/Сʱ£¬1 £ºÓ¢Àï/Сʱ*/ + BYTE byEnableRetrieve; /* äÇø²¹·¢(1ÆôÓã¬0²»ÆôÓÃ) */ + int iAdjustTime;/*ʱÇø*/ + BYTE byEnableAdjustTime;/*ÊÇ·ñÆôÓÃGPSУʱ£¬ 1-ÆôÓÃ, 0-²»Æô¶¯*/ + BYTE byRes1[5]; + WORD wGpsUploadInterval; /* GPSÉÏ´«¼ä¸ô, Ãë*/ + BYTE byGpsOsdChannel[MAX_CHANNUM_V30];/*OSD ÏÔʾ£¬Ã¿×Ö½Ú´ú±íһ· */ + DWORD dwSpeedLimit; /* ÏÞËÙ±¨¾¯*/ + NET_DVR_HANDLEEXCEPTION_V30 struGpsAlarm; + BYTE byRes2[36]; +}NET_DVR_MB_GPSPARA, *LPNET_DVR_MB_GPSPARA; +/*×¢£º1£©¡¢µ±µ¥Î»Îª¹«Àï/Сʱ ʱ·¶Î§Îª£¨0 ,965£©£»µ±²ÉÓÃÓ¢Àï/Сʱ×öµ¥Î»µÄʱºò £¬×î´óËٶȷ¶Î§Îª£º0-600*/ + +#define SENSOR_IN_NUMBER 8 +typedef struct tagNET_DVR_MB_SENSORINPARA +{ + DWORD dwSize; + BYTE byTriggerType[SENSOR_IN_NUMBER];/*Ðгµ×´Ì¬Ïà¹Ø´¥·¢µÄÁª¶¯£¬Ö»Óúó4¸ö£¬·Ö±ð´ú±íɲ³µ¡¢×óת¡¢ÓÒת¡¢µ¹³µ£¬0-¸ßµçƽ£¬1-µÍµçƽ*/ + BYTE byTriggerChannel [SENSOR_IN_NUMBER]; + BYTE byOsdDisplay [MAX_CHANNUM_V30];/*OSDÏÔʾ,ÿλ´ú±íһ·*/ + BYTE byRes[32]; +}NET_DVR_MB_SENSORINPARA, *LPNET_DVR_MB_SENSORINPARA; + + +typedef struct tagNET_DVR_ACCELERATIONCFG +{ + DWORD dwMaxXAcc; /* XÖá¼ÓËٶȱ¨¾¯Öµ £¬¸ÃȡֵΪʵ¼ÊÊýÖµ³ËÒÔ10,×îСΪ0*/ + DWORD dwMaxYAcc; /* YÖá¼ÓËٶȱ¨¾¯Öµ £¬¸ÃȡֵΪʵ¼ÊÊýÖµ³ËÒÔ10.×îСΪ0*/ + DWORD dwMaxZAcc; /* ZÖá¼ÓËٶȱ¨¾¯Öµ£¬ ¸ÃȡֵΪʵ¼ÊÊýÖµ³ËÒÔ10,×îСΪ0*/ + BYTE byRes[4]; +}NET_DVR_ACCELERATIONCFG,*LPNET_DVR_ACCERATIONCFG; + +typedef struct tagNET_DVR_GSENSORPARA +{ + DWORD dwSize; + NET_DVR_ACCELERATIONCFG struAccelerationCfg; + BYTE byModuleSelect;/*Ä£¿éÑ¡Ôñ£º0ÄÚÖÃ/1ÍâÖÃ*/ + BYTE byRes1[3]; + NET_DVR_HANDLEEXCEPTION_V30 struHandleException; + BYTE byRes2[24]; /*±£ÁôÀ©Õ¹×Ö½Ú*/ +}NET_DVR_GSENSORPARA, *LPNET_DVR_GSENSORPARA; + +typedef struct tagNET_DVR_MB_DOWNLOADSVRPARA +{ + DWORD dwSize; + NET_DVR_IPADDR struDownloadSvrIp; /* ×Ô¶¯ÏÂÔØ·þÎñÆ÷µØÖ· */ + BYTE byRes[64]; +}NET_DVR_MB_DOWNLOADSVRPARA,*LPNET_DVR_MB_DOWNLOADSVRPARA; + +/* ³µÅÆʶ±ðµÄÏà¹Ø²ÎÊý*/ +typedef struct tagNET_DVR_PLATERECOG_PARA +{ + DWORD dwSize; + BYTE byPrMode; /* ³µÅÆʶ±ðµÄģʽ, ¾²Ì¬Í¼Ïñ0/¶¯Ì¬ÊÓƵ1 */ + BYTE byPrScene; /* ³µÅÆʶ±ðµÄ³¡¾°, µÍËÙ³¡¾°0/¸ßËÙ³¡¾°1 */ + BYTE byPrDetRect; /* 0:È«ÆÁÄ»;1:ÖÐÐÄÇøÓò */ + BYTE byPrPicQuality; /* ³µÅÆʶ±ð·µ»ØµÄͼƬÖÊÁ¿, 0:×îµÍ/3:×î¸ß */ + BYTE byPrPicMode;/*³µÅÆʶ±ð·µ»ØµÄͼƬ·Ö±æÂÊ: JPEG_MODE_D1, JPEG_MODE_CIF, JPEG_MODE_QCIF */ + BYTE byPlateOsdDisplay; /* ³µÅÆOSDÊÇ·ñÏÔʾ 0:²»ÏÔʾ/1:ÏÔʾ */ + BYTE byPrProvCharIndex; /* ³µÅÆʶ±ðÊ¡·ÝÊ׺º×Ö¶ÔÓ¦µÄË÷Òý */ + BYTE byPrProvCharIndex1; /* ³µÅÆʶ±ð³£¼ûÊ׺º×Ö1¶ÔÓ¦µÄË÷Òý */ + BYTE byPrProvCharIndex2; /* ³µÅÆʶ±ð³£¼ûÊ׺º×Ö2¶ÔÓ¦µÄË÷Òý */ + BYTE byRes[7]; +}NET_DVR_PLATERECOG_PARA, *LPNET_DVR_PLATERECOG_PARA; + + +/* ¶¯Ì¬È¡Ö¤ÏµÍ³,ÏÞËÙÉèÖòÎÊýµÄ½á¹¹*/ +typedef struct tagNET_DVR_SPEEDLMT_PARA +{ + BYTE bStartMaxSpeedLimit; /* ¿ªÆô¸ßËÙÏÞÖÆ */ + BYTE bStartMinSpeedLimit; /* ¿ªÆôµÍËÙÏÞÖÆ */ + BYTE byRes[6]; + DWORD dwMaxSpeedLimit; /* ×î¸ßÏÞËÙ */ + DWORD dwMinSpeedLimit; /* ×îµÍÏÞËÙ */ +}NET_DVR_SPEEDLMT_PARA, *LPNET_DVR_SPEEDLMT_PARA; + +/* ¶¯Ì¬È¡Ö¤ÏµÍ³,³µÅƱȶԲÎÊýµÄ½á¹¹*/ +typedef struct tagNET_DVR_PLATECHECK_PARA +{ + BYTE bAlarmWhenChecked; /* »ü²é³É¹¦ÊÇ·ñ±¨¾¯ */ + BYTE bInformWhenChecked; /* »ü²é³É¹¦ÊÇ·ñ¶Ô»°¿òÌáʾ */ + BYTE byRes[6]; + NET_DVR_IPADDR struBlockFtpServer; /* ½ûÖ¹Ãûµ¥FTP·þÎñÆ÷µØÖ· */ +}NET_DVR_PLATECHECK_PARA, *LPNET_DVR_PLATECHECK_PARA; + +typedef struct tagNET_DVR_ENFORCESYS_PARA +{ + DWORD dwSize; + NET_DVR_SPEEDLMT_PARA struSpeedLmtPara; /*ÏÞËÙÉèÖÃ*/ + NET_DVR_PLATECHECK_PARA struPlateCheckPara; /*³µÅƱȶÔ*/ + BYTE bySelPeccType; /*ÊÇ·ñÑ¡ÔñÎ¥ÕÂÀàÐÍ*/ + BYTE byEnfOptHabit; /*È¡Ö¤²Ù×÷Ï°¹ß, 0:³¤°´È¡Ö¤;1:¶Ì°´Á½´ÎÈ¡Ö¤*/ + /*Ô¤ÀÀÖ¡Âʵ÷½Úģʽ·ÖÈýÖÖ£º + A ¹Ø±Õ adjPrevFpsMode=0 + ÒԹ̶¨¸ßÖ¡ÂÊ(25FPS)Ô¤ÀÀ + B ±ê×¼ adjPrevFpsMode=1 + ÒԹ̶¨µÍÖ¡ÂÊ(6FPS)Ô¤ÀÀ + C ×ÔÊÊÓ¦ adjPrevFpsMode=2 + ¸ù¾ÝGPSËÙ¶ÈÐÅÏ¢¶¯Ì¬µ÷ÕûÔ¤ÀÀÖ¡ÂÊ£¬ + 3ÃëÎÞÓÐЧGPSµÄÇé¿öÏ£¬ÒԹ̶¨¸ßÖ¡ÂÊÔ¤ÀÀ*/ + BYTE byAdjPrevFpsMode; + BYTE byRes1; + NET_DVR_IPADDR struUploadServerIp; //ÉÏ´«·þÎñÆ÷µØÖ· + WORD wUploadServerPort; + BYTE byRes2[18]; +}NET_DVR_ENFORCESYS_PARA, *LPNET_DVR_ENFORCESYS_PARA; + +typedef struct tagNET_DVR_PUSHMODEPARAM +{ + //Ö±Á¬Ä£Ê½ÏÂUDPÔ¤ÀÀģʽ£¬1-ͬ¶Ë¿Ú¶à·Á÷£¬2-Ò»¶Ë¿Úһ·Á÷ + BYTE byUdpPreviewMode; + //ÓïÒô¶Ô½²¹¤×÷ģʽ£¬0-ÓïÒô¶Ô½²£¬1-ÓïÒôת·¢£¨SDK²»½øÐÐÓïÒôµÄ²É¼¯ºÍ²¥·Å£© + BYTE byVoiceWorkMode; + BYTE byRes[18]; +}NET_DVR_PUSHMODEPARAM, *LPNET_DVR_PUSHMODEPARAM; + +#define MAX_ALARMHOST_ALARMIN_NUM 512//ÍøÂ籨¾¯Ö÷»ú×î´ó±¨¾¯ÊäÈë¿ÚÊý +#define MAX_ALARMHOST_ALARMOUT_NUM 512//ÍøÂ籨¾¯Ö÷»ú×î´ó±¨¾¯Êä³ö¿ÚÊý + +#define ALARMHOST_MAX_AUDIOOUT_NUM 32//ÍøÂ籨¾¯Ö÷»ú×î´óÓïÒôÊä³öÊý +#define ALARMHOST_MAX_ELECTROLOCK_NUM 32//ÍøÂ籨¾¯Ö÷»ú×î´óµçËøÊý +#define ALARMHOST_MAX_MOBILEGATE_NUM 32//ÍøÂ籨¾¯Ö÷»ú×î´óÒƶ¯ÃÅÊý +#define ALARMHOST_MAX_SIREN_NUM 8 // ×î´ó¾¯ºÅÊýÄ¿ +#define MAX_ALARMHOST_SUBSYSTEM 32//±¨¾¯Ö÷»ú×î´ó×ÓϵͳÊý +#define ALARMHOST_DETECTOR_SERIAL_LEN 9//±¨¾¯Ö÷»ú¹ØÁªÌ½²âÆ÷ÐòÁкų¤¶È +#define ALARMHOST_DETECTOR_SERIAL_LEN_V50 16 //±¨¾¯Ö÷»ú¹ØÁªÌ½²âÆ÷ÐòÁкÅV50³¤¶È +#define MAX_DETECTOR_NUM 128//×î´ó¹ØÁªÌ½²âÆ÷Êý +#define MAX_DETECTOR_NUM_V51 256 //×î´ó¹ØÁªÌ½²âÆ÷Êý +#define MAX_REPEATER_NUM 16 //×î´óÖмÌÆ÷Êý +#define MAX_OUTPUT_MODULE_NUM 64 //×î´óÊä³öÄ£¿éÊý +#define MAX_ELECTRIC_LOCK_NUM 64 //×î´óµçËøÊýÁ¿ + +//´«¸ÐÆ÷ÀàÐÍ +typedef enum tagSENSOR_TYPE +{ + SENSOR_TYPE_NONE = 0, // ÎÞ + SENSOR_TYPE_TEMPERATURE = 1, // ÎÂ¶È + SENSOR_TYPE_HUMIDITY , // ʪ¶È + SENSOR_TYPE_WINDSPEED, // ·çËÙ + SENSOR_TYPE_GAS, // ÆøÌå + SENSOR_AC_VOLTAGE, // ½»Á÷µçѹ + SENSOR_AC_CURRENT, // ½»Á÷µçÁ÷ + SENSOR_DC_VOLTAGE, // Ö±Á÷µçѹ + SENSOR_DC_CURRENT, // Ö±Á÷µçÁ÷ + SENSOR_WATER_PRESSURE, // ˮѹ + SENSOR_PRESSURE_TRANSMITTER, // ѹÁ¦±äËÍÆ÷ + SENSOR_FLOW_TRANSMITTER, // Á÷Á¿±äËÍÆ÷ + SENSOR_WATER_LEAKAGE, // ©ˮ´«¸ÐÆ÷ + SENSOR_INTERGRATED_TEMPERATURE_DETECTOR,//Ò»Ì廯αä + SENSOR_ISOLATION_TEMPERATURE_DETECTOR, //¸ôÀëʽαä + SENSOR_RESIDUAL_CHLORINE, //ÔÚÏßÓàÂÈÒÇ + SENSOR_TYPE_AC_TERMINAL = 16, // AC¶Ë×Ó + SENSOR_TYPE_AC_SOCKET = 17, // AC²å×ù + SENSOR_TYPE_HUMITURE, // ÎÂʪ¶È + SENSOR_TYPE_FLOW, // Á÷Á¿ + SENSOR_LIQUID_LEVEL, // Һλ + SENSOR_TYPE_ARC, // µç»¡ + SENSOR_TYPE_UNKNOW = 255 // 䶨Òå +}SENSOR_TYPE; + +typedef struct tagNET_DVR_SENSOR_INFO +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byName[NAME_LEN]; // ´«¸ÐÆ÷Ãû³Æ + BYTE byEnable; // ÊÇ·ñÆôÓà + BYTE byValid; // ÊÇ·ñÓÐЧ ´«¸ÐÆ÷Õý³£²»Õý³£(¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡²»ÄܸöÅäÖÃ) + BYTE byType; // Ä£ÄâÁ¿ÀàÐÍ ²ÎÕÕSENSOR_TYPE + BYTE byAlarmMode;//±¨¾¯Ä£Ê½£¬ÎåÖÖ£¬15-HHHH¡¢14-HHHL¡¢12-HHLL¡¢8HLLL¡¢0-LLLL£¬¼´£º1111£¨ÉÏÉÏÉÏÉÏ£©£¬1110£¨ÉÏÉÏÉÏÏ£©£¬1100£¨ÉÏÉÏÏÂÏ£©£¬1000(ÉÏÏÂÏÂÏÂ)£¬0000(ÏÂÏÂÏÂÏÂ) + float fMeasureHigh; // Á¿³ÌÉÏÏÞ + float fMeasureLow; // Á¿³ÌÏÂÏÞ + float fAlarm1; //±¨¾¯ÏÞ1,±¨¾¯ÏÞ1-4 ÒÀ´ÎÔö´ó + float fAlarm2; //±¨¾¯ÏÞ2 + float fAlarm3; //±¨¾¯ÏÞ3 + float fAlarm4; //±¨¾¯ÏÞ4 + DWORD dwOsdCfg; //Ä£ÄâÁ¿×Ö·ûµþ¼Ó£¬°´Î»±íʾ0-15¶ÔÓ¦ÊÓƵͨµÀ1-16 + float fSensitive; // ÁéÃô¶È±íʾµ±ÊµÊ±ÖµµÄ±ä»¯³¬¹ýÁéÃô¶ÈµÄ·¶Î§Ê±£¬Ôò±íʾʵʱֵ·¢ÉúÁ˱仯£¬·ñÔòÈÏΪûÓз¢Éú±ä»¯¡£È磺ÁéÃô¶ÈΪ0.1£¬Ôò±íʾǰºó¼ì²âµÄÁ½¸öÖµÖ®²î´óÓÚ0.1ʱ£¬ÔòÈÏΪÊý¾Ý·¢Éú±ä»¯´óÓÚ0.1£¬ÐèÒªÉÏ´«¡£Èç¹ûΪ1£¬Ôò±íʾ±ä»¯³¬¹ý1ʱÉϱ¨¡£ + BYTE bySensorStandard; //´«¸ÐÆ÷¹æ¸ñ£¬0- 0~20mA£¬1- 0~5V£¬2- 0~2.5Mpa£¬3- 0~1.6Mpa£¬4- 0~5m + BYTE byChan; //Ä£ÄâÁ¿Í¨µÀºÅ + BYTE byRes3[114]; // ±£Áô×Ö½Ú +}NET_DVR_SENSOR_INFO, *LPNET_DVR_SENSOR_INFO; + +typedef struct tagNET_DVR_SIREN_PARAM +{ + DWORD dwSize; // ½á¹¹´óС + BYTE byName[NAME_LEN]; // Ãû³Æ + WORD wDelay; // Êä³öÑÓ³Ù µ¥Î»ÎªÃë, ·¶Î§ 0~5599s 0±íʾһֱÓÐÊä³ö + BYTE byRes1[2]; + DWORD dwOverallEventJointSirenOn; //È«¾ÖʼþÁª¶¯¾¯ºÅÊä³ö¿ªÆô£¬Ê¼þÀàÐÍ°´Î»±íʾ£¬bit0-Ö÷»ú·À²ð, bit1-È«¾Ö¼üÅ̽ô¼±±¨¾¯,bit2-½»Á÷µç¶Ïµç£¬bit3-µç³ØµçѹµÍ,bit4-µç»°ÏßµôÏß,bit5-ÓÐÏßÍøÂçÒì³£,bit6-ÎÞÏßÍøÂçÒì³£, bit7-¼üÅÌ485¶ÏÏߣ¬bit8- WIFIͨÐŹÊÕÏ£¬bit9-RFÐźŸÉÈŹÊÕÏ + DWORD dwSubsystemEventJointSirenOn[MAX_ALARMHOST_SUBSYSTEM/*32*/];//×ÓϵͳʼþÁª¶¯¾¯ºÅÊä³ö¿ªÆô¡£Êý×éϱê±íʾ×ÓϵͳºÅ£¬Ã¿Ò»¸öÔªËØ°´Î»±íʾʼþÀàÐÍ£¬bit0-½ô¼±±¨¾¯ + BYTE byRes2[448]; // ±£Áô×Ö½Ú¡¡¡¡ +}NET_DVR_SIREN_PARAM, *LPNET_DVR_SIREN_PARAM; + +typedef struct tagNET_DVR_AIR_CONDITION_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; // 0--¹Ø»ú 1--¿ª»ú + BYTE byMode; // ¿Õµ÷ģʽ + BYTE byTemperature; // ζȣ¬¾ßÌåÖµ±íʾ ͨ³£Îª16-30¶È + BYTE byAirConditionNo; // ¿Õµ÷±àºÅ + BYTE byRes[8]; // ±£Áô×Ö½Ú +}NET_DVR_AIR_CONDITION_PARAM, *LPNET_DVR_AIR_CONDITION_PARAM; + +typedef enum tagDETECTOR_TYPE +{ + PANIC_BUTTON = 0, // ½ô¼±°´Å¥ + MAGNETIC_CONTACT, // ÃÅ´Å + SMOKE_DETECTOR, // Ñ̸Ð̽²âÆ÷ + ACTIVE_INFRARED_DETECTOR, // Ö÷¶¯ºìÍâ̽²âÆ÷ + PASSIVE_INFRARED_DETECTOR, // ±»¶¯ºìÍâ̽²âÆ÷ + GLASS_BREAK_DETECTOR, // ²£Á§ÆÆËé̽²âÆ÷ + VIBRATION_DETECTOR, // Õð¶¯Ì½²âÆ÷ + DUAL_TECHNOLOGY_PIR_DETECTOR, // Ë«¼ø̽²âÆ÷ + TRIPLE_TECHNOLOGY_PIR_DETECTOR, // Èý¼¼Êõ̽²âÆ÷ + HUMIDITY_DETECTOR, // ʪ¶È̽²âÆ÷ + TEMPERATURE_DETECTOR, // θÐ̽²âÆ÷ + COMBUSTIBLE_GAS_DETECTOR, // ¿ÉȼÆøÌå̽²âÆ÷ + DYNAMIC_SWITCH, //Ë涯¿ª¹Ø + CONTROL_SWITCH, //¿ØÖÆ¿ª¹Ø + SMART_LOCK, //ÖÇÄÜËø + WATER_DETECTOR, //Ë®½þ̽²âÆ÷ + DISPLACEMENT_DETECTOR, //λÒÆ̽²âÆ÷ + SINGLE_INFRARED_DETECTOR, //µ¥ÌåÃÅ´Å̽²âÆ÷ + SINGLE_ZONE_MODULE, //ÎÞÏßµ¥·ÀÇøÄ£¿é + CURTAIN_INFRARED_DETECTOR, //Ä»Á±ºìÍâÈËÌå̽²âÆ÷19 + UNKNOWN,//δ֪20 + DOORBELL_SWITCH=21, //ÃÅÁ忪¹Ø21 + MEDICAL_HELP_BUTTON, //Ò½ÁÆÇóÖú°´Å¥ + OUTDOOR_DUAL_TECH, //ÊÒÍâË«¼ø´«¸ÐÆ÷ + + OTHER_DETECTOR = 0xffff // ÆäËü̽²âÆ÷ +}DETECTOR_TYPE; + +typedef struct tagNET_DVR_ALARMIN_PARAM +{ + DWORD dwSize; + BYTE byName[NAME_LEN]; + WORD wDetectorType; // DETECTOR_TYPE + BYTE byType; //·ÀÇøÀàÐÍ£¬0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø,10-ÃŽû½ô¼±¿ªÃÅ·ÀÇø£¬11-ÃŽû½ô¼±¹ØÃÅ·ÀÇø £¬12-³¬Ê±·ÀÇø£¬13-½ô¼±·ÀÇø£¬0xff-ÎÞ + BYTE byUploadAlarmRecoveryReport; //ÊÇ·ñÉÏ´«·ÀÇø±¨¾¯»Ö¸´±¨¸æ£¬0-²»ÉÏ´«£¬1-ÉÏ´« + DWORD dwParam; // ·ÀÇø²ÎÊý ÑÓʱ·ÀÇøÑÓʱ¶à³¤Ê±¼ä, ¶¯»·±¨¾¯Ö÷»úºÍ×ÔÖúÐб¨¾¯Ö÷»úµÄÑÓʱʱ¼äͨ¹ýÕâ¸ö²ÎÊýÀ´ÉèÖà , ¾ßÌåÓÃÄÄÖÖÉèÖ÷½Ê½Í¨¹ýÄÜÁ¦¼¯ÖеÄbySupportAlarmInDelay×Ö¶ÎÀ´Çø±ð + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];/*²¼·Àʱ¼äʱ¼ä¶Î*/ + BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; // ±¨¾¯ÊäÈë¹ØÁª±¨¾¯Êä³ö + BYTE byAssociateSirenOut[8]; // ¾¯ºÅÊä³ö Êý×é0 ±íʾ¾¯ºÅ1 ֵΪ1±íʾÊä³ö 0 ±íʾ²»Êä³ö + BYTE bySensitivityParam;//·ÀÇøÁéÃô¶È²ÎÊý, 0-10ms¡¢1-250ms¡¢2-500ms¡¢3-750ms + BYTE byArrayBypass;//ÊÇ·ñ¼ÓÈëÅÔ·×é,0-²»Ö§³Ö×éÅÔ·,1-Ö§³Ö×éÅÔ· + BYTE byJointSubSystem; //·ÀÇøËùÊôµÄ×ÓϵͳºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byModuleStatus; //Ä£¿é״̬ 1-ÔÚÏß 2-ÀëÏß + WORD wModuleAddress; //Ä£¿éµØÖ·£¬À©Õ¹Ä£¿é´Ó0~255£¬0xFFFF±íʾÎÞЧ + BYTE byModuleChan; //Ä£¿éͨµÀºÅ£¬´Ó1¿ªÊ¼£¬×î´óÖµ¸ù¾ÝÄ£¿éÀàÐÍÀ´¾ö¶¨£¬0xFF±íʾÎÞЧ + BYTE byModuleType; //Ä£¿éÀàÐÍ£¬1-±¾µØ·ÀÇø£¬2-µ¥·ÀÇø£¬3-Ë«·ÀÇø£¬4-8·ÀÇø£¬5-8·ģÄâÁ¿·ÀÇø, 6-µ¥·ÀÇø´¥·¢Æ÷, 7-1Þ͵ؿØÖÆÆ÷¡¢8-2Þ͵ؿØÖÆÆ÷¡¢9-4Þ͵ؿØÖÆÆ÷¡¢10-8·ÀÇøÎÞÏß¡¢11-¼üÅÌ¡¢12-8·ÀÇøÓÐÏß¡¢13-À©Õ¹·ÀÇø + WORD wZoneIndex; //·ÀÇøºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + WORD wInDelay; //½øÈëÑÓʱ£¬0-255Ãë + WORD wOutDelay; //Í˳öÑÓʱ£¬0-255Ãë + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ 0-ÎÞЧ£¬1-³£¿ª£¬2-³£±Õ + BYTE byZoneResistor; //·ÀÇøµç×裬µ¥Î»Ç§Å· 0-ÎÞЧ 1--2.2 £¬2--3.3£¬3--4.7£¬4--5.6 £¬ 5--8.2 £¬0xff-×Ô¶¨Òå + float fZoneResistorManual;/*·ÀÇøÊÖ¶¯µç×裬1.0-10.0£¬¾«È·µ½Ð¡Êýµãºóһ룬µ¥Î»Ç§Å·£¬byZoneResistorΪ0xffʱÓÐЧ*/ + BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN]; //̽²âÆ÷ÐòÁкţ¬Ö»¶Á + BYTE byZoneSignalType; //·ÀÇøÐźŴ«ÊäÀàÐÍ(Ö»¶Á)£¬0-ÓÐÏß·ÀÇø£¬1-ÎÞÏß·ÀÇø + BYTE byDisableDetectorTypeCfg; //̽²âÊÇÀàÐÍÊÇ·ñ²»¿ÉÅ䣬0-¿ÉÅ䣬1-²»¿ÉÅä + BYTE byTimeOutRange; // ³¬Ê±Ê±¼ä·¶Î§£¬0:1~599s,1:1~65535s + BYTE byAssociateLampOut[8];// ¾¯µÆÊä³ö Êý×é0 ±íʾ¾¯µÆ1 ֵΪ1±íʾÊä³ö 0 ±íʾ²»Êä³ö + WORD wTimeOut; //³¬Ê±Ê±¼ä£¬Ãë + BYTE byDetectorSignalIntensity; // ̽²âÆ÷ÐźÅÇ¿¶È£¨Ö»¶Á£©£¬0~100 + BYTE byTimeOutMethod; //³¬Ê±·ÀÇø¼Æʱ·½Ê½£º0-´¥·¢¼Æʱ£¬1-»Ö¸´¼Æʱ + BYTE byRes3[8]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMIN_PARAM, *LPNET_DVR_ALARMIN_PARAM; + +typedef struct tagNET_DVR_ALARMIN_PARAM_V50 +{ + DWORD dwSize; + BYTE byName[NAME_LEN]; + WORD wDetectorType; // DETECTOR_TYPE + BYTE byType; //·ÀÇøÀàÐÍ£¬0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø £¬12-³¬Ê±·ÀÇø£¬13-½ô¼±·ÀÇø£¬14-ȼÆø·ÀÇø£¬0xff-ÎÞ + BYTE byUploadAlarmRecoveryReport; //ÊÇ·ñÉÏ´«·ÀÇø±¨¾¯»Ö¸´±¨¸æ£¬0-²»ÉÏ´«£¬1-ÉÏ´« + DWORD dwParam; // ·ÀÇø²ÎÊý ÑÓʱ·ÀÇøÑÓʱ¶à³¤Ê±¼ä, ¶¯»·±¨¾¯Ö÷»úºÍ×ÔÖúÐб¨¾¯Ö÷»úµÄÑÓʱʱ¼äͨ¹ýÕâ¸ö²ÎÊýÀ´ÉèÖà , ¾ßÌåÓÃÄÄÖÖÉèÖ÷½Ê½Í¨¹ýÄÜÁ¦¼¯ÖеÄbySupportAlarmInDelay×Ö¶ÎÀ´Çø±ð + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];/*²¼·Àʱ¼äʱ¼ä¶Î*/ + BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; // ±¨¾¯ÊäÈë¹ØÁª±¨¾¯Êä³ö + BYTE byAssociateSirenOut[8]; // ¾¯ºÅÊä³ö Êý×é0 ±íʾ¾¯ºÅ1 ֵΪ1±íʾÊä³ö 0 ±íʾ²»Êä³ö + BYTE bySensitivityParam;//·ÀÇøÁéÃô¶È²ÎÊý, 0-10ms¡¢1-250ms¡¢2-500ms¡¢3-750ms + BYTE byArrayBypass;//ÊÇ·ñ¼ÓÈëÅÔ·×é,0-²»Ö§³Ö×éÅÔ·,1-Ö§³Ö×éÅÔ· + BYTE byJointSubSystem; //·ÀÇøËùÊôµÄ×ÓϵͳºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byModuleStatus; //Ä£¿é״̬ 1-ÔÚÏß 2-ÀëÏß + WORD wModuleAddress; //Ä£¿éµØÖ·£¬À©Õ¹Ä£¿é´Ó0~255£¬0xFFFF±íʾÎÞЧ + BYTE byModuleChan; //Ä£¿éͨµÀºÅ£¬´Ó1¿ªÊ¼£¬×î´óÖµ¸ù¾ÝÄ£¿éÀàÐÍÀ´¾ö¶¨£¬0xFF±íʾÎÞЧ + BYTE byModuleType; //Ä£¿éÀàÐÍ£¬1-±¾µØ·ÀÇø£¬2-µ¥·ÀÇø£¬3-Ë«·ÀÇø£¬4-8·ÀÇø£¬5-8·ģÄâÁ¿·ÀÇø, 6-µ¥·ÀÇø´¥·¢Æ÷, 7-1Þ͵ؿØÖÆÆ÷¡¢8-2Þ͵ؿØÖÆÆ÷¡¢9-4Þ͵ؿØÖÆÆ÷¡¢10-8·ÀÇøÎÞÏß¡¢11-¼üÅÌ¡¢12-8·ÀÇøÓÐÏß¡¢13-À©Õ¹·ÀÇø + WORD wZoneIndex; //·ÀÇøºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + WORD wInDelay; //½øÈëÑÓʱ£¬0-255Ãë + WORD wOutDelay; //Í˳öÑÓʱ£¬0-255Ãë + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ 0-ÎÞЧ£¬1-³£¿ª£¬2-³£±Õ + BYTE byZoneResistor; //·ÀÇøµç×裬µ¥Î»Ç§Å· 0-ÎÞЧ 1--2.2 £¬2--3.3£¬3--4.7£¬4--5.6 £¬ 5--8.2 £¬0xff-×Ô¶¨Òå + float fZoneResistorManual;/*·ÀÇøÊÖ¶¯µç×裬1.0-10.0£¬¾«È·µ½Ð¡Êýµãºóһ룬µ¥Î»Ç§Å·£¬byZoneResistorΪ0xffʱÓÐЧ*/ + BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN_V50]; //̽²âÆ÷ÐòÁкţ¬Ö»¶Á + BYTE byZoneSignalType; //·ÀÇøÐźŴ«ÊäÀàÐÍ(Ö»¶Á)£¬0-ÓÐÏß·ÀÇø£¬1-ÎÞÏß·ÀÇø + BYTE byDisableDetectorTypeCfg; //̽²âÊÇÀàÐÍÊÇ·ñ²»¿ÉÅ䣬0-¿ÉÅ䣬1-²»¿ÉÅä + WORD wTimeOut; //³¬Ê±Ê±¼ä£¬Ãë + BYTE byAssociateLampOut[8];// ¾¯µÆÊä³ö Êý×é0 ±íʾ¾¯µÆ1 ֵΪ1±íʾÊä³ö 0 ±íʾ²»Êä³ö + BYTE byVoiceFileName[32]; //ÓïÒôÎļþÃû + BYTE byTimeOutRange; // ³¬Ê±Ê±¼ä·¶Î§£¬0:1~599s,1:1~65535s + BYTE byDetectorSignalIntensity; // ̽²âÆ÷ÐźÅÇ¿¶È£¨Ö»¶Á£©£¬0~100 + BYTE byTimeOutMethod; //³¬Ê±·ÀÇø¼Æʱ·½Ê½£º0-´¥·¢¼Æʱ£¬1-»Ö¸´¼Æʱ + BYTE byAssociateFlashLamp;// ÉÁ¹âµÆÊä³ö 0-ÎÞЧ£¬1-²»Êä³ö£¬2-Êä³ö + BYTE byStayAwayEnabled;// ¼°Ê±·ÀÇøÔÚ¼ÒÅÔ·ʹÄÜ 0-ÎÞЧ£¬1-²»Ê¹ÄÜ£¬2-ʹÄÜ + BYTE bySilentModeEnabled;// ¾²ÒôģʽʹÄÜ 0-ÎÞЧ£¬1-²»Ê¹ÄÜ£¬2-ʹÄÜ + BYTE byRelativeChannel[RELATIVE_CHANNEL_LEN];// ¹ØÁªµÄͨµÀºÅ£¬0±íʾÎÞЧ£¬Ò»¸öbyte×Ö½Ú±íʾһ¸öͨµÀºÅ + BYTE byDetectorVersion[VERSION_INFO_LEN]; //̽²âÆ÷°æ±¾£¬Ö»¶Á + BYTE byDetectorMAC[MACADDR_LEN]; //̽²âÆ÷MACµØÖ·£¬Ö»¶Á + BYTE byLinkageAlarmType; //¹ØÁª±¨¾¯ÀàÐÍ£º1-»ð¾¯£¬2-¼à¹Ü£¬3-Áª¶¯£¬4-ÆÁ±Î£¬5-¹ÊÕÏ + BYTE byRes3[465]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMIN_PARAM_V50, *LPNET_DVR_ALARMIN_PARAM_V50; + +#define MAX_MAX_ALARMIN_NUM 64 /* ÅúÁ¿»ñÈ¡×î´ó·ÀÇøÊý*/ +typedef struct tagNET_DVR_MULTI_ALARMIN_COND +{ + DWORD dwSize; + int iZoneNo[MAX_MAX_ALARMIN_NUM]; //·ÀÇøºÅ,´Ó0¿ªÊ¼£¬Ð¡ÓÚ0±íʾÎÞЧ + BYTE byRes[256]; +}NET_DVR_MULTI_ALARMIN_COND, *LPNET_DVR_MULTI_ALARMIN_COND; + +typedef struct tagNET_DVR_SINGLE_ALARMIN_PARAM +{ + DWORD dwSize; + WORD wZoneNo; //·ÀÇøºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byJointSubSystem; //·ÀÇøËùÊôµÄ×ÓϵͳºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byType; //·ÀÇøÀàÐÍ£¬0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø,12-³¬Ê±·ÀÇø,13-½ô¼±·ÀÇø14-ȼÆø·ÀÇø£¬0xff-ÎÞ + BYTE byName[NAME_LEN]; + WORD wDetectorType; // DETECTOR_TYPE + WORD wInDelay; //½øÈëÑÓʱ£¬0-255Ãë + WORD wOutDelay; //Í˳öÑÓʱ£¬0-255Ãë + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ 0-ÎÞЧ 1-³£¿ª 1-³£±Õ + BYTE byZoneSignalType; //·ÀÇøÐźŴ«ÊäÀàÐÍ£¬0-ÓÐÏß·ÀÇø£¬1-ÎÞÏß·ÀÇø + BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN]; //̽²âÆ÷ÐòÁкţ¬Ö»¶Á + BYTE byDisableDetectorTypeCfg; //̽²âÊÇÀàÐÍÊÇ·ñ²»¿ÉÅ䣬0-¿ÉÅ䣬1-²»¿ÉÅä + BYTE byTimeOutRange; // ³¬Ê±Ê±¼ä·¶Î§£¬0:1~599s,1:1~65535s + BYTE byDetectorSignalIntensity; // ̽²âÆ÷ÐźÅÇ¿¶È£¨Ö»¶Á£©£¬0~100 + WORD wTimeOut; //³¬Ê±Ê±¼ä£¬Ãë + BYTE byTimeOutMethod; //³¬Ê±·ÀÇø¼Æʱ·½Ê½£º0-´¥·¢¼Æʱ£¬1-»Ö¸´¼Æʱ + BYTE byAssociateFlashLamp;// ÉÁ¹âµÆÊä³ö 0-ÎÞЧ£¬1-²»Êä³ö£¬2-Êä³ö + BYTE byStayAwayEnabled;// ¼°Ê±·ÀÇøÔÚ¼ÒÅÔ·ʹÄÜ 0-ÎÞЧ£¬1-²»Ê¹ÄÜ£¬2-ʹÄÜ + BYTE bySilentModeEnabled;// ¾²ÒôģʽʹÄÜ 0-ÎÞЧ£¬1-²»Ê¹ÄÜ£¬2-ʹÄÜ + BYTE byRes2[110]; // ±£Áô×Ö½Ú +}NET_DVR_SINGLE_ALARMIN_PARAM, *LPNET_DVR_SINGLE_ALARMIN_PARAM; + +typedef struct tagNET_DVR_SINGLE_ALARMIN_PARAM_V50 +{ + DWORD dwSize; + WORD wZoneNo; //·ÀÇøºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byJointSubSystem; //·ÀÇøËùÊôµÄ×ÓϵͳºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byType; //·ÀÇøÀàÐÍ£¬0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø,12-³¬Ê±·ÀÇø,13-½ô¼±·ÀÇø14-ȼÆø·ÀÇø£¬0xff-ÎÞ + BYTE byName[NAME_LEN]; + WORD wDetectorType; // DETECTOR_TYPE + WORD wInDelay; //½øÈëÑÓʱ£¬0-255Ãë + WORD wOutDelay; //Í˳öÑÓʱ£¬0-255Ãë + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ 0-ÎÞЧ 1-³£¿ª 1-³£±Õ + BYTE byZoneSignalType; //·ÀÇøÐźŴ«ÊäÀàÐÍ£¬0-ÓÐÏß·ÀÇø£¬1-ÎÞÏß·ÀÇø + BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN]; //̽²âÆ÷ÐòÁкţ¬Ö»¶Á + BYTE byDisableDetectorTypeCfg; //̽²âÊÇÀàÐÍÊÇ·ñ²»¿ÉÅ䣬0-¿ÉÅ䣬1-²»¿ÉÅä + BYTE byTimeOutRange; // ³¬Ê±Ê±¼ä·¶Î§£¬0:1~599s,1:1~65535s + BYTE byDetectorSignalIntensity; // ̽²âÆ÷ÐźÅÇ¿¶È£¨Ö»¶Á£©£¬0~100 + WORD wTimeOut; //³¬Ê±Ê±¼ä£¬Ãë + BYTE byTimeOutMethod; //³¬Ê±·ÀÇø¼Æʱ·½Ê½£º0-´¥·¢¼Æʱ£¬1-»Ö¸´¼Æʱ + BYTE byAssociateFlashLamp;// ÉÁ¹âµÆÊä³ö 0-ÎÞЧ£¬1-²»Êä³ö£¬2-Êä³ö + BYTE byStayAwayEnabled;// ¼°Ê±·ÀÇøÔÚ¼ÒÅÔ·ʹÄÜ 0-ÎÞЧ£¬1-²»Ê¹ÄÜ£¬2-ʹÄÜ + BYTE bySilentModeEnabled;// ¾²ÒôģʽʹÄÜ 0-ÎÞЧ£¬1-²»Ê¹ÄÜ£¬2-ʹÄÜ + BYTE byRes3[2]; + BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; // ±¨¾¯ÊäÈë¹ØÁª±¨¾¯Êä³ö + BYTE byRes2[128]; // ±£Áô×Ö½Ú +}NET_DVR_SINGLE_ALARMIN_PARAM_V50, *LPNET_DVR_SINGLE_ALARMIN_PARAM_V50; + +typedef struct tagNET_DVR_ALARMIN_PARAM_LIST +{ + DWORD dwSize; + NET_DVR_SINGLE_ALARMIN_PARAM struSingleAlarmInParam[MAX_MAX_ALARMIN_NUM]; + BYTE byRes[128]; +}NET_DVR_ALARMIN_PARAM_LIST, *LPNET_DVR_ALARMIN_PARAM_LIST; + +typedef struct tagNET_DVR_ALARMIN_PARAM_LIST_V50 +{ + DWORD dwSize; + NET_DVR_SINGLE_ALARMIN_PARAM_V50 struSingleAlarmInParam[MAX_MAX_ALARMIN_NUM]; + BYTE byRes[128]; +}NET_DVR_ALARMIN_PARAM_LIST_V50, *LPNET_DVR_ALARMIN_PARAM_LIST_V50; + +typedef struct tagNET_DVR_ALARMOUT_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byName[NAME_LEN]; // Ãû³Æ + WORD wDelay; // Êä³öÑÓ³Ù µ¥Î»s, ·¶Î§£º0~3599s 0 ±íʾһֱÓÐÊä³ö + WORD wTriggerIndex; //´¥·¢Æ÷ºÅ£¬¸Ã²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byAssociateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM]; //±íʾ¾¯ºÅ¸úËæµÄ±¨¾¯ÊäÈëͨµÀ £¨¶à¸ö±¨¾¯ÊäÈëͬʱ´¥·¢Ò»¸ö¾¯ºÅÊä³ö£©Êý×éϱê0±íʾ±¨¾¯ÊäÈë1£¬ÒÀ´ÎÀàÍÆ 0-²»¸úËæ 1-¸úËæ + BYTE byModuleType; //Íâ½Ó´¥·¢Æ÷ÀàÐÍ£¬1-±¾µØ´¥·¢Æ÷£¬ 2-4·´¥·¢Æ÷£¬3-8·´¥·¢Æ÷ 4-µ¥·ÀÇø´¥·¢Æ÷£¬5-32·´¥·¢Æ÷£¬6-1Þ͵ؿØÖÆÆ÷¡¢7-2Þ͵ؿØÖÆÆ÷¡¢8-4Þ͵ؿØÖÆÆ÷,9-2·´¥·¢Æ÷£¬10-¼üÅÌ£¬11-À©Õ¹´¥·¢Æ÷ + BYTE byModuleStatus; //Íâ½Ó´¥·¢Æ÷״̬ 1-ÔÚÏß 2-ÀëÏß + WORD wModuleAddress; //Íâ½Ó´¥·¢Æ÷µØÖ·£¬À©Õ¹Ä£¿é´Ó0~255£¬0xFFFF±íʾÎÞЧ + BYTE byModuleChan; //Íâ½Ó´¥·¢Æ÷ͨµÀºÅ£¬´Ó1¿ªÊ¼£¬×î´óÖµ¸ù¾ÝÄ£¿éÀàÐÍÀ´¾ö¶¨£¬0xFF±íʾÎÞЧ + BYTE byWorkMode; //¹¤×÷ģʽ£¬1-Áª¶¯£¬2-Ë涯 + BYTE byAlarmOutMode; //Êä³öģʽ£¬1-·ÇÂö³åģʽ£¬2-Âö³åģʽ + BYTE byTimeOn; //¿ªÊ±¼ä 1~60s + BYTE byTimeOff; //¹Øʱ¼ä 1~60s + BYTE byDurationConstOutputEnable; //¼ÌµçÆ÷³£¿ªÊ¹ÄÜ + BYTE byRes2[50]; //±£Áô×Ö½Ú +}NET_DVR_ALARMOUT_PARAM, *LPNET_DVR_ALARMOUT_PARAM; + +typedef struct tagNET_DVR_ALARMIN_SETUP +{ + BYTE byAssiciateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM];//±¨¾¯ÊäÈëͨµÀ Êý×éϱê0¶ÔÓ¦±¨¾¯ÊäÈë¿Ú1£¬ÒÀ´ÎÀàÍÆ + BYTE byRes[100];//±£Áô×Ö½Ú +}NET_DVR_ALARMIN_SETUP, *LPNET_DVR_ALARMIN_SETUP; + +typedef struct tagNET_DVR_ALARMHOST_MAIN_STATUS +{ + DWORD dwSize; + BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM];//±¨¾¯ÊäÈë¿Ú²¼·À״̬£¬(×î´óÖ§³Ö512¸ö±¨¾¯ÊäÈë¿Ú²éѯ)£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ²¼·À״̬ + BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM];//±¨¾¯ÊäÈë¿Ú±¨¾¯×´Ì¬£¬(×î´óÖ§³Ö512¸ö±¨¾¯ÊäÈë¿Ú²éѯ)£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Úµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Úµ±Ç°Óб¨¾¯ + BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM];//±¨¾¯Êä³ö¿Ú״̬£¬(×î´óÖ§³Ö512¸ö±¨¾¯Êä³ö¿Ú²éѯ)£¬0-¶ÔÓ¦±¨¾¯Êä³ö¿ÚÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯Êä³ö¿ÚÓб¨¾¯ + BYTE byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM]; // ÅÔ·״̬ Êý×éϱê±íʾ0¶ÔÓ¦±¨¾¯ÊäÈë¿Ú1 0-±íʾ±¨¾¯ÊäÈë¿ÚûÓÐÅÔ· 1-±íʾ±¨¾¯ÊäÈë¿ÚÅÔ· + BYTE bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM]; //×Óϵͳ²¼·À״̬,0-¶ÔÓ¦×Óϵͳ´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦×Óϵͳ´¦ÓÚ²¼·À״̬ + BYTE byAlarmInFaultStatus[MAX_ALARMHOST_ALARMIN_NUM];//±¨¾¯ÊäÈë¿Ú¹ÊÕÏ״̬£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚÕý³£×´Ì¬£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ¹ÊÕÏ״̬ + BYTE byRes[56]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_MAIN_STATUS, *LPNET_DVR_ALARMHOST_MAIN_STATUS; + +typedef struct tagNET_DVR_ALARMHOST_MAIN_STATUS_V40 +{ + DWORD dwSize; + BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø²¼·À״̬£¬(×î´óÖ§³Ö512¸ö·ÀÇø²éѯ)£¬0-¶ÔÓ¦·ÀÇø´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦·ÀÇø´¦ÓÚ²¼·À״̬ + BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø±¨¾¯×´Ì¬£¬(×î´óÖ§³Ö512¸ö·ÀÇø²éѯ)£¬0-¶ÔÓ¦·ÀÇøµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦·ÀÇøµ±Ç°Óб¨¾¯ + BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; //´¥·¢Æ÷״̬£¬(×î´óÖ§³Ö512¸ö´¥·¢Æ÷²éѯ)£¬0-¶ÔÓ¦´¥·¢Æ÷ÎÞ±¨¾¯£¬1-¶ÔÓ¦´¥·¢Æ÷Óб¨¾¯ + BYTE byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM]; //ÅÔ·״̬ Êý×éϱê±íʾ0¶ÔÓ¦·ÀÇø1 0-±íʾ·ÀÇøûÓÐÅÔ· 1-±íʾ·ÀÇøÅÔ· + BYTE bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM/*32*/]; //×Óϵͳ²¼·À״̬,0-¶ÔÓ¦×Óϵͳ´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦×Óϵͳ´¦ÓÚ²¼·À״̬ + BYTE byAlarmInFaultStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø¹ÊÕÏ״̬£¬0-¶ÔÓ¦·ÀÇø´¦ÓÚÕý³£×´Ì¬£¬1-¶ÔÓ¦·ÀÇø´¦ÓÚ¹ÊÕÏ״̬ + BYTE byAlarmInMemoryStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø±¨¾¯¼ÇÒä״̬£¬ 0-¶ÔÓ¦·ÀÇøµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦·ÀÇøµ±Ç°Óб¨¾¯ + BYTE byAlarmInTamperStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø·À²ð״̬£¬0-¶ÔÓ¦·ÀÇøÎÞ±¨¾¯£¬1-¶ÔÓ¦·ÀÇøÓб¨¾¯ + BYTE byEnableSubSystem[MAX_ALARMHOST_SUBSYSTEM/*32*/]; //×ÓϵͳÆôÓÃ״̬£¬0-ÎÞЧ£¬1-¶ÔÓ¦×ÓϵͳδÆôÓã¬2-¶ÔÓ¦×ÓϵͳÆôÓà + BYTE bySubSystemGuardType[MAX_ALARMHOST_SUBSYSTEM]; //×Óϵͳ²¼·Å״̬£¬0-ÎÞЧ£¬1-Íâ³ö²¼·À£¬2-¼´Ê±²¼·À£¬3-ÔÚ¼Ò²¼·À + BYTE byRes[448]; //±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_MAIN_STATUS_V40, *LPNET_DVR_ALARMHOST_MAIN_STATUS_V40; + +typedef struct tagNET_DVR_ALARMHOST_MAIN_STATUS_V51 +{ + DWORD dwSize; + BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø²¼·À״̬£¬(×î´óÖ§³Ö512¸ö·ÀÇø²éѯ)£¬0xff-ÎÞЧ£¬0-¶ÔÓ¦·ÀÇø´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦·ÀÇø´¦ÓÚ²¼·À״̬£¬2-¶ÔÓ¦·ÀÇø´¦ÓÚ²¼·ÀÖÐ + BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø±¨¾¯×´Ì¬£¨´¥·¢×´Ì¬£©£¬(×î´óÖ§³Ö512¸ö·ÀÇø²éѯ)£¬0xff-ÎÞЧ£¬0-¶ÔÓ¦·ÀÇøµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦·ÀÇøµ±Ç°Óб¨¾¯ + BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; //´¥·¢Æ÷״̬£¬(×î´óÖ§³Ö512¸ö´¥·¢Æ÷²éѯ)£¬0xff-ÎÞЧ£¬0-¶ÔÓ¦´¥·¢Æ÷ÎÞ±¨¾¯£¬1-¶ÔÓ¦´¥·¢Æ÷Óб¨¾¯£¬2-δ¹ØÁª£¬3-ÀëÏߣ¬4-ÐÄÌøÒì³£ + BYTE byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇøÅÔ·״̬£¬Êý×éϱê±íʾ0¶ÔÓ¦·ÀÇø1£¬0xff-ÎÞЧ£¬0-±íʾ·ÀÇøûÓÐÅÔ· 1-±íʾ·ÀÇøÅÔ· + BYTE bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM/*32*/]; //×Óϵͳ²¼·À״̬£¬0xff-ÎÞЧ£¬0-¶ÔÓ¦×Óϵͳ´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦×Óϵͳ´¦ÓÚ²¼·À״̬£¬2-¶ÔÓ¦×Óϵͳ´¦ÓÚ²¼·ÀÖÐ + BYTE byAlarmInFaultStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø¹ÊÕÏ״̬£¬0xff-ÎÞЧ£¬0-¶ÔÓ¦·ÀÇø´¦ÓÚÕý³£×´Ì¬£¬1-¶ÔÓ¦·ÀÇø´¦ÓÚ¹ÊÕÏ״̬ + BYTE byAlarmInMemoryStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø±¨¾¯¼ÇÒä״̬£¨±¨¾¯×´Ì¬£©£¬ 0xff-ÎÞЧ£¬0-¶ÔÓ¦·ÀÇøµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦·ÀÇøµ±Ç°Óб¨¾¯ + BYTE byAlarmInTamperStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø·À²ð״̬£¬0xff-ÎÞЧ£¬0-¶ÔÓ¦·ÀÇøÎÞ±¨¾¯£¬1-¶ÔÓ¦·ÀÇøÓб¨¾¯ + BYTE byEnableSubSystem[MAX_ALARMHOST_SUBSYSTEM/*32*/]; //×ÓϵͳÆôÓÃ״̬£¬0-ÎÞЧ£¬1-¶ÔÓ¦×ÓϵͳδÆôÓã¬2-¶ÔÓ¦×ÓϵͳÆôÓà + BYTE bySubSystemGuardType[MAX_ALARMHOST_SUBSYSTEM]; //×Óϵͳ²¼·ÀÀàÐÍ£¬0-ÎÞЧ£¬1-Íâ³ö²¼·À£¬2-¼´Ê±²¼·À£¬3-ÔÚ¼Ò²¼·À + BYTE bySubSystemAlarm[MAX_ALARMHOST_SUBSYSTEM]; //×Óϵͳ±¨¾¯×´Ì¬£¬0-ÎÞЧ£¬1-Õý³££¬2-±¨¾¯ + BYTE byAlarmOutCharge[MAX_ALARMHOST_ALARMOUT_NUM]; //´¥·¢Æ÷µçÁ¿×´Ì¬£¬(×î´óÖ§³Ö512¸ö´¥·¢Æ÷²éѯ)£¬0-ÎÞЧ£¬1-Õý³££¬2-µçÁ¿µÍ + BYTE byAlarmOutTamperStatus[MAX_ALARMHOST_ALARMOUT_NUM]; //´¥·¢Æ÷·À²ð״̬£¬(×î´óÖ§³Ö512¸ö´¥·¢Æ÷²éѯ)£¬0-ÎÞЧ£¬1-·À²ð£¬2-ÎÞ·À²ð + BYTE byAlarmInShieldedStatus[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇøÆÁ±Î״̬£¬0-ÎÞЧ£¬1-ÆÁ±Î£¬2-·ÇÆÁ±Î + BYTE byAlarmOutLinkage[MAX_ALARMHOST_ALARMOUT_NUM]; //´¥·¢Æ÷Áª¶¯Ê¼þÀàÐÍ£¬(×î´óÖ§³Ö512¸ö´¥·¢Æ÷²éѯ)£¬0-ÎÞЧ£¬1-±¨¾¯£¬2-²¼·À£¬3-³··À£¬4-ÊÖ¶¯¿ØÖÆ + BYTE byRes[512]; //±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_MAIN_STATUS_V51, *LPNET_DVR_ALARMHOST_MAIN_STATUS_V51; + +typedef struct tagNET_DVR_ALARMHOST_OTHER_STATUS +{ + DWORD dwSize; + BYTE bySirenStatus[ALARMHOST_MAX_SIREN_NUM]; // ¾¯ºÅÊä³ö״̬ 0-¾¯ºÅ´¦ÓÚÎÞ±¨¾¯×´Ì¬£¬1-¾¯ºÅ´¦ÓÚÓб¨¾¯×´Ì¬ + BYTE byRes[92]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_OTHER_STATUS, *LPNET_DVR_ALARMHOST_OTHER_STATUS; + +typedef struct tagNET_DVR_ALARMHOST_OTHER_STATUS_V50 +{ + DWORD dwSize; + //¶ÔÓÚDS-PEAϵÁÐÒ»¼üʽ½ô¼±±¨¾¯²úÆ·£¬Êý×éϱê0¶ÔÓ¦¾¯µÆ״̬£¬Êý×éϱê1¶ÔÓ¦µçËø״̬,Êý×éϱê2¿ªÊ¼¶ÔÓ¦¾¯ºÅÊä³ö״̬ + BYTE bySirenStatus[ALARMHOST_MAX_SIREN_NUM]; //¾¯ºÅÊä³ö״̬£¬0xff-ÎÞЧ£¬0-¾¯ºÅ´¦ÓÚÎÞ±¨¾¯×´Ì¬£¬1-¾¯ºÅ´¦ÓÚÓб¨¾¯×´Ì¬£¬2-δ¹ØÁª£¬3-ÀëÏߣ¬4-ÐÄÌøÒì³£ + BYTE byDetetorPower[MAX_DETECTOR_NUM]; //̽²âÆ÷µçÁ¿×´Ì¬£¬0xff-ÎÞЧ£¬µçÁ¿ÖµÎª0-100£¬Ä¬ÈϵçÁ¿Ð¡ÓÚ20ΪǷѹ״̬ + BYTE byDetetorConnection[MAX_DETECTOR_NUM]; //̽²âÆ÷Á¬½Ó״̬£¬0xff-ÎÞЧ£¬0-±íʾδע²á£¬1-±íʾ²»ÔÚÏߣ¬ 2-±íʾÔÚÏߣ¬3-ÐÄÌøÒì³£ + BYTE bySirenPower[ALARMHOST_MAX_SIREN_NUM]; //¾¯ºÅµçÁ¿×´Ì¬£¬0-ÎÞЧ£¬1-Õý³££¬2-Ƿѹ + BYTE bySirenTamperStatus[ALARMHOST_MAX_SIREN_NUM]; //¾¯ºÅ·À²ð״̬£¬0-ÎÞЧ£¬1-·À²ð£¬2-ÎÞ·À²ð + BYTE byPowerStausEnabled[MAX_DETECTOR_NUM / 8]; //̽²âÆ÷µçÁ¿×´Ì¬ÊÇ·ñÓÐЧ£¬°´Î»±íʾ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE byDetetorPowerStatus[MAX_DETECTOR_NUM / 8]; //̽²âÆ÷µçÁ¿×´Ì¬£¬°´Î»±íʾ£¬0-Õý³££¬1-µçÁ¿µÍ + BYTE byDetetorPowerType; //̽²âÆ÷µçÁ¿µÄ±íʾÀàÐÍ£¬0-°´ÕÕµçÁ¿Öµ±íʾ£¬Ê¹ÓÃbyDetetorPower ×ֶΣ¬1-°´ÕÕµçÁ¿×´Ì¬±íʾ£¬Ê¹ÓÃbyPowerStausEnabledºÍbyDetetorPowerStatus×ֶΠ+ BYTE byRes[975]; //±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_OTHER_STATUS_V50, *LPNET_DVR_ALARMHOST_OTHER_STATUS_V50; + +typedef struct tagNET_DVR_ALARMHOST_OTHER_STATUS_V51 +{ + DWORD dwSize; + //¶ÔÓÚDS-PEAϵÁÐÒ»¼üʽ½ô¼±±¨¾¯²úÆ·£¬Êý×éϱê0¶ÔÓ¦¾¯µÆ״̬£¬Êý×éϱê1¶ÔÓ¦µçËø״̬,Êý×éϱê2¿ªÊ¼¶ÔÓ¦¾¯ºÅÊä³ö״̬ + BYTE bySirenStatus[ALARMHOST_MAX_SIREN_NUM]; //¾¯ºÅÊä³ö״̬£¬0xff-ÎÞЧ£¬0-¾¯ºÅ´¦ÓÚÎÞ±¨¾¯×´Ì¬£¬1-¾¯ºÅ´¦ÓÚÓб¨¾¯×´Ì¬£¬2-δ¹ØÁª£¬3-ÀëÏß + BYTE byDetetorPower[MAX_DETECTOR_NUM_V51]; //̽²âÆ÷µçÁ¿£¬0xff-ÎÞЧ£¬µçÁ¿ÖµÎª0-100£¬Ä¬ÈϵçÁ¿Ð¡ÓÚ20ΪǷѹ״̬£¬byDetetorPowerTypeΪ0ʱÓÐЧ + BYTE byDetetorConnection[MAX_DETECTOR_NUM_V51]; //̽²âÆ÷Á¬½Ó״̬£¬0xff-ÎÞЧ£¬0-±íʾδע²á£¬1-±íʾ²»ÔÚÏߣ¬ 2-±íʾÔÚÏß + BYTE bySirenPower[ALARMHOST_MAX_SIREN_NUM]; //¾¯ºÅµçÁ¿×´Ì¬£¬0-ÎÞЧ£¬1-Õý³££¬2-Ƿѹ + BYTE bySirenTamperStatus[ALARMHOST_MAX_SIREN_NUM]; //¾¯ºÅ·À²ð״̬£¬0-ÎÞЧ£¬1-·À²ð£¬2-ÎÞ·À²ð + BYTE byPowerStausEnabled[MAX_DETECTOR_NUM_V51 / 8]; //̽²âÆ÷µçÁ¿×´Ì¬ÊÇ·ñÓÐЧ£¬°´Î»±íʾ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE byDetetorPowerStatus[MAX_DETECTOR_NUM_V51 / 8]; //̽²âÆ÷µçÁ¿×´Ì¬£¬°´Î»±íʾ£¬0-Õý³££¬1-µçÁ¿µÍ + BYTE byDetetorPowerType; //̽²âÆ÷µçÁ¿µÄ±íʾÀàÐÍ£¬0-°´ÕÕµçÁ¿Öµ±íʾ£¬Ê¹ÓÃbyDetetorPower ×ֶΣ¬1-°´ÕÕµçÁ¿×´Ì¬±íʾ£¬Ê¹ÓÃbyPowerStausEnabledºÍbyDetetorPowerStatus×ֶΠ+ BYTE byRes2[3]; + BYTE byRepeaterStatus[MAX_REPEATER_NUM]; //ÖмÌÆ÷״̬£¬0-ÎÞЧ£¬1-ÀëÏߣ¬2-ÔÚÏߣ¬3-δ¹ØÁª + BYTE byRepeaterTamperStatus[MAX_REPEATER_NUM / 8]; //ÖмÌÆ÷·À²ð״̬£¬°´Î»±íʾ£¬0-¶ÔÓ¦ÖмÌÆ÷ÎÞ±¨¾¯£¬1-¶ÔÓ¦ÖмÌÆ÷Óб¨¾¯ + BYTE byAlarmOutTamperStatus[MAX_ALARMHOST_ALARMOUT_NUM / 8]; //±¨¾¯Êä³ö£¨¼ÌµçÆ÷£©·À²ð״̬£¬°´Î»±íʾ£¬0-¶ÔÓ¦±¨¾¯Êä³öÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯Êä³öÓб¨¾¯ + BYTE byOutputModuleTamperStatus[MAX_OUTPUT_MODULE_NUM / 8]; //Êä³öÄ£¿é·À²ð״̬£¬°´Î»±íʾ£¬0-¶ÔÓ¦Êä³öÄ£¿éÎÞ±¨¾¯£¬1-¶ÔÓ¦Êä³öÄ£¿éÓб¨¾¯ + BYTE byElectricLockStatus[MAX_ELECTRIC_LOCK_NUM]; //µçËø״̬ 0-¹Ø±Õ£¬1 ¨C´ò¿ª£¬ÎªÈ·±£¼æÈÝÐÔ£¬µÚÒ»¸öµçËøµÄ״̬ÔÚbySirenStatusµÚ0λҲÐèÒªÌîд + BYTE byRes[274]; //±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_OTHER_STATUS_V51, *LPNET_DVR_ALARMHOST_OTHER_STATUS_V51; + + +//ʹÄÜ״̬ÅäÖà +typedef struct tagNET_DVR_ALARMHOST_ENABLECFG +{ + DWORD dwSize; + BYTE byAudioOutEnable[ALARMHOST_MAX_AUDIOOUT_NUM];//ÓïÒôÊä³öʹÄÜ£¬0-½ûÄÜ£¬1-ʹÄÜ + BYTE byElectroLockEnable[ALARMHOST_MAX_ELECTROLOCK_NUM];//µçËøʹÄÜ£¬0-½ûÄÜ£¬1-ʹÄÜ + BYTE byMobileGateEnable[ALARMHOST_MAX_MOBILEGATE_NUM];//Òƶ¯ÃÅʹÄÜ£¬0-½ûÄÜ£¬1-ʹÄÜ + BYTE bySirenEnable[ALARMHOST_MAX_SIREN_NUM];//¾¯ºÅʹÄÜ£¬ 0-½ûÄÜ£¬1-ʹÄÜ + BYTE bySerialPurpose;//´®¿ÚÓÃ;£¬0-ÓÃÓÚ¼¶Áª±¨¾¯Ö÷»ú£¬1-ÓÃÓÚPTZ¿ØÖÆ + BYTE byRes[63]; +}NET_DVR_ALARMHOST_ENABLECFG, *LPNET_DVR_ALARMHOST_ENABLECFG; + +typedef struct tagNET_DVR_ALARMHOST_ABILITY +{ + DWORD dwSize; // ½á¹¹Ìå´óС + WORD wTotalAlarmInNum; // ±¨¾¯ÊäÈë¿Ú×ÜÊý(·ÀÇø),°üÀ¨¼¶Áª + WORD wLocalAlarmInNum; // ±¾µØ±¨¾¯ÊäÈë¿Ú + WORD wExpandAlarmInNum; // ¿ÉÀ©Õ¹µÄ±¨¾¯ÊäÈë¿Ú + WORD wTotalAlarmOutNum; // ±¨¾¯Êä³ö¿Ú×ÜÊý £¨É豸֧³ÖµÄ×ÜÊý£© + WORD wLocalAlarmOutNum; // ±¾µØ±¨¾¯Êä³ö¿Ú¸öÊý + WORD wExpandAlarmOutNum; // ¿ÉÀ©Õ¹µÄ±¨¾¯Êä³ö¿Ú + WORD wTotalRs485Num; // ±¨¾¯Êä³ö¿Ú×ÜÊý £¨É豸֧³ÖµÄ×ÜÊý£© + WORD wLocalRs485Num; // ±¾µØ485¿ÚÊý + WORD wExpandRs485Num; // ¿ÉÀ©Õ¹µÄ485¿ÚÊý + WORD wFullDuplexRs485Num; // È«Ë«¹¤µÄ485¿ÚÊý + WORD wTotalSensorNum; // Ä£ÄâÁ¿×î´ó¸öÊý (É豸֧³ÖµÄ×ÜÊý) + WORD wLocalSensorNum; // ±¾µØÄ£ÄâÁ¿¸öÊý + WORD wExpandSensorNum; // ¿ÉÀ©Õ¹µÄÄ£ÄâÁ¿¸öÊý + WORD wAudioOutNum; //ÓïÒôÊä³ö¸öÊý + WORD wGatewayNum; //ÃŽû¸öÊý + WORD wElectroLockNum; //µçËø¸öÊý + WORD wSirenNum; // Ö÷»ú¾¯ºÅÊýÄ¿ + WORD wSubSystemNum; // ¿É»®·Ö×ÓϵͳÊýÄ¿ + WORD wNetUserNum; // ÍøÂçÓû§Êý + WORD wKeyboardNum; // ¼üÅÌÊý + WORD wOperatorUserNum; // ²Ù×÷Óû§Êý + BYTE bySupportDetector;//ÊÇ·ñÖ§³Ö³£¿ª¡¢³£±Õ̽²âÆ÷£¬1-Ö§³Ö£¬0-²»Ö§³Ö + BYTE bySupportSensitivity;//ÊÇ·ñÖ§³Ö·ÀÇøÁéÃô¶È£¬1-Ö§³Ö£¬0-²»Ö§³Ö + BYTE bySupportArrayBypass;//ÊÇ·ñÖ§³Ö×éÅÔ·£¬1-Ö§³Ö£¬0-²»Ö§³Ö + BYTE bySupportAlarmInDelay;//ÊÇ·ñÖ§³Ö·ÀÇøÑÓ³Ù,1-Ö§³Ö£¬0-²»Ö§³Ö + //Èç¹ûbySupportAlarmInDelayΪ1ʱ£¬±íʾ¿Í»§¶ËÓ¦¸ÃʹÓÃNET_DVR_ALARMIN_PARAM ÖеÄdwParamÀ´ÉèÖÃÑÓʱʱ¼ä£¬¶¯»·±¨¾¯Ö÷»úºÍ×ÔÖúÐб¨¾¯Ö÷»úʹÓÃÕâÖÖÅäÖÃÑÓʱ·½Ê½; + //Èç¹ûbySupportAlarmInDelayΪ0ʱ£¬±íʾͨ¹ýNET_DVR_ALARMSUBSYSTEMPARAM ÖеÄwEnterDelay ¡¢wExitDelay À´ÉèÖà + BYTE bySupportAlarmInType[16];//Ö§³ÖµÄ·ÀÇøÀàÐÍ,Êý×é0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø,10-ÃŽû½ô¼±¿ªÃÅ·ÀÇø£¬11-ÃŽû½ô¼±¹ØÃÅ·ÀÇø15-ÎÞ + BYTE byTelNum; //Ö§³Öµç»°¸öÊý + BYTE byCenterGroupNum; //ÖÐÐÄ×é¸öÊý + BYTE byGPRSNum; //GPRSÖÐÐÄÊý£¬×î¶à4¸ö + BYTE byNetNum; //ÍøÂçÖÐÐÄÊý£¬×î¶à4¸ö + BYTE byAudioNum; //ÒôƵ¸öÊý + BYTE by3GNum; //3GÄ£¿é¸öÊý + BYTE byAnalogVideoChanNum; //Ä£ÄâÊÓƵͨµÀ¸öÊý + BYTE byDigitalVideoChanNum; //Êý×ÖÊÓƵͨµÀ¸öÊý + BYTE bySubSystemArmType; //×Óϵͳ²¼·ÀÀàÐÍ£¬0-±íʾ²»Ö§³Ö£¬1-±íʾ֧³Ö¡£bit0-ÆÕͨ²¼·À£¨×¢£ºÍøÂçСÖ÷»úÖ»Ö§³ÖÆÕͨ²¼·À£¬ÔÚÄÜÁ¦¼¯ÖмÓÕâ¸ö×ֶεÄʱºòÍøÂçСÖ÷»úÒѾ­·¢²¼£¬ËùÒÔÍøÂçСÖ÷»úÖиÃ×Ö¶ÎΪ0£¬ËùÒÔÓÃ0±íʾ֧³Ö£¬1±íʾ²»Ö§³Ö¡£¶ÔÍâ½Ó¿ÚÖÐSDKÄÚ²¿»á×ö¼æÈÝ£©£¬bit1-¼´Ê±²¼·À£¬bit2-ÁôÊز¼·À¡£ + BYTE byPublicSubSystemNum; //¹«¹²×Óϵͳ¸öÊý + DWORD dwSupport1; //°´Î»±íʾ£¬½á¹û·Ç0±íʾ֧³Ö£¬0±íʾ²»Ö§³Ö + // bit0: ÊÇ·ñÖ§³Ö×ÓϵͳÄÚÅäÖþ¯ºÅÊä³öʱ¼ä£¬Èç¹ûÖ§³ÖÔò¾¯ºÅÊä³öʱ¼äÔÚÿ¸ö×ÓϵͳÄÚÅäÖã¬Èç¹û²»Ö§³Ö£¬¾¯ºÅʱ¼äÔÚ¾¯ºÅ²ÎÊýÅäÖÃÀïÃæÉèÖà + // bit1: ÊÇ·ñÖ§³Öʼþ´¥·¢±¨¾¯Êä³ö¿ªÆô + // bit2: ÊÇ·ñÖ§³Öʼþ´¥·¢±¨¾¯Êä³ö¹Ø±Õ + // bit3: ÊÇ·ñÖ§³Ö×ÓϵͳʹÄÜ + // bit4; ÊÇ·ñÖ§³Ö·ÀÇø²¼·À + // bit5; ÊÇ·ñÖ§³Ö×Óϵͳ×Ô¶¯²¼³··À + // bit6: ÊÇ·ñÖ§³Ö¾ßÌå¹ÊÕϹØÁªÉùÒôÊä³ö + // bit7: ÊÇ·ñÖ§³Ö¹ÊÕÏ״̬²éѯ + // bit8: ÊÇ·ñÖ§³Ö×ÓϵͳÀ©Õ¹ÅäÖà + // bit9: ÊÇ·ñÖ§³ÖÔ¿³×·ÀÇø²Ù×÷×Óϵͳ + // bit10: ÊÇ·ñÖ§³Ö"¼üÅÌÌáʾ³É¹¦·¢Ëͱ¨¸æ"ÅäÖà + // bit11: ÊÇ·ñÖ§³Öµ¼Èëµ¼³ö²ÎÊýÅäÖà + // bit12: ÊÇ·ñÖ§³ÖLEDÆÁÄ»²ÎÊýÅäÖà + // bit13: ÊÇ·ñÖ§³Ö¹ÊÕϹØÁª±¾µØ¹ÊÕϵÆÊä³ö + DWORD dwSubSystemEvent; //×Óϵͳʼþ£¬°´Î»±íʾ£¬0±íʾ²»Ö§³Ö£¬·Ç0±íʾ֧³Ö,bit0-½øÈëÑÓʱ£¬bit1-Í˳öÑÓʱ£¬bit2-²¼·À£¬bit3-³··À£¬bit4-±¨¾¯£¬bit5-Ïû³ý±¨¾¯¼ÇÒä + DWORD dwOverallEvent; //È«¾Öʼþ£¬°´Î»±íʾ£¬0±íʾ²»Ö§³Ö£¬·Ç0±íʾ֧³Ö£¬bit0-½»Á÷µçµôµç£¬bit1-µç³ØµçѹµÍ£¬bit2-µç»°ÏßµôÏߣ¬bit3-ÓÐÏßÍøÂçÒì³££¬bit4-ÎÞÏßÍøÂçÒì³££¬bit5-Ó²Å̹ÊÕÏ,bit6-3G/4GÐźÅÒì³£, bit7-£¨Ä£¿éÁ´½Ó£©µÚÈý·½Ö÷»úµôÏß,bit8-WIFIͨÐŹÊÕÏ£¬bit9-RFÐźŸÉÈŹÊÕÏ + DWORD dwFaultType; //É豸֧³ÖµÄ¹ÊÕÏÀàÐÍ£¬bit0-½»Á÷µç¶Ïµç£¬bit1-Ðîµç³ØǷѹ£¬bit2-Ö÷»ú·À²ð¿ª£¬bit3-µç»°ÏßµôÏߣ¬bit4-Ö÷¼üÅ̵ôÏߣ¬bit5-ÍøÂç¹ÊÕÏ£¬bit6-ÎÞÏßÒì³££¬bit7-À©Õ¹×ÜÏßÒì³££¬bit8-Ó²ÅÌÒì³£ + BYTE byPublicSubsystemAssociateSubsystemNum; //¹«¹²×Óϵͳ¿É¹ØÁªµÄ×Óϵͳ¸öÊý + BYTE byOverallKeyboard; //È«¾Ö¼üÅ̸öÊý + WORD wSafetyCabinSupport; //·À»¤²Õ¿ØÖÆÆ÷ÄÜÁ¦£¬°´Î»±íʾ£¬½á¹û·Ç0±íʾ֧³Ö£¬0±íʾ²»Ö§³Ö + //bit0: ÊÇ·ñÖ§³Ö·À»¤²Õ¿ØÖÆÆ÷¹¤×÷ģʽÅäÖà + //bit1: ÊÇ·ñÖ§³ÖÈËÐźŴ«¸ÐÆ÷ÀàÐÍÅäÖà + //bit2: ÊÇ·ñÖ§³ÖÄ»Á±´«¸ÐÆ÷²ÎÊýÅäÖã¨Ì½²âÑÓ³Ùʱ¼ä¡¢ÈË״̬±ä»¯ÏìӦʱ¼ä£© + //bit3: ÊÇ·ñÖ§³ÖºìÍâ¶ÔÉä´«¸ÐÆ÷²ÎÊýÅäÖã¨Â˲¨£© + //bit4: ÊÇ·ñÖ§³Ö·À»¤²ÕʹÓó¬Ê±Ê±¼äÅäÖà + BYTE by485SlotNum; //485ÐéÄâ²ÛλºÅ + BYTE bySubSystemAttributeAbility; // ÖµºãΪ1£¬½ûÖ¹1ºÅ×Óϵͳ¹Ø±ÕʹÄÜ + WORD wKeyboardAddrNum; // ¼üÅ̵ØÖ·Êý + BYTE byAlarmLampNum; //¾¯µÆÊýÄ¿ + BYTE byRes[117]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_ABILITY, *LPNET_DVR_ALARMHOST_ABILITY; + +#define MAX_485CHAN 256 //485ͨµÀºÅ +#define MAX_485SLOT 256 //485²ÛλºÅ +typedef struct tagNET_DVR_485_SLOT_LIST_INFO +{ + DWORD dwSize; + BYTE byAll; //0-²»ÊÇÈ«²¿»ñÈ¡£¬1-È«²¿»ñÈ¡ + BYTE byres[3]; + BYTE byIndex[MAX_485SLOT]; //485²ÛλºÅ + BYTE byRes[64]; //±£Áô +}NET_DVR_485_SLOT_LIST_INFO,* LPNET_DVR_485_SLOT_LIST_INFO; + +typedef struct tagNET_DVR_485LIST_INFO +{ + DWORD dwSize; + BYTE byAll; //0-²»ÊÇÈ«²¿»ñÈ¡£¬1-È«²¿»ñÈ¡ + BYTE byres[3]; + BYTE byIndex[MAX_485CHAN]; //485ͨµÀºÅ ϱê±íʾͨµÀºÅ£¬Öµ0-±íʾ²»Ê¹Óã¬1±íʾʹÓà + BYTE byRes[64]; //±£Áô +}NET_DVR_485LIST_INFO,*LPNET_DVR_485LIST_INFO; + +typedef struct tagNET_DVR_ALARM_RS485CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE sDeviceName[NAME_LEN]; // Ç°¶ËÉ豸Ãû³Æ + WORD wDeviceType; // Ç°¶ËÉ豸ÀàÐÍ,ͨ¹ýNET_DVR_GetDeviceTypeList»ñÈ¡ + WORD wDeviceProtocol; // Ç°¶ËÉ豸ЭÒé ͨ¹ý»ñȡЭÒéÁбí»ñÈ¡ + DWORD dwBaudRate; //²¨ÌØÂÊ(bps)£¬0-50£¬1-75£¬2-110£¬3-150£¬4-300£¬5-600£¬6-1200£¬7-2400£¬8-4800£¬9-9600£¬10-19200£¬11-38400£¬12-57600£¬13-76800£¬14-115.2k + BYTE byDataBit; // Êý¾ÝÓм¸Î»£º0-5룬1-6룬2-7룬3-8λ + BYTE byStopBit; // ֹͣλ£º0-1룬1-2λ + BYTE byParity; //ÊÇ·ñУÑ飺0-ÎÞУÑ飬1-ÆæУÑ飬2-żУÑé + BYTE byFlowcontrol; // ÊÇ·ñÁ÷¿Ø£º0-ÎÞ£¬1-ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + BYTE byDuplex; // 0 - °ëË«¹¤1- È«Ë«¹¤ Ö»ÓÐͨµÀ1¿ÉÒÔÊÇÈ«Ë«¹¤ÆäËû¶¼Ö»ÄÜÊÇ°ëË«¹¤ + BYTE byWorkMode; // ¹¤×÷ģʽ 0-¿ØÖÆ̨ 1-͸Ã÷ͨµÀ,2-ÌÝ¿Ø£¬3-¶Á¿¨Æ÷,4-ÃŽû°²È«Ä£¿é,0xfe-×Ô¶¨Ò壬0xff-½ûÓà + BYTE byChannel; //485ͨµÀºÅ + BYTE bySerialType; //´®¿ÚÀàÐÍ: 0--485, 1--232 + BYTE byMode; //ģʽ 0-Á¬½Ó¶Á¿¨Æ÷ 1-Á¬½Ó¿Í»§¶Ë 2-Á¬½ÓÀ©Õ¹Ä£¿é 3-Á¬½ÓÃŽûÖ÷»ú 4-Á¬½ÓÌÝ¿ØÖ÷»ú 0xff-½ûÓà + BYTE byOutputDataType; //0-ÎÞЧ£¬1-Êä³ö¿¨ºÅ£¬2-Êä³ö¹¤ºÅ + BYTE byAddress; //´®¿ÚµØÖ· + BYTE byStairsOutputDataType; //0-ÎÞЧ£¬1-Êä³öÂ¥²ãºÅ£¬2-Êä³ö¿¨ºÅ£¬µ±byModeΪÌÝ¿ØÖ÷»úʱÓÐЧ + BYTE byRes[32]; // ±£Áô×Ö½Ú +}NET_DVR_ALARM_RS485CFG, *LPNET_DVR_ALARM_RS485CFG; + +#define MAX_DEVICE_PROTO_NUM 256 +#define MAX_DEVICE_TYPE_NUM 256 + +// 485Ç°¶ËÉ豸֧³ÖЭÒéÁбí +typedef struct tagNET_DVR_DEVICE_PROTO_LIST +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwProtoNum; // ЭÒé¸öÊý + NET_DVR_PROTO_TYPE struProtoType[MAX_DEVICE_PROTO_NUM]; // ЭÒéÀàÐÍ + BYTE byRes[12]; // ±£Áô×Ö½Ú +}NET_DVR_DEVICE_PROTO_LIST, *LPNET_DVR_DEVICE_PROTO_LIST; + +typedef struct tagNET_DVR_DEVICE_TYPE +{ + DWORD dwType; + BYTE byDescribe[DESC_LEN]; +}NET_DVR_DEVICE_TYPE, *LPNET_DVR_DEVICE_TYPE; + +typedef struct tagNET_DVR_DEVICE_TYPE_LIST +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwTypeNum; // ÀàÐ͸öÊý + NET_DVR_DEVICE_TYPE struDeviceType[MAX_DEVICE_TYPE_NUM]; + BYTE byRes[12]; +}NET_DVR_DEVICE_TYPE_LIST, *LPNET_DVR_DEVICE_TYPE_LIST; + +#define MAX_ALARMHOST_VIDEO_CHAN 64 +typedef struct tagNET_DVR_ALARM_DEVICE_USER +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE sUserName[NAME_LEN]; // Óû§Ãû + BYTE sPassword[PASSWD_LEN]; // ÃÜÂë + NET_DVR_IPADDR struUserIP; /* Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) */ + BYTE byMACAddr[MACADDR_LEN]; /* ÎïÀíµØÖ· */ + BYTE byUserType; // 0-ÆÕͨÓû§£¨²Ù×÷Ô±£© 1-¹ÜÀíÔ±Óû§ 2-°²×°Ô±Óû§ 3-ÖÆÔìÉÌÓû§ + BYTE byAlarmOnRight; // ²¼·ÀȨÏÞ + BYTE byAlarmOffRight; // ³··ÀȨÏÞ + BYTE byBypassRight; // ÅÔ·ȨÏÞ + BYTE byOtherRight[MAX_RIGHT]; // ÆäËûȨÏÞ + // 0 -- ÈÕ־ȨÏÞ + // 1 -- ÖØÆô¹Ø»ú + // 2 -- ²ÎÊýÉèÖÃȨÏÞ + // 3 -- ²ÎÊý»ñȡȨÏÞ + // 4 -- »Ö¸´Ä¬ÈϲÎÊýȨÏÞ + // 5 -- ¾¯ºÅÊä³öȨÏÞ + // 6 -- PTZ ¿ØÖÆȨÏÞ + // 7 -- Ô¶³ÌÉý¼¶È¨ÏÞ + // 8 -- Ô¶³ÌÔ¤ÀÀ + // 9 -- Ô¶³ÌÊÖ¶¯Â¼Ïñ + // 10 -- Ô¶³Ì»Ø·Å + // 11 -- Ïû¾¯ + // 12 -- Ç¿ÖƲ¼·À + // 13 -- ÓÀ¾ÃÅÔ· + // 14 -- Ìí¼Ó¸ü¸Ä¸öÈËÊÚȨ´úÂë + // 15 -- µ÷ÊÔģʽ + BYTE byNetPreviewRight[MAX_ALARMHOST_VIDEO_CHAN/8]; // Ô¶³Ì¿ÉÒÔÔ¤ÀÀµÄͨµÀ£¬°´Î»±íʾ¸÷ͨµÀ£¨bit0-channel 1£©£¬1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byNetRecordRight[MAX_ALARMHOST_VIDEO_CHAN/8]; // Ô¶³Ì¿ÉÒÔ¼ÏñµÄͨµÀ£¬°´Î»±íʾ¸÷ͨµÀ£¨bit0-channel 1£©£¬1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byNetPlaybackRight[MAX_ALARMHOST_VIDEO_CHAN/8]; // Ô¶³Ì¿ÉÒԻطŵÄͨµÀ£¬°´Î»±íʾ¸÷ͨµÀ£¨bit0-channel 1£©£¬1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + BYTE byNetPTZRight[MAX_ALARMHOST_VIDEO_CHAN/8]; // Ô¶³Ì¿ÉÒÔPTZµÄͨµÀ£¬°´Î»±íʾ¸÷ͨµÀ£¨bit0-channel 1£©£¬1-ÓÐȨÏÞ£¬0-ÎÞȨÏÞ + //BYTE byPriority; // ÓÅÏȼ¶£¬0xff-ÎÞ£¬0--µÍ£¬1--ÖУ¬2--¸ß + //ÎÞ£¨±íʾ²»Ö§³ÖÓÅÏȼ¶µÄÉèÖã© + //µÍ£¨Ä¬ÈÏȨÏÞ£º°üÀ¨Ô¶³Ì»Ø·Å£¬Ô¶³Ì²é¿´ÈÕÖ¾ºÍ״̬£¬Ô¶³Ì¹Ø»ú/ÖØÆô£© + //ÖУ¨°üÀ¨Ô¶³Ì¿ØÖÆÔÆ̨£¬Ô¶³ÌÊÖ¶¯Â¼Ïñ£¬Ô¶³Ì»Ø·Å£¬ÓïÒô¶Ô½²ºÍÔ¶³ÌÔ¤ÀÀ£¬±¾µØ±¸·Ý£¬±¾µØ/Ô¶³Ì¹Ø»ú/ÖØÆô£© + //¸ß£¨¹ÜÀíÔ±£© + BYTE sOriginalPassword[PASSWD_LEN]; // ԭʼÃÜÂë + BYTE sKeypadPassword[PASSWD_LEN]; // ¼üÅÌÃÜÂë + BYTE byUserEnabled; // Óû§ÊÇ·ñ¿ªÆôʹÓãº0-ÎÞЧ£¬1-¿ªÆô£¬2-²»¿ªÆô + BYTE byRes2[135]; // ±£Áô×Ö½Ú +}NET_DVR_ALARM_DEVICE_USER, *LPNET_DVR_ALARM_DEVICE_USER; + +typedef struct tagNET_DVR_KEYBOARD_USER +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwID; // ¼üÅÌÓû§ID + BYTE byDefanceArea[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇøȨÏÞ °´Êý×éϱê±íʾ ×î´óÖ§³Ö512¸ö·ÀÇø 0 - ÎÞȨÏÞ 1- ÓÐȨÏÞ + BYTE byRes[560]; // ±£Áô×Ö½Ú +}NET_DVR_KEYBOARD_USER, *LPNET_DVR_KEYBOARD_USER; + +typedef struct tagNET_DVR_OPERATE_USER +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE sUserName[NAME_LEN]; // Óû§Ãû + BYTE sPassword[PASSWD_LEN]; // ÃÜÂë + BYTE bySubSystemPermission;/*0-°²×°Ô±È¨ÏÞ ²Ù×÷ԱȨÏÞ£¨ËùÓÐ×Óϵͳ£©ÈçÏ£º 1-µ¥²¼·À£¬ÎÞ²¼·À±¨¸æ£¬²»ÄÜÅÔ· 2-µ¥³··À£¬ÎÞ³··À±¨¸æ£¬²»ÄÜÅÔ· 3-²¼³··À£¬ÎÞ²¼³··À±¨¸æ£¬²»ÄÜÅÔ· + 4-µ¥²¼·À£¬Óв¼//·À±¨¸æ£¬²»ÄÜÅÔ· 5-µ¥³··À£¬Óг··À±¨¸æ£¬²»ÄÜÅÔ· 6-²¼³··À£¬Óв¼³··À±¨¸æ£¬²»ÄÜÅÔ· 7-µ¥²¼·À£¬ÎÞ²¼³··À±¨¸æ£¬ÔÊÐíÅÔ· + 8-µ¥³··À£¬ÎÞ²¼³··À±¨¸æ£¬ÔÊÐíÅÔ· 9-²¼³··À£¬ÎÞ²¼³··À±¨¸æ£¬ÔÊÐíÅÔ· 10-µ¥²¼·À£¬Óв¼·À±¨¸æ£¬ÔÊÐíÅÔ· 11-µ¥³··À£¬Óг··À±¨¸æ£¬ÔÊÐíÅÔ· 1 + 2-²¼³··À£¬Óв¼³··À±¨¸æ£¬ÔÊÐíÅÔ·*/ + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_OPERATE_USER, *LPNET_DVR_OPERATE_USER; + +typedef struct tagNET_DVR_GATEWAY_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byName[NAME_LEN]; // ÃŽûÃû³Æ + BYTE byEnable; // ÊÇ·ñÆôÓà + BYTE byLocalEnable; // ±¾µØÊÇ·ñÆôÓà + WORD wDelayTime; // ¿ªÆôÑÓʱʱ¼ä µ¥Î»ÎªÃë0-65535 0Ϊһֱ¿ªÆô + BYTE byLockWorkMode;//µçËø¹¤×÷ģʽ£¬0-ͨµçÆô¶¯£¬1-¶ÏµçÆô¶¯ + BYTE byRes[31]; // ±£Áô×Ö½Ú +}NET_DVR_GATEWAY_CFG, *LPNET_DVR_GATEWAY_CFG; + +typedef struct tagNET_DVR_SENSOR_ALARM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwAbsTime; // ¾ø¶Ôʱ±êÐÅÏ¢ OSDÏÔʾÐÅÏ¢ + BYTE byName[NAME_LEN]; // sensor Ãû³Æ + BYTE bySensorChannel; // Ä£ÄâÁ¿Í¨µÀ + BYTE byType; // Ä£ÄâÁ¿ÀàÐÍ + BYTE byAlarmType; // 1-ÉÏ4¡¢2-ÉÏ3¡¢3-ÉÏ2¡¢4-ÉÏ1¡¢5-ÏÂ1¡¢6-ÏÂ2¡¢7-ÏÂ3¡¢8-ÏÂ4 ºÍµ±Ç°Ä£Ê½ÓÐ¹Ø + // ÀýÈ統Ϊ1000ʱ,ÓÐÉÏ1ÏÂ1£¬2£¬3±¨¾¯ËÄÖÖ±¨¾¯ + BYTE byAlarmMode; //±¨¾¯Ä£Ê½£¬ÎåÖÖ£¬-HHHH¡¢-HHHL¡¢-HHLL¡¢HLLL¡¢-LLLL£¬ ×÷Ϊƽ̨±¨¾¯³Ì¶ÈÅжϹ¦ÄÜ,¼´£º1111£¨ÉÏÉÏÉÏÉÏ£©£¬1110£¨ÉÏÉÏÉÏÏ£©£¬1100£¨ÉÏÉÏÏÂÏ£©£¬1000(ÉÏÏÂÏÂÏÂ)£¬0000(ÏÂÏÂÏÂÏÂ) + float fValue; // µ«Ç°Ä£ÄâÁ¿µÄÖµ + float fOriginalValue; //ԭʼµçÁ÷µçѹֵ£¬±£ÁôСÊýµãºóÈý룬¾ßÌåÖµ±íʾµçÁ÷»¹Êǵçѹ¸ù¾ÝNET_DVR_SENSOR_INFOµÄbySensorStandardÀàÐÍ + BYTE byRes2[28]; // ±£Áô×Ö½Ú +}NET_DVR_SENSOR_ALARM, *LPNET_DVR_SENSOR_ALARM; + +#define PROTOCOL_VERTION_LEN 32 + +typedef struct tagNET_DVR_RS485_PROTOCOL_VERSION +{ + DWORD dwSize; + BYTE byProtocleVersion[PROTOCOL_VERTION_LEN];//RS485ЭÒé¿â°æ±¾ÐÅÏ¢ + BYTE byRes[128]; +}NET_DVR_RS485_PROTOCOL_VERSION, *LPNET_DVR_RS485_PROTOCOL_VESRION; + + +typedef struct +{ + /*Ô¤Áô£¬Ä¿Ç°±¨¾¯Ö÷»úµÄ±¨¾¯Ã»ÓÐÀàÐÍ(²¼·ÀÍøÂçÐò£¬¼àÌýÖ÷»úÐò)*/ + DWORD dwAlarmType; + /*Êý×é0¶ÔÓ¦µÚ1¸öÊäÈë¶Ë¿Ú*/ + BYTE byAlarmInputNumber[MAX_ALARMHOST_ALARMIN_NUM]; + BYTE byRes[160]; +}NET_DVR_ALARMHOST_ALARMINFO,*LPNET_DVR_ALARMHOST_ALARMINFO; +// ¿ª¹ØÁ¿±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_SWITCH_ALARM +{ + DWORD dwSize; + BYTE byName[NAME_LEN]; // switch Ãû³Æ + WORD wSwitchChannel; // ¿ª¹ØÁ¿Í¨µÀ, 0-255 + BYTE byAlarmType; // ±¨¾¯ÀàÐÍ 0--Õý³££¬1--¶Ì·£¬2--¶Ï·,3-Òì³£ + BYTE byRes[41]; // ±£Áô×Ö½Ú +}NET_DVR_SWITCH_ALARM, *LPNET_DVR_SWITCH_ALARM; + +typedef union tagNET_DVR_ALARMHOST_EXCEPTION_PARAM +{ + DWORD dwUnionSize[20]; // ÁªºÏÌå´óС +}NET_DVR_ALARMHOST_EXCEPTION_PARAM, *LPNET_DVR_ALARMHOST_EXCEPTION_PARAM; + +typedef struct tagNET_DVR_ALARMHOST_EXCEPTION_ALARM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + // Òì³£²ÎÊý 1-É豸·À²ð±¨¾¯ 2-É豸·À²ðºóºó»Ö¸´Õý³£ 3-Ö÷µçÔ´µôµç±¨¾¯ 4-Ö÷µçÔ´µôµçºó»Ö¸´Õý³£ 5-ÄÚ²¿Í¨ÐŹÊÕϱ¨¾¯ + // 6-ÄÚ²¿Í¨ÐŹÊÕϺó»Ö¸´Õý³£ 7-µç»°Ï߶ÏÏß 8-µç»°Ï߶ÏÏ߻ָ´ 9-×Ô¼ìʧ°Ü±¨¾¯ 10-×Ô¼ìʧ°Üºó»Ö¸´Õý³£ + // 11Ðîµç³ØǷѹ 12Ðîµç³Øµçѹ»Ö¸´Õý³££¬13-Ðîµç³Ø¹ÊÕÏ£»14-MBUSÄ£¿éµôÏߣ»15-MBUSÄ£¿éµôÏ߻ָ´£»16-¼üÅ̵ôÏߣ» + //17-¼üÅ̵ôÏ߻ָ´£»18-É豸±»Òƶ¯£»19-É豸±»Òƶ¯¸´Î» 20-485ÍâÉèÏß·¶Ï±¨¾¯ 21-485ÍâÉèÏß·¶Ïºó»Ö¸´Õý³£ + //25-×Ó°å1²åÉÏ,26-×Ó°å1°Î³ö, 27-×Ó°å2²åÉÏ,28-×Ó°å2°Î³ö + DWORD dwExceptionType; + BYTE byRes[36]; // ±£Áô +}NET_DVR_ALARMHOST_EXCEPTION_ALARM, *LPNET_DVR_ALARMHOST_EXCEPTION_ALARM; + +//×ÔÖúÐв¦ºÅ²ÎÊýÅäÖü°ÆôÓ÷½Ê½ÅäÖà +#define MAX_CENTERNUM 4 //G1,G2 G3 G4»òÕßN1£¬N2£¬N3£¬N4»òÕßT1£¬T2£¬T3£¬T4 +typedef struct tagNET_DVR_PHONECENTERDIALCFG +{ + BYTE sCenterName[NAME_LEN]; + BYTE byPhoneNum[MAX_PHONE_NUM/*32*/]; //ÖÐÐĺÅÂë + BYTE byRepeatCall; //Öظ´²¦ºÅ´ÎÊý£¬1~15´Î + BYTE byPstnProtocol; //ͨÐÅЭÒ飬0-CID£» + BYTE byDialDelay; //²¦ºÅÑÓʱ£¬×î´ó150s, 0-150 + BYTE byPstnTransMode; //´«Ê䷽ʽ£¬0-DTMF 5/S£¬1-DTMF 10/S£» + BYTE byEnable; //ʹÄÜ£¬0-¹Ø±Õ£¬1-ÆôÓà + BYTE byRes1[5]; + BYTE byReceiverId[6]; //½ÓÊÕ»úʶ±ðÕ˺ţ» + BYTE byRes2[32]; +}NET_DVR_PHONECENTERDIALCFG, *LPNET_DVR_PHONECENTERDIALCFG; + +typedef struct tagNET_DVR_ALARMHOSTDIALCFG +{ + DWORD dwSize; + NET_DVR_PHONECENTERDIALCFG struPhoneCenterParam[MAX_CENTERNUM];//Ö÷ÖÐÐIJÎÊý + WORD wReportPeriod; //²âÊÔ±¨¸æÉÏ´«ÖÜÆÚ£¬Ð¡Ê±£¬£¨×î´óÖµÖ§³Ö7Ì죬¼´168Сʱ), ·¶Î§£»1-168 + WORD wFirstReportTime; //´ÓÉ豸Æô¶¯µ½µÚÒ»Ìõ²âÊÔ±¨¸æÉÏ´«£¬1~3600·ÖÖÓ + BYTE byReportValid; //0-²»ÆôÓòâÊÔ±¨¸æÉÏ´« 1-ÆôÓòâÊÔ±¨¸æÉÏ´« + BYTE byRes[19]; +}NET_DVR_ALARMHOSTDIALCFG, *LPNET_DVR_ALARMHOSTDIALCFG; + +typedef struct tagNET_DVR_ALARMHOSTDIALSETUPMODE +{ + DWORD dwSize; + BYTE byEnableMode;//ÆôÓ÷½Ê½£¬0£º²»ÆôÓã¬1£ºÒ»Ö±ÆôÓã¬2:ÍøÏ߶ÏÆôÓã¬Õý³£Ê±¹Ø±Õ£» + BYTE byCallType; //ÉÏ´«ÖÐÐÄ·½Ê½£¬1-µ¥ÖÐÐÄ£¬2-Ë«ÖÐÐÄ£¬3£¬Ò»±¨Ò»±¸ + BYTE byRes1[14]; +}NET_DVR_ALARMHOSTDIALSETUPMODE, *LPNET_DVR_ALARMHOSTDIALSETUPMODE; + +#define MAX_PU_CHAN_NUM 512 + +typedef struct tagNET_DVR_PU_CHAN_INFO +{ + NET_DVR_IPADDR struIpAddr; // ipµØÖ· + WORD wPort; // ¶Ë¿Ú + WORD wChannel; // ͨµÀ + BYTE byRes[24]; // +}NET_DVR_PU_CHAN_INFO, *LPNET_DVR_PU_CHAN_INFO; + +typedef struct tagNET_DVR_PU_CHAN_LIST +{ + DWORD dwSize; // ½á¹¹Ìå + DWORD dwNum; // Ç°¶ËͨµÀ¸öÊý + NET_DVR_PU_CHAN_INFO struPuChanInfo[MAX_PU_CHAN_NUM]; +}NET_DVR_PU_CHAN_LIST, *LPNET_DVR_PU_CHAN_LIST; + +#define MAX_ALARM_CAM_NUM 32 // ±¨¾¯´¥·¢CAM×î´ó¸öÊý + +typedef struct tagNET_DVR_PTZ_CTRL +{ + BYTE byEnable; // ÊÇ·ñÆôÓÃPTZ¿ØÖÆ + BYTE byType; // PTZ ¿ØÖƵÄÀàÐÍ 1- Ô¤Öõã 2 -Ѳº½ 3-¹ì¼£ + BYTE byPtzNo; // ptz ¿ØÖƵÄÔ¤Öõã Ѳº½ ¹ì¼£ºÅ + BYTE byRes[5]; // ±£Áô×Ö½Ú +}NET_DVR_PTZ_CTRL, *LPNET_DVR_PTZ_CTRL; + +typedef struct tagNET_DVR_ALARM_CAM_INFO +{ + DWORD dwCamID; // ´¥·¢µÄCAMͨµÀ²Ù×÷ + DWORD dwRecordTime; // ´¥·¢Â¼Ïñʱ¼ä µ¥Î»Îªs -1±íʾһֱ¼Ïñ 0 ±íʾ²»Â¼Ïñ + DWORD dwMonID; // ´¥·¢Camµ½MonºÅÏÔʾ + DWORD dwResidentTime; // ÂÖѲͣÁôʱ¼äµ¥Î»Îªs -1±íʾһֱͣÁô 0 ±íʾ²»Í£Áô + NET_DVR_PTZ_CTRL struPtzCtrl; // PTZ¿ØÖÆÐÅÏ¢ + BYTE byAlarmOffMode; // ±¨¾¯Çл»ÉÏǽȡÏûģʽ 0-Á¢¼´È¡Ïû£¬1-×Ô¶¯È¡Ïû£¬2-ÊÖ¶¯È¡Ïû Á¢¼´È¡Ïû£¬±¨¾¯È¡ÏûʱÁ¢¼´È¡Ïû½âÂëÉÏǽ ×Ô¶¯È¡Ïû£¬±¨¾¯È¡ÏûʱµÈ´ýÒ»¶¨Ê±¼äºóÈ¡Ïû½âÂëÉÏǽ£¬ÎÒÃÇÔ¼¶¨ÊÇ20Ãë ÊÖ¶¯È¡Ïû£¬Óû§Í¨¹ýÊÖ¶¯µÄ·½Ê½È¡Ïû + BYTE byDevType; // µ±É豸ΪÖÇÄÜÉ豸ʱ£¬ÉúЧ±íʾÖÇÄܱ¨¾¯É豸ȡÁ÷Ô´ 1-½âÂ뿨 2-±àÂ뿨 + BYTE byDecChan; // µ±Îª½âÂëͨµÀΪ½âÂëͨµÀºÅ + BYTE byRes[17]; // ±£Áô×Ö½Ú +}NET_DVR_ALARM_CAM_INFO, *LPNET_DVR_ALARM_CAM_INFO; + +typedef struct tagNET_DVR_ALARM_CAM_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; // ÊÇ·ñÆôÓñ¨¾¯´¥·¢CAMÁª¶¯ É豸ĬÈϲ»ÆôÓà + BYTE byRes[7]; // ±£Áô×Ö½Ú + DWORD dwNum; // ´¥·¢CAMÁª¶¯µÄ¸öÊý ¼´È¡Êý×éµÄÇ°¼¸¸öÓÐЧ´¦Àí + NET_DVR_ALARM_CAM_INFO struAlarmCam[MAX_ALARM_CAM_NUM]; +}NET_DVR_ALARM_CAM_CFG, *LPNET_DVR_ALARM_CAM_CFG; + +#define MAX_GATEWAY_NUM 8 // ×î´óÃŽû¸öÊý +typedef struct tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM +{ + DWORD dwSize; + BYTE byEnterDoor[8]; // ϱê±íʾÃŽûºÅ£¬ÔªËØÊýÖµ±íʾ¹ØÁªÐÅÏ¢£¬0±íʾ²»¹ØÁª£¬ 1-8±íʾ¹ØÁªµÄÒôƵºÅ + BYTE byExitDoor[8]; // ϱê±íʾÃŽûºÅ£¬ÔªËØÊýÖµ±íʾ¹ØÁªÐÅÏ¢£¬0±íʾ²»¹ØÁª£¬ 1-8±íʾ¹ØÁªµÄÒôƵºÅ + BYTE byAlarmIn[MAX_ALARMHOST_ALARMIN_NUM/*512*/]; //¹ØÁª±¨¾¯ÊäÈ룬ϱê±íʾ±¨¾¯ÊäÈëºÅ£¬ÔªËØÊýÖµ±íʾ¹ØÁªÐÅÏ¢£¬0±íʾ²»¹ØÁª£¬ 1-8±íʾ¹ØÁªµÄÒôƵºÅ + BYTE byRes[128]; +}NET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM, *LPNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM; + +//Êý¾ÝÉÏ´«ÏÂÔØ£¨ÓïÒôÉÏ´«ÏÂÔصÄÀ©Õ¹£© +typedef struct tagNET_DVR_UPLOAD_PARAM +{ + DWORD dwSize; + BYTE byUploadType; /*ÉÏ´«·½Ê½£¬1-¸ù¾ÝÎļþÃû¾ø¶ÔµØÖ·¶ÁÈ¡Êý¾ÝÎļþÉÏ´«£¬ 2-´Ó»º³åÇø¶ÁÈ¡Êý¾ÝÉÏ´«*/ + BYTE byDataType; //Êý¾ÝÀàÐÍ£º1-ÒôƵÊý¾Ý + BYTE byDataNum; //Êý¾Ý±àºÅ£¬È磺ÉÏ´«ÓïÒô£¬Ôò¸Ã²ÎÊý±íʾÓïÒôºÅ£¬Ôö¼ÓÈýÌõÓïÒôºÅ£¨Ôε¹¡¢¶àÈË¡¢ÈËÁ³ÕÚµ²£© + BYTE byAudioType; //ÓïÒô¸ñʽ£¬0-wave + char sFileName[260]; //Êý¾ÝÎļþµÄȫ·¾¶ + char *lpBuffer; //Êý¾Ý»º³åÇø + DWORD dwBufferSize; //»º³åÇø´óС + BYTE byRes2[128]; +}NET_DVR_UPLOAD_PARAM, *LPNET_DVR_UPLOAD_PARAM; + +typedef void (CALLBACK *DATADOWNLOAD)(LONG nDownloadHandle, DWORD dwDataType, void* pBuffer, DWORD dwBufSize, void *pUser); +typedef struct tagNET_DVR_ALARMHOST_PARAM +{ + DWORD dwSize; + BYTE byDownType; /*ÏÂÔصÄÊý¾Ý±£´æ·½Ê½£¬1-¸ù¾ÝÎļþÃû¾ø¶ÔµØÖ·±£´æÊý¾Ý£¬ 2-ͨ¹ý»Øµ÷º¯Êý»ñÈ¡Êý¾Ý*/ + BYTE byDataType; //Êý¾ÝÀàÐÍ£º1-ÒôƵÊý¾Ý + BYTE byDataNum; //Êý¾Ý±àºÅ£¬È磺ÏÂÔØÓïÒô£¬Ôò¸Ã²ÎÊý±íʾÓïÒôºÅ£¬Ôö¼ÓÈýÌõÓïÒôºÅ£¨Ôε¹¡¢¶àÈË¡¢ÈËÁ³ÕÚµ²£© + BYTE byRes1; + char sFileName[260]; //Êý¾ÝÎļþµÄȫ·¾¶ + DATADOWNLOAD lpDataCallBack; //ÏÂÔØʱµÄ»Øµ÷º¯Êý¾ä±ú + void* pUserData; //Óû§Êý¾Ý£¬½«Ôڻص÷º¯ÊýÖд«»Ø + BYTE byRes2[128]; +}NET_DVR_DOWNLOAD_PARAM, *LPNET_DVR_DOWNLOAD_PARAM; + + +typedef struct tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM +{ + DWORD dwSize; + BYTE byDownType; /*ÏÂÔصÄÊý¾Ý±£´æ·½Ê½£¬1-¸ù¾ÝÎļþÃû¾ø¶ÔµØÖ·±£´æÊý¾Ý£¬ 2-ͨ¹ý»Øµ÷º¯Êý»ñÈ¡Êý¾Ý*/ + BYTE byDataType; //Êý¾ÝÀàÐÍ£º1-ÒôƵÊý¾Ý + BYTE byDataNum; //Êý¾Ý±àºÅ£¬È磺ÏÂÔØÓïÒô£¬Ôò¸Ã²ÎÊý±íʾÓïÒôºÅ£¬Ôö¼ÓÈýÌõÓïÒôºÅ£¨Ôε¹¡¢¶àÈË¡¢ÈËÁ³ÕÚµ²£© + BYTE byRes1; + char sFileName[260]; //Êý¾ÝÎļþµÄȫ·¾¶ + DATADOWNLOAD lpDataCallBack; //ÏÂÔØʱµÄ»Øµ÷º¯Êý¾ä±ú + void* pUserData; //Óû§Êý¾Ý£¬½«Ôڻص÷º¯ÊýÖд«»Ø + BYTE byRes2[128]; +}NET_DVR_ALARMHOST_DOWNLOAD_PARAM, *LPNET_DVR_ALARMHOST_DOWNLOAD_PARAM; + +//LEDÆÁÄ»²ÎÊý +typedef struct tagNET_DVR_LED_SCREEN_CFG +{ + DWORD dwSize; + BYTE sLEDName[NAME_LEN/*32*/]; // LEDÆÁÄ»Ãû³Æ + BYTE byTransMode; // ÏÖÖ»Ö§³Ö´®¿ÚͨѶ 1-´®¿ÚͨÐÅ + BYTE byProtocolType; // ЭÒéÀàÐÍ£¬¶ÔÓ¦LEDÆÁµÄ³§¼Ò + BYTE byLEDColor; // 1-µ¥É«£¬ 2-Ë«É«£¬ 3-256¼¶»Ò¶ÈË«»ùÉ«£¬ 4- È«²ÊÉ«£¨Ä¿Ç°Ö»Óõ¥É«£© + BYTE byDataPolarity; // Êý¾Ý¼«ÐÔ .0-¸º¼«£¬1-Õý¼« + BYTE byOEPolarity; // 0-µÍÓÐЧ 1-¸ßÓÐЧ + BYTE byScanMode; // 1-1/16, 2-1/8, 3-1/4, 4-1/2, 5-¾²Ì¬ + BYTE byRes1[2]; + //ÆÁÄ»¿í¶ÈºÍ¸ß¶È×îСÊÇ16*16µã£¬¼ä¸ôÊÇ8¸öµã + WORD wLEDWidth; // 16~2048 + WORD wLEDHeight; // 16~2048 + BYTE byRes2[64]; +}NET_DVR_LED_SCREEN_CFG, *LPNET_DVR_LED_SCREEN_CFG; + +//LEDÆÁÏÔÄÚÈÝ +#define MAX_CONTENT_LEN 512 +typedef struct tagNET_DVR_LED_CONTENT_CFG +{ + DWORD dwSize; + BYTE sLEDContent[MAX_CONTENT_LEN]; // LEDÆÁÄ»ÏÔʾÄÚÈÝ + BYTE byContentAct; // 1-¾²Ì¬£¬2-¿ìËÙ´ò³ö£¬3-Ïò×óÒƶ¯£¬4-ÏòÓÒÒƶ¯£¬ 5-ÏòÉÏÒƶ¯£¬ 6-ÏòÏÂÒƶ¯ + BYTE byContentSpeed; // 1-24£¨1×î¿ì£¬24×îÂý£© + BYTE byContentStayTime; // 0-127.5s(¾«¶È0.5s£¬ SDK´«ËÍʱºò*2£¬¼´´«ËÍÊýÖµ0-255£¬É豸¶ËÔÚʹÓõÄʱºòÐè³ýÒÔ2) + BYTE byRes[33]; +}NET_DVR_LED_CONTENT_CFG, *LPNET_DVR_LED_CONTENT_CFG; + +//LED¶¨Ê±¿ª¹Ø»ú +#define LED_TIMER_NUM 3 // LED¿ª»ú¡¢¹Ø»úʱ¼ä×éÊý +#define TIME_SEGMENT_A_DAY 48 // ʱ¼ä¶Î¸öÊý£¬Ò»Ìì24Сʱ£¬°ëСʱһ¸ö¶Î + +typedef struct tagNET_DVR_SWITCH_TIME +{ + BYTE byValid; // ¸Ã×鶨ʱʱ¼äÊÇ·ñÓÐЧ£¬Ê±¼äÊdzɶÔÉèÖÃµÄ + BYTE byRes[3]; + NET_DVR_TIME_EX struTimeOn; // ¿ª»úʱ¼ä + NET_DVR_TIME_EX struTimeOff; // ¹Ø»úʱ¼ä +}NET_DVR_SWITCH_TIME, *LPNET_DVR_SWITCH_TIME; + + +typedef struct tagNET_DVR_LED_SWITCH_TIME +{ + DWORD dwSize; + NET_DVR_SWITCH_TIME struTimer[LED_TIMER_NUM /*3*/]; //¶¨Ê±¿ª¹Ø»úʱ¼ä£¬½á¹¹ÌåÖÐÖ»ÓÐСʱºÍ·ÖÖÓÁ½¸ö²ÎÊýÓÐЧ£¬Ã¿×鿪»úʱ¼äÒªÔçÓÚ¸Ã×éµÄ¹Ø»úʱ¼ä£¬µ«±ÈÇ°Ò»×éµÄ¹Ø»úʱ¼äÒªÍí£¬ÀýÈ磺struTimer[0]µÄ¹Ø»úʱ¼äÊÇ10£º00ÄÇô£¬struTimer[0]µÄ¿ª»úʱ¼äÐëÉèÖÃΪ10:00֮ǰ£¬ struTimer[1]µÄ¿ª»úʱ¼äÐëÉèÖÃΪ10£º:00ÒÔºó¡£ + BYTE byRes[64]; +}NET_DVR_LED_SWITCH_TIME, *LPNET_DVR_LED_SWITCH_TIME; + +//·ÖʱÁÁ¶Èµ÷½Ú +typedef struct tagNET_DVR_LED_BRIGHTNESS_STEP +{ + DWORD dwSize; + BYTE byValid; //·ÖʱÁÁ¶Èµ÷½ÚÊÇ·ñÓÐЧ + BYTE byRes1[3]; + BYTE byBrightnessStep[TIME_SEGMENT_A_DAY /*48*/]; //½«È«Ìì24¸öСʱ·ÖΪ48¸öʱ¶Î£¬Ã¿30·ÖÖÓÒ»¸öʱ¶Î£¬ÓÃ48¸ö×Ö½Ú±íʾÿ¸öʱ¶ÎµÄÁÁ¶È¼¶±ð£¬ÁÁ¶È¹²16¼¶£¬ÓÃ0~15±íʾ¡£ + BYTE byRes2[48]; +}NET_DVR_LED_BRIGHTNESS_STEP, *LPNET_DVR_LED_BRIGHTNESS_STEP; + +typedef struct tagNET_DVR_LED_STATUS +{ + DWORD dwSize; + BYTE bySwitchState; //1-¿ª»ú״̬ 2-¹Ø»ú״̬ + BYTE byBrightness; //ÁÁ¶ÈÖµ£¬·¶Î§0-15 + BYTE byRes[62]; +}NET_DVR_LED_STATUS, *LPNET_DVR_LED_STATUS; + +//2010-12-28 ¸ßÇå½âÂ뿨ÄÜÁ¦¼¯ begin +//еĽâÂ뿨·þÎñÆ÷ÄÜÁ¦¼¯ +#define MAX_DECODE_CARD_NUM 6 //×î¶à¸ßÇå½âÂ뿨Êý +/********************¸ßÇå½âÂ뿨Êä³öģʽºê¶¨Òå********************/ +typedef enum _HD_DISPLAY_FORMAT +{ + HD_DISPLAY_FORMAT_INVALID = 0x00000000, + HD_DISPLAY_FORMAT_CVBS = 0x00000001, + HD_DISPLAY_FORMAT_DVI = 0x00000002, + HD_DISPLAY_FORMAT_VGA = 0x00000004, + HD_DISPLAY_FORMAT_HDMI = 0x00000008, + HD_DISPLAY_FORMAT_YPbPr = 0x00000010 +}HD_DISPLAY_FORMAT,*LPHD_DISPLAY_FORMAT; + +/********************¸ßÇå½âÂ뿨Êä³öģʽºê¶¨Òå********************/ +typedef struct tagNET_DVR_DECCARD_ABILITY /*¸ßÇå½âÂ뿨ÄÜÁ¦¼¯*/ +{ + BYTE byCardType; //½âÂ뿨ÀàÐÍ(0:MD,1:MD+,2:HD) + BYTE byDecNums; //½âÂëͨµÀÊý + BYTE byDispNums; //ÏÔʾͨµÀÊý + BYTE byDecStartIdx; //Ê׸ö½âÂëͨµÀÔÚËùÓнâÂëͨµÀÖеÄË÷Òý + BYTE byDispStartIdx; //Ê׸öÏÔʾͨµÀÔÚËùÓÐÏÔʾͨµÀÖеÄË÷Òý + BYTE byDispResolution[80]; //Êä³öģʽ֧³ÖµÄ·Ö±æÂÊ + BYTE byDispFormat[8]; //Ö§³ÖµÄÊä³öģʽ(°´HD_DISPLAY_FORMAT) + BYTE byWindowMode[4][8]; //Ö§³ÖµÄ´°¿Úģʽ(±ÈÈç1,2,4,9,16)) + BYTE byRes[35]; +} NET_DVR_DECCARD_ABILITY,*LPNET_DVR_DECCARD_ABILITY; + +typedef struct tagNET_DVR_DECODESVR_ABILITY +{ + DWORD dwSize; /* ½á¹¹Ìå´óС */ + BYTE byCardNums; /* ½âÂ뿨Êý */ + BYTE byStartChan; /* ÆðʼͨµÀºÅ */ + BYTE byRes1[2]; + NET_DVR_DECCARD_ABILITY struDecCardAbility[MAX_DECODE_CARD_NUM]; + BYTE byRes2[64]; +}NET_DVR_DECODESVR_ABILITY, *LPNET_DVR_DECODESVR_ABILITY; + +typedef struct tagNET_MATRIX_DEV_CHAN_INFO +{ + NET_DVR_IPADDR struIP; //DVR IPµØÖ· + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byChannel; //ͨµÀºÅ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byFactoryType; /*Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡*/ + BYTE byUsedSlotNum; //ÊÇ·ñʹÓòÛλºÅ£¬0-²»Ê¹Óã¬1-ʹÓà + BYTE bySlotNum;//²ÛλºÅ + BYTE byRes[68]; + BYTE sUserName[NAME_LEN]; //¼à¿ØÖ÷»úµÇ½ÕʺŠ+ BYTE sPassword[PASSWD_LEN]; //¼à¿ØÖ÷»úÃÜÂë +}NET_MATRIX_DEV_CHAN_INFO,*LPNET_MATRIX_DEV_CHAN_INFO; + +typedef struct tagNET_MATRIX_PU_STREAM_CFG +{ + DWORD dwSize; + NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg; + NET_MATRIX_DEV_CHAN_INFO struDevChanInfo; +} NET_MATRIX_PU_STREAM_CFG,LPNET_MATRIX_PU_STREAM_CFG; + +/*cameraÅäÖõ¥Ôª½á¹¹*/ +typedef struct tagNET_DVR_MATRIX_CAMERACFG +{ + DWORD dwGlobalIndex;//È«¾Ö±àºÅ + DWORD dwInterIndex;//¾Ö²¿±àºÅ + BYTE sCamName[NAME_LEN]; + NET_MATRIX_PU_STREAM_CFG struPuStreamCfg; +} NET_DVR_MATRIX_CAMERACFG,*LPNET_DVR_MATRIX_CAMERACFG; + +typedef struct tagNET_DVR_MATRIX_CAMERALIST +{ + DWORD dwSize; + BYTE byRes[12]; + DWORD dwCamNum;//CAMÊýÁ¿ + BYTE *pBuffer; + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +} NET_DVR_MATRIX_CAMERALIST,*LPNET_DVR_MATRIX_CAMERALIST; + +typedef struct tagNET_DVR_DISP_CHAN_INFO +{ + NET_DVR_IPADDR struIP; /* ½âÂëÆ÷ IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE byDispChannel; /* ÏÔʾͨµÀºÅ */ + BYTE byUsedSlotNum; //ÊÇ·ñʹÓòÛλºÅ£¬0-ʹÓã¬1-²»Ê¹Óà + BYTE bySlotNum;//²ÛλºÅ + BYTE byRes[7]; + BYTE sUserName[NAME_LEN]; /*µÇ½ÕʺŠ*/ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë */ +}NET_DVR_DISP_CHAN_INFO,*LPNET_DVR_DISP_CHAN_INFO; + +/*monitorÅäÖõ¥Ôª½á¹¹*/ +typedef struct tagNET_DVR_MATRIX_MONITORCFG +{ + DWORD dwGlobalIndex;//È«¾Ö±àºÅ + DWORD dwInterIndex; + BYTE sMonName[NAME_LEN]; + NET_DVR_DISP_CHAN_INFO struDispChanCfg; +} NET_DVR_MATRIX_MONITORCFG,*LPNET_DVR_MATRIX_MONITORCFG; + +typedef struct tagNET_DVR_MATRIX_MONITORLIST +{ + DWORD dwSize; + BYTE byRes[12]; + DWORD dwMonNum;//MONÊýÁ¿ + BYTE *pBuffer; + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +} NET_DVR_MATRIX_MONITORLIST,*LPNET_DVR_MATRIX_MONITORLIST; + +#define MAX_SUBMATRIX_NUM 8//¼¶ÁªÖÐ×Ó×î¶à´ÓϵͳÊýÁ¿ +typedef struct tagNET_DVR_SUBMATRIXINFO +{ + BYTE byMainMatrix;//ÊÇ·ñÊÇÖ÷ϵͳ£¬1-ÊÇ£¬0-·ñ + BYTE bySubMatrixSequence;//¼¶Áª×ÓÊÓƵ×ÛºÏƽ̨ϵͳÐòºÅ + BYTE byLoginType;//×¢²áÀàÐÍ£¬1-Ö±Á¬£¬2-DNS£¬3-»¨Éú¿Ç + BYTE byRes1[9]; + NET_DVR_IPADDR struSubMatrixIP; /*IPµØÖ·£¨¿ÉÐ޸ģ©*/ + WORD wSubMatrixPort; /*×Óϵͳ¶Ë¿ÚºÅ£¨¿ÉÐ޸ģ©*/ + BYTE byRes2[6]; + NET_DVR_IPADDR struSubMatrixIPMask; /*IPµØÖ·ÑÚÂë*/ + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ· */ + BYTE sUserName[NAME_LEN]; /* Óû§Ãû £¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë £¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + char sDomainName[MAX_DOMAIN_NAME];//ÓòÃû(¿ÉÐÞ¸Ä) + char sDnsAddress[MAX_DOMAIN_NAME];/*DNSÓòÃû»òIPµØÖ·*/ + BYTE sSerialNumber[SERIALNO_LEN];//ÐòÁкţ¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byRes3[16]; +}NET_DVR_SUBMATRIXINFO, *LPNET_DVR_SUBMATRIXINFO; + +typedef struct tagNET_DVR_ALLUNITEDMATRIXINFO +{ + DWORD dwSize; + NET_DVR_SUBMATRIXINFO struSubMatrixInfo[MAX_SUBMATRIX_NUM]; + BYTE byRes2[32]; +}NET_DVR_ALLUNITEDMATRIXINFO, *LPNET_DVR_ALLUNITEDMATRIXINFO; + +#define MAX_GATEWAYTRUNKNUM 1024 //¼¶ÁªÊÓƵ×ÛºÏƽ̨ÖÐ×î´ó·ÓɸÉÏßÊý + +typedef struct tagNET_DVR_MATRIXGATEWAYNOTE +{ + WORD wTrunkInToOutAbility;//¸ÉÏß´ø¿í£¬°´D1µÄ±ê×¼ºâÁ¿£¬Èç4±íʾ֧³Ö4¸öD1 + WORD wTrunkOutToInAbility;//¸ÉÏß´ø¿í£¬°´D1µÄ±ê×¼ºâÁ¿£¬Èç4±íʾ֧³Ö4¸öD1£¬Ë«Ïò¹âÏËʱÓõ½´ËÖµ + BYTE byRes[4]; + NET_DVR_MATRIXSUBSYSTEMINFO struInputNote; + NET_DVR_MATRIXSUBSYSTEMINFO struOutputNote; +}NET_DVR_MATRIXGATEWAYNOTE, *LPNET_DVR_MATRIXGATEWAYNOTE; + +typedef struct tagNET_DVR_MATRIXGATEWAYINFO +{ + DWORD dwSize; + NET_DVR_MATRIXGATEWAYNOTE struGatewayNote[MAX_GATEWAYTRUNKNUM]; + BYTE byRes [32]; +}NET_DVR_MATRIXGATEWAYINFO, *LPNET_DVR_MATRIXGATEWAYINFO; + +typedef struct tagNET_DVR_MATRIXCODESYSTEMINFO +{ + BYTE byMatrixNum;//ÊÓƵ×ÛºÏƽ̨ºÅ + BYTE bySubSystemNum;//×Óϵͳ²ÛλºÅ + BYTE byChan;//±àÂëͨµÀ + BYTE byRes [13]; +}NET_DVR_MATRIXCODESYSTEMINFO,*LPNET_DVR_MATRIXCODESYSTEMINFO; +typedef struct tagNET_DVR_MATRIXDECODESYSTEMINFO +{ + BYTE byMatrixNum;//ÊÓƵ×ÛºÏƽ̨ºÅ + BYTE bySubSystemNum;//×Óϵͳ²ÛλºÅ + BYTE byDispChan;//ÏÔʾͨµÀ + BYTE bySubDispChan;//ÏÔʾͨµÀ×ÓͨµÀºÅ + BYTE byRes [12]; +}NET_DVR_MATRIXDECODESYSTEMINFO,*LPNET_DVR_MATRIXDECODESYSTEMINFO; + +typedef struct tagNET_DVR_MATRIXSWITCH +{ + NET_DVR_MATRIXCODESYSTEMINFO struInputNote; + NET_DVR_MATRIXDECODESYSTEMINFO struOutputNote; + BYTE byRes[32]; +}NET_DVR_MATRIXSWITCH, *LPNET_DVR_MATRIXSWITCH; + +typedef enum { + ENC_CARD = 0, + DEC_CARD, + SD_DEC_CARD, + FPGA_CARD, + CS_CARD, + ALERTOR_CARD, + NAT_0, + NAT_1, + VCA_CARD, + VGA_DEC_CARD, + VGA_ENC_CARD, + ERR_CARD, +} DEV_TYPE; + +typedef struct tagNET_DVR_MATRIXSWITCHCTRL +{ + DWORD dwCamId;//ÉãÏñ»úÈ«¾Ö±àºÅ + DWORD dwMonId;//¼àÊÓÆ÷È«¾Ö±àºÅ + BYTE bySubWindowNum;//¼àÊÓÆ÷¶ÔÓ¦×Ó´°¿ÚºÅ + BYTE bySwitchType;/*Çл»ÀàÐÍ£¬0:Õý³£Çл»£¬1:±¨¾¯´¥·¢Çл»£¬2:±¨¾¯È¡Ïû£¬0xff:±íʾ´ËMONÉÏËùÓб¨¾¯È«²¿È¡Ïû*/ + WORD wAlarmType;//±¨¾¯É豸ÀàÐÍ£¬1:±¨¾¯Ö÷»ú£¬2£ºÖÇÄÜÉ豸 + DWORD dwResidentTime;/* ÏÔʾפÁôʱ¼ä£¬0xFFFFFFFF ʱ Ϊ³£×¤Çé¿ö£¬±£³ÖÏÔʾ*/ + BYTE byVcaDevType;//µ±±¨¾¯É豸ÀàÐÍÊÇ"ÖÇÄÜÉ豸"ʱ£¬°´DEV_TYPEÀàÐÍ + BYTE byWallNo;//ǽºÅ + BYTE byRes[18]; +}NET_DVR_MATRIXSWITCHCTRL, *LPNET_DVR_MATRIXSWITCHCTRL; + +typedef struct tagNET_DVR_MATRIXDATABASE +{ + //ÅäÖÃÎļþÀàÐÍ£¬1-ÓòÊý¾Ý¿âÅäÖÃÎļþ£¬2-×ÓÓòÊý¾Ý¿âÅäÖÃÎļþ£¬3-ƽ̨Êý¾Ý¿âÅäÖÃÎļþ£¬4-³¡¾°ÅäÖÃÎļþ£¬0xff×îºóÒ»´Îʧ°ÜµÄÊý¾Ý¿âÓï¾ä + DWORD dwDevType; + DWORD dwParam; //²ÎÊý£¬´ú±íÓòºÅ¡¢×ÓÓòºÅ¡¢Æ½Ì¨ºÅ£¬³¡¾°ÅäÖÃÎļþʱ´ËÖµÎÞÓà + BYTE byFileType;//ÎļþÀàÐÍ£¬1-sqlÓï¾ä£¬2-dbÓï¾ä£¬3-³¡¾°ÅäÖÃÎļþ + BYTE byRes [3]; +} NET_DVR_MATRIXDATABASE, *LPNET_DVR_MATRIXDATABASE; + +typedef struct tagNET_DVR_SUBSYSTEMINFO_V40 +{ +/*×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬8-V6½âÂë×Óϵͳ£¬ + 9-V6×Óϵͳ£¬10-תÂë×Óϵͳ£¬11-X86·þÎñÆ÷×Óϵͳ£¬12-³¬¸ßÇåÊäÈë×Óϵͳ£¬13-X86ÖÐÐÄ·þÎñ°å£¬14- X86ÒµÎñ·þÎñ°å£¬15-¶àÏà»úÆ´½Ó×Óϵͳ£¬ 16-ÍøÂç¹âÏ˽»»»×Óϵͳ£¬17-X86Æ´½Ó×Óϵͳ£¬18-ÆÕͨƴ½Ó×Óϵͳ£¬19-ÒôƵ×Óϵͳ£¬0-NULL£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE bySubSystemType; + //×ÓϵͳͨµÀÊý£¬¶ÔÓÚÂë·Ö×Óϵͳ£¬´ú±í485´®¿ÚÊýÁ¿£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byChan; + BYTE byLoginType;//×¢²áÀàÐÍ£¬1-Ö±Á¬£¬2-DNS£¬3-»¨Éú¿Ç + BYTE bySlotNum ;//²ÛλºÅ£¬´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byRes1[4]; + NET_DVR_IPADDR struSubSystemIP; /*IPµØÖ·£¨¿ÉÐ޸ģ©*/ + NET_DVR_IPADDR struSubSystemIPMask;//×ÓÍøÑÚÂë + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ· */ + WORD wSubSystemPort; //×Óϵͳ¶Ë¿ÚºÅ£¨¿ÉÐ޸ģ© + BYTE byRes2[6]; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû £¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë(¿ÉÐÞ¸Ä)*/ + char sDomainName[MAX_DOMAIN_NAME];//ÓòÃû(¿ÉÐÞ¸Ä) + char sDnsAddress[MAX_DOMAIN_NAME];/*DNSÓòÃû»òIPµØÖ·*/ + BYTE sSerialNumber[SERIALNO_LEN];//ÐòÁкţ¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byBelongBoard;//ËùÊô×Ó°åºÅ£¬´Ó1¿ªÊ¼£¬0xff±íʾÎÞЧ + BYTE byInterfaceType;//½Ó¿ÚÀàÐÍ£¬0-ÎÞÀàÐÍ£¬1-BNC£¬2-VGA£¬3-HDMI£¬4-DVI£¬5-SDI, 6-FIBER, 7-RGB, 8-YPrPb, 9-VGA/HDMI/DVI×ÔÊÊÓ¦£¬10-3GSDI, 11-VGA/DVI×ÔÊÊÓ¦£¬12-HDTVI£¬13-HDBaseT£¬14-DP£¬15-DVIT£¬16-TVI,17-VSCREEN,18-miniDP,0xff-ÎÞЧ + BYTE byInterfaceNums;//½Ó¿Ú¸öÊý£¬0xff±íʾÎÞЧ + BYTE byInterfaceStartNum;//½Ó¿ÚÆðʼºÅ£¬0xff±íʾÎÞЧ + BYTE byDeviceName[20];//×ÓϵͳÃû³Æ + BYTE byAudioChanNums; //ÒôƵͨµÀ¸öÊý + BYTE byAudioChanStartNum; //ÒôƵͨµÀÆðʼºÅ + BYTE byAudioChanType;//ÒôƵͨµÀÀàÐÍ£¬0-ÎÞЧ£¬1-ÒôƵÊäÈ룬2-ÒôƵÊä³ö + BYTE byRes3[33]; +}NET_DVR_SUBSYSTEMINFO_V40, *LPNET_DVR_SUBSYSTEMINFO_V40; + +#define MAX_SUBSYSTEM_NUM_V40 120 +typedef struct tagNET_DVR_ALLSUBSYSTEMINFO_V40 +{ + DWORD dwSize; + NET_DVR_SUBSYSTEMINFO_V40 struSubSystemInfo[MAX_SUBSYSTEM_NUM_V40]; + BYTE byRes[8]; +}NET_DVR_ALLSUBSYSTEMINFO_V40, *LPNET_DVR_ALLSUBSYSTEMINFO_V40; + +typedef struct tagNET_DVR_SUBSYSTEM_BASIC_INFO +{ + DWORD dwSize; + /*×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬8-Fpga½âÂë×Óϵͳ£¬9-Fpga×Óϵͳ£¬10-תÂë×Óϵͳ£¬11-X86·þÎñÆ÷×Óϵͳ£¬12-³¬¸ßÇåÊäÈë×Óϵͳ£¬13-X86ÖÐÐÄ·þÎñ°å£¬ 14- X86ÒµÎñ·þÎñ°å£¬15-¶àÏà»úÆ´½Ó×Óϵͳ£¬ 16-ÍøÂç¹âÏ˽»»»×Óϵͳ£¬17-X86Æ´½Ó×Óϵͳ£¬18-ÆÕͨƴ½Ó×Óϵͳ£¬19-ÐźŽÓÈë×Óϵͳ,0-NULL£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE bySubSystemType; + //×ÓϵͳͨµÀÊý£¬¶ÔÓÚÂë·Ö×Óϵͳ£¬´ú±í485´®¿ÚÊýÁ¿£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE bySubSystemNo;//×ÓϵͳºÅ£¬´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byInterfaceType;//½Ó¿ÚÀàÐÍ£¬0-ÎÞÀàÐÍ£¬1-BNC£¬2-VGA£¬3-HDMI£¬4-DVI£¬5-SDI, 6-FIBER, 7-RGB, 8-YprPb, 9-VGA/HDMI/DVI×ÔÊÊÓ¦£¬10-3GSDI, 11-VGA/DVI×ÔÊÊÓ¦£¬12-HDTVI£¬13-HDBaseT£¬14-DP£¬15-DVIT£¬0xff-ÎÞЧ + BYTE byRes1; + DWORD dwChan; + NET_DVR_IPADDR struSubSystemIP; /*IPµØÖ·£¨¿ÉÐ޸ģ©*/ + NET_DVR_IPADDR struSubSystemIPMask;//×ÓÍøÑÚÂë + NET_DVR_IPADDR struGatewayIpAddr; /* Íø¹ØµØÖ· */ + WORD wSubSystemPort; //×Óϵͳ¶Ë¿ÚºÅ£¨¿ÉÐ޸ģ© + BYTE byRes2[6]; + BYTE sSerialNumber[SERIALNO_LEN];//ÐòÁкţ¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byBelongBoard;//ËùÊô×Ó°åºÅ£¬´Ó1¿ªÊ¼£¬0xff±íʾÎÞЧ£¬µ«µ±byBelongBoardH²»Îª0ʱ¸Ã×ֶοÉÒÔΪ0xff + BYTE byBelongBoardH; //ËùÊô×Ó°åºÅ¸ßλ + BYTE byRes3[2]; + BYTE byDeviceName[20];//×ÓϵͳÃû³Æ + DWORD dwStartChanNo;//ÆðʼͨµÀºÅ + BYTE byDevNo; //É豸ºÅ + BYTE byRes4[63]; +}NET_DVR_SUBSYSTEM_BASIC_INFO, *LPNET_DVR_SUBSYSTEM_BASIC_INFO; + +typedef struct NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE +{ + DWORD dwSize; + DWORD dwErrorCode; //´íÎó + BYTE byDevNo; //É豸ºÅ + BYTE bySubSystemNo;//×ÓϵͳºÅ + BYTE byRes[30]; +} NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE,*LPNET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE; + +typedef struct NET_DVR_CAMERA_INFO_RESPONSE +{ + DWORD dwErrorCode; //´íÎó + DWORD dwCamId; /*cam µÄͳһ±àºÅ*/ + BYTE byRes[4]; +} NET_DVR_CAMERA_INFO_RESPONSE,*LPNET_DVR_CAMERA_INFO_RESPONSE; + +typedef struct NET_DVR_MONITOR_INFO_RESPONSE +{ + DWORD dwErrorCode; //´íÎó + DWORD dwMonId; /*mon µÄͳһ±àºÅ*/ + BYTE byRes[4]; +} NET_DVR_MONITOR_INFO_RESPONSE, *LPNET_DVR_MONITOR_INFO_RESPONSE; + +typedef struct tagNET_DVR_AUDIO_INFO +{ + DWORD dwSize; + BYTE byAudioChanType;//ÒôƵͨµÀÀàÐÍ£¬1-ÒôƵÊäÈ룬2-ÒôƵÊä³ö + BYTE byRes1[3]; + DWORD dwAudioNo; //ÒôƵºÅ(1×Ö½ÚÉ豸ºÅ+1×Ö½Ú×Ó°åºÅ+2×Ö½ÚÒôƵ¿ÚºÅ) + BYTE byRes2[16]; +}NET_DVR_AUDIO_INFO, *LPNET_DVR_AUDIO_INFO; + + +typedef struct tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40 +{ + /*×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬8-V6½âÂë×Óϵͳ£¬9-V6×Óϵͳ£¬0-NULL£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE bySubSystemType; + BYTE byConnectStatus;//¼¶ÁªÏµÍ³¹ØÁª×´Ì¬£¬1-Á¬½ÓÕý³££¬2-Á¬½Ó¶Ï¿ª + BYTE byMatrixNum;//¼¶ÁªÊÓƵ×ÛºÏƽ̨ºÅ£¬×ÓϵͳÀàÐÍÊÇ3»ò4ʱ¿ÉÓà + BYTE bySubSystemNum;//¼¶Áª×Óϵͳ²ÛλºÅ£¬0~79£¬×ÓϵͳÀàÐÍÊÇ3»ò4ʱ¿ÉÓà + NET_DVR_DECSUBSYSTEMJIONSTATUS struDecSub [MATRIX_MAXDECSUBSYSTEMCHAN]; + BYTE byBindStatus;//°ó¶¨×´Ì¬£¬0-ûÓа󶨣¬1-ÒѾ­°ó¶¨£¨´óÆÁÆ´½ÓʱÓõ½£© + BYTE bySlotNum ;//²ÛλºÅ£¬´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + //×ÓϵͳÀàÐÍΪ1µÄʱ¿ÉÓã¬0-δ¹ØÁª£¬1-D1£¬2-720£¬3-1080 + BYTE byDecodeAbility; + BYTE byUsedTrunk; + BYTE byRes[64]; +}NET_DVR_SINGLESUBSYSTEMJOININFO_V40,LPNET_DVR_SINGLESUBSYSTEMJOININFO_V40; + +typedef struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40 +{ + DWORD dwSize; + NET_DVR_SINGLESUBSYSTEMJOININFO_V40 struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM_V40]; + BYTE byRes[48]; +}NET_DVR_ALLDECSUBSYSTEMJOININFO_V40, *LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V40; + +#define MAX_OPTICALFIBER_NUM 16 +typedef struct tagNET_DVR_SUBSYSTEM_ABILITY +{ +/*×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬8-V6½âÂë×Óϵͳ£¬9-V6×Óϵͳ£¬ + 10-תÂë×Óϵͳ£¬11-X86·þÎñÆ÷×Óϵͳ£¬°å£¬ 14- X86ÒµÎñ·þÎñ°å£¬15-¶àÏà»úÆ´½Ó×Óϵͳ£¬ 16-ÍøÂç¹âÏ˽»»»×Óϵͳ£¬17-X86Æ´½Ó×Óϵͳ£¬18-ÆÕͨƴ½Ó×Óϵͳ£¬0-NULL£¨´Ë²ÎÊý0-NULL£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE bySubSystemType; + BYTE byChanNum;//×ÓϵͳͨµÀÊý + BYTE byStartChan;//×ÓϵͳÆðʼͨµÀÊý + BYTE bySlotNum ;//²ÛλºÅ + BYTE byRes1[4]; + union + { + BYTE byRes[200]; + struct + { + BYTE byDecode; //ÊÇ·ñÊÇ´ø½âÂ빦ÄܵÄÖÇÄÜ°å,1-ÊÇ£¬0-·ñ + BYTE byNeedPreAllocDec; //ÊÇ·ñÐèÒªÔ¤·ÖÅä½âÂë×ÊÔ´£¬1-ÊÇ£¬0-·ñ + BYTE byVACType; //ÖÇÄÜ×ÓϵͳÀàÐÍ£¬0-ÆÕͨÐÍ£¬1-ÔöÇ¿ÐÍ + BYTE byRes[197]; + }struVACSystemAbility; + struct + { + BYTE byVGANums;//VGAÏÔʾͨµÀ¸öÊý£¨´Ó1¿ªÊ¼£© + BYTE byBNCNums;//BNCÏÔʾͨµÀ¸öÊý£¨´Ó9¿ªÊ¼£© + BYTE byHDMINums;//HDMIÏÔʾͨµÀ¸öÊý£¨´Ó25¿ªÊ¼£© + BYTE byDVINums;//DVIÏÔʾͨµÀ¸öÊý£¨´Ó29¿ªÊ¼£© + BYTE byLayerNums ;//´óÆÁÆ´½ÓÖУ¬×öÖ÷ÆÁʱËùÖ§³Öͼ²ãÊý + BYTE bySpartan;//³©ÏÔ¹¦ÄÜ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byDecType; //½âÂë×ÓϵͳÀàÐÍ£¬0-ÆÕͨÐÍ,1-ÔöÇ¿ÐÍ(ÆÕͨÐÍ·ÖÆÁʱǰ4´°¿ÚÐèʹÓÃ×ÔÉí×ÊÔ´£¬ÔöÇ¿ÐÍÎÞ´ËÏÞÖÆ£¬ÔöÇ¿ÐÍ×î¶à¿É±»ÆäËû×Óϵͳ½è16·D1½âÂë×ÊÔ´ + //ÔöÇ¿Ðͱ»´óÆÁ¹ØÁªÎª×ÓÆÁºó×ÊÔ´¿É±»½èÓã¬ÆÕͨÐÍÔò²»Äܱ»½èÓÃ) + //2-ÖÇÄܹØÁª½âÂë×Óϵͳ£¬3-תÂë¹ØÁª½âÂë×Óϵͳ£¨ÖÇÄܺÍתÂë¹ØÁª×Óϵͳ²»ÄÜÓÃÓÚ½âÂëÉÏǽ£© + BYTE byOutputSwitch;//ÊÇ·ñÖ§³ÖHDMI/DVI»¥ÏàÇл»£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE bySDINums;//SDIÏÔʾͨµÀ¸öÊý£¨´Ó33¿ªÊ¼£© + BYTE byRes1[38]; + BYTE byDecoderType ; //½âÂë°åÊÇ·ñÖ§³Ö¶à³§¼ÒÂëÁ÷½âÂ룬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byRes2[152]; + }struDecoderSystemAbility; + struct + { + BYTE byCoderType;//±àÂëÆ÷ÀàÐÍ£¬0-±êÇ壬1-¸ßÇå, 2-Ä£Äâ¸ßÇå + BYTE byOptical;//¹â¶Ë»ú½ÓÈ룬0-·ñ£¬1-ÊÇ + BYTE byOpticalSubChan; //ÿ¸ö¹â¿ÚÐŵÀÊý + BYTE bySupportAVSeparate;//ÊÇ·ñÖ§³ÖÒôÊÓƵ·ÖÀ룬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byRes[196]; + }struCoderSystemAbility; + struct + { + WORD wTrunkAbility;//¸ÉÏß´ø¿í£¬°´D1µÄ±ê×¼ºâÁ¿£¬Èç4±íʾ֧³Ö4¸öD1 + BYTE byOpticalFiberNum;//¹âÏËÌõÊý + BYTE byRes[197]; + }struInputSystemAbility; + struct + { + WORD wTrunkAbility;//¸ÉÏß´ø¿í£¬°´D1µÄ±ê×¼ºâÁ¿£¬Èç4±íʾ֧³Ö4¸öD1 + BYTE byOpticalFiberNum;//¹âÏËÌõÊý + BYTE byRes[197]; + }struOutputSystemAbility; + struct + { + BYTE by485Num;//Âë·Ö×ÓϵͳÖÐ485ÊýÁ¿ + BYTE bySlotNum;//ÿ¸ö485²ÛλÊý + BYTE byRes[198]; + }struCodeSpitterSystemAbility; + struct + { + WORD wAlarmInNums; + WORD wAlarmOutNums; + /* ±êʶ±¨¾¯ºÐÊÇ·ñÁ¬½Ó£¬ 1±íʾÒÑÁ¬½Ó£¬ Ϊ0 ±íʾδÁ¬½Ó */ + BYTE byAlarmBoxEnable[4][8]; + BYTE bySupportContact; /* ÊÓƵ×ÛºÏƽ̨ÄÚ²¿±¨¾¯Áª¶¯£¬0-²»Ö§³Ö,1-Ö§³Ö */ + BYTE byRes[163]; + }struAlarmHostSystemAbility; + struct + { + BYTE byOpticalFiberNum;//¹âÏËÌõÊý + BYTE byRes1[3]; + //¹âÏË´ø¿í£¬°´D1µÄ±ê×¼ºâÁ¿£¬Èç4±íʾ֧³Ö4¸öD1 + WORD wTrunkAbility[MAX_OPTICALFIBER_NUM/*16*/]; + BYTE byRes2[164]; + }struInOutputSystemAbility; + struct + { + BYTE bySupportRingProtocol; //ÊÇ·ñÖ§³Ö»·ÍøЭÒé + BYTE bySupportRingNums; //Ö§³Ö»·ÍøÊýÁ¿ + BYTE bySupportPortNums; //Ö§³ÖµÄ¶Ë¿ÚÊýÁ¿ + BYTE byRes[1]; + DWORD dwPortSupportRingProto; //ÿ¸ö¶Ë¿ÚÊÇ·ñÖ§³Ö»·ÍøЭÒ飬°´Î»Ë㣬1¡«32λ·Ö±ð±íʾ1¡«32¶Ë¿Ú£¬0-²»Ö§³Ö£¬1-±íʾ֧³Ö + BYTE byRes2[192]; + } struFiberSwitchSystemAbility; + }struAbility; +}NET_DVR_SUBSYSTEM_ABILITY, *LPNET_DVR_SUBSYSTEM_ABILITY; + +typedef struct tagNET_DVR_VIDEOPLATFORM_ABILITY_V40 +{ + DWORD dwSize; + BYTE byCodeSubSystemNums;//±àÂë×ÓϵͳÊýÁ¿ + BYTE byDecodeSubSystemNums;//½âÂë×ÓϵͳÊýÁ¿ + BYTE bySupportNat;//ÊÇ·ñÖ§³ÖNAT£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byInputSubSystemNums;//¼¶ÁªÊäÈë×ÓϵͳÊýÁ¿ + BYTE byOutputSubSystemNums;//¼¶ÁªÊä³ö×ÓϵͳÊýÁ¿ + BYTE byCodeSpitterSubSystemNums;//Âë·Ö×ÓϵͳÊýÁ¿ + BYTE byAlarmHostSubSystemNums;//±¨¾¯×ÓϵͳÊýÁ¿ + BYTE bySupportBigScreenNum;//ËùÖ§³Ö×î¶à×é³É´óÆÁµÄ¸öÊý + BYTE byVCASubSystemNums;//ÖÇÄÜ×ÓϵͳÊýÁ¿ + BYTE byV6SubSystemNums;//V6×ÓϵͳÊýÁ¿ + BYTE byV6DecoderSubSystemNums;//V6½âÂë×ÓϵͳÊýÁ¿ + BYTE bySupportBigScreenX;/*´óÆÁÆ´½ÓµÄģʽ£ºm¡Án*/ + BYTE bySupportBigScreenY; + BYTE bySupportSceneNums;//Ö§³Ö³¡¾°Ä£Ê½µÄ¸öÊý + BYTE byVcaSupportChanMode;//ÖÇÄÜÖ§³ÖµÄͨµÀʹÓÃģʽ£¬0-ʹÓýâÂëͨµÀ£¬1-ʹÓÃÏÔʾͨµÀ¼°×ÓͨµÀºÅ + BYTE bySupportScreenNums;//ËùÖ§³ÖµÄ´óÆÁµÄÆÁÄ»×î´ó¸öÊý + BYTE bySupportLayerNums;//ËùÖ§³ÖµÄͼ²ãÊý£¬0xff-ÎÞЧ + BYTE byNotSupportPreview;//ÊÇ·ñÖ§³ÖÔ¤ÀÀ,1-²»Ö§³Ö£¬0-Ö§³Ö + BYTE byNotSupportStorage;//ÊÇ·ñÖ§³Ö´æ´¢,1-²»Ö§³Ö£¬0-Ö§³Ö + BYTE byUploadLogoMode;//ÉÏ´«logoģʽ£¬0-ÉÏ´«¸ø½âÂëͨµÀ£¬1-ÉÏ´«¸øÏÔʾͨµÀ + NET_DVR_SUBSYSTEM_ABILITY struSubSystemAbility[MAX_SUBSYSTEM_NUM_V40]; + BYTE by485Nums;//485´®¿Ú¸öÊý + BYTE by232Nums;//232´®¿Ú¸öÊý + BYTE bySerieStartChan;//ÆðʼͨµÀ + BYTE byScreenMode;//´óÆÁģʽ£¬0-Ö÷ÆÁÓÉ¿Í»§¶Ë·ÖÅ䣬1-Ö÷ÆÁÓÉÉ豸¶Ë·ÖÅä + BYTE byDevVersion;//É豸°æ±¾£¬0-B10/B11/B12£¬1-B20 + BYTE bySupportBaseMapNums;//ËùÖ§³ÖµÄµ×ͼÊý£¬µ×ͼºÅ´Ó1¿ªÊ¼ + WORD wBaseLengthX;//ÿ¸öÆÁ´óСµÄ»ù×¼Öµ£¬B20ʹÓà + WORD wBaseLengthY; + BYTE bySupportPictureTrans; //ÊÇ·ñÖ§³ÖͼƬ»ØÏÔ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE bySupportPreAllocDec; //ÊÇ·ñÖ§³ÖÖÇÄܽâÂë×ÊÔ´Ô¤·ÖÅ䣬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE bySupportDecAutoManage; //ÊÇ·ñÖ§³Ö½âÂë×ÊÔ´¹ÜÀí + BYTE byTranDevSubSystemNums; //תÂë×ÓϵͳÊýÁ¿ + BYTE byFiberSwitchNums; //ÍøÂç¹âÏË×ÓϵͳÊýÁ¿ + BYTE byRes2[625]; +}NET_DVR_VIDEOPLATFORM_ABILITY_V40, *LPNET_DVR_VIDEOPLATFORM_ABILITY_V40; + +typedef struct tagNET_DVR_VIDEOPLATFORM_ABILITY +{ + DWORD dwSize; + BYTE byCodeSubSystemNums;//±àÂë×ÓϵͳÊýÁ¿ + BYTE byDecodeSubSystemNums;//½âÂë×ÓϵͳÊýÁ¿ + BYTE bySupportNat;//ÊÇ·ñÖ§³ÖNAT£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byInputSubSystemNums;//¼¶ÁªÊäÈë×ÓϵͳÊýÁ¿ + BYTE byOutputSubSystemNums;//¼¶ÁªÊä³ö×ÓϵͳÊýÁ¿ + BYTE byCodeSpitterSubSystemNums;//Âë·Ö×ÓϵͳÊýÁ¿ + BYTE byAlarmHostSubSystemNums;//±¨¾¯×ÓϵͳÊýÁ¿ + BYTE bySupportBigScreenNum;//ËùÖ§³Ö×î¶à´óÆÁÆ´½ÓÊýÁ¿ + BYTE byVCASubSystemNums;//ÖÇÄÜ×ÓϵͳÊýÁ¿ + BYTE byRes1[11]; + NET_DVR_SUBSYSTEM_ABILITY struSubSystemAbility[MAX_SUBSYSTEM_NUM]; + BYTE by485Nums;//485´®¿Ú¸öÊý + BYTE by232Nums;//485´®¿Ú¸öÊý + BYTE bySerieStartChan;//ÆðʼͨµÀ + BYTE byRes2[637]; +}NET_DVR_VIDEOPLATFORM_ABILITY, *LPNET_DVR_VIDEOPLATFORM_ABILITY; +//»ñÈ¡ÄÜÁ¦¼¯½Ó¿Ú + +//ģʽA +typedef struct tagNET_DVR_HOLIDATE_MODEA +{ + BYTE byStartMonth; // ¿ªÊ¼Ô ´Ó1¿ªÊ¼ + BYTE byStartDay; // ¿ªÊ¼ÈÕ ´Ó1¿ªÊ¼ + BYTE byEndMonth; // ½áÊøÔ + BYTE byEndDay; // ½áÊøÈÕ + BYTE byRes[4]; // ±£Áô×Ö½Ú +}NET_DVR_HOLIDATE_MODEA, *LPNET_DVR_HOLIDATE_MODEA; + +typedef struct tagNET_DVR_HOLIDATE_MODEB +{ + BYTE byStartMonth; // ´Ó1¿ªÊ¼ + BYTE byStartWeekNum; // µÚ¼¸¸öÐÇÆÚ ´Ó1¿ªÊ¼ + BYTE byStartWeekday; // ÐÇÆÚ¼¸ + BYTE byEndMonth; // ´Ó1¿ªÊ¼ + BYTE byEndWeekNum; // µÚ¼¸¸öÐÇÆÚ ´Ó1¿ªÊ¼ + BYTE byEndWeekday; // ÐÇÆÚ¼¸ + BYTE byRes[2]; // ±£Áô×Ö½Ú +}NET_DVR_HOLIDATE_MODEB, *LPNET_DVR_HOLIDATE_MODEB; + +typedef struct tagNET_DVR_HOLIDATE_MODEC +{ + WORD wStartYear; // Äê + BYTE byStartMon; // Ô + BYTE byStartDay; // ÈÕ + WORD wEndYear; // Äê + BYTE byEndMon; // Ô + BYTE byEndDay; // ÈÕ +}NET_DVR_HOLIDATE_MODEC, *LPNET_DVR_HOLIDATE_MODEC; + +typedef union tagNET_DVR_HOLIDATE_UNION +{ + // ÁªºÏÌå´óС 12×Ö½Ú + DWORD dwSize[3]; + NET_DVR_HOLIDATE_MODEA struModeA; // ģʽA + NET_DVR_HOLIDATE_MODEB struModeB; // ģʽB + NET_DVR_HOLIDATE_MODEC struModeC; // ģʽC +}NET_DVR_HOLIDATE_UNION, *LPNET_DVR_HOLIDATE_UNION; + +typedef enum tagHOLI_DATE_MODE +{ + HOLIDATE_MODEA = 0, + HOLIDATE_MODEB, + HOLIDATE_MODEC +}HOLI_DATE_MODE; + +typedef struct tagNET_DVR_HOLIDAY_PARAM +{ + BYTE byEnable; // ÊÇ·ñÆôÓà + BYTE byDateMode; // ÈÕÆÚģʽ 0-ģʽA 1-ģʽB 2-ģʽC + BYTE byRes1[2]; // ±£Áô×Ö½Ú + NET_DVR_HOLIDATE_UNION uHolidate; // ¼ÙÈÕÈÕÆÚ + BYTE byName[NAME_LEN]; // ¼ÙÈÕÃû³Æ + BYTE byRes2[20]; // ±£Áô×Ö½Ú +}NET_DVR_HOLIDAY_PARAM, *LPNET_DVR_HOLIDAY_PARAM; + +#define MAX_HOLIDAY_NUM 32 + +typedef struct tagNET_DVR_HOLIDAY_PARAM_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_HOLIDAY_PARAM struHolidayParam[MAX_HOLIDAY_NUM]; // ¼ÙÈÕ²ÎÊý + DWORD byRes[40]; // ±£Áô²ÎÊý +}NET_DVR_HOLIDAY_PARAM_CFG, *LPNET_DVR_HOLIDAY_PARAM_CFG; + +// ¼ÙÈÕ±¨¾¯´¦Àí·½Ê½ +typedef struct tagNET_DVR_HOLIDAY_HANDLE +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_SCHEDTIME struAlarmTime[MAX_TIMESEGMENT_V30]; // ²¼·Àʱ¼ä¶Î + BYTE byRes2[240]; // ±£Áô×Ö½Ú +}NET_DVR_HOLIDAY_HANDLE, *LPNET_DVR_HOLIDAY_HANDLE; + +typedef struct tagNET_DVR_HOLIDAY_HANDLE_COND +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + DWORD dwSMDHandleType; //¼òÒ×ÖÇÄܼÙÈÕ²¼·ÀÀàÐÍ 0-ÒôƵÒì³£Õì²â£¬1-Ðé½¹Õì²â£¬2-³¡¾°±ä¸üÕì²â + BYTE byRes2[32]; // ±£Áô×Ö½Ú +}NET_DVR_HOLIDAY_HANDLE_COND, *LPNET_DVR_HOLIDAY_HANDLE_COND; + +typedef struct tagNET_DVR_HOLIDAY_RECORD +{ + DWORD dwSize; + NET_DVR_RECORDDAY struRecDay; // ¼Ïñ²ÎÊý + NET_DVR_RECORDSCHED struRecordSched[MAX_TIMESEGMENT_V30]; // ¼Ïñʱ¼ä¶Î + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_DVR_HOLIDAY_RECORD, *LPNET_DVR_HOLIDAY_RECORD; + +#define MAX_LINK_V30 128 + +typedef struct tagNET_DVR_ONE_LINK +{ + NET_DVR_IPADDR struIP; // ¿Í»§¶ËIP + LONG lChannel; // ͨµÀºÅ + BYTE byRes[32]; // ±£Áô×Ö½Ú +}NET_DVR_ONE_LINK, *LPNET_DVR_ONE_LINK; + +typedef struct tagNET_DVR_LINK_STATUS +{ + DWORD dwSize; // ½á¹¹Ìå´óС + WORD wLinkNum; // Á¬½ÓµÄÊýÄ¿ + BYTE byRes1[2]; // ±£Áô×Ö½Ú + NET_DVR_ONE_LINK struOneLink[MAX_LINK_V30]; // Á¬½ÓµÄ¿Í»§¶ËÐÅÏ¢ + BYTE byRes[32]; // ±£Áô×Ö½Ú +}NET_DVR_LINK_STATUS, *LPNET_DVR_LINK_STATUS; + +#define MAX_BOND_NUM 2 + +typedef struct tagNET_DVR_ONE_BONDING +{ + BYTE byMode; // ¹¤×÷ģʽ0 - ÍøÂçÈÝ´í 1 - ¸ºÔؾùºâ + BYTE byUseDhcp; // ÊÇ·ñʹÄÜdhcp + BYTE byMasterCard; // Ö¸¶¨ÄÄÕÅÍø¿¨ÎªÖ÷Íø¿¨ + BYTE byStatus; // BONDINGµÄ״̬ 0 - Òì³£ 1-Õý³£ Ö»ÄÜ»ñÈ¡²»ÄÜÉèÖà + BYTE byBond[MAX_NETWORK_CARD];// byBond[0]== 1 ±íʾʹÓÃeh0 0±íʾ²»Ê¹ÓÃeh0 + NET_DVR_ETHERNET_V30 struEtherNet; // Íø¿¨²ÎÊý + NET_DVR_IPADDR struGatewayIpAddr; // Íø¹ØµØÖ· + BYTE byEnableDNS; //DNSʹÄÜ, 0-¹Ø±Õ£¬1-´ò¿ª + BYTE byBondMode; //°ó¶¨·½Ê½, 0-ÎÞЧ£¬1-Ö÷±¸Ä£Ê½£¬2-ÂÖתģʽ£¬3-XORģʽ£¬4-¹ã²¥Ä£Ê½£¬5-802.3adģʽ£¬6-T1bģʽ£¬7-ÐéÄ⻯ģʽ + BYTE byRes1[2]; + BYTE byBond2[MAX_NETWORK_CARD_EX/*12*/];// byBond2[0]== 1 ±íʾʹÓÃeh4 0±íʾ²»Ê¹ÓÃeh4£¬»ùÓÚbyBondÀ©Õ¹ + BYTE byRes[4];// ±£Áô×Ö½Ú +}NET_DVR_ONE_BONDING, *LPNET_DVR_ONE_BONDING; + +typedef struct tagNET_DVR_NETWORK_BONDING +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; // ÊÇ·ñÆôÓÃbonding¹¦ÄÜ + BYTE byNum; // BondingÍø¿¨µÄ¸öÊý + BYTE byRes1[2]; // ±£Áô×Ö½Ú + NET_DVR_ONE_BONDING struOneBond[MAX_BOND_NUM]; + BYTE byRes2[40]; // ±£Áô×Ö½Ú +}NET_DVR_NETWORK_BONDING, *LPNET_DVR_NETWORK_BONDING; + + +// ´ÅÅÌÅä¶î +typedef struct tagNET_DVR_DISK_QUOTA +{ + BYTE byQuotaType; // ´ÅÅÌÅä¶îÀàÐÍ,1 - °´ÈÝÁ¿ 2-°´±ÈÀý£¬3-°´Ê±¼ä + BYTE byRes1[5]; // ±£Áô×Ö½Ú + WORD wStoragePeriod; //¼Ïñ´æ´¢ÖÜÆÚ£¬µ¥Î»Ì죬Åä¶îÀàÐÍΪ°´Ê±¼äʱÓÐЧ + DWORD dwHCapacity; // ·ÖÅäµÄ´ÅÅÌÈÝÁ¿¸ß32λ µ¥Î»MB + DWORD dwLCapacity; // ·ÖÅäµÄ´ÅÅÌÈÝÁ¿µÍ32λ µ¥Î»MB + DWORD dwHUsedSpace; // ÒÑʹÓõĴÅÅÌ´óС¸ß32λ µ¥Î»MB + DWORD dwLUsedSpace; // ÒÑʹÓõĴÅÅÌ´óСµÍ32λ µ¥Î»MB + BYTE byQuotaRatio; // ·ÖÅäµÄ´ÅÅ̱ÈÀý,µ¥Î»:% + BYTE byRes2[21]; // ±£Áô×Ö½Ú +}NET_DVR_DISK_QUOTA, *LPNET_DVR_DISK_QUOTA; + +typedef struct tagNET_DVR_DISK_QUOTA_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_DISK_QUOTA struPicQuota; // ͼƬÅä¶î + NET_DVR_DISK_QUOTA struRecordQuota; // ¼ÏñÅä¶î + NET_DVR_DISK_QUOTA struAddInfoQuota; // ¸½¼ÓÐÅÏ¢Åä¶î (ÓÃÓÚÔÆ´æ´¢·þÎñÆ÷£¬Ä¿Ç°Ö§³ÖµÄ¸½¼ÓÐÅÏ¢ÓУºÈȶÈͼ¡¢¿ÍÁ÷Á¿) + BYTE byRes[12]; //±£Áô×Ö½Ú +}NET_DVR_DISK_QUOTA_CFG, *LPNET_DVR_DISK_QUOTA_CFG; + +typedef struct tagNET_DVR_DISK_QUOTA_V60 +{ + BYTE byQuotaType; // ´ÅÅÌÅä¶îÀàÐÍ,1 - °´ÈÝÁ¿ 2-°´±ÈÀý£¬3-°´Ê±¼ä + BYTE byRes1[5]; // ±£Áô×Ö½Ú + WORD wStoragePeriod; //¼Ïñ´æ´¢ÖÜÆÚ£¬µ¥Î»Ì죬Åä¶îÀàÐÍΪ°´Ê±¼äʱÓÐЧ + DWORD dwHCapacity; // ·ÖÅäµÄ´ÅÅÌÈÝÁ¿¸ß32λ µ¥Î»MB + DWORD dwLCapacity; // ·ÖÅäµÄ´ÅÅÌÈÝÁ¿µÍ32λ µ¥Î»MB + DWORD dwHUsedSpace; // ÒÑʹÓõĴÅÅÌ´óС¸ß32λ µ¥Î»MB + DWORD dwLUsedSpace; // ÒÑʹÓõĴÅÅÌ´óСµÍ32λ µ¥Î»MB + BYTE byQuotaRatio; // ·ÖÅäµÄ´ÅÅ̱ÈÀý,µ¥Î»:% + BYTE byRes2[23]; // ±£Áô×Ö½Ú +}NET_DVR_DISK_QUOTA_V60, *LPNET_DVR_DISK_QUOTA_V60; + +typedef struct tagNET_DVR_DISK_QUOTA_CFG_V60 +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_DISK_QUOTA_V60 struPicQuota; // ͼƬÅä¶î + NET_DVR_DISK_QUOTA_V60 struRecordQuota; // ¼ÏñÅä¶î + NET_DVR_DISK_QUOTA_V60 struAddInfoQuota; // ¸½¼ÓÐÅÏ¢Åä¶î (ÓÃÓÚÔÆ´æ´¢·þÎñÆ÷£¬Ä¿Ç°Ö§³ÖµÄ¸½¼ÓÐÅÏ¢ÓУºÈȶÈͼ¡¢¿ÍÁ÷Á¿) + NET_DVR_DISK_QUOTA_V60 struPubInfoFile; // ·¢²¼ÐÅÏ¢ÎļþÅä¶î°Ù·Ö±È + BYTE byRes[256]; //±£Áô×Ö½Ú×Ö½Ú +}NET_DVR_DISK_QUOTA_CFG_V60, *LPNET_DVR_DISK_QUOTA_CFG_V60; + + +typedef struct tagNET_DVR_TIMING_CAPTURE +{ + NET_DVR_JPEGPARA struJpegPara; // ¶¨Ê±×¥Í¼Í¼Æ¬ÖÊÁ¿ + DWORD dwPicInterval; // ¶¨Ê±×¥Í¼Ê±¼ä¼ä¸ô,µ¥Î»s 1-1s 2-2s 3-3s 4-4s 5-5s + // 6-10m 7-30m 8-1h 9-12h 10-24h + BYTE byRes[12]; // ±£Áô×Ö½Ú +}NET_DVR_TIMING_CAPTURE, *LPNET_DVR_TIMING_CAPTURE; + +typedef struct tagNET_DVR_REL_CAPTURE_CHAN +{ + BYTE byChan[16]; // °´Î»±íʾ + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_DVR_REL_CAPTURE_CHAN, *LPNET_DVR_REL_CAPTURE_CHAN; + +#define MAX_PIC_EVENT_NUM 32 +#define MAX_ALARMIN_CAPTURE 16 + +typedef struct tagNET_DVR_REL_CAPTURE_CHAN_V40 +{ + DWORD dwMaxRelCaptureChanNum; //×î´ó¿É´¥·¢µÄ¹ØÁªÍ¨µÀÊý-Ö»¶ÁÊôÐÔ + DWORD dwChanNo[MAX_CHANNUM_V40]; //´¥·¢µÄ¹ØÁª×¥Í¼Í¨µÀºÅ£¬°´Öµ±íʾ£¬²ÉÓýô´ÕÐÍÅÅÁÐ,0xffffffff±íʾºóÐøÎÞЧ + BYTE byRes[32]; +}NET_DVR_REL_CAPTURE_CHAN_V40, *LPNET_DVR_REL_CAPTURE_CHAN_V40; + +typedef struct tagNET_DVR_EVENT_CAPTURE_V40 +{ + NET_DVR_JPEGPARA struJpegPara; // ʼþץͼͼƬÖÊÁ¿ + DWORD dwPicInterval; // ʼþץͼʱ¼ä¼ä¸ô µ¥Î»ÎªÃë + NET_DVR_REL_CAPTURE_CHAN_V40 struRelCaptureChan[MAX_PIC_EVENT_NUM]; // Êý×éϱê 0 Òƶ¯Õì²â´¥·¢×¥Í¼ 1 ÊÓƵÕÚµ²´¥·¢×¥Í¼ 2 ÊÓƵ¶ªÊ§´¥·¢×¥Í¼,Êý×é3±íʾPIR±¨¾¯×¥Í¼£¬Êý×é4±íʾÎÞÏß±¨¾¯×¥Í¼£¬Êý×é5±íʾºô¾È±¨¾¯×¥Í¼,Êý×é6±íʾÖÇÄÜץͼ + NET_DVR_REL_CAPTURE_CHAN_V40 struAlarmInCapture[MAX_ALARMIN_CAPTURE]; // ±¨¾¯ÊäÈë´¥·¢×¥Í¼£¬Ï±ê0 ´ú±í±¨¾¯ÊäÈë1 ÒÀ´ÎÀàÍÆ + DWORD dwMaxGroupNum; //É豸֧³ÖµÄ×î´ó±¨¾¯ÊäÈë×éÊý£¬Ã¿×é16¸ö±¨¾¯ÊäÈë + BYTE byCapTimes; //ץͼÕÅÊý + BYTE byRes[59]; +}NET_DVR_EVENT_CAPTURE_V40, *LPNET_DVR_EVENT_CAPTURE_V40; + + +typedef struct tagNET_DVR_EVENT_CAPTURE +{ + NET_DVR_JPEGPARA struJpegPara; // ʼþץͼͼƬÖÊÁ¿ + DWORD dwPicInterval; // ʼþץͼʱ¼ä¼ä¸ô µ¥Î»ÎªÃë 1-1s 2-2s 3-3s 4-4s 5-5s + // 6-10m 7-30m 8-1h 9-12h 10-24h + /* + Êý×éϱê 0 Òƶ¯Õì²â´¥·¢×¥Í¼ 1 ÊÓƵÕÚµ²´¥·¢×¥Í¼£¬2 ÊÓƵ¶ªÊ§´¥·¢×¥Í¼,Êý×é3±íʾPIR±¨¾¯×¥Í¼£¬ + Êý×é4±íʾÎÞÏß±¨¾¯×¥Í¼£¬Êý×é5±íʾºô¾È±¨¾¯×¥Í¼,Êý×é6±íʾÖÇÄÜץͼ,Êý×é7 ±íʾÈËÁ³Õì²âץͼ£¬ + Êý×é8 ±íʾ-Ô½½çÕì²âÕì²âץͼ£¬Êý×é9 ±íʾÇøÓòÈëÇÖÕì²âץͼ,Êý×é10±íʾ³¡¾°±ä¸üÕì²âץͼ, + Êý×é11-½øÈëÇøÓòÕì²â,Êý×é12-À뿪ÇøÓòÕì²â,Êý×é13-ÅÇ»²Õì²â,Êý×é14-ÈËÔ±¾Û¼¯Õì²â,Êý×é15-¿ìËÙÔ˶¯Õì²â, + Êý×é16-Í£³µÕì²â,Êý×é17-ÎïÆ·ÒÅÁôÕì²â,Êý×é18-ÎïÆ·ÄÃÈ¡Õì²â¡£ + */ + NET_DVR_REL_CAPTURE_CHAN struRelCaptureChan[MAX_PIC_EVENT_NUM]; + NET_DVR_REL_CAPTURE_CHAN struAlarmInCapture[MAX_ALARMIN_CAPTURE]; // ±¨¾¯ÊäÈë´¥·¢×¥Í¼£¬Ï±ê0 ´ú±í±¨¾¯ÊäÈë1 ÒÀ´ÎÀàÍÆ + BYTE byCapTimes; //ץͼÕÅÊý + BYTE byRes[59]; +}NET_DVR_EVENT_CAPTURE, *LPNET_DVR_EVENT_CAPTURE; + +typedef struct tagNET_DVR_JPEG_CAPTURE_CFG_V40 +{ + DWORD dwSize; //½á¹¹Ì峤¶È + NET_DVR_TIMING_CAPTURE struTimingCapture; + NET_DVR_EVENT_CAPTURE_V40 struEventCapture; + BYTE byStreamType;//ץͼÂëÁ÷ÀàÐÍ 0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷ + BYTE byRes3[19]; // ±£Áô×Ö½Ú +}NET_DVR_JPEG_CAPTURE_CFG_V40, *LPNET_DVR_JPEG_CAPTURE_CFG_V40; + +typedef struct tagNET_DVR_JPEG_CAPTURE_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_TIMING_CAPTURE struTimingCapture; + NET_DVR_EVENT_CAPTURE struEventCapture; + BYTE byStreamType;//ץͼÂëÁ÷ÀàÐÍ 0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷ + BYTE byRes3[19]; // ±£Áô×Ö½Ú +}NET_DVR_JPEG_CAPTURE_CFG, *LPNET_DVR_JPEG_CAPTURE_CFG; + +typedef struct tagNET_DVR_CAPTURE_DAY +{ + BYTE byAllDayCapture; // ÊÇ·ñÈ«Ììץͼ + BYTE byCaptureType; // ץͼÀàÐÍ£º0-¶¨Ê±×¥Í¼£¬1-Òƶ¯Õì²âץͼ£¬2-±¨¾¯×¥Í¼£¬3-Òƶ¯Õì²â»ò±¨¾¯×¥Í¼£¬4-Òƶ¯Õì²âºÍ±¨¾¯×¥Í¼£¬6-ÖÇÄܱ¨¾¯×¥Í¼,7-ÖÇÄÜÕì²âץͼ£¬8-È«²¿Ê¼þ ,39-ÀëÏß²âÎÂץͼ,40-·ÀÇø±¨¾¯£¬41-½ô¼±ÇóÖú,42ÒµÎñ×Éѯ 43-·ÏÆøÅŷżà²â 44-»Ò¶È±¨¾¯ + BYTE byRes[2]; +}NET_DVR_CAPTURE_DAY, *LPNET_DVR_CAPTURE_DAY; + +typedef struct tagNET_DVR_CAPTURE_SCHED +{ + NET_DVR_SCHEDTIME struCaptureTime; // ץͼʱ¼ä¶Î + BYTE byCaptureType; // ץͼÀàÐÍ£º0-¶¨Ê±×¥Í¼£¬1-Òƶ¯Õì²âץͼ£¬2-±¨¾¯×¥Í¼£¬3-Òƶ¯Õì²â»ò±¨¾¯×¥Í¼£¬4-Òƶ¯Õì²âºÍ±¨¾¯×¥Í¼£¬6-ÖÇÄܱ¨¾¯×¥Í¼,7-ÖÇÄÜÕì²âץͼ£¬8-È«²¿Ê¼þ ,39-ÀëÏß²âÎÂץͼ ,40-·ÀÇø±¨¾¯£¬41-½ô¼±ÇóÖú,42ÒµÎñ×Éѯ 43-·ÏÆøÅŷżà²â 44-»Ò¶È±¨¾¯ + BYTE byRes[3]; // ±£Áô×Ö½Ú +}NET_DVR_CAPTURE_SCHED, *LPNET_DVR_CAPTURE_SCHED; + +// ͨµÀץͼ¼Æ»® +typedef struct tagNET_DVR_SCHED_CAPTURECFG +{ + DWORD dwSize; // ½á¹¹Ìå + BYTE byEnable; // ÊÇ·ñץͼ + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_CAPTURE_DAY struCaptureDay[MAX_DAYS]; // È«Ììץͼ¼Æ»® + NET_DVR_CAPTURE_SCHED struCaptureSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; // ʱ¼ä¶Îץͼ²¼·À¼Æ»® + NET_DVR_CAPTURE_DAY struCaptureHoliday; // ¼ÙÈÕץͼ¼Æ»® + NET_DVR_CAPTURE_SCHED struHolidaySched[MAX_TIMESEGMENT_V30]; // ʱ¼ä¶Î¼ÙÈÕץͼ²¼·À¼Æ»® + DWORD dwRecorderDuration; // ץͼ±£´æ×ʱ¼ä 0xffffffff±íʾ¸ÃÖµÎÞЧ + DWORD dwDelayTime; /* ץͼÑÓʱʱ¼ä 0- ÎÞÑÓʱ£¬ 1-3Ã룬 2-4Ã룬 3-5Ã룬 4-10Ã룬 5-30Ã룬 6-60Ã룬 7- 120Ã룬8-300Ãë*/ + BYTE byRes[36]; // ±£Áô×Ö½Ú +}NET_DVR_SCHED_CAPTURECFG, *LPNET_DVR_SCHED_CAPTURECFG; + + +typedef struct tagNET_DVR_FLOW_TEST_PARAM +{ + DWORD dwSize; //½á¹¹´óС + LONG lCardIndex; //Íø¿¨Ë÷Òý + DWORD dwInterval; //É豸ÉÏ´«Á÷Á¿Ê±¼ä¼ä¸ô, µ¥Î»:100ms + BYTE byRes[8]; //±£Áô×Ö½Ú +}NET_DVR_FLOW_TEST_PARAM, *LPNET_DVR_FLOW_TEST_PARAM; + +typedef struct tagNET_DVR_FLOW_INFO +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwSendFlowSize; //·¢ËÍÁ÷Á¿´óС,µ¥Î»kbps + DWORD dwRecvFlowSize; //½ÓÊÕÁ÷Á¿´óС,µ¥Î»kbps + BYTE byRes[20]; //±£Áô +}NET_DVR_FLOW_INFO, *LPNET_DVR_FLOW_INFO; + +// ¼Ïñ±êÇ© +#define LABEL_NAME_LEN 40 +typedef struct tagNET_DVR_RECORD_LABEL +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_TIME struTimeLabel; // ±êÇ©µÄʱ¼ä + BYTE byQuickAdd; // ÊÇ·ñ¿ìËÙÌí¼Ó ¿ìËÙÌí¼Óʱ±êÇ©Ãû³ÆÎÞЧ + BYTE byRes1[3]; // ±£Áô×Ö½Ú + BYTE sLabelName[LABEL_NAME_LEN]; // ±êÇ©µÄÃû³Æ ³¤¶ÈΪ40×Ö½Ú + BYTE byRes2[40]; // ±£Áô×Ö½Ú +}NET_DVR_RECORD_LABEL, *LPNET_DVR_RECORD_LABEL; + +#define LABEL_IDENTIFY_LEN 64 +typedef struct tagNET_DVR_LABEL_IDENTIFY +{ + BYTE sLabelIdentify[LABEL_IDENTIFY_LEN]; // 64×Ö½Ú±êʶ + BYTE byRes[8]; // ±£Áô×Ö½Ú +}NET_DVR_LABEL_IDENTIFY, *LPNET_DVR_LABEL_IDENTIFY; + +#define MAX_DEL_LABEL_IDENTIFY 20// ɾ³ýµÄ×î´ó±êÇ©±êʶ¸öÊý + +typedef struct tagNET_DVR_DEL_LABEL_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byMode; // °´Î»±íʾ,0x01±íʾ°´±êʶɾ³ý + BYTE byRes1; + WORD wLabelNum; // ±êÇ©ÊýÄ¿ + NET_DVR_LABEL_IDENTIFY struIndentify[MAX_DEL_LABEL_IDENTIFY]; // ±êÇ©±êʶ + BYTE byRes2[160]; //±£Áô×Ö½Ú +}NET_DVR_DEL_LABEL_PARAM, *LPNET_DVR_DEL_LABEL_PARAM; + +typedef struct tagNET_DVR_MOD_LABEL_PARAM +{ + NET_DVR_LABEL_IDENTIFY struIndentify; //ÒªÐ޸ĵıêÇ©±êʶ + BYTE byRes1[24]; + BYTE sLabelName[LABEL_NAME_LEN]; //Ð޸ĺóµÄ±êÇ©Ãû³Æ + BYTE byRes2[40]; +}NET_DVR_MOD_LABEL_PARAM, *LPNET_DVR_MOD_LABEL_PARAM; + +// ±êÇ©ËÑË÷½á¹¹Ìå +typedef struct tagNET_DVR_FIND_LABEL +{ + DWORD dwSize; // ½á¹¹Ìå´óС + LONG lChannel; // ²éÕÒµÄͨµÀ + NET_DVR_TIME struStartTime; // ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime; // ½áÊøʱ¼ä + BYTE sLabelName[LABEL_NAME_LEN]; // ¼Ïñ±êÇ©Ãû³Æ Èç¹û±êÇ©Ãû³ÆΪ¿Õ£¬ÔòËÑË÷Æðֹʱ¼äËùÓбêÇ© + BYTE byDrawFrame; //0:²»³éÖ¡£¬1£º³éÖ¡ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes[34]; // ±£Áô×Ö½Ú +}NET_DVR_FIND_LABEL, *LPNET_DVR_FIND_LABEL; + +// ±êÇ©ÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_DVR_FINDLABEL_DATA +{ + BYTE sLabelName[LABEL_NAME_LEN]; // ±êÇ©Ãû³Æ + NET_DVR_TIME struTimeLabel; // ±êǩʱ¼ä + NET_DVR_LABEL_IDENTIFY struLabelIdentify; // ±êÇ©±êʶ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes[29]; // ±£Áô×Ö½Ú +}NET_DVR_FINDLABEL_DATA, *LPNET_DVR_FINDLABEL_DATA; + +#define CARDNUM_LEN_V30 40 +//¹ú¼Òö¾Ù +typedef enum _COUNTRY_INDEX_ +{ + COUNTRY_NONSUPPORT = 0, //0-Ëã·¨¿â²»Ö§³ÖÅÆʶ¹ú¼Ò + /*Îå´óÖÞ Ò»¹²ÓÐ235¹ú¼ÒºÍµØÇø */ + /*Å·ÖÞ 48¸ö¹ú¼ÒºÍµØÇø ÆäÖÐ ÈûÆÖ·˹(Cyprus)ÊôÓÚÑÇÅ·Á½ÖÞ½»½ç¹ú¼Ò*/ + COUNTRY_CZE = 1, //Czech Republic ½Ý¿Ë¹²ºÍ¹ú + COUNTRY_FRA = 2, //France ·¨¹ú + COUNTRY_DEU = 3, //Germany µÂ¹ú + COUNTRY_ESP = 4, //Spain Î÷°àÑÀ + COUNTRY_ITA = 5, //Italy Òâ´óÀû + COUNTRY_NLD = 6, //Netherlands ºÉÀ¼ + COUNTRY_POL = 7, //Poland ²¨À¼ + COUNTRY_SVK = 8, //Slovakia ˹Âå·¥¿Ë + COUNTRY_BLR = 9, //Belarus °×¶íÂÞ˹ + COUNTRY_MDA = 10, //Moldova Ħ¶û¶àÍß + COUNTRY_RUS = 11, //Russia ¶íÂÞ˹ + COUNTRY_UKR = 12, //Ukraine ÎÚ¿ËÀ¼ + COUNTRY_BEL = 13, //Belgium ±ÈÀûʱ + COUNTRY_BGR = 14, //Bulgaria ±£¼ÓÀûÑÇ + COUNTRY_DNK = 15, //Denmark µ¤Âó + COUNTRY_FIN = 16, //Finland ·ÒÀ¼ + COUNTRY_GBR = 17, //United Kingdom Ó¢¹ú + COUNTRY_GRC = 18, //Greece Ï£À° + COUNTRY_HRV = 19, //Croatia ¿ËÂÞµØÑÇ + COUNTRY_HUN = 20, //Hungary ÐÙÑÀÀû + COUNTRY_ISR = 21, //Israel ÒÔÉ«ÁÐ(ÑÇÖÞ) + COUNTRY_LUX = 22, //Luxembourg ¬ɭ±¤ + COUNTRY_MKD = 23, //Macedonia ÂíÆä¶Ù¹²ºÍ¹ú + COUNTRY_NOR = 24, //Norway ŲÍþ + COUNTRY_PRT = 25, //Portuga ÆÏÌÑÑÀ + COUNTRY_ROU = 26, //Romania ÂÞÂíÄáÑÇ + COUNTRY_SRB = 27, //Serbia Èû¶ûάÑÇ + COUNTRY_AZE = 28, //Azerbaijan °¢Èû°î½®¹²ºÍ¹ú(ÑÇÖÞ) + COUNTRY_GEO = 29, //Georgia ¸ñ³¼ªÑÇ(ÑÇÖÞ) + COUNTRY_KAZ = 30, //Kazakhstan ¹þÈø¿Ë˹̹(ÑÇÖÞ) + COUNTRY_LTU = 31, //Lithuania Á¢ÌÕÍ𹲺͹ú + COUNTRY_TKM = 32, //Turkmenistan ÍÁ¿âÂü˹̹(ÑÇÖÞ) + COUNTRY_UZB = 33, //Uzbekistan ÎÚ×ȱð¿Ë˹̹(ÑÇÖÞ) + COUNTRY_LVA = 34, //Latvia À­ÍÑάÑÇ + COUNTRY_EST = 35, //Estonia °®É³ÄáÑÇ + COUNTRY_ALB = 36, //Albania °¢¶û°ÍÄáÑÇ + COUNTRY_AUT = 37, //Austria °ÂµØÀû + COUNTRY_BIH = 38, //Bosnia and Herzegovina ²¨Ë¹ÄáÑǺͺÚÈû¸çάÄÇ + COUNTRY_IRL = 39, //Ireland °®¶ûÀ¼ + COUNTRY_ISL = 40, //Iceland ±ùµº + COUNTRY_VAT = 41, //Vatican èóµÙ¸Ô + COUNTRY_MLT = 42, //Malta Âí¶úËû + COUNTRY_SWE = 43, //Sweden Èðµä + COUNTRY_CHE = 44, //Switzerland ÈðÊ¿ + COUNTRY_CYP = 45, //Cyprus ÈûÆÖ·˹ + COUNTRY_TUR = 46, //Turkey ÍÁ¶úÆä + COUNTRY_SVN = 47, //Slovenia ˹ÂåÎÄÄáÑÇ + COUNTRY_MTG = 48, //Montenegro ºÚɽ¹²ºÍ¹ú + COUNTRY_KOV = 49, //Kosovo ¿ÆË÷ÎÖ + COUNTRY_ADR = 50, //Andorra °²µÀ¶û + COUNTRY_ARM = 51, //Armenia ÑÇÃÀÄáÑÇ(ÑÇÖÞ) + COUNTRY_MON = 52, //Monaco ĦÄɸç + COUNTRY_LIE = 53, //Liechtenstein ÁÐÖ§¶ØÊ¿µÇ + COUNTRY_SMO = 54, //San Marino Ê¥ÂíÁ¦Åµ + COUNTRY_ORN = 55, //Aland °ÂÀ¼(·ÒÀ¼×ÔÖÎÇø) + COUNTRY_RES2 = 56, //±£Áô×ֶΠ+ COUNTRY_RES3 = 57, //±£Áô×ֶΠ+ COUNTRY_RES4 = 58, //±£Áô×ֶΠ+ /*ÑÇÖÞ 48¸ö¹ú¼Ò ÆäÖÐ ÈûÆÖ·˹(Cyprus)ÊôÓÚÑÇÅ·Á½ÖÞ½»½ç¹ú¼Ò*/ + COUNTRY_CHI = 59, //China Öйú + COUNTRY_IBN = 60, //In bahrain °ÍÁÖ + COUNTRY_SKR = 61, //South Korea º«¹ú + COUNTRY_LEB = 62, //Lebanon Àè°ÍÄÛ + COUNTRY_NEP = 63, //Nepal Äá²´¶û + COUNTRY_THA = 64, //Thailand Ì©¹ú + COUNTRY_PAK = 65, //Pakistan °Í»ù˹̹ + COUNTRY_EMI = 66, //The united Arab emirates °¢À­²®ÁªºÏÇõ³¤¹ú + COUNTRY_BHU = 67, //Bhutan ²»µ¤ + COUNTRY_OMA = 68, //Oman °¢Âü + COUNTRY_KOR = 69, //North Korea ³¯ÏÊ + COUNTRY_PHI = 70, //The Philippines ·ÆÂɱö + COUNTRY_CAM = 71, //Cambodia ¼íÆÒÕ¯ + COUNTRY_QAT = 72, //Qatar ¿¨Ëþ¶û + COUNTRY_KYR = 73, //Kyrgyzstan ¼ª¶û¼ªË¹Ë¹Ì¹ + COUNTRY_MAL = 74, //The maldives Âí¶û´ú·ò + COUNTRY_MLY = 75, //Malaysia ÂíÀ´Î÷ÑÇ + COUNTRY_MOG = 76, //Mongolia ÃɹŠ+ COUNTRY_ARA = 77, //Saudi Arabia ɳÌØ°¢À­²® + COUNTRY_BRU = 78, //brunei ÎÄÀ³ + COUNTRY_LAO = 79, //Laos ÀÏÎÎ + COUNTRY_JAP = 80, //Japan ÈÕ±¾ + COUNTRY_RES19 = 81, //±£Áô×ֶΠ+ COUNTRY_PAS = 82, //Palestinian state °ÍÀÕ˹̹¹ú + COUNTRY_TAJ = 83, //Tajikistan Ëþ¼ª¿Ë˹̹ + COUNTRY_KUW = 84, //Kuwait ¿ÆÍþÌØ + COUNTRY_SYR = 85, //Syria ÐðÀûÑÇ + COUNTRY_IND = 86, //India Ó¡¶È + COUNTRY_ISA = 87, //Indonesia Ó¡¶ÈÄáÎ÷ÑÇ + COUNTRY_AFG = 88, //Afghanistan °¢¸»º¹ + COUNTRY_LAN = 89, //Sri Lanka ˹ÀïÀ¼¿¨ + COUNTRY_IRQ = 90, //Iraq ÒÁÀ­¿Ë + COUNTRY_VIE = 91, //Vietnam Ô½ÄÏ + COUNTRY_IRA = 92, //Iran ÒÁÀÊ + COUNTRY_YEM = 93, //yemen Ò²ÃÅ + COUNTRY_JOR = 94, //Jordan Ô¼µ© + COUNTRY_BUR = 95, //Burma Ãåµé + COUNTRY_SIK = 96, //Sikkim Îý½ð + COUNTRY_BAN = 97, //Bangladesh ÃϼÓÀ­¹ú + COUNTRY_SGA = 98, //Singapore мÓÆ + COUNTRY_EAT = 99, //East timor ¶«µÛã루ÒÑÐû²¼¶ÀÁ¢£¬µ«ÊÀ½çÉÏÐí¶à¹ú¼Ò²»³ÐÈÏ£© + COUNTRY_RES5 = 100, //±£Áô×ֶΠ+ COUNTRY_RES6 = 101, //±£Áô×ֶΠ+ COUNTRY_RES7 = 102, //±£Áô×ֶΠ+ COUNTRY_RES8 = 103, //±£Áô×ֶΠ+ /*·ÇÖÞ 60¸ö¹ú¼ÒºÍµØÇø*/ + COUNTRY_EGT = 104, //Egypt °£¼° + COUNTRY_LIY = 105, //Libya Àû±ÈÑÇ + COUNTRY_SUA = 106, //Sudan ËÕµ¤ + COUNTRY_TUN = 107, //Tunisia Í»Äá˹ + COUNTRY_ALG = 108, //Algeria °¢¶û¼°ÀûÑÇ + COUNTRY_MCC = 109, //Morocco ĦÂå¸ç + COUNTRY_ETH = 110, //Ethiopia °£Èû¶í±ÈÑÇ + COUNTRY_ERI = 111, //Eritrea ¶òÁ¢ÌØÀïÑÇ + COUNTRY_SDE = 112, //Somalia Democratic Ë÷ÂíÀï + COUNTRY_DJI = 113, //Djibouti ¼ª²¼Ìá + COUNTRY_KEN = 114, //Kenya ¿ÏÄáÑÇ + COUNTRY_TAI = 115, //Tanzania ̹ɣÄáÑÇ + COUNTRY_UGA = 116, //Uganda Îڸɴï + COUNTRY_RWA = 117, //Rwanda ¬Íú´ï + COUNTRY_BUD = 118, //Burundi ²¼Â¡µÏ + COUNTRY_SEY = 119, //Seychelles ÈûÉà¶û + COUNTRY_CHA = 120, //Chad Õ§µÃ + COUNTRY_CEA = 121, //Central African ÖÐ·Ç + COUNTRY_CON = 122, //Cameroon ¿¦Âó¡ + COUNTRY_EQG = 123, //Equatorial Guinea³àµÀ¼¸ÄÚÑÇ + COUNTRY_GAB = 124, //Gabon ¼ÓÅî + COUNTRY_TCO = 125, //the Congo ¸Õ¹û¹²ºÍ¹ú£¨¼´£º¸Õ¹û£¨²¼£©£© + COUNTRY_DRC = 126, //Democratic Republic of the Congo ¸Õ¹ûÃñÖ÷¹²ºÍ¹ú£¨¼´£º¸Õ¹û£¨½ð£©£© + COUNTRY_STP = 127, //Sao Tome and Principe Ê¥¶àÃÀºÍÆÕÁÖÎ÷±È + COUNTRY_MAN = 128, //Mauritania ëÀïËþÄáÑÇ + COUNTRY_WSA = 129, //Western Sahara Î÷Èö¹þÀ­£¨ÈöÀ­Íþ£© + COUNTRY_SEL = 130, //Senegal ÈûÄÚ¼Ó¶û + COUNTRY_TGA = 131, //the Gambia ¸Ô±ÈÑÇ + COUNTRY_MAI = 132, //Mali ÂíÀï + COUNTRY_BUF = 133, //Burkina Faso ²¼»ùÄÉ·¨Ë÷ + COUNTRY_GUI = 134, //Guinea ¼¸ÄÚÑÇ + COUNTRY_GUB = 135, //Guinea-Bissau ¼¸ÄÚÑDZÈÉÜ + COUNTRY_CAV = 136, //Cape Verde ·ðµÃ½Ç + COUNTRY_SLE = 137, //Sierra Leone ÈûÀ­Àû°º + COUNTRY_LIR = 138, //Liberia Àû±ÈÀïÑÇ + COUNTRY_IVC = 139, //Ivory Coast ¿ÆÌصÏÍß + COUNTRY_GHA = 140, //Ghana ¼ÓÄÉ + COUNTRY_TGO = 141, //Togo ¶à¸ç + COUNTRY_BEN = 142, //Benin ±´Äþ + COUNTRY_NIG = 143, //Niger ÄáÈÕ¶û + COUNTRY_ZAB = 144, //Zambia ÔÞ±ÈÑÇ + COUNTRY_ANG = 145, //Angola °²¸çÀ­ + COUNTRY_ZBE = 146, //Zimbabwe ½ò°Í²¼Î¤ + COUNTRY_MAW = 147, //Malawi ÂíÀ­Î¬ + COUNTRY_MOQ = 148, //Mozambique Īɣ±È¿Ë + COUNTRY_BOT = 149, //Botswana ²©´ÄÍßÄÉ + COUNTRY_NAM = 150, //Namibia ÄÉÃ×±ÈÑÇ + COUNTRY_SAF = 151, //South Africa ÄÏ·Ç + COUNTRY_SWD = 152, //Swaziland ˹ÍþÊ¿À¼ + COUNTRY_LES = 153, //Lesotho À³Ë÷ÍÐ + COUNTRY_MAG = 154, //Madagasca Âí´ï¼Ó˹¼Ó + COUNTRY_UOC = 155, //Union of Comoros ¿ÆĦÂÞ + COUNTRY_MAT = 156, //Mauritius ëÀïÇó˹ + COUNTRY_NGE = 157, //Nigeria ÄáÈÕÀûÑÇ + COUNTRY_SSD = 158, //South Sudan ÄÏËÕµ¤ + COUNTRY_SAH = 159, //Saint Helena Ê¥ºÕÀÕÄã¨Ó¢¹úº£ÍâÊ¡£© + COUNTRY_MYT = 160, //Mayotte ÂíÔ¼ÌØ£¨·¨¹úº£ÍâÊ¡£© + COUNTRY_REN = 161, //Reunion ÁôÄáÍú£¨·¨¹úº£ÍâÊ¡£© + COUNTRY_CAI = 162, //Canary Islands ¼ÓÄÇÀûȺµº£¨Î÷°àÑÀº£ÍâÁìÍÁ£© + COUNTRY_AZO = 163, //AZORES ÑÇËÙ¶ûȺµº£¨±±´óÎ÷Ñó·ÇÖÞÎ÷º£°¶£¨ÆÏÌÑÑÀ£©£© + COUNTRY_MAD = 164, //Madeira ÂíµÂÀ­Èºµº£¨±±´óÎ÷Ñó·ÇÖÞÎ÷º£°¶£¨ÆÏÌÑÑÀ£©£© + COUNTRY_RES9 = 165, //±£Áô×ֶΠ+ COUNTRY_RES10 = 166, //±£Áô×ֶΠ+ COUNTRY_RES11 = 167, //±£Áô×ֶΠ+ COUNTRY_RES12 = 168, //±£Áô×ֶΠ+ /*ÃÀÖÞ 55¸ö¹ú¼ÒºÍµØÇø*/ + COUNTRY_CAD = 169, //Canada ¼ÓÄôó + COUNTRY_GRE = 170, //Greenland Nuuk ¸ñÁêÀ¼£¨µ¤ÂóÍõ¹úµÄº£Íâ×ÔÖÎÁìÍÁ£© + COUNTRY_PIE = 171, //Pierre and Miquelon ʥƤ°£¶ûºÍÃÜ¿Ë¡£¨·¨¹úº£ÍâÁìÍÁ£© + COUNTRY_USA = 172, //United States ÃÀ¹ú + COUNTRY_BER = 173, //Bermuda °ÙĽ´ó£¨Ó¢¹úº£ÍâÁìÍÁ£© + COUNTRY_MEX = 174, //Mexico Ä«Î÷¸ç + COUNTRY_GUA = 175, //Guatemala ΣµØÂíÀ­ + COUNTRY_BLI = 176, //Belize ²®Àû×È + COUNTRY_SAR = 177, //El Salvador Èø¶ûÍ߶à + COUNTRY_HOR = 178, //Honduras ºé¶¼À­Ë¹ + COUNTRY_NIC = 179, //Nicaragua Äá¼ÓÀ­¹Ï + COUNTRY_COR = 180, //Costa Rica ¸ç˹´ïÀè¼Ó + COUNTRY_PAN = 181, //Panama °ÍÄÃÂí + COUNTRY_TBM = 182, //The Bahamas °Í¹þÂí + COUNTRY_TCI = 183, //The Turks and Caicos Islands ÌØ¿Ë˹ȺµººÍ¿­¿Æ˹Ⱥµº£¨Ó¢¹úº£ÍâÁìÍÁ£© + COUNTRY_CUB = 184, //Cuba ¹Å°Í + COUNTRY_JAM = 185, //Jamaica ÑÀÂò¼Ó + COUNTRY_CAY = 186, //Cayman Islands ¿ªÂüȺµº£¨Ó¢¹úº£ÍâÁìÍÁ£© + COUNTRY_HAT = 187, //Haiti º£µØ + COUNTRY_TDO = 188, //The Dominican ¶àÃ×Äá¼Ó + COUNTRY_PUR = 189, //Puerto Rico ²¨¶àÀè¸÷£¨ÃÀ¹úº£ÍâÁìÍÁ£© + COUNTRY_VIL = 190, //The United States Virgin IslandsÃÀÊôά¶û¾©Èºµº + COUNTRY_BVI = 191, //The British Virgin Islands Ó¢Êôά¶û¾©Èºµº + COUNTRY_ATV = 192, //Anguilla The Valley °²¹çÀ­£¨Ó¢¹úº£ÍâÁìÍÁ£© + COUNTRY_ANB = 193, //Antigua and Barbuda °²Ìá¹ÏºÍ°Í²¼´ï + COUNTRY_CSM = 194, //Collectivit¨¦ de Saint-Martin ·¨ÊôÊ¥Âí¶¡£¨·¨¹úº£ÍâÁìÍÁ£© + COUNTRY_ACY = 195, //Autonomous country ºÉÊôÊ¥Âí¶¡£¨ºÉÀ¼Íõ¹úµÄ×ÔÖιú £© + COUNTRY_SBY = 196, //Saint-Barth¨¦lemy Ê¥°ÍÌ©ÀÕÃ×µº£¨·¨¹úº£ÍâÁìÍÁ£© + COUNTRY_SKN = 197, //Saint Kitts and Nevis Ê¥»ù´ÄºÍÄáά˹ + COUNTRY_MOT = 198, //Montserrat ÃÉÌØÈûÀ­ÌØ£¨Ó¢¹úº£ÍâÁìÍÁ£© + COUNTRY_GLP = 199, //Guadeloupe ¹ÏµÂÂÞÆÕ£¨·¨¹úº£ÍâÁìÍÁ£© + COUNTRY_DOM = 200, //Dominica ¶àÃ×Äá¿Ë + COUNTRY_MTE = 201, //Martinique ÂíÌáÄá¿Ë£¨·¨¹úº£ÍâÁìÍÁ£© + COUNTRY_LUC = 202, //St. Lucia ʥ¬Î÷ÑÇ + COUNTRY_SVG = 203, //Saint Vincent and the Grenadines Ê¥ÎÄÉ­Ìغ͸ñÁÖÄɶ¡Ë¹ + COUNTRY_GRD = 204, //Grenada ¸ñÁÖÄÉ´ï + COUNTRY_BAR = 205, //Barbados °Í°Í¶à˹ + COUNTRY_TRT = 206, //Trinidad and Tobago ÌØÁ¢Äá´ïºÍ¶à°Í¸ç + COUNTRY_CUR = 207, //Cura?ao ¿âÀ­Ë÷£¨ºÉÀ¼Íõ¹úµÄÒ»¸ö×ÔÖιú£© + COUNTRY_ARB = 208, //Aruba °¢Â³°Í£¨ºÉÀ¼Íõ¹úµÄÒ»¸ö×ÔÖιú£© + COUNTRY_NEA = 209, //Netherlands Antilles ºÉÊô°²µÄÁÐ˹ + COUNTRY_COL = 210, //Colombia ¸çÂ×±ÈÑÇ + COUNTRY_VEN = 211, //Venezuela ίÄÚÈðÀ­ + COUNTRY_GUY = 212, //Guyana ¹çÑÇÄÇ + COUNTRY_SUR = 213, //Suriname ËÕÀïÄÏ + COUNTRY_FRN = 214, //Guyane Francaise ·¨Êô¹çÑÇÄÇ + COUNTRY_ECU = 215, //Ecuador ¶ò¹Ï¶à¶û + COUNTRY_PER = 216, //Peru Ãس + COUNTRY_BOL = 217, //Bolivia ²£ÀûάÑÇ + COUNTRY_PAR = 218, //Paraguay °ÍÀ­¹ç + COUNTRY_CLE = 219, //Chile ÖÇÀû + COUNTRY_BRA = 220, //Brazil °ÍÎ÷ + COUNTRY_UGY = 221, //Uruguay ÎÚÀ­¹ç + COUNTRY_ARG = 222, //Argentina °¢¸ùÍ¢ + COUNTRY_RES13 = 223, //±£Áô×ֶΠ+ COUNTRY_RES14 = 224, //±£Áô×ֶΠ+ COUNTRY_RES15 = 225, //±£Áô×ֶΠ+ COUNTRY_RES16 = 226, //±£Áô×ֶΠ+ /*´óÑóÖÞ 25¸ö¹ú¼ÒºÍµØÇø */ + COUNTRY_ATN = 227, //Australien °Ä´óÀûÑÇ + COUNTRY_NED = 228, //Neuseeland ÐÂÎ÷À¼ + COUNTRY_PNG = 229, //Papua New Guinea °Í²¼ÑÇм¸ÄÚÑÇ + COUNTRY_SAN = 230, //Salomonen ËùÂÞÃÅȺµº + COUNTRY_VAU = 231, //Vanuatu ÍßŬ°¢Í¼ + COUNTRY_NCN = 232, //New Caledonia п¦Àï¶àÄáÑÇ£¨·¨¹úµÄº£ÍâÊôµØ£© + COUNTRY_PAU = 233, //Palau ÅÁÀÍ + COUNTRY_FSM = 234, //Federated States of Micronesia ÃÜ¿ËÂÞÄáÎ÷ÑÇÁª°î + COUNTRY_MRI = 235, //Marshall Island ÂíÉܶûȺµº + COUNTRY_CNM = 236, //Commonwealth of the Northern Mariana Islands ±±ÂíÀïÑÇÄÉȺµº£¨ÃÀ¹úµÄº£ÍâÊôµØ£© + COUNTRY_TEG = 237, //The Territory of Guahan ¹Øµº£¨ÃÀ¹úµÄº£ÍâÊôµØ£© + COUNTRY_NUR = 238, //Nauru è§Â³ + COUNTRY_KIB = 239, //Kiribati »ùÀï°Í˹ + COUNTRY_FID = 240, //Fidschi ì³¼ÃȺµº + COUNTRY_TNG = 241, //Tonga ÌÀ¼Ó + COUNTRY_TUV = 242, //Tuvalu ͼÍ߬ + COUNTRY_WEF = 243, //Wallis et Futuna ÍßÀû˹ºÍ¸»Í¼ÄÉ£¨·¨¹úµÄº£ÍâÊôµØ£© + COUNTRY_TIS = 244, //The Independent State of Samoa ÈøĦÑÇ + COUNTRY_EAS = 245, //Eastern Samoa ÃÀÊôÈøĦÑÇ + COUNTRY_TOE = 246, //Tokelau ÍпËÀÍ£¨ÐÂÎ÷À¼£© + COUNTRY_NUE = 247, //Niue Ŧ°££¨ÐÂÎ÷À¼£© + COUNTRY_TCD = 248, //The Cook Islands ¿â¿ËȺµº£¨ÐÂÎ÷À¼£© + COUNTRY_PFP = 249, //Polyn¨¦sie fran?aiseFrench Polynesia ·¨Êô²¨ÀûÄáÎ÷ÑÇ + COUNTRY_PID = 250, //Pitcairn Islands ƤÌØ¿­¶÷Ⱥµº£¨Ó¢¹úµÄº£ÍâÊôµØ£© + COUNTRY_HAW = 251, //Hawaii State ÏÄÍþÒÄ£¨ÃÀ¹úµÄº£ÍâÊôµØ£© + COUNTRY_RES17 = 252, //±£Áô×ֶΠ+ COUNTRY_INVALID = 0xfd, //×Ö¶ÎÎÞЧ£¬ÐèҪʹÓÃÀ©Õ¹×Ö¶ÎCRIndex(_CR_INDEX_) + COUNTRY_UNRECOGNIZED = 0xfe, //Unrecognized ÎÞ·¨Ê¶±ð + COUNTRY_ALL = 0xff, //ALL È«²¿ +}COUNTRY_INDEX; + +// ¹ú¼Ò / ÇøÓòö¾Ù +typedef enum _CR_INDEX_ +{ + CR_NONSUPPORT = 0, //0-Ëã·¨¿â²»Ö§³ÖÅÆʶ¹ú¼Ò + /*Îå´óÖÞ Ò»¹²ÓÐ235¹ú¼ÒºÍµØÇø */ + /*Å·ÖÞ 48¸ö¹ú¼ÒºÍµØÇø ÆäÖÐ ÈûÆÖ·˹(Cyprus)ÊôÓÚÑÇÅ·Á½ÖÞ½»½ç¹ú¼Ò*/ + CR_CZE = 1, //Czech Republic ½Ý¿Ë¹²ºÍ¹ú + CR_FRA = 2, //France ·¨¹ú + CR_DEU = 3, //Germany µÂ¹ú + CR_ESP = 4, //Spain Î÷°àÑÀ + CR_ITA = 5, //Italy Òâ´óÀû + CR_NLD = 6, //Netherlands ºÉÀ¼ + CR_POL = 7, //Poland ²¨À¼ + CR_SVK = 8, //Slovakia ˹Âå·¥¿Ë + CR_BLR = 9, //Belarus °×¶íÂÞ˹ + CR_MDA = 10, //Moldova Ħ¶û¶àÍß + CR_RUS = 11, //Russia ¶íÂÞ˹ + CR_UKR = 12, //Ukraine ÎÚ¿ËÀ¼ + CR_BEL = 13, //Belgium ±ÈÀûʱ + CR_BGR = 14, //Bulgaria ±£¼ÓÀûÑÇ + CR_DNK = 15, //Denmark µ¤Âó + CR_FIN = 16, //Finland ·ÒÀ¼ + CR_GBR = 17, //United Kingdom Ó¢¹ú + CR_GRC = 18, //Greece Ï£À° + CR_HRV = 19, //Croatia ¿ËÂÞµØÑÇ + CR_HUN = 20, //Hungary ÐÙÑÀÀû + CR_ISR = 21, //Israel ÒÔÉ«ÁÐ(ÑÇÖÞ) + CR_LUX = 22, //Luxembourg ¬ɭ±¤ + CR_MKD = 23, //Macedonia ÂíÆä¶Ù¹²ºÍ¹ú + CR_NOR = 24, //Norway ŲÍþ + CR_PRT = 25, //Portuga ÆÏÌÑÑÀ + CR_ROU = 26, //Romania ÂÞÂíÄáÑÇ + CR_SRB = 27, //Serbia Èû¶ûάÑÇ + CR_AZE = 28, //Azerbaijan °¢Èû°î½®¹²ºÍ¹ú(ÑÇÖÞ) + CR_GEO = 29, //Georgia ¸ñ³¼ªÑÇ(ÑÇÖÞ) + CR_KAZ = 30, //Kazakhstan ¹þÈø¿Ë˹̹(ÑÇÖÞ) + CR_LTU = 31, //Lithuania Á¢ÌÕÍ𹲺͹ú + CR_TKM = 32, //Turkmenistan ÍÁ¿âÂü˹̹(ÑÇÖÞ) + CR_UZB = 33, //Uzbekistan ÎÚ×ȱð¿Ë˹̹(ÑÇÖÞ) + CR_LVA = 34, //Latvia À­ÍÑάÑÇ + CR_EST = 35, //Estonia °®É³ÄáÑÇ + CR_ALB = 36, //Albania °¢¶û°ÍÄáÑÇ + CR_AUT = 37, //Austria °ÂµØÀû + CR_BIH = 38, //Bosnia and Herzegovina ²¨Ë¹ÄáÑǺͺÚÈû¸çάÄÇ + CR_IRL = 39, //Ireland °®¶ûÀ¼ + CR_ISL = 40, //Iceland ±ùµº + CR_VAT = 41, //Vatican èóµÙ¸Ô + CR_MLT = 42, //Malta Âí¶úËû + CR_SWE = 43, //Sweden Èðµä + CR_CHE = 44, //Switzerland ÈðÊ¿ + CR_CYP = 45, //Cyprus ÈûÆÖ·˹ + CR_TUR = 46, //Turkey ÍÁ¶úÆä + CR_SVN = 47, //Slovenia ˹ÂåÎÄÄáÑÇ + CR_MTG = 48, //Montenegro ºÚɽ¹²ºÍ¹ú + CR_KOV = 49, //Kosovo ¿ÆË÷ÎÖ + CR_ADR = 50, //Andorra °²µÀ¶û + CR_ARM = 51, //Armenia ÑÇÃÀÄáÑÇ(ÑÇÖÞ) + CR_MON = 52, //Monaco ĦÄɸç + CR_LIE = 53, //Liechtenstein ÁÐÖ§¶ØÊ¿µÇ + CR_SMO = 54, //San Marino Ê¥ÂíÁ¦Åµ + CR_ORN = 55, //Aland °ÂÀ¼(·ÒÀ¼×ÔÖÎÇø) + CR_RES2 = 56, //±£Áô×ֶΠ+ CR_RES3 = 57, //±£Áô×ֶΠ+ CR_RES4 = 58, //±£Áô×ֶΠ+ /*ÑÇÖÞ 48¸ö¹ú¼Ò ÆäÖÐ ÈûÆÖ·˹(Cyprus)ÊôÓÚÑÇÅ·Á½ÖÞ½»½ç¹ú¼Ò*/ + CR_CHI = 59, //China Öйú + CR_IBN = 60, //In bahrain °ÍÁÖ + CR_SKR = 61, //South Korea º«¹ú + CR_LEB = 62, //Lebanon Àè°ÍÄÛ + CR_NEP = 63, //Nepal Äá²´¶û + CR_THA = 64, //Thailand Ì©¹ú + CR_PAK = 65, //Pakistan °Í»ù˹̹ + CR_EMI = 66, //The united Arab emirates °¢À­²®ÁªºÏÇõ³¤¹ú + CR_BHU = 67, //Bhutan ²»µ¤ + CR_OMA = 68, //Oman °¢Âü + CR_KOR = 69, //North Korea ³¯ÏÊ + CR_PHI = 70, //The Philippines ·ÆÂɱö + CR_CAM = 71, //Cambodia ¼íÆÒÕ¯ + CR_QAT = 72, //Qatar ¿¨Ëþ¶û + CR_KYR = 73, //Kyrgyzstan ¼ª¶û¼ªË¹Ë¹Ì¹ + CR_MAL = 74, //The maldives Âí¶û´ú·ò + CR_MLY = 75, //Malaysia ÂíÀ´Î÷ÑÇ + CR_MOG = 76, //Mongolia ÃɹŠ+ CR_ARA = 77, //Saudi Arabia ɳÌØ°¢À­²® + CR_BRU = 78, //brunei ÎÄÀ³ + CR_LAO = 79, //Laos ÀÏÎÎ + CR_JAP = 80, //Japan ÈÕ±¾ + CR_RES19 = 81, //±£Áô×ֶΠ+ CR_PAS = 82, //Palestinian state °ÍÀÕ˹̹¹ú + CR_TAJ = 83, //Tajikistan Ëþ¼ª¿Ë˹̹ + CR_KUW = 84, //Kuwait ¿ÆÍþÌØ + CR_SYR = 85, //Syria ÐðÀûÑÇ + CR_IND = 86, //India Ó¡¶È + CR_ISA = 87, //Indonesia Ó¡¶ÈÄáÎ÷ÑÇ + CR_AFG = 88, //Afghanistan °¢¸»º¹ + CR_LAN = 89, //Sri Lanka ˹ÀïÀ¼¿¨ + CR_IRQ = 90, //Iraq ÒÁÀ­¿Ë + CR_VIE = 91, //Vietnam Ô½ÄÏ + CR_IRA = 92, //Iran ÒÁÀÊ + CR_YEM = 93, //yemen Ò²ÃÅ + CR_JOR = 94, //Jordan Ô¼µ© + CR_BUR = 95, //Burma Ãåµé + CR_SIK = 96, //Sikkim Îý½ð + CR_BAN = 97, //Bangladesh ÃϼÓÀ­¹ú + CR_SGA = 98, //Singapore мÓÆ + CR_EAT = 99, //East timor ¶«µÛã루ÒÑÐû²¼¶ÀÁ¢£¬µ«ÊÀ½çÉÏÐí¶à¹ú¼Ò²»³ÐÈÏ£© + CR_RES5 = 100, //±£Áô×ֶΠ+ CR_RES6 = 101, //±£Áô×ֶΠ+ CR_RES7 = 102, //±£Áô×ֶΠ+ CR_RES8 = 103, //±£Áô×ֶΠ+ /*·ÇÖÞ 60¸ö¹ú¼ÒºÍµØÇø*/ + CR_EGT = 104, //Egypt °£¼° + CR_LIY = 105, //Libya Àû±ÈÑÇ + CR_SUA = 106, //Sudan ËÕµ¤ + CR_TUN = 107, //Tunisia Í»Äá˹ + CR_ALG = 108, //Algeria °¢¶û¼°ÀûÑÇ + CR_MCC = 109, //Morocco ĦÂå¸ç + CR_ETH = 110, //Ethiopia °£Èû¶í±ÈÑÇ + CR_ERI = 111, //Eritrea ¶òÁ¢ÌØÀïÑÇ + CR_SDE = 112, //Somalia Democratic Ë÷ÂíÀï + CR_DJI = 113, //Djibouti ¼ª²¼Ìá + CR_KEN = 114, //Kenya ¿ÏÄáÑÇ + CR_TAI = 115, //Tanzania ̹ɣÄáÑÇ + CR_UGA = 116, //Uganda Îڸɴï + CR_RWA = 117, //Rwanda ¬Íú´ï + CR_BUD = 118, //Burundi ²¼Â¡µÏ + CR_SEY = 119, //Seychelles ÈûÉà¶û + CR_CHA = 120, //Chad Õ§µÃ + CR_CEA = 121, //Central African ÖÐ·Ç + CR_CON = 122, //Cameroon ¿¦Âó¡ + CR_EQG = 123, //Equatorial Guinea³àµÀ¼¸ÄÚÑÇ + CR_GAB = 124, //Gabon ¼ÓÅî + CR_TCO = 125, //the Congo ¸Õ¹û¹²ºÍ¹ú£¨¼´£º¸Õ¹û£¨²¼£©£© + CR_DRC = 126, //Democratic Republic of the Congo ¸Õ¹ûÃñÖ÷¹²ºÍ¹ú£¨¼´£º¸Õ¹û£¨½ð£©£© + CR_STP = 127, //Sao Tome and Principe Ê¥¶àÃÀºÍÆÕÁÖÎ÷±È + CR_MAN = 128, //Mauritania ëÀïËþÄáÑÇ + CR_WSA = 129, //Western Sahara Î÷Èö¹þÀ­£¨ÈöÀ­Íþ£© + CR_SEL = 130, //Senegal ÈûÄÚ¼Ó¶û + CR_TGA = 131, //the Gambia ¸Ô±ÈÑÇ + CR_MAI = 132, //Mali ÂíÀï + CR_BUF = 133, //Burkina Faso ²¼»ùÄÉ·¨Ë÷ + CR_GUI = 134, //Guinea ¼¸ÄÚÑÇ + CR_GUB = 135, //Guinea-Bissau ¼¸ÄÚÑDZÈÉÜ + CR_CAV = 136, //Cape Verde ·ðµÃ½Ç + CR_SLE = 137, //Sierra Leone ÈûÀ­Àû°º + CR_LIR = 138, //Liberia Àû±ÈÀïÑÇ + CR_IVC = 139, //Ivory Coast ¿ÆÌصÏÍß + CR_GHA = 140, //Ghana ¼ÓÄÉ + CR_TGO = 141, //Togo ¶à¸ç + CR_BEN = 142, //Benin ±´Äþ + CR_NIG = 143, //Niger ÄáÈÕ¶û + CR_ZAB = 144, //Zambia ÔÞ±ÈÑÇ + CR_ANG = 145, //Angola °²¸çÀ­ + CR_ZBE = 146, //Zimbabwe ½ò°Í²¼Î¤ + CR_MAW = 147, //Malawi ÂíÀ­Î¬ + CR_MOQ = 148, //Mozambique Īɣ±È¿Ë + CR_BOT = 149, //Botswana ²©´ÄÍßÄÉ + CR_NAM = 150, //Namibia ÄÉÃ×±ÈÑÇ + CR_SAF = 151, //South Africa ÄÏ·Ç + CR_SWD = 152, //Swaziland ˹ÍþÊ¿À¼ + CR_LES = 153, //Lesotho À³Ë÷ÍÐ + CR_MAG = 154, //Madagasca Âí´ï¼Ó˹¼Ó + CR_UOC = 155, //Union of Comoros ¿ÆĦÂÞ + CR_MAT = 156, //Mauritius ëÀïÇó˹ + CR_NGE = 157, //Nigeria ÄáÈÕÀûÑÇ + CR_SSD = 158, //South Sudan ÄÏËÕµ¤ + CR_SAH = 159, //Saint Helena Ê¥ºÕÀÕÄã¨Ó¢¹úº£ÍâÊ¡£© + CR_MYT = 160, //Mayotte ÂíÔ¼ÌØ£¨·¨¹úº£ÍâÊ¡£© + CR_REN = 161, //Reunion ÁôÄáÍú£¨·¨¹úº£ÍâÊ¡£© + CR_CAI = 162, //Canary Islands ¼ÓÄÇÀûȺµº£¨Î÷°àÑÀº£ÍâÁìÍÁ£© + CR_AZO = 163, //AZORES ÑÇËÙ¶ûȺµº£¨±±´óÎ÷Ñó·ÇÖÞÎ÷º£°¶£¨ÆÏÌÑÑÀ£©£© + CR_MAD = 164, //Madeira ÂíµÂÀ­Èºµº£¨±±´óÎ÷Ñó·ÇÖÞÎ÷º£°¶£¨ÆÏÌÑÑÀ£©£© + CR_RES9 = 165, //±£Áô×ֶΠ+ CR_RES10 = 166, //±£Áô×ֶΠ+ CR_RES11 = 167, //±£Áô×ֶΠ+ CR_RES12 = 168, //±£Áô×ֶΠ+ /*ÃÀÖÞ 55¸ö¹ú¼ÒºÍµØÇø*/ + CR_CAD = 169, //Canada ¼ÓÄôó + CR_GRE = 170, //Greenland Nuuk ¸ñÁêÀ¼£¨µ¤ÂóÍõ¹úµÄº£Íâ×ÔÖÎÁìÍÁ£© + CR_PIE = 171, //Pierre and Miquelon ʥƤ°£¶ûºÍÃÜ¿Ë¡£¨·¨¹úº£ÍâÁìÍÁ£© + CR_USA = 172, //United States ÃÀ¹ú + CR_BER = 173, //Bermuda °ÙĽ´ó£¨Ó¢¹úº£ÍâÁìÍÁ£© + CR_MEX = 174, //Mexico Ä«Î÷¸ç + CR_GUA = 175, //Guatemala ΣµØÂíÀ­ + CR_BLI = 176, //Belize ²®Àû×È + CR_SAR = 177, //El Salvador Èø¶ûÍ߶à + CR_HOR = 178, //Honduras ºé¶¼À­Ë¹ + CR_NIC = 179, //Nicaragua Äá¼ÓÀ­¹Ï + CR_COR = 180, //Costa Rica ¸ç˹´ïÀè¼Ó + CR_PAN = 181, //Panama °ÍÄÃÂí + CR_TBM = 182, //The Bahamas °Í¹þÂí + CR_TCI = 183, //The Turks and Caicos Islands ÌØ¿Ë˹ȺµººÍ¿­¿Æ˹Ⱥµº£¨Ó¢¹úº£ÍâÁìÍÁ£© + CR_CUB = 184, //Cuba ¹Å°Í + CR_JAM = 185, //Jamaica ÑÀÂò¼Ó + CR_CAY = 186, //Cayman Islands ¿ªÂüȺµº£¨Ó¢¹úº£ÍâÁìÍÁ£© + CR_HAT = 187, //Haiti º£µØ + CR_TDO = 188, //The Dominican ¶àÃ×Äá¼Ó + CR_PUR = 189, //Puerto Rico ²¨¶àÀè¸÷£¨ÃÀ¹úº£ÍâÁìÍÁ£© + CR_VIL = 190, //The United States Virgin IslandsÃÀÊôά¶û¾©Èºµº + CR_BVI = 191, //The British Virgin Islands Ó¢Êôά¶û¾©Èºµº + CR_ATV = 192, //Anguilla The Valley °²¹çÀ­£¨Ó¢¹úº£ÍâÁìÍÁ£© + CR_ANB = 193, //Antigua and Barbuda °²Ìá¹ÏºÍ°Í²¼´ï + CR_CSM = 194, //Collectivit¨¦ de Saint-Martin ·¨ÊôÊ¥Âí¶¡£¨·¨¹úº£ÍâÁìÍÁ£© + CR_ACY = 195, //Autonomous country ºÉÊôÊ¥Âí¶¡£¨ºÉÀ¼Íõ¹úµÄ×ÔÖιú £© + CR_SBY = 196, //Saint-Barth¨¦lemy Ê¥°ÍÌ©ÀÕÃ×µº£¨·¨¹úº£ÍâÁìÍÁ£© + CR_SKN = 197, //Saint Kitts and Nevis Ê¥»ù´ÄºÍÄáά˹ + CR_MOT = 198, //Montserrat ÃÉÌØÈûÀ­ÌØ£¨Ó¢¹úº£ÍâÁìÍÁ£© + CR_GLP = 199, //Guadeloupe ¹ÏµÂÂÞÆÕ£¨·¨¹úº£ÍâÁìÍÁ£© + CR_DOM = 200, //Dominica ¶àÃ×Äá¿Ë + CR_MTE = 201, //Martinique ÂíÌáÄá¿Ë£¨·¨¹úº£ÍâÁìÍÁ£© + CR_LUC = 202, //St. Lucia ʥ¬Î÷ÑÇ + CR_SVG = 203, //Saint Vincent and the Grenadines Ê¥ÎÄÉ­Ìغ͸ñÁÖÄɶ¡Ë¹ + CR_GRD = 204, //Grenada ¸ñÁÖÄÉ´ï + CR_BAR = 205, //Barbados °Í°Í¶à˹ + CR_TRT = 206, //Trinidad and Tobago ÌØÁ¢Äá´ïºÍ¶à°Í¸ç + CR_CUR = 207, //Cura?ao ¿âÀ­Ë÷£¨ºÉÀ¼Íõ¹úµÄÒ»¸ö×ÔÖιú£© + CR_ARB = 208, //Aruba °¢Â³°Í£¨ºÉÀ¼Íõ¹úµÄÒ»¸ö×ÔÖιú£© + CR_NEA = 209, //Netherlands Antilles ºÉÊô°²µÄÁÐ˹ + CR_COL = 210, //Colombia ¸çÂ×±ÈÑÇ + CR_VEN = 211, //Venezuela ίÄÚÈðÀ­ + CR_GUY = 212, //Guyana ¹çÑÇÄÇ + CR_SUR = 213, //Suriname ËÕÀïÄÏ + CR_FRN = 214, //Guyane Francaise ·¨Êô¹çÑÇÄÇ + CR_ECU = 215, //Ecuador ¶ò¹Ï¶à¶û + CR_PER = 216, //Peru Ãس + CR_BOL = 217, //Bolivia ²£ÀûάÑÇ + CR_PAR = 218, //Paraguay °ÍÀ­¹ç + CR_CLE = 219, //Chile ÖÇÀû + CR_BRA = 220, //Brazil °ÍÎ÷ + CR_UGY = 221, //Uruguay ÎÚÀ­¹ç + CR_ARG = 222, //Argentina °¢¸ùÍ¢ + CR_RES13 = 223, //±£Áô×ֶΠ+ CR_RES14 = 224, //±£Áô×ֶΠ+ CR_RES15 = 225, //±£Áô×ֶΠ+ CR_RES16 = 226, //±£Áô×ֶΠ+ /*´óÑóÖÞ 25¸ö¹ú¼ÒºÍµØÇø */ + CR_ATN = 227, //Australien °Ä´óÀûÑÇ + CR_NED = 228, //Neuseeland ÐÂÎ÷À¼ + CR_PNG = 229, //Papua New Guinea °Í²¼ÑÇм¸ÄÚÑÇ + CR_SAN = 230, //Salomonen ËùÂÞÃÅȺµº + CR_VAU = 231, //Vanuatu ÍßŬ°¢Í¼ + CR_NCN = 232, //New Caledonia п¦Àï¶àÄáÑÇ£¨·¨¹úµÄº£ÍâÊôµØ£© + CR_PAU = 233, //Palau ÅÁÀÍ + CR_FSM = 234, //Federated States of Micronesia ÃÜ¿ËÂÞÄáÎ÷ÑÇÁª°î + CR_MRI = 235, //Marshall Island ÂíÉܶûȺµº + CR_CNM = 236, //Commonwealth of the Northern Mariana Islands ±±ÂíÀïÑÇÄÉȺµº£¨ÃÀ¹úµÄº£ÍâÊôµØ£© + CR_TEG = 237, //The Territory of Guahan ¹Øµº£¨ÃÀ¹úµÄº£ÍâÊôµØ£© + CR_NUR = 238, //Nauru è§Â³ + CR_KIB = 239, //Kiribati »ùÀï°Í˹ + CR_FID = 240, //Fidschi ì³¼ÃȺµº + CR_TNG = 241, //Tonga ÌÀ¼Ó + CR_TUV = 242, //Tuvalu ͼÍ߬ + CR_WEF = 243, //Wallis et Futuna ÍßÀû˹ºÍ¸»Í¼ÄÉ£¨·¨¹úµÄº£ÍâÊôµØ£© + CR_TIS = 244, //The Independent State of Samoa ÈøĦÑÇ + CR_EAS = 245, //Eastern Samoa ÃÀÊôÈøĦÑÇ + CR_TOE = 246, //Tokelau ÍпËÀÍ£¨ÐÂÎ÷À¼£© + CR_NUE = 247, //Niue Ŧ°££¨ÐÂÎ÷À¼£© + CR_TCD = 248, //The Cook Islands ¿â¿ËȺµº£¨ÐÂÎ÷À¼£© + CR_PFP = 249, //Polyn¨¦sie fran?aiseFrench Polynesia ·¨Êô²¨ÀûÄáÎ÷ÑÇ + CR_PID = 250, //Pitcairn Islands ƤÌØ¿­¶÷Ⱥµº£¨Ó¢¹úµÄº£ÍâÊôµØ£© + CR_HAW = 251, //Hawaii State ÏÄÍþÒÄ£¨ÃÀ¹úµÄº£ÍâÊôµØ£© + CR_RES17 = 252, //±£Áô×ֶΠ+ CR_RES18 = 253, //±£Áô×ֶΠ+ CR_UNRECOGNIZED = 0xfe, //Unrecognized ÎÞ·¨Ê¶±ð + CR_ALL = 0xff, //ALL È«²¿ + + //ÏÂÃæÊÇÐÂÔöµÄÇøÓò + CR_TAIWAN = 256, //Taiwan(China) ̨Í壨Öйú£© +}CR_INDEX; + +//°¢À­²®ÁªºÏÇõ³¤¹úÇøÓòö¾Ù +typedef enum _EMI_AREA_ +{ + EMI_AREA_UNKNOWN = 0, //²»Ö§³ÖÇøÓòʶ±ð + EMI_AREA_AD, //°¢²¼Ôú±È + EMI_AREA_FJR, //¸»²éÒÁ¹þ + EMI_AREA_DB, //µÏ°Ý + EMI_AREA_RAK, //¹þÒÁÂí½Ç + EMI_AREA_AM, //°¢ÖÎÂü + EMI_AREA_SJ, //ɳåÈ + EMI_AREA_UMW, //ÎÚÄ·¸ÇÍò + EMI_AREA_OTHER = 0xff, //δʶ±ð£¨µ«ÊÇÉ豸֧³Ö¸ÃËã·¨£¬ÓÉÓÚ»·¾³µÈÔ­Òòµ¼ÖÂδʶ±ð£© +} EMI_AREA; + +typedef struct tagNET_DVR_FIND_PICTURE_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + LONG lChannel; // ͨµÀºÅ + /* ²éÕÒµÄͼƬÀàÐÍ:0¶¨Ê±×¥Í¼1 Òƶ¯Õì²âץͼ 2 ±¨¾¯×¥Í¼£¬ + 3 ±¨¾¯ | Òƶ¯Õì²âץͼ 4 ±¨¾¯ & Òƶ¯Õì²âץͼ 6 ÊÖ¶¯×¥Í¼ , + 9-ÖÇÄÜͼƬ,10- PIR±¨¾¯£¬11- ÎÞÏß±¨¾¯£¬12- ºô¾È±¨¾¯, + 0xa Ô¤ÀÀʱ½Øͼ£¬0xd ÈËÁ³Õì²â, 0xe Ô½½çÕì²â£¬0xf ÈëÇÖÇøÓòÕì²â£¬ + 0x10 ³¡¾°±ä¸üÕì²â, 0x11-É豸±¾µØ»Ø·Åʱ½Øͼ, 0x12-ÖÇÄÜÕì²â, + 0x13-½øÈëÇøÓòÕì²â,0x14-À뿪ÇøÓòÕì²â,0x15-ÅÇ»²Õì²â, + 0x16-ÈËÔ±¾Û¼¯Õì²â,0x17-¿ìËÙÔ˶¯Õì²â,0x18-Í£³µÕì²â, + 0x19-ÎïÆ·ÒÅÁôÕì²â,0x1a-ÎïÆ·ÄÃÈ¡Õì²â, 0x1b-³µÅÆÕì²â, + 0x1c-»ìÐмì²â,0x1d-ȡ֤ʼþ,0x1e-»ðµã¼ì²â,0x1f-·ÀÆÆ»µ¼ì²â, + 0x20-´¬Ö»¼ì²â£¬0x21-²âÎÂÔ¤¾¯£¬0x22-²âα¨¾¯, 0x23²â²î±¨¾¯, + 0x24Υͣ¼ì²â,0x25-ÈËÁ³×¥ÅÄ,0x26-ÀëÏß²âα¨¾¯,0x2a-ÆðÉí¼ì²â, + 0x2b-ÕÛÏßÅʸß,0x2c-Èç²Þ³¬Ê±,0x2d-°²È«Ã±¼ì²â,0x2e-Öܽç×¥ÅÄ, + 0x2f-ÈËÌåÄ¿±ê×¥ÅÄ,0x30-ÈËÁ³×¥ÅĽ¨Ä£, 0x31-»ìºÏÄ¿±ê¼ì²â, + 0x32-·ÀÇø±¨¾¯, 0x33-½ô¼±ÇóÖú, 0x34-ÒµÎñ×Éѯ,0x35-·Ç·¨°Ú̯, + 0x36-ÈËÔ±Ãܶȣ¨ÈËÊýÔ¤¾¯£©,0x37-Àë¸Ú¼ì²â,0x38-ÈËÊýÒì³£¼ì²â, + 0x39-¾çÁÒÔ˶¯¼ì²â, 0x3a-Υͣ, 0x3b-ÄæÐÐ,0x3c-ѹÏß,0x3d-»úÕ¼·Ç,0x3e-±äµÀ,0x3f-µôÍ·,0x40-ÐÐÈ˼ì²â,0x41-·ÕÏ, + 0x42-Å×È÷Îï,0x43-ŨÎí¼ì²â,0x44-Ê©¹¤,0x45-Óµ¶Â,0x46-½»Í¨Ê¹ʼì²â, 0x47-²à·½Í£³µ£¬0x48-ÊÖ¶¯´¥·¢±¨¾¯, + 0x49-ÍæÊÖ»ú¼ì²â,0x4b-˾»ú¼ÝÊ»ÐÐΪ,0x4c-¸ß¼¶¸¨Öú¼ÝÊ»,0x4d-ÍÚɳ´¬¼ì²â±¨¾¯, + 0x52-ÅŶӼì²âÈËÊý,0x53-ÅŶӼì²âʱ³¤,0x54-³µÁ¾²¼¿Ø(°üÀ¨ÊÖ¶¯²¼¿Ø£¬ÈÕ³£²¼¿ØÒÔ¼°Æ½Ì¨²¼¿Ø), 0x55-¶¨Ê±»½ÐÑ×¥ÅÄ, 0x56-·ÏÆøÅŷżà²â, + 0x57-»Ò¶È±¨¾¯, 0x58-Õñ¶¯Õì²â,0x59-ÈËÔ±±¼ÅÜ,0x5a-ÈËÔ±ÖÍÁô,0x5b-¼ä¾àÒì³£,0x5c-ÈËÔ±µ¹µØ,0x5d-³éÑ̼ì²â,0x5e-¿¨¿Ú,0x5f-´³½ûÁî, + 0x60-Õ¼ÓÃÓ¦¼±³µµÀ,0x61-´ó³µÕ¼µÀ,0x62-½ûÖ¹Ãûµ¥,0x63-Õ¼ÓÃרÓóµµÀ,0x64-ÑÌÎí¼ì²â,0x65-ReIDÈËÔ±¹ì¼£,0x66-ͨµÀ¶¨Ê±×¥Í¼Ê¼þ, + 0x67-AI¿ª·Åƽ̨ʼþ,0x68-¼×Íé¼ì²âŨ¶ÈÒì³£,0x69-¼×Íé¼ì²â¹âÇ¿Òì³£,0x70-ͨµÀ¶¨Ê±×¥Í¼,0x71-´«¸ÐÆ÷ʼþ,0xff- È«²¿ÀàÐÍ*/ + BYTE byFileType; + BYTE byNeedCard; // ÊÇ·ñÐèÒª¿¨ºÅ + /* + 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-Í0xff-È«²¿ + */ + BYTE byProvince; //Ê¡·ÝË÷ÒýÖµ + BYTE byEventType; // ʼþÀàÐÍ£º0±£Áô£¬1-½»Í¨Ê¼þ£»2-Î¥ÕÂÈ¡Ö¤£»3-ÆäËûʼþ + BYTE sCardNum[CARDNUM_LEN_V30]; // ¿¨ºÅ + NET_DVR_TIME struStartTime;//²éÕÒͼƬµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;// ²éÕÒͼƬµÄ½áÊøʱ¼ä + //ITC3.7 ÐÂÔö + DWORD dwTrafficType; //ͼƬ¼ìË÷ÉúЧÏî ²Î¿¼ VCA_OPERATE _TYPE + DWORD dwVehicleType; //³µÁ¾ÀàÐÍ ²Î¿¼ VCA_VEHICLE_TYPE + //Î¥¹æ¼ì²âÀàÐͲο¼ VCA_ILLEGAL_TYPE µ±Ç°²»Ö§³Ö¸´Ñ¡ + DWORD dwIllegalType; + BYTE byLaneNo; //³µµÀºÅ(1~99) + BYTE bySubHvtType ;//0-±£Áô,1-»ú¶¯³µ(»ú¶¯³µ×ÓÀàÐÍÖÐÖ§³Ö³µÅƼìË÷£¬Ê¡·Ý¼ìË÷),2-·Ç»ú¶¯³µ,3-ÐÐÈË + BYTE bySubDriveType; //¼ÝÊ»×ÓÀàÐÍ + //µ±byFileTypeΪ0x4b-˾»ú¼ÝÊ»ÐÐΪʱ£¬º¬ÒåΪ˾»ú¼ÝÊ»ÐÐΪÀàÐÍ£¬¾ßÌ嶨Ò壺0-±£Áô¡¢1-³éÑÌ¡¢2-½Ó´òµç»°¡¢3-Æ£ÀͼÝÊ»¡¢4-·ÖÉñÌáÐÑ¡¢5-¼ÝʻԱÒì³£¡¢6-δϵ°²È«´ø¡¢7-ºìÍâ×è¶ÏÄ«¾µ¡¢8-Ë«ÊÖÍÑÀë·½ÏòÅÌ¡¢9-µ¥ÊÖÍÑÀë·½ÏòÅÌ¡¢10-¼ÝʻԱÉí·ÝÒì³£¡¢11-³¬Ê±¼ÝÊ»¡¢12-¼ÝʻԱ±ä¸ü + //µ±byFileTypeΪ0x4c-¸ß¼¶¸¨Öú¼Ýʻʱ£¬º¬ÒåΪ¸ß¼¶¸¨Öú¼ÝÊ»ÀàÐÍ£¬¾ßÌ嶨Ò壺0-±£Áô¡¢1-Ç°ÏòÅöײ¡¢2-³µµÀÆ«Àë(×ó)¡¢3-³µµÀÆ«Àë(ÓÒ)¡¢4-³µ¾à¹ý½ü¡¢5-ÐÐÈË·Àײ¡¢6-äÇø¼ì²â(ÓÒºó·½)¡¢7-äÇø¼ì²â(×óºó·½)¡¢8-äÇø¼ì²â(ºó·½) + BYTE byRes2;//±£Áô×Ö½Ú + char sLicense[MAX_LICENSE_LEN/*16*/]; //³µÅƺÅÂë + BYTE byRegion; // ÇøÓòË÷ÒýÖµ 0-±£Áô£¬1-Å·ÖÞ(Europe Region)£¬2-¶íÓïÇøÓò(Russian Region)£¬3-Å·ÖÞ&¶íÂÞ˹(EU&CIS), 4-Öж«(Middle East),0xff-ËùÓÐ + BYTE byCountry; // ¹ú¼ÒË÷ÒýÖµ£¬²ÎÕÕ£ºCOUNTRY_INDEX + BYTE byArea; //µØÇø + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø +}NET_DVR_FIND_PICTURE_PARAM, *LPNET_DVR_FIND_PICTURE_PARAM; + +//PC NVRµÄÎļþËÑË÷Ìõ¼þ +typedef struct tagNET_DVR_FIND_FILE_PCNVR +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_IPADDR struIpAddr; //IPµØÖ· + WORD wIpPort; //¶Ë¿ÚºÅ + BYTE byRes[2]; //±£Áô×Ö½Ú + char sDomainName[MAX_DOMAIN_NAME]; //ÓòÃû(ÔÝʱûÓÃ) + char sSerial[SERIALNO_LEN]; //ÐòÁкŠ+ + DWORD lChannel; //ͨµÀºÅ + DWORD dwFileType; //¼ÏóÎļþÀàÐÍ0xff£­È«²¿£¬0£­¶¨Ê±Â¼Ïñ,1-Òƶ¯Õì²â £¬2£­±¨¾¯´¥·¢£¬ + //3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ + DWORD dwIsLocked; //ÊÇ·ñËø¶¨ 0-Õý³£Îļþ,1-Ëø¶¨Îļþ, 0xff±íʾËùÓÐÎļþ + DWORD dwUseCardNo; //ÊÇ·ñʹÓÿ¨ºÅ + BYTE sCardNumber[CARDNUM_LEN_V30]; //¿¨ºÅ + NET_DVR_TIME struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime; //½áÊøʱ¼ä +}NET_DVR_FILE_COND_PCNVR, *LPNET_DVR_FILE_COND_PCNVR; + +//PCNVRµÄ¼ÏñËÑË÷½á¹ûÎļþ +typedef struct tagNET_DVR_FINDDATA_PCNVR +{ + char sFileName[100];//ÎļþÃû + NET_DVR_TIME struStartTime;//ÎļþµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//ÎļþµÄ½áÊøʱ¼ä + DWORD dwFileSize;//ÎļþµÄ´óС + char sCardNum[CARDNUM_LEN_V30]; + BYTE byLocked;//9000É豸֧³Ö,1±íʾ´ËÎļþÒѾ­±»Ëø¶¨,0±íʾÕý³£µÄÎļþ + BYTE byFileType; //ÎļþÀàÐÍ + BYTE byRes[2]; +}NET_DVR_FINDDATA_PCNVR, *LPNET_DVR_FINDDATA_PCNVR; + +#define PICTURE_NAME_LEN 64 +#define PICTURE_INFO_MAX_SIZE 640*960*1.5 + +typedef struct +{ + char sFileName[PICTURE_NAME_LEN];//ͼƬÃû + NET_DVR_TIME struTime;//ͼƬµÄʱ¼ä + DWORD dwFileSize;//ͼƬµÄ´óС + char sCardNum[CARDNUM_LEN_V30]; //¿¨ºÅ + BYTE byPlateColor ;//²Î¿¼½á¹¹ VCA_PLATE_COLOR + BYTE byVehicleLogo;//²Î¿¼½á¹¹ VLR_VEHICLE_CLASS + BYTE byEventSearchStatus; //Á¬ÐøͼƬ±íʾͬһ²éÕÒ½á¹ûµÄʱºò£¬0-±íʾºóÃæûÓÐͼƬÐÅÏ¢£¬1-±íʾºóÃ滹ÓÐͼƬÐÅÏ¢¡£×ܹ²Í¼Æ¬ÐÅÏ¢°üÀ¨×îºóÒ»ÕÅ״̬Ϊ0µÄͼƬ¡£ + BYTE byRecogResult ;//ʶ±ð½á¹û²Î¿¼½á¹¹VTR_RESULT + char sLicense[MAX_LICENSE_LEN/*16*/]; //³µÅƺÅÂë + BYTE byRes[12]; +}NET_DVR_FIND_PICTURE,*LPNET_DVR_FIND_PICTURE; + +#define MAX_RECORD_PICTURE_NUM 50 // ×î´ó±¸·ÝͼƬÕÅÊý + +typedef struct tagNET_DVR_BACKUP_PICTURE_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwPicNum; + NET_DVR_FIND_PICTURE struPicture[MAX_RECORD_PICTURE_NUM]; + BYTE byDiskDes[DESC_LEN_32]; + BYTE byWithPlayer; + BYTE byContinue; /*ÊÇ·ñ¼ÌÐø±¸·Ý 0²»¼ÌÐø 1¼ÌÐø*/ + BYTE byRes[34]; +}NET_DVR_BACKUP_PICTURE_PARAM, *LPNET_DVR_BACKUP_PICTURE_PARAM; + +typedef struct +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byCompressType; //´ý»ñÈ¡µÄѹËõ²ÎÊýÀàÐÍ1,Ö÷ÂëÁ÷2,×ÓÂëÁ÷3,ʼþ + BYTE byRes[15]; //±£Áô + NET_DVR_COMPRESSIONCFG_V30 struCurrentCfg; //µ±Ç°Ñ¹Ëõ²ÎÊýÅäÖà +}NET_DVR_COMPRESSION_LIMIT, *LPNET_DVR_COMPRESSION_LIMIT; + +#define STEP_READY 0 //×¼±¸Éý¼¶ +#define STEP_RECV_DATA 1 //½ÓÊÕÉý¼¶°üÊý¾Ý +#define STEP_UPGRADE 2 //Éý¼¶ÏµÍ³ +#define STEP_BACKUP 3 //±¸·Ýϵͳ +#define STEP_SEARCH 255 //ËÑË÷Éý¼¶Îļþ + +typedef struct tagNET_DVR_VIDEO_EFFECT +{ + DWORD dwBrightValue; //ÁÁ¶È[0,255] + DWORD dwContrastValue; //¶Ô±È¶È[0,255] + DWORD dwSaturationValue; //±¥ºÍ¶È[0,255] + DWORD dwHueValue; //É«µ÷[0,255] + DWORD dwSharpness; //Èñ¶È[0,255] + DWORD dwDenoising; //È¥Ôë[0,255] + BYTE byRes[12]; +}NET_DVR_VIDEO_EFFECT, *LPNET_DVR_VIDEO_EFFECT; + +typedef struct tagNET_DVR_VIDEO_INPUT_EFFECT +{ + DWORD dwSize; //½á¹¹Ìå´óС + WORD wEffectMode; //ģʽ 0-±ê×¼ 1-ÊÒÄÚ 2-Èõ¹â 3-ÊÒÍâ 255-×Ô¶¨Òå + BYTE byRes1[146]; //±£Áô + NET_DVR_VIDEO_EFFECT struVideoEffect; //ÊÓƵЧ¹û²ÎÊý + BYTE byRes2[60]; //±£Áô +}NET_DVR_VIDEO_INPUT_EFFECT, *LPNET_DVR_VIDEO_INPUT_EFFECT; + + +typedef struct tagNET_DVR_VIDEOPARA_V40 +{ + DWORD dwChannel; // ͨµÀºÅ + DWORD dwVideoParamType; // ÊÓƵ²ÎÊýÀàÐÍ 0-ÁÁ¶È 1-¶Ô±È¶È 2-±¥ºÍ¶È 3-É«¶È 4-Èñ¶È 5-È¥Ôë + DWORD dwVideoParamValue; //¶ÔÓ¦µÄÊÓƵ²ÎÊýÖµ£¬·¶Î§ÒÀ¾ÝÄÜÁ¦¼¯ + BYTE byRes[12]; +}NET_DVR_VIDEOPARA_V40, *LPNET_DVR_VIDEOPARA_V40; + +typedef struct tagNET_DVR_DEFAULT_VIDEO_COND +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChannel; // ͨµÀºÅ + DWORD dwVideoMode; // ģʽ + BYTE byRes[32]; // ±£Áô +}NET_DVR_DEFAULT_VIDEO_COND, *LPNET_DVR_DEFAULT_VIDEO_COND; + +typedef struct tagNET_DVR_ENCODE_JOINT_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byJointed; // 0 ûÓйØÁª 1 ÒѾ­¹ØÁª + BYTE byDevType; // ±»¹ØÁªµÄÉ豸ÀàÐÍ 1 ´ú±íÖÇÄÜÉ豸 + BYTE byRes1[2]; // ±£Áô×Ö½Ú + NET_DVR_IPADDR struIP; // ¹ØÁªµÄ±»È¡Á÷É豸IPµØÖ· + WORD wPort; // ¹ØÁªµÄ±»È¡Á÷É豸¶Ë¿ÚºÅ + WORD wChannel; // ¹ØÁªµÄ±»È¡Á÷É豸ͨµÀºÅ + BYTE byRes2[20]; // ±£Áô×Ö½Ú +}NET_DVR_ENCODE_JOINT_PARAM, *LPNET_DVR_ENCODE_JOINT_PARAM; + +typedef struct tagNET_DVR_VCA_CHAN_WORKSTATUS +{ + BYTE byJointed; // 0-ûÓйØÁª 1-ÒѾ­¹ØÁª + BYTE byRes1[3]; + NET_DVR_IPADDR struIP; // ¹ØÁªµÄÈ¡Á÷É豸IPµØÖ· + WORD wPort; // ¹ØÁªµÄÈ¡Á÷É豸¶Ë¿ÚºÅ + WORD wChannel; // ¹ØÁªµÄÈ¡Á÷É豸ͨµÀºÅ + BYTE byVcaChanStatus; // 0 - δÆôÓà 1 - ÆôÓà + BYTE byRes2[19]; // ±£Áô×Ö½Ú +}NET_DVR_VCA_CHAN_WORKSTATUS, *LPNET_DVR_VCA_CHAN_WORKSTATUS; + +typedef struct tagNET_DVR_VCA_DEV_WORKSTATUS +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byDeviceStatus; // É豸µÄ״̬0 - Õý³£¹¤×÷ 1- ²»Õý³£¹¤×÷ + BYTE byCpuLoad; // CPUʹÓÃÂÊ0-100 ·Ö±ð´ú±íʹÓðٷÖÂÊ + NET_DVR_VCA_CHAN_WORKSTATUS struVcaChanStatus[MAX_VCA_CHAN]; + DWORD dwRes[40]; // ±£Áô×Ö½Ú +}NET_DVR_VCA_DEV_WORKSTATUS, *LPNET_DVR_VCA_DEV_WORKSTATUS; + +typedef struct tagNET_DVR_VGA_DISP_CHAN_CFG_V40 +{ + DWORD dwSize; + BYTE byAudio; /*ÒôƵÊÇ·ñ¿ªÆô*/ + BYTE byAudioWindowIdx; /*ÒôƵ¿ªÆô×Ó´°¿Ú*/ + BYTE byVgaResolution; /*·Ö±æÂÊ£¬´ÓÄÜÁ¦¼¯»ñÈ¡*/ + BYTE byVedioFormat; /*1:NTSC,2:PAL£¬0-NULL*/ + DWORD dwWindowMode; /*»­Ãæģʽ£¬ÄÜÁ¦¼¯»ñÈ¡*/ + BYTE byJoinDecChan[MAX_WINDOWS];/*¸÷¸ö×Ó´°¿Ú¹ØÁªµÄ½âÂëͨµÀ*/ + BYTE byEnlargeStatus; /*ÊÇ·ñ´¦ÓÚ·Å´ó״̬£¬0£º²»·Å´ó£¬1£º·Å´ó*/ + BYTE byEnlargeSubWindowIndex;//·Å´óµÄ×Ó´°¿ÚºÅ + BYTE byScale; /*ÏÔʾģʽ£¬0---ÕæʵÏÔʾ£¬1---Ëõ·ÅÏÔʾ( Õë¶ÔBNC )*/ + /*Çø·Ö¹²ÓÃÌ壬0-ÊÓƵ×ÛºÏƽ̨ÄÚ²¿½âÂëÆ÷ÏÔʾͨµÀÅäÖã¬1-ÆäËû½âÂëÆ÷ÏÔʾͨµÀÅäÖÃ*/ + BYTE byUnionType; + union + { + BYTE byRes[160]; + struct + { + /*¸÷¸ö×Ó´°¿Ú¶ÔÓ¦½âÂëͨµÀËù¶ÔÓ¦µÄ½âÂë×ÓϵͳµÄ²ÛλºÅ(¶ÔÓÚÊÓƵ×ÛºÏƽ̨ÖнâÂë×ÓϵͳÓÐЧ)*/ + BYTE byJoinDecoderId[MAX_WINDOWS]; + //ÏÔʾ´°¿ÚËù½âÊÓƵ·Ö±æÂÊ£¬1-D1,2-720P,3-1080P£¬É豸¶ËÐèÒª¸ù¾Ý´Ë//·Ö±æÂʽøÐнâÂëͨµÀµÄ·ÖÅ䣬Èç1·ÖÆÁÅäÖóÉ1080P£¬ÔòÉ豸»á°Ñ4¸ö½âÂëͨ + //µÀ¶¼·ÖÅä¸ø´Ë½âÂëͨµÀ + BYTE byDecResolution; + BYTE byRes[143]; + }struVideoPlatform; + struct + { + BYTE byRes[160]; + }struNotVideoPlatform; + }struDiff; + BYTE byRes[120]; +}NET_DVR_VGA_DISP_CHAN_CFG_V40,*LPNET_DVR_VGA_DISP_CHAN_CFG_V40; + +typedef struct tagNET_DVR_V6SUBSYSTEMPARAM +{ + BYTE bySerialTrans;//ÊÇ·ñ͸´«£¬0-·ñ£¬1-ÊÇ + BYTE byRes[35]; +}NET_DVR_V6SUBSYSTEMPARAM, *LPNET_DVR_V6SUBSYSTEMPARAM; + + + + +typedef struct tagNET_DVR_CORRECT_DEADPIXEL_PARAM +{ + DWORD dwSize; + DWORD dwCommand; //ÃüÁ0-½øÈ뻵µãģʽ£¬1-Ìí¼Ó»µµã£¬2-±£´æ»µµã£¬3-Í˳ö»µµã + DWORD dwDeadPixelX; //»µµãX×ø±ê + DWORD dwDeadPixelY; //»µµãY×ø±ê + BYTE byRes[12]; //±£Áô +}NET_DVR_CORRECT_DEADPIXEL_PARAM, *LPNET_DVR_CORRECT_DEADPIXEL_PARAM; + +#define MAX_REDAREA_NUM 6 //×î´óºìÂ̵ÆÇøÓò¸öÊý + +typedef struct tagNET_DVR_CORRECT_PARAMS +{ + BYTE byYellowIntervalTime;//»ÆµÆµÄ¼ä¸ôʱ¼ä£¬µ¥Î»ÊÇÃ루s£© + BYTE byDigTrafficLight;//ÊÇ·ñÊǽ»Í¨Êý×ֻƵƣ¬0-²»ÊÇ£¬1-ÊÇ + BYTE byRes[2]; +}NET_DVR_CORRECT_PARAMS,*LPNET_DVR_CORRECT_PARAMS; + +typedef struct tagNET_DVR_REDAREACFG +{ + DWORD dwSize; + DWORD dwCorrectEnable; //ÊÇ·ñ¿ªÆôУÕý¹¦ÄÜ£¬0-¹Ø±Õ£¬1-¿ªÆô + DWORD dwCorrectLevel; //УÕý¼¶±ð£¬1(УÕý¶È×îµÍ)-10(УÕý¶È×î¸ß),ĬÈÏΪ5 + DWORD dwAreaNum; //УÕýÇøÓò¸öÊý + NET_VCA_RECT struLaneRect[MAX_REDAREA_NUM]; //УÕýÇøÓò + NET_DVR_CORRECT_PARAMS struCorrectParam[MAX_REDAREA_NUM/*6*/]; //УÕýÇøÓòÊôÐÔºÍУÕýÇøÓò¶ÔÓ¦ + BYTE byRes2[8]; //±£Áô +}NET_DVR_REDAREACFG, *LPNET_DVR_REDAREACFG; + +typedef struct tagNET_DVR_HISTORICDATACFG +{ + DWORD dwSize; + DWORD dwTotalNum; //ÀúÊ·Êý¾Ý¸öÊý + BYTE byRes[16]; +}NET_DVR_HISTORICDATACFG, *LPNET_DVR_HISTORICDATACFG; + + +#define INQUEST_MESSAGE_LEN 44 //ÉóѶÖصã±ê¼ÇÐÅÏ¢³¤¶È +#define INQUEST_MAX_ROOM_NUM 2 //×î´óÉóѶÊÒ¸öÊý +#define MAX_RESUME_SEGMENT 2 //Ö§³Öͬʱ»Ö¸´µÄƬ¶ÎÊýÄ¿ + +typedef struct tagNET_DVR_INQUEST_ROOM +{ + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ + BYTE byFileType; //0-ÉóѶÎļþ£¬1-¿ªÍ¥ÉÏ´«Îļþ + BYTE byMode; /* 0 ʹÓÃÒÑÓг£¹æÅäÖÃ; ·Ç0£¬°´ÕÕmodeÖµ£¬ 1-µçÓ° 2-»­Öл­1 3-»­Öл­2 4-Ë«»­Ãæ 5-Èý»­Ãæ1 6-Èý»­Ãæ2 7-ËÄ»­Ãæ1 8-ËÄ»­Ãæ2 */ + BYTE byQuick; /* ÊÇ·ñΪ¿ìËÙÅäÖ㬠1-¿ìËÙÅäÖ㨲»ÅäÖòÎÊýµ½flash£©£¬0-³£¹æÅäÖã¨ÅäÖòÎÊýµ½Flash£© £¬ ½öÔÚmode ·Ç 0 ÓÐЧ*/ + BYTE byRes[20]; //±£Áô +}NET_DVR_INQUEST_ROOM, *LPNET_DVR_INQUEST_ROOM; + +typedef struct tagNET_DVR_INQUEST_MESSAGE +{ + char sMessage[INQUEST_MESSAGE_LEN]; //Öصã±ê¼ÇÐÅÏ¢ + BYTE byRes[46]; //±£Áô +}NET_DVR_INQUEST_MESSAGE, *LPNET_DVR_INQUEST_MESSAGE; + +typedef struct tagNET_DVR_INQUEST_SENSOR_DEVICE +{ + WORD wDeviceType; //Êý¾Ý²É¼¯É豸ÐͺÅ:0-ÎÞ 1-Ã×ÀÖ 2-ÀØ²Ê 3-ÓÅÁ¦ 4-¼ÑÃË 5-ÓÀ¿Ø¡¢6-ÛâÉÏ¡¢7-άÄÉ˹´ï + WORD wDeviceAddr; //Êý¾Ý²É¼¯É豸µØÖ· + BYTE byRes[28]; //±£Áô +}NET_DVR_INQUEST_SENSOR_DEVICE, *LPNET_DVR_INQUEST_SENSOR_DEVICE; + +typedef struct tagNET_DVR_INQUEST_SENSOR_INFO +{ + NET_DVR_INQUEST_SENSOR_DEVICE struSensorDevice[INQUEST_MAX_ROOM_NUM]; + DWORD dwSupportPro; //Ö§³ÖЭÒéÀàÐÍ,°´Î»±íʾ, а汾×ßÄÜÁ¦¼¯£¬²»ÔÙÀ©Õ¹´Ë×ֶΠ+ //0x1:Ã×ÀÖ 0x2:ÀØ²Ê 0x4:ÓÅÁ¦ + BYTE byRes[120]; //±£Áô +}NET_DVR_INQUEST_SENSOR_INFO, *LPNET_DVR_INQUEST_SENSOR_INFO; + +typedef struct tagNET_DVR_INQUEST_ROOM_INFO +{ + char szCDName[NAME_LEN]; //¹âÅÌÃû³Æ£¬µ¥ÊÒË«¿Ì¹âÅÌÃû³ÆÊÇÒ»ÑùµÄ + union + { + BYTE byBitRate; // byCalcTypeΪ0ʱÓÐЧ£¬(0-32¡¢1-48¡¢2-64¡¢3-80¡¢4-96¡¢5-128¡¢ + //6-160¡¢7-192¡¢8-224¡¢9-256¡¢10-320¡¢11-384¡¢12-448¡¢ + //13-512¡¢14-640¡¢15-768¡¢16-896Ç°16¸öÖµ±£Áô)17-1024¡¢18-1280¡¢19-1536¡¢ + //20-1792¡¢21-2048¡¢22-3072¡¢23-4096¡¢24-8192 + BYTE byInquestTime; // byCalcTypeΪ1ʱÓÐЧ£¬0-1Сʱ, 1-2Сʱ,2-3Сʱ,3-4Сʱ, 4-6Сʱ,5-8Сʱ,6-10Сʱ,7-12Сʱ + //8-16Сʱ, 9-20Сʱ,10-22Сʱ,11-24Сʱ + }uCalcMode; + BYTE byCalcType; //¿Ì¼¼ÆËãÀàÐÍ0-°´ÂëÂÊ 1-°´Ê±¼ä + BYTE byAutoDelRecord; // ÊÇ·ñ×Ô¶¯É¾³ý¼Ïñ£¬0-²»É¾³ý£¬¼´½áÊøʱ±£´æ¼Ïñ 1-ɾ³ý + BYTE byAlarmThreshold; // ÉùÒô±¨¾¯·§Öµ + BYTE byInquestChannelResolution; //ÉóѶͨµÀ·Ö±æÂÊ£¬0:720P,1:1080P,2:CIF,3:4CIF,4:WD1,5-VGA + BYTE byAutoOpenTray; //ÊÇ·ñ×Ô¶¯µ¯²Ö 0-·ñ£¬1-ÊÇ + BYTE byCDPrintEnabled; //»Ö¸´Íê³Éºó£¬ÊÇ·ñʹÄܹâÅÌ·âÃæ´òÓ¡¹¦ÄÜ 0-·ñ 1-¿ªÆô + BYTE byRes[9]; +}NET_DVR_INQUEST_ROOM_INFO, *LPNET_DVR_INQUEST_ROOM_INFO; + +typedef struct tagNET_DVR_INQUEST_SYSTEM_INFO +{ + DWORD dwRecordMode; //¿Ì¼ģʽ:1 µ¥ÊÒË«¿Ìģʽ 2 µ¥ÊÒÂÖ¿Ìģʽ 3 Ë«ÊÒË«¿Ìģʽ£¨ÐÞ¸ÄÐèÒªÖØÆôÉ豸£© + DWORD dwWorkMode; //¹¤×÷ģʽ:0 ±ê׼ģʽ 1 ͨÓÃģʽ(±£Áô£¬Ä¿Ç°Ö»Óбê׼ģʽ) + DWORD dwResolutionMode; //É豸·Ö±æÂÊ£¬0:±êÇå 1:D1 2:720P 3:1080P£¨¸ßÇåÉóѶ»ú²»ÓôË×ֶΣ© + NET_DVR_INQUEST_SENSOR_INFO struSensorInfo; //ÎÂʪ¶È´«¸ÐÆ÷ÅäÖà + NET_DVR_INQUEST_ROOM_INFO struInquestRoomInfo[INQUEST_MAX_ROOM_NUM]; + BYTE byEnableHashCheck; //ÊÇ·ñÆôÓöԹâÅÌÊý¾ÝHASHֵУÑé 0-ÎÞÒâÒ壬1-²»ÆôÓã¬2-ÆôÓà + BYTE byEnableInitCD; //ÊÇ·ñÆôÓóõʼ»¯¹âÅÌ 0-ÎÞÒâÒ壬1-²»ÆôÓã¬2-ÆôÓà + BYTE byCDProcessingMode; //1.´æÅÌģʽ 2-³öÅÌģʽ ´æÅÌģʽ£º¿Ì¼Íê³ÉµÄ¹âÅ̹鵵µ½³öÅÌÍ°ÉÏ£»¿Ì¼ʧ°ÜµÄ¹âÅÌ£¬»úе±Û½«»µÅÌÖ±½Óͨ¹ýÖмäµÄ³öÅÌλÖõ¯³ö¡£³öÅÌģʽ£º½«¿Ì¼ºÃµÄ¹âÅÌ´ÓÖмäµÄ³öÅÌλÖóöÅÌ£¬¿Ì¼ʧ°ÜµÄ¹âÅ̷ŵ½³öÅÌÍ°Àï + BYTE byRes[21]; //±£Áô +}NET_DVR_INQUEST_SYSTEM_INFO, *LPNET_DVR_INQUEST_SYSTEM_INFO; + +typedef struct _NET_DVR_INQUEST_ALARM_ +{ + DWORD dwSize; + DWORD dwAlarmType; /*±¨¾¯ÀàÐÍ 0-¹âÅÌÂú 1-¹âÅÌ´íÎó 2-ÉóѶ³¬Ê±ÌáÐÑ*/ + BYTE byTrayNo; /*¹âÇýºÅ*/ + BYTE byRes[3]; + DWORD dwInquestTime; /*ÒÑÉóѶʱ¼ä,µ±dwAlarmType=2ʱÓÐЧ,µ¥Î»:Ãë*/ + DWORD dwNotifyChannel; /*ÉóѶʱ¼ä³¬Ê±ÌáÐÑͨµÀºÅ*/ + BYTE byRes1[244]; +}NET_DVR_INQUEST_ALARM, *LPNET_DVR_INQUEST_ALARM; + +typedef struct _NET_DVR_VIDEO_PARKING_POLE_ALARM_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME_V30 struTime; //´¥·¢Ê±¼ä + BYTE byParkingNum[32]; //³µÎ»±àºÅ + BYTE byAlarmType; //±¨¾¯ÀàÐÍ£¬0-δ֪£¬1-¾µÍ·ÕÚµ²±¨¾¯£¬2-°´Å¥±¨¾¯£¬3-·Ç·¨Õ¼Óñ¨¾¯£¬4-³µÎ»×´Ì¬±ä»¯ + BYTE byVehicleEnterState; //³µÁ¾½øÈë״̬£¬0-δ֪£¬1-½øÈ룬2-À뿪 + BYTE byRes[78]; +}NET_DVR_VIDEO_PARKING_POLE_ALARM, *LPNET_DVR_VIDEO_PARKING_POLE_ALARM; + +typedef struct tagNET_DVR_INQUEST_RESUME_SEGMENT +{ + NET_DVR_TIME struStartTime; //ʼþÆðʼʱ¼ä + NET_DVR_TIME struStopTime; //ʼþÖÕֹʱ¼ä + BYTE byRoomIndex; //ÉóѶÊÒ±àºÅ,´Ó1¿ªÊ¼ + BYTE byDriveIndex; //¿Ì¼»ú±àºÅ,´Ó1¿ªÊ¼ + WORD wSegmetSize; //±¾Æ¬¶ÏµÄ´óС, µ¥Î»M + DWORD dwSegmentNo; //±¾Æ¬¶ÏÔÚ±¾´ÎÉóѶÖеÄÐòºÅ,´Ó1¿ªÊ¼ + BYTE byRes[24]; //±£Áô +}NET_DVR_INQUEST_RESUME_SEGMENT, *LPNET_DVR_INQUEST_RESUME_SEGMENT; + +typedef struct tagNET_DVR_INQUEST_RESUME_EVENT +{ + DWORD dwResumeNum; //Ðè»Ö¸´µÄʼþ¸öÊý + NET_DVR_INQUEST_RESUME_SEGMENT struResumeSegment[MAX_RESUME_SEGMENT]; + BYTE byResumeMode; //»Ö¸´Ä£Ê½£¬0-µ¥¹âÅָ̻´£¬1-Ë«¹âÅָ̻´ + BYTE byCDPrintEnbled; //»Ö¸´Íê³Éºó£¬ÊÇ·ñʹÄܹâÅÌ·âÃæ´òÓ¡¹¦ÄÜ 0-·ñ 1-¿ªÆô + BYTE byRes[198]; //±£Áô +}NET_DVR_INQUEST_RESUME_EVENT, *LPNET_DVR_INQUEST_RESUME_EVENT; + +typedef struct tagNET_DVR_INQUEST_DEVICE_VERSION +{ +BYTE byMainVersion; /*»ùÏßÖ÷°æ±¾. + 0 : δ֪ + 1 : 8000ÉóѶDVR + ´Î°æ±¾: 1 : 8000HD-S + 2 : 8100ÉóѶDVR + ´Î°æ±¾: 1 : ÉóѶ81SNL + 2 : ÉóѶ81SH + 3 : ÉóѶ81SFH + 3 : 8608¸ßÇåÉóѶ»úNVR + ´Î°æ±¾: 1 : DS-8608SN-SP + 2 : DS-8608SN-ST +*/ +BYTE bySubVersion; //»ùÏߴΰ汾 +BYTE byUpgradeVersion; //Éý¼¶°æ±¾,δÉý¼¶Îª0 +BYTE byCustomizeVersion; //¶¨ÖÆ°æ±¾,·Ç¶¨ÖÆΪ0 +BYTE byRes[60]; //±£Áô +}NET_DVR_INQUEST_DEVICE_VERSION, *LPNET_DVR_INQUEST_DEVICE_VERSION; + +typedef struct tagNET_DVR_DISK_RAID_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //´ÅÅÌRaidÊÇ·ñ½ûÓà + BYTE bySleepStatus; //0-ÎÞЧ£¬ 1-ÐÝÃߣ¬2-²»ÐÝÃß + BYTE byRes[34]; //±£Áô×Ö½Ú +}NET_DVR_DISK_RAID_INFO, *LPNET_DVR_DISK_RAID_INFO; + + +typedef struct tagNET_DVR_SYNCHRONOUS_IPC +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓãºÎªÇ°¶ËIPCͬ²½É豸²ÎÊý + BYTE byRes[7]; //±£Áô +}NET_DVR_SYNCHRONOUS_IPC, *LPNET_DVR_SYNCHRONOUS_IPC; + +typedef struct tagNET_DVR_IPC_PASSWD +{ + DWORD dwSize; //½á¹¹Ìå´óС + char sOldPasswd[PASSWD_LEN]; //IPCµÄ¾ÉÃÜÂ룬´«¸øDVRÈÃDVRÑéÖ¤ + char sNewPasswd[PASSWD_LEN]; //IPCµÄÐÂÃÜÂë + BYTE byRes[32]; +}NET_DVR_IPC_PASSWD, *LPNET_DVR_IPC_PASSWD; + +//ͨ¹ý»ñÈ¡DVRµÄÍøÂç״̬£ºµ¥Î»bps +typedef struct tagNET_DEVICE_NET_USING_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwPreview; //Ô¤ÀÀ + DWORD dwPlayback; //»Ø·Å + DWORD dwIPCModule; //IPC½ÓÈë + DWORD dwNetDiskRW; //ÍøÅ̶Áд + BYTE res[32]; +}NET_DVR_DEVICE_NET_USING_INFO, *LPNET_DVR_DEVICE_NET_USING_INFO; + +//ͨ¹ýDVRÉèÖÃÇ°¶ËIPCµÄIPµØÖ· +typedef struct tagNET_DVR_IPC_NETCFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_IPADDR struIP; //IPCµÄIPµØÖ· + WORD wPort; //IPCµÄ¶Ë¿Ú + char res[126]; +}NET_DVR_IPC_NETCFG, *LPNET_DVR_IPC_NETCFG; + +//°´Ê±¼äËø¶¨ +typedef struct tagNET_DVR_TIME_LOCK +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME strBeginTime; + NET_DVR_TIME strEndTime; + DWORD dwChannel; //ͨµÀºÅ, 0xff±íʾËùÓÐͨµÀ + DWORD dwRecordType; //¼ÏñÀàÐÍ: 0xffffffff£­È«²¿£¬0£­¶¨Ê±Â¼Ïñ£¬1-Òƶ¯Õì²â£¬2£­±¨¾¯´¥·¢£¬3-±¨¾¯´¥·¢»òÒƶ¯Õì²â£¬4-±¨¾¯´¥·¢ºÍÒƶ¯Õì²â£¬5-ÃüÁî´¥·¢£¬6-ÊÖ¶¯Â¼Ïñ£¬7-ÖÇÄܼÏñ(ͬÎļþ²éÕÒ) + DWORD dwLockDuration; //Ëø¶¨³ÖÐøʱ¼ä,µ¥Î»Ãë,0xffffffff±íʾÓÀ¾ÃËø¶¨ + NET_DVR_TIME_EX strUnlockTimePoint; //¼ÓËøʱÓÐЧ£¬µ±dwLockDuration²»ÎªÓÀ¾ÃËø¶¨Ê±£¬Ëø¶¨³ÖÐøµÄʱ¼äµ½´Ëʱ¼äµã¾Í×Ô¶¯½âËø + BYTE byRes[4]; +}NET_DVR_TIME_LOCK, *LPNET_DVR_TIME_LOCK; + +typedef struct tagNET_DVR_LOCK_RETURN +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME strBeginTime; + NET_DVR_TIME strEndTime; + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ,0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø, byISO8601Ϊ1ʱÓÐЧ + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø, byISO8601Ϊ1ʱÓÐЧ + BYTE byRes[17]; +}NET_DVR_LOCK_RETURN, *LPNET_DVR_LOCK_RETURN; + +//67DVS +//Ö¤ÊéÏÂÔØÀàÐÍ +typedef enum +{ + UPGRADE_CERT_FILE = 0, + UPLOAD_CERT_FILE = 1, + TRIAL_CERT_FILE = 2, + CONFIGURATION_FILE = 3, + UPLOAD_RECORD_FILE = 4 , //ÉÏ´«Â¼ÏñÎļþ + SCENE_CONFIGURATION_FILE = 5, //³¡¾°ÅäÖÃÎļþÉÏ´« + UPLOAD_PICTURE_FILE = 6, //ÉÏ´«Í¼Æ¬Îļþ + UPLOAD_VIOLATION_FILE = 7, //ÉÏ´«Î¥·¨×ÖµäÎļþ + UPLOAD_TG_FILE = 8, //ÉÏ´«TG£¨Timing Generator£©Îļþ£¨ÓÃÓÚT1²âÊÔ£© + UPLOAD_DATA_TO_DB = 9, //ÉÏ´«Îļþµ½ÊÓͼ¿â + UPLOAD_BACKGROUND_PIC = 10, //ÉÏ´«±³¾°Í¼Æ¬ + UPLOAD_CALIBRATION_FILE = 11, //ÉÏ´«±ê¶¨Îļþ + UPLOAD_TME_FILE = 12, //ÉÏ´«³öÈë¿Ú¹ÜÀíÎļþ + + //UPLOAD_TME_FILE = 12, //ÉÏ´«³öÈë¿Ú¹ÜÀíÎļþ + UPLOAD_VEHICLE_BLOCKALLOWLIST_FILE = 13, + UPLOAD_PICTURE_TO_CLOUD = 15, //ÉÏ´«Í¼Æ¬µ½ÔÆ´æ´¢ + UPLOAD_VIDEO_FILE = 16, //ÉÏ´«ÊÓƵÎļþ + UPLOAD_SCREEN_FILE = 17, //ÉÏ´«ÆÁÄ»·þÎñÆ÷Îļþ + UPLOAD_PUBLISH_MATERIAL = 18, //ÉÏ´«ÐÅÏ¢·¢²¼¾²Ì¬ËزÄÎļþ + UPLOAD_PUBLISH_UPGRADE_FILE = 19, //ÉÏ´«ÐÅÏ¢·¢Éý¼¶Îļþ + UPLOAD_RING_FILE = 20, //ÉÏ´«ÁåÒôÎļþ + UPLOAD_ENCRYPT_CERT = 21, //ÉÏ´«¼ÓÃÜÖ¤Êé + UPLOAD_THERMOMETRIC_FILE = 22, //ÉÏ´«²âα궨Îļþ + UPLOAD_SUBBRAND_FILE = 23, //ÉÏ´«³µÁ¾×ÓÆ·ÅÆÎļþ + UPLOAD_LED_CHECK_FILE = 24, //ÉÏ´«LEDУÕýÎļþ + BATCH_UPLOAD_PICTURE_FILE = 25, //ÅúÁ¿ÉÏ´«Í¼Æ¬Îļþ + UPLOAD_EDID_CFG_FILE = 26, //ÉÏ´«EDIDÅäÖÃÎļþ + UPLOAD_PANORAMIC_STITCH = 27,//ÉÏ´«È«¾°×Ô¶¯Æ´½ÓÅäÖÃÎļþ + UPLOAD_BINOCULAR_COUNTING = 28,//ÉÏ´«´¹Ö±¿ÍÁ÷½ÃÕý±í + UPLOAD_AUDIO_FILE = 29, //ÉÏ´«ÓïÒôÎļþ + UPLOAD_PUBLISH_THIRD_PARTY_FILE = 30, //ÉÏ´«µÚÈý·½Îļþ + UPLOAD_DEEPEYES_BINOCULAR = 31,//ÉÏ´«TX1Ë«Ä¿½ÃÕý±í + UPLOAD_CERTIFICATE_BLOCKLIST = 32, //ÉÏ´«Éí·ÝÖ¤½ûÖ¹Ãûµ¥ + UPLOAD_HD_CAMERA_CORRECT_TABLE = 33,//ÉÏ´«2400W½ÃÕý±í + UPLOAD_FD_DATA = 35,//µ¼ÈëÈËÁ³Êý¾Ýµ½ÈËÁ³¿â + UPLOAD_FACE_DATA = 36,//µ¼ÈëÈËÁ³Í¼Æ¬Êý¾Ýµ½ÈËÁ³¿â + UPLOAD_FACE_ANALYSIS_DATA = 37,//µ¼ÈëͼƬÊý¾Ýµ½É豸ʶ±ðͼƬĿ±ê + UPLOAD_FILEVOLUME_DATA = 38,//ÉÏ´«Îļþ¾íÊý¾ÝÎļþ(Ä¿Ç°Ö»ÓÐCVRÖÐʵÏÖ) + IMPORT_DATA_TO_FACELIB = 39,//µ¼ÈëÈËÁ³Êý¾Ý£¨ÈËÁ³Í¼Æ¬+ͼƬ¸½¼þÐÅÏ¢ µ½É豸ÈËÁ³¿â£© + UPLOAD_LEFTEYE_4K_CALIBFILE = 40,//×óÑÛ¡¢4KÏà»ú±ê¶¨ÄÚ²ÎÊý¾ÝÉÏ´«£¨Õë¶ÔÈýÄ¿½ÌÓý¼²¥Ïà»ú£© + UPLOAD_SECURITY_CFG_FILE = 41,//ÅäÖÃÎļþ°²È«µ¼Èë + UPLOAD_RIGHT_CONTROLLER_AUDIO = 42, //ÉÏ´«È¨ÏÞ¿ØÖÆÆ÷ÒôƵÎļþ + UPLOAD_MODBUS_CFG_FILE = 43, //µ¼ÈëModbusЭÒéÅäÖÃÎļþ + UPLOAD_NOTICE_VIDEO_DATA = 44, //¹«¸æÊÓƵÏ·¢ + UPLOAD_RS485_PROTOCOL_DLL_FILE = 45, //µ¼ÈëRS485ЭÒ鶯̬¿âÎļþ + UPLOAD_PIC_BY_BUF = 46,//°´Í¼Æ¬»º´æµ¼ÈëͼƬÎļþ + UPLOAD_CLIENT_CALIBFILE = 47,//¿Í»§±ê¶¨Îļþµ¼Èë(.pto¸ñʽÎļþ) + UPLOAD_HD_CAMERA_CORRECT_TABLE_3200W = 48,//3200W½ÃÕý±í(.cal¸ñʽÎļþ) + UPLOAD_DOOR_CONTENT = 49, //ÉÏ´«µ¥ÔªÃÅ¿ÚÁªÏµÈËÐÅÏ¢ + UPLOAD_ASR_CONTROL_FILE = 50, //ÓïÒôʶ±ð¿ØÖÆÎļþÉÏ´« + UPLOAD_APP_FILE = 51,//ÉÏ´«HEOP APPÎļþ + UPLOAD_AI_ALGORITHM_MODEL = 52, //AI¿ª·Åƽ̨£¬Ö÷¶¯ÉÏ´«Ë㷨ģÐ͵½É豸 + UPLOAD_PUBLISH_PROGRAM_THUMBNAIL = 53, //ÉÏ´«ÐÅÏ¢·¢²¼½ÚÄ¿ËõÂÔͼ + UPLOAD_PUBLISH_TEMPLATE_THUMBNAIL = 54, //ÉÏ´«ÐÅÏ¢·¢²¼Ä£°åËõÂÔͼ + UPLOAD_AI_PICTURE = 55,//AI¿ª·Åƽ̨£¬Í¼Æ¬ÈÎÎñ£¬Ï·¢Í¼Æ¬Îª¶þ½øÖƸñʽ + UPLOAD_OFFLINE_CAPTURE_INFO = 56, //ÀëÏ߲ɼ¯Óû§ÁÐ±íµ¼Èë + UPLOAD_FONT_TYPE_DLL_FILE = 57, //×ÖÌå¿âµ¼Èë + UPLOAD_CLIENT_CALIBFILE_FILE = 58, //¿Í»§±ê¶¨Îļþµ¼Èë(.pto¸ñʽÎļþ,´øͨµÀ) + UPLOAD_HD_CAMERA_CORRECT_TABLE_3200W_FILE = 59, //3200W½ÃÕý±í(.cal¸ñʽÎļþ,´øͨµÀ) + IMPORT_DATA_TO_HBDLIB = 60, /*µ¼ÈëÈËÌåÊý¾Ýµ½ÈËÌå¿â£¨ÈËÌåͼƬ+ͼƬ¸½¼þÐÅÏ¢ µ½É豸ÈËÌå¿â£©*/ + UPLOAD_SCENE_FILE = 61, //µ¼È볡¾°Îļþ + UPLOAD_RATIOSTITCHING_FILE = 62, // µ¼È뱶ÂÊÆ´½ÓÎļþ + UPLOAD_LENS_PARAM_FILE = 63, // µ¼È뾵ͷ²ÎÊýÎļþ + UPLOAD_CUSTOMAUDIO_FILE = 64, //µ¼Èë×Ô¶¨ÒåÒôƵËزÄÎļþ + UPLOAD_VIDEOWALL_MATERIAL_FILE = 65 //µ¼ÈëµçÊÓǽ´°¿ÚËزÄÎļþ +}NET_SDK_UPLOAD_TYPE; + +typedef enum +{ + NET_SDK_DOWNLOAD_CERT = 0, //ÏÂÔØÖ¤Êé + NET_SDK_DOWNLOAD_IPC_CFG_FILE = 1,//ÏÂÔØIPCÅäÖÃÎļþ + NET_SDK_DOWNLOAD_BASELINE_SCENE_PIC = 2, //ÏÂÔØ»ù×¼³¡¾°Í¼Æ¬ + NET_SDK_DOWNLOAD_VQD_ALARM_PIC = 3, //ÏÂÔØVQD±¨¾¯Í¼Æ¬ + NET_SDK_DOWNLOAD_CONFIGURATION_FILE = 4, //ÏÂÔØÅäÖÃÎļþ + NET_SDK_DOWNLOAD_SCENE_CONFIGURATION_FILE = 5, //ÏÂÔس¡¾°ÅäÖÃÎļþ + NET_SDK_DOWNLOAD_FILE_FORM_DB = 6, //´ÓÊÓͼ¿âÖÐÏÂÔØ + // NET_SDK_DOWNLOAD_TME_FILE = 7 //ÏÂÔسöÈë¿Ú¹ÜÀíÎļþ + + NET_SDK_DOWNLOAD_TME_FILE = 7, //ÏÂÔسöÈë¿Ú¹ÜÀíÎļþ + NET_SDK_DOWNLOAD_VEHICLE_BLOCKALLOWLIST_FILE = 8, //ÏÂÔØÃûµ¥ÅäÖÃÎļþ + NET_SDK_DOWNLOAD_GUID_FILE = 9, //ÏÂÔØGUIDÎļþ + NET_SDK_DOWNLOAD_FILE_FORM_CLOUD = 10, //´ÓÔÆ´æ´¢ÏÂÔØͼƬ + NET_SDK_DOWNLOAD_PICTURE = 11, //ÏÂÔØͼƬ + NET_SDK_DOWNLOAD_VIDEO = 12, //ÏÂÔØÊÓƵ + NET_DVR_DOWNLOAD_SCREEN_FILE = 13, //ÏÂÔØÆÁÄ»·þÎñÆ÷Îļþ + NET_SDK_DOWNLOAD_PUBLISH_MATERIAL = 14, //ÏÂÔØÐÅÏ¢·¢²¼¾²Ì¬ËزÄÎļþ + NET_SDK_DOWNLOAD_THERMOMETRIC_FILE = 15,//ÏÂÔزâα궨Îļþ + NET_SDK_DOWNLOAD_LED_CHECK_FILE = 16,//ÏÂÔØLEDУÕýÎļþ + NET_SDK_DOWNLOAD_VEHICLE_INFORMATION = 17,//³µÁ¾ÐÅÏ¢µ¼³ö + NET_SDK_DOWNLOAD_CERTIFICATE_BLOCKLIST_TEMPLET = 18, //ÏÂÔØÉí·ÝÖ¤½ûÖ¹Ãûµ¥Ä£°å + NET_SDK_DOWNLOAD_LOG_FILE = 19, //ÈÕÖ¾µ¼³ö + NET_SDK_DOWNLOAD_FILEVOLUME_DATA = 20,//ÏÂÔØÎļþ¾íÊý¾ÝÎļþ£¨Ä¿Ç°Ö»ÓÐCVRÉ豸֧³Ö£© + NET_SDK_DOWNLOAD_FD_DATA = 21,//µ¼³öÖ¸¶¨ÈËÁ³¿âµÄÊý¾Ý + NET_SDK_DOWNLOAD_SECURITY_CFG_FILE = 22,//ÅäÖÃÎļþ°²È«µ¼³ö + NET_SDK_DOWNLOAD_PUBLISH_SCHEDULE = 23, //Èճ̵¼³ö + NET_SDK_DOWNLOAD_RIGHT_CONTROLLER_AUDIO = 24, //ÏÂÔØȨÏÞ¿ØÖÆÆ÷ÒôƵÎļþ + NET_SDK_DOWNLOAD_MODBUS_CFG_FILE = 25, //µ¼³öModbusЭÒéÅäÖÃÎļþ + NET_SDK_DOWNLOAD_RS485_PROTOCOL_DLL_FILE = 26, //µ¼³öRS485ЭÒ鶯̬¿âÎļþ + NET_SDK_DOWNLOAD_CLUSTER_MAINTENANCE_LOG = 27, //¼¯ÈºÎ¬»¤ÈÕÖ¾µ¼³ö + NET_SDK_DOWNLOAD_SQL_ARCHIVE_FILE = 28, //¹éµµÊý¾Ý¿â¼Ç¼µ¼³ö + NET_SDK_DOWNLOAD_SUBWIND_STREAM = 29,//µ¼³ö×Ó´°¿ÚÂëÁ÷ + NET_SDK_DOWNLOAD_DEVTYPE_CALIBFILE = 30,//Ðͺű궨Îļþµ¼³ö(.cal¸ñʽÎļþ) + NET_SDK_DOWNLOAD_HD_CAMERA_CORRECT_TABLE = 31,// 2400W/3200W½ÃÕý±íµ¼³ö(.cal¸ñʽÎļþ) + NET_SDK_DOWNLOAD_CLIENT_CALIBFILE = 32,//¿Í»§±ê¶¨Îļþµ¼³ö(.pto¸ñʽÎļþ) + NET_SDK_DOWNLOAD_FOUE_CAMERAS_PICTURES = 33,//ËÄͨµÀͼƬ°üµ¼³ö(.tar¸ñʽÎļþ) + NET_SDK_DOWNLOAD_DOOR_CONTENT = 34, //ÏÂÔØÃÅ¿ÚÁªÏµÈËÐÅÏ¢ + NET_SDK_DOWNLOAD_PUBLISH_MATERIAL_THUMBNAIL = 35, //ÏÂÔØÐÅÏ¢·¢²¼¾²Ì¬ËزÄËõÂÔͼ + NET_SDK_DOWNLOAD_PUBLISH_PROGRAM_THUMBNAIL = 36, //ÏÂÔØÐÅÏ¢·¢²¼½ÚÄ¿ËõÂÔͼ + NET_SDK_DOWNLOAD_PUBLISH_TEMPLATE_THUMBNAIL = 37, //ÏÂÔØÐÅÏ¢·¢²¼Ä£°åËõÂÔͼ + NET_SDK_DOWNLOAD_DARK_FIGHTER_X_CORRECT_TABLE_MAIN = 38,//ºÚ¹â½ÃÕý±íÎļþ(Ö÷·ÖÇø) + NET_SDK_DOWNLOAD_DARK_FIGHTER_X_CORRECT_TABLE_BACKUP = 39,//ºÚ¹â½ÃÕý±íÎļþ£¨±¸·Ý·ÖÇø£© + NET_SDK_DOWNLOAD_OFFLINE_CAPTURE_INFO_TEMPLATE = 40, //ÏÂÔزɼ¯Óû§ÁбíÄ£°å + NET_SDK_DOWNLOAD_CAPTURE_DATA = 41, //ÏÂÔØÀëÏ߲ɼ¯Êý¾Ý + NET_SDK_DOWNLOAD_HD_CAMERA_CORRECT_TABLE_FILE = 42, // 2400W/3200W½ÃÕý±íµ¼³ö(.cal¸ñʽÎļþ, ´øͨµÀ) + NET_SDK_DOWNLOAD_CLIENT_CALIBFILE_FILE = 43, //¿Í»§±ê¶¨Îļþµ¼³ö(.pto¸ñʽÎļþ, ´øͨµÀ) + NET_SDK_DOWNLOAD_FOUR_CAMERAS_PICTURES_FILE = 44, //ËÄͨµÀͼƬ°üµ¼³ö(.tar¸ñʽÎļþ, ´øͨµÀ) + NET_SDK_DOWNLOAD_SCENE_FILE = 45, //µ¼³ö³¡¾°Îļþ + NET_SDK_DOWNLOAD_OPEN_SOURCE_CERT = 46, //µ¼³ö¿ªÔ´ºÏ¹æÖ¤Êé + NET_SDK_DOWNLOAD_RATIOSTITCHING_FILE = 47, //µ¼³ö±¶ÂÊÆ´½ÓÎļþ + NET_SDK_DOWNLOAD_LENS_PARAM_FILE = 48, // µ¼³ö¾µÍ·²ÎÊýÎļþ + NET_SDK_DOWNLOAD_SELECT_DEVTYPE_CALIBFILE = 49, //µ¼³öÖ¸¶¨Ðͺű궨Îļþ(.cal¸ñʽÎļþ) + NET_SDK_DOWNLOAD_VIDEOWALL_MATERIAL_FILE = 50, //µ¼³öµçÊÓǽ´°¿ÚËزÄÎļþ +}NET_SDK_DOWNLOAD_TYPE; + +//ÏÂÔØ״̬ +typedef enum +{ + NET_SDK_DOWNLOAD_STATUS_SUCCESS = 1, //ÏÂÔسɹ¦ + NET_SDK_DOWNLOAD_STATUS_PROCESSING, //ÕýÔÚÏÂÔØ + NET_SDK_DOWNLOAD_STATUS_FAILED, //ÏÂÔØʧ°Ü + NET_SDK_DOWNLOAD_STATUS_UNKOWN_ERROR, //δ֪´íÎó + NET_SDK_DOWNLOAD_STATUS_RESOURCE, //ÄÚ´æ²»×ã + NET_SDK_DOWNLOAD_STATUS_GUIDFILE_EXPORT_FAIL //GUIDÎļþµ¼³öʧ°Ü +}NET_SDK_DOWNLOAD_STATUS; + +//ÏÂÔØ¿ØÖÆÃüÁîÀàÐÍ +typedef enum tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM +{ + ENUM_DOWNLOAD_CONTROL_ERR = -1, + ENUM_DOWNLOAD_CONTROL_QOS = 1 //Á÷¿Ø +}NET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM; + +typedef struct tagNET_DVR_PANORAMIC_STITCH_UPLOAD +{ + DWORD dwSize; + DWORD dwChannel;// ͨµÀºÅ + BYTE byRes[128]; +}NET_DVR_PANORAMIC_STITCH_UPLOAD, *LPNET_DVR_PANORAMIC_STITCH_UPLOAD; + +typedef struct NET_DVR_FD_DATA_COND +{ + DWORD dwSize; + char szFDID[NET_SDK_MAX_FDID_LEN/*256*/]; //ÈËÁ³¿âID + char szCheckCode[NET_SDK_CHECK_CODE_LEN/*128*/]; //УÑéÂë + BYTE byCover;//ÊÇ·ñ¸²¸Çʽµ¼Èë 0-·ñ£¬1-ÊÇ + char szLoginPassword[PASSWD_LEN/*16*/]; //µÇ¼ÃÜÂë + BYTE byRes[111]; +}NET_DVR_FD_DATA_COND, *LPNET_DVR_FD_DATA_COND; + +typedef struct NET_DVR_UPLOAD_FACE_DATA +{ + DWORD dwSize; + char szFDID[NET_SDK_MAX_FDID_LEN/*256*/]; //ÈËÁ³¿âID + BYTE byFDLibType; //ÈËÁ³¿âÀàÐÍ0-±£Áô;1-½ûÖ¹Ãûµ¥£»2-ÔÊÐíÃûµ¥ + BYTE byRes1[3]; + char szCustomInfo[NET_SDK_FDPIC_CUSTOM_INFO_LEN/*96*/]; //ÈËÁ³¿âͼƬ×Ô¶¨ÒåÐÅÏ¢ + BYTE byRes[512]; +}NET_DVR_UPLOAD_FACE_DATA, *LPNET_DVR_UPLOAD_FACE_DATA; + +typedef struct NET_DVR_UPLOAD_FACE_DATA_OUT +{ + char szPicID[NET_SDK_MAX_PICID_LEN/*256*/]; //ͼƬID + BYTE byRes[128]; +}NET_DVR_UPLOAD_FACE_DATA_OUT, *LPNET_DVR_UPLOAD_FACE_DATA_OUT; + +typedef struct NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT +{ + DWORD dwSize; + DWORD dwPID;//ͼƬID + DWORD dwFaceAnalysisNum;//ʶ±ð³öµÄÈËÁ³ÇøÓò¸öÊý + NET_VCA_RECT struVcaRect[NET_DVR_MAX_FACE_ANALYSIS_NUM]; //ʶ±ð³öÀ´µÄÈËÁ³Ä¿±ê£¬½ô´ÕÅÅÁÐ + BYTE byRes[128]; +}NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT, *LPNET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT; + +typedef struct NET_DVR_SECURITY_CFG_FILE_COND +{ + DWORD dwSize; + char szSecretKey[NET_SDK_SECRETKEY_LEN/*128*/];//УÑéÃÜÔ¿ + BYTE byRes[128]; +}NET_DVR_SECURITY_CFG_FILE_COND, *LPNET_DVR_SECURITY_CFG_FILE_COND; + +typedef struct tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_ +{ + DWORD dwSize; + BYTE byType; //ÈÕÖ¾ÀàÐÍ£¬0-È«²¿£¬1-¾«¼ò£¬2-ĬÈÏ + BYTE byRes[255]; +}NET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM, *LPNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM; + + +typedef struct tagNET_DVR_BONJOUR_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnableBonjour; // BonjourʹÄÜ 0 £º¿ªÆô 1£º¹Ø±Õ + BYTE byRes1[3]; + BYTE byFriendlyName[MAX_DOMAIN_NAME]; // ·þÎñÃû + BYTE byRes2[128]; +}NET_DVR_BONJOUR_CFG, *LPNET_DVR_BONJOUR_CFG; + +typedef struct tagNET_DVR_SOCKS_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnableSocks; // ʹÄÜ 0£º¹Ø±Õ 1£º¿ªÆô + BYTE byVersion; // SOCKS°æ±¾ 4£ºSOCKS4 5£ºSOCKS5 + WORD wProxyPort; // ´úÀí¶Ë¿Ú£¬Ä¬ÈÏ1080 + BYTE byProxyaddr[MAX_DOMAIN_NAME]; // ´úÀíIPµØÖ·£¬¿ÉÒÔÊÇÓòÃû + BYTE byUserName[MAX_DOMAIN_NAME]; // Óû§Ãû SOCKS²ÅÓà + BYTE byPassword[NAME_LEN]; // ÃÜÂëSOCKS5²ÅÓà + BYTE byLocalAddr[MAX_LOCAL_ADDR_LEN]; //²»Ê¹ÓÃsocks´úÀíµÄÍø¶Î£¬¸ñʽΪ"ip/netmask;ip/netmask;¡­" + BYTE byRes[128]; +}NET_DVR_SOCKS_CFG, *LPNET_DVR_SOCKS_CFG; + + + +typedef struct tagNET_DVR_QOS_CFG +{ + DWORD dwSize; + BYTE byManageDscp; // ¹ÜÀíÊý¾ÝµÄDSCPÖµ [0-63] + BYTE byAlarmDscp; // ±¨¾¯Êý¾ÝµÄDSCPÖµ [0-63] + BYTE byVideoDscp; // ÊÓƵÊý¾ÝµÄDSCPÖµ [0-63]£¬byFlagΪ0ʱ£¬±íʾÒôÊÓƵ + BYTE byAudioDscp; // ÒôƵÊý¾ÝµÄDSCPÖµ [0-63]£¬byFlagΪ1ʱÓÐЧ + BYTE byFlag; // 0£ºÒôÊÓƵºÏÒ»£¬1£ºÒôÊÓƵ·Ö¿ª + BYTE byEnable; + BYTE byRes[126]; +}NET_DVR_QOS_CFG, *LPNET_DVR_QOS_CFG; + +typedef struct tagNET_DVR_HTTPS_CFG +{ + DWORD dwSize; + WORD wHttpsPort; // HTTPS¶Ë¿Ú + BYTE byEnable; // ʹÄÜ 0£º¹Ø±Õ 1£º¿ªÆô + BYTE byRes[125]; +}NET_DVR_HTTPS_CFG, *LPNET_DVR_HTTPS_CFG; + +//Ö¤ÊéÏà¹Ø +typedef struct tagNET_DVR_CERT_NAME +{ + BYTE byCountry[MAX_COUNTRY_NAME_LEN]; //¹ú¼Ò´úºÅ CNµÈ + BYTE byState[MAX_DOMAIN_NAME]; //ÖÞ»òÊ¡ + BYTE byLocality[MAX_DOMAIN_NAME]; //µØÇø + BYTE byOrganization[MAX_DOMAIN_NAME]; //×éÖ¯ + BYTE byUnit[MAX_DOMAIN_NAME]; //µ¥Î» + BYTE byCommonName[MAX_DOMAIN_NAME]; + BYTE byEmail[MAX_DOMAIN_NAME]; + BYTE byRes[128]; +}NET_DVR_CERT_NAME, *LPNET_DVR_CERT_NAME ; + +typedef struct tagNET_DVR_CERT_ADDITION_PARAM +{ + DWORD dwSize; + char csCustomID[64]; //Óû§×Ô¶¨ÒåID + BYTE byRes1[2]; + BYTE byCertificateMode;//wCertTypeΪ1-CertificateʱÓÐЧ£¬0-×ÔÇ©ÃûÖ¤Ê飬1-Ö¤ÊéºÍ˽Կ·½Ê½ + BYTE byPrivateKeyMode;// byCertificateModeΪ1-Ö¤ÊéºÍ˽Կ·½Ê½Ê±ÓÐЧ 0-¶ÀÁ¢key 1-PKCS#12 + BYTE byPassword[64]; //ÃÜÂ룬µ±PrivateKeyModeΪ0ʱΪ˽ԿµÄÃÜÂ룬Ϊ1ʱΪPKCS#12µÄÃÜÂë + BYTE byRes[128]; +}NET_DVR_CERT_ADDITION_PARAM, *LPNET_DVR_CERT_ADDITION_PARAM; + + +typedef struct tagNET_DVR_CERT_PARAM +{ + DWORD dwSize; + WORD wCertFunc; //Ö¤ÊéÖÖÀ࣬0-802.1x(Ó¦ÓÃÓÚWIFI½ÓÈëÖ¤Êé),1-HTTPS, 3-ieee802.1x(Ó¦ÓÃÓÚÓÐÏßLAN½ÓÈëÈÏÖ¤) + WORD wCertType; //Ö¤ÊéÀàÐÍ£¬0-CA£¬1-Certificate,2-˽ԿÎļþ + BYTE byFileType; //Ö¤ÊéÎļþÀàÐÍ£¬0-PEM,1-PFX + BYTE byRes1[2];//±£Áô×Ö½Ú + BYTE byAddition;//ÊÇ·ñʹÓø½¼Ó½á¹¹Ì壬0-²»Ê¹ÓÃ;1-ʹÓà + NET_DVR_CERT_ADDITION_PARAM * pStruAdditionParam;//¸½¼ÓÐÅÏ¢½á¹¹ÌåÖ¸Õë + BYTE byRes[28]; +}NET_DVR_CERT_PARAM, *LPNET_DVR_CERT_PARAM; + +#define UPLOAD_CERTIFICATE 1 //ÉÏ´«Ö¤Êé + + +typedef struct tagNET_DVR_CERT_INFO +{ + DWORD dwSize; + NET_DVR_CERT_PARAM struCertParam; //Ö¤Êé²ÎÊý + DWORD dwValidDays; //ÓÐЧÌìÊý£¬ÀàÐÍΪ×ÔÇ©ÃûʱÓÐЧ + BYTE byPasswd[NAME_LEN]; //˽ԿÃÜÂë + NET_DVR_CERT_NAME struCertName; // Ö¤ÊéÃû³Æ + NET_DVR_CERT_NAME struIssuerName; // Ö¤Êé·¢ÐÐÕßÃû³Æ£¨×ÔÇ©ÃûÖ¤ÊéÐÅÏ¢»ñȡʱÓÐЧ£© + NET_DVR_TIME_EX struBeginTime; //Ö¤Êé´´½¨Ê±¼ä£¨×ÔÇ©ÃûÖ¤ÊéÐÅÏ¢»ñȡʱÓÐЧ£© + NET_DVR_TIME_EX struEndTime; //Ö¤Êé½Øֹʱ¼ä£¨×ÔÇ©ÃûÖ¤ÊéÐÅÏ¢»ñȡʱÓÐЧ£© + BYTE serialNumber[NAME_LEN]; //Ö¤Êé±êʶÂ루×ÔÇ©ÃûÖ¤ÊéÐÅÏ¢»ñȡʱÓÐЧ£© + BYTE byVersion; + BYTE byKeyAlgorithm; //¼ÓÃÜÀàÐÍ 0-RSA 1-DSA + BYTE byKeyLen; //¼ÓÃܳ¤¶È 0-512 1-1024¡¢ 2-2048 + BYTE bySignatureAlgorithm; //Ç©ÃûËã·¨ÀàÐÍ£¨×ÔÇ©ÃûÖ¤ÊéÐÅÏ¢»ñȡʱÓÐЧ£© + BYTE byRes[128]; +}NET_DVR_CERT_INFO, *LPNET_DVR_CERT_INFO; + + +//channel record status +//***ͨµÀ¼Ïñ״̬*****// +typedef struct tagNET_DVR_CHANS_RECORD_STATUS +{ + BYTE byValid; //ÊÇ·ñÓÐЧ + /*(Ö»¶Á)¼ÏñÀàÐÍ:0: ²»ÔÚ¼Ïñ£»1£ºÔÚ¼Ïñ 2-¿ÕÏÐ + 3-ÎÞÁ¬½Ó 4-ÎÞÊäÈëÊÓƵ 5-δ¼ÓÔØ 6-´æµµÖÐ 7-»Ø´«ÖÐ + 8-Óû§Ãû»òÃÜÂë´í 9-δÑéÖ¤,10-´æµµÖкͼÏñÖÐ 11-¼Ïñ»Ø´«ÖкͼÏñÖÐ 12-tokenÈÏ֤ʧ°Ü*/ + BYTE byRecord; + WORD wChannelNO; //ͨµÀºÅ + DWORD dwRelatedHD; //¹ØÁª´ÅÅÌ + BYTE byOffLineRecord; //¶ÏÍø¼Ïñ¹¦ÄÜ 0-¹Ø±Õ 1-¿ªÆô + BYTE byRes[7]; //±£Áô×Ö½Ú +}NET_DVR_CHANS_RECORD_STATUS, *LPNET_DVR_CHANS_RECORD_STATUS; + + +typedef struct tagNET_DVR_IP_ALARM_GROUP_NUM +{ + DWORD dwSize; + DWORD dwIPAlarmInGroup; //IPͨµÀ±¨¾¯ÊäÈë×éÊý + DWORD dwIPAlarmInNum; //IPͨµÀ±¨¾¯ÊäÈë¸öÊý + DWORD dwIPAlarmOutGroup; //IPͨµÀ±¨¾¯Êä³ö×éÊý + DWORD dwIPAlarmOutNum; //IPͨµÀ±¨¾¯Êä³ö¸öÊý + BYTE byRes[64]; +}NET_DVR_IP_ALARM_GROUP_NUM, *LPNET_DVR_IP_ALARM_GROUP_NUM; +//****NVR end***// + +typedef struct tagNET_DVR_CHAN_GROUP_RECORD_STATUS +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_CHANS_RECORD_STATUS struChanStatus[MAX_CHANNUM_V30]; //Ò»×é64¸ö +}NET_DVR_CHAN_GROUP_RECORD_STATUS, *LPNET_DVR_CHAN_GROUP_RECORD_STATUS; + + +typedef struct tagNET_DVR_RECTCFG +{ + WORD wXCoordinate; /*¾ØÐÎ×óÉϽÇÆðʼµãX×ø±ê*/ + WORD wYCoordinate; /*¾ØÐÎ×óÉϽÇY×ø±ê*/ + WORD wWidth; /*¾ØÐοí¶È*/ + WORD wHeight; /*¾ØÐθ߶È*/ +}NET_DVR_RECTCFG, *LPNET_DVR_RECTCFG; +/*´°¿ÚÐÅÏ¢*/ +typedef struct tagNET_DVR_WINCFG +{ + DWORD dwSize; + BYTE byVaild; + BYTE byInputIdx; /*ÊäÈëÔ´Ë÷Òý*/ + BYTE byLayerIdx; /*ͼ²ã£¬0Ϊ×îµ×²ã*/ + BYTE byTransparency; //͸Ã÷¶È£¬0¡«100 + NET_DVR_RECTCFG struWin;//Ä¿µÄ´°¿Ú(Ïà¶ÔÏÔʾǽ) + WORD wScreenHeight;//´óÆÁ¸ß + WORD wScreenWidth;//´óÆÁ¿í + BYTE byRes[20]; +}NET_DVR_WINCFG, *LPNET_DVR_WINCFG; + +#define MAX_LAYERNUMS 32 + +typedef struct tagNET_DVR_ALLWINCFG +{ + DWORD dwSize; + NET_DVR_WINCFG struWinCfg[MAX_LAYERNUMS]; + BYTE byRes2[24]; +}NET_DVR_ALLWINCFG, *LPNET_DVR_ALLWINCFG; + +typedef struct tagNET_DVR_SCREENZOOM +{ + DWORD dwSize; + DWORD dwScreenNum;//´óÆÁºÅ + NET_DVR_POINT_FRAME struPointFrame; + BYTE byLayer;//ͼ²ãºÅ + BYTE byRes[11]; +}NET_DVR_SCREENZOOM, *LPNET_DVR_SCREENZOOM; + +//2011-04-18 +/*ÉãÏñ»úÐÅÏ¢,×î¶à9999¸ö£¬´Ó1¿ªÊ¼ */ +typedef struct tagNET_MATRIX_CAMERAINFO +{ + DWORD dwGlobalCamId; /* camµÄÈ«¾Ö±àºÅ*/ + BYTE sCamName[NAME_LEN]; /*camµÄÃû³Æ*/ + DWORD dwMatrixId; /*cam¶ÔÓ¦¾ØÕóµÄ±àºÅ*/ + DWORD dwLocCamId; /*cam¶ÔÓ¦¾ØÕóµÄÄÚ²¿±àºÅ*/ + BYTE byValid; /*ÊÇ·ñÓÐЧ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byPtzCtrl; /* ÊÇ·ñ¿É¿Ø£¬0-·ñ£¬1-ÊÇ*/ + BYTE byUseType; //*ʹÓÃÀàÐÍ£¬0-²»×÷Ϊ¸ÉÏßʹÓã¬1-BNC£¬2-SP3,3-V6¹âÏË£¬4-ÆäËû¹âÏË*/ + BYTE byUsedByTrunk;//µ±Ç°Ê¹ÓÃ״̬£¬0-ûÓб»Ê¹Óã¬1-±»¸ÉÏßʹÓà + BYTE byTrunkReq; /*ÉãÏñ»ú·Ö±æÂÊ,ÒÔD1Ϊµ¥Î»£º1 - 1¸öD1£¬2- 2¸öD1£¬×÷Ϊ¸ÉÏßʹÓÃʱ£¬Ö¸µÄÊǸÉÏߵĴø¿í*/ + BYTE byRes1[3]; + NET_DVR_TIME struInstallTime;//°²×°Ê±¼ä + BYTE sPurpose[NAME_LEN];/*ÓÃ;ÃèÊö*/ + BYTE byRes2[20]; +}NET_MATRIX_CAMERAINFO, *LPNET_MATRIX_CAMERAINFO; + +/*¼àÊÓÆ÷ÐÅÏ¢£¬×î¶à2048¸ö*/ +typedef struct tagNET_MATRIX_MONITORINFO +{ + DWORD dwGloalMonId; /*mon µÄͳһ±àºÅ*/ + BYTE sMonName[NAME_LEN]; + DWORD dwMatrixId; /*monËùÔÚ¾ØÕóµÄ±àºÅ*/ + DWORD dwLocalMonId; /*monµÄÄÚ²¿±àºÅ*/ + BYTE byValid; /*ÊÇ·ñÓÐЧ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byTrunkType; /*ʹÓÃÀàÐÍ£¬0-²»×÷Ϊ¸ÉÏßʹÓã¬1-BNC£¬2-SP3,3-V6¹âÏË£¬4-ÆäËû¹âÏË*/ + BYTE byUsedByTrunk;//µ±Ç°Ê¹ÓÃ״̬£¬0-ûÓб»Ê¹Óã¬1-±»¸ÉÏßʹÓà + BYTE byTrunkReq; /*·Ö±æÂÊ, ÒÔD1Ϊµ¥Î»£º1- 1¸öD1£¬2- 2¸öD1£¬×÷Ϊ¸ÉÏßʹÓÃʱ£¬Ö¸µÄÊǸÉÏߵĴø¿í*/ + NET_DVR_TIME struInstallTime;//°²×°Ê±¼ä + BYTE sPurpose[NAME_LEN];/*ÓÃ;ÃèÊö*/ + BYTE byRes[20]; +}NET_MATRIX_MONITORINFO, *LPNET_MATRIX_MONITORINFO; + +typedef struct tagNET_MATRIX_DIGITALMATRIX +{ + NET_DVR_IPADDR struAddress; /*É豸ΪÊý×ÖÉ豸ʱµÄIPÐÅÏ¢*/ + WORD wPort; + BYTE byNicNum; /*0 - eth0, 1 - eth1, ¿¼ÂÇË«Íø¿ÚÈçºÎͨÐżÓÈë°ó¶¨µÄÍø¿Ú*/ + BYTE byRes[69]; +}NET_MATRIX_DIGITALMATRIX, *LPNET_MATRIX_DIGITALMATRIX; +typedef struct tagNET_MATRIX_ANALOGMATRIX +{ + BYTE bySerPortNum; /*Á¬½ÓµÄ´®¿ÚºÅ 0xff-»·Í¨½ÓÈë*/ + BYTE byMatrixSerPortType;/* ¾ØÕó½ÓÈëÍø¹ØµÄ´®¿ÚÓëÄ£Äâ¾ØÕóµÄ¼üÅÌ¿Ú(¼üÅÌЭÒé)Á¬½Ó»¹ÊÇÓë¾ØÕóͨÐÅ¿Ú£¨¾ØÕóЭÒ飩Á¬½Ó £¬0 --- ¾ØÕóЭÒéͨѶ¿Ú 1 --- ¼üÅÌͨѶ¿Ú*/ + BYTE byRes1[2]; + NET_DVR_SINGLE_RS232 struRS232; //232´®¿Ú²ÎÊý »·Í¨½ÓÈëʱ´Ë²ÎÊýÎÞЧ + BYTE byRes2[200]; +}NET_MATRIX_ANALOGMATRIX, *LPNET_MATRIX_ANALOGMATRIX; + +typedef union tagNET_MATRIX_UNION +{ + NET_MATRIX_DIGITALMATRIX struDigitalMatrix; + NET_MATRIX_ANALOGMATRIX struAnalogMatrix; +}NET_MATRIX_UNION, *LPNET_MATRIX_UNION; +/*¾ØÕóÅäÖÃÐÅÏ¢£¬×î¶à20¸ö*/ +typedef struct tagNET_MATRIX_MATRIXINFO +{ + DWORD dwSize; + DWORD dwMatrixId; /*¾ØÕó±àºÅ*/ + BYTE sDevName[NAME_LEN]; + BYTE byCtrlType; /*ָͨѶ·½Ê½ÊÇ´®¿ÚͨÐÅ, »¹ÊÇÍøÂçͨÐÅ*/ + BYTE byProtocolType;/*ÉèÖÃͨÐÅ¿ØÖÆЭÒé*/ + BYTE byRes1[6]; /*Ô¤Áô*/ + NET_MATRIX_UNION struMatrixUnion; + DWORD dwMaxPortsIn; /*¾ØÕóÊäÈëÊý*/ + DWORD dwMaxPortsOut;/*¾ØÕóÊä³öÊý*/ + BYTE sUserName[NAME_LEN]; /*µÇ¼Óû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /*µÇ¼ÃÜÂë*/ + NET_DVR_TIME struInstallTime;//°²×°Ê±¼ä + BYTE sPurpose[NAME_LEN];/*ÓÃ;ÃèÊö*/ + BYTE byRes2[20]; /*Ô¤Áô*/ +}NET_MATRIX_MATRIXINFO, *LPNET_MATRIX_MATRIXINFO; + + +typedef struct tagNET_DVR_MATRIXLIST +{ + DWORD dwSize; + BYTE byRes[12]; + DWORD dwMatrixNum;//É豸·µ»ØµÄ¾ØÕóÊýÁ¿ + BYTE *pBuffer;//¾ØÕóÐÅÏ¢»º³åÇø + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +}NET_DVR_MATRIXLIST,*LPNET_DVR_MATRIXLIST; + +/*´®¿ÚÅäÖÃÐÅÏ¢*/ +typedef struct tagNET_MATRIX_UARTPARAM +{ + DWORD dwSize; + BYTE byPortName[NAME_LEN]; + WORD wUserId; /*Óû§±àºÅ£¬µ±Á¬½ÓÉ豸Ϊ¼üÅÌʱ£¬°ó¶¨Ò»¸öÓû§£¬ÓÃÓÚȨÏÞ¹ÜÀí*/ + BYTE byPortType; /*´®¿ÚÀàÐÍ£¬ÈýÖÖ0-RS232/1-RS485/2-RS422*/ + BYTE byFuncType; /*´®¿ÚÁ¬½ÓµÄÉ豸µÄÀàÐÍ0-¿ÕÏУ¬1-¼üÅÌ£¬2-ÓÃ×÷͸Ã÷ͨµÀ(485´®¿Ú²»¿ÉÅäÖóÉ͸Ã÷ͨµÀ),3-Ä£Äâ¾ØÕó*/ + BYTE byProtocolType; /*´®¿ÚÖ§³ÖµÄЭÒéÀàÐÍ, µ±Á¬½Ó¼üÅÌÉ豸ʱÐèÒª¸ÃÐÅÏ¢,»ñÈ¡¼üÅÌÖ§³ÖЭÒéµÄ±àºÅ¼°ÃèÊö·û*/ + BYTE byBaudRate; + BYTE byDataBits; + BYTE byStopBits; /*ֹͣλ*/ + BYTE byParity; /*УÑé*/ + BYTE byFlowCtrl; /*Á÷¿Ø£¬Èí¼þÁ÷¿Ø£¬ÎÞÁ÷¿Ø*/ + BYTE byRes[22]; /*Ô¤Áô*/ +}NET_MATRIX_UARTPARAM, *LPNET_MATRIX_UARTPARAM; + +//×î¶à256¸öÓû§£¬1¡«256 +typedef struct tagNET_MATRIX_USERPARAM +{ + DWORD dwSize; + BYTE sUserName[NAME_LEN]; + BYTE sPassword[PASSWD_LEN/*16*/]; + BYTE byRole;/*Óû§½ÇÉ«:0-¹ÜÀíÔ±,1-²Ù×÷Ô±£»Ö»ÓÐÒ»¸öϵͳ¹ÜÀíÔ±£¬255¸ö²Ù×÷Ô±*/ + BYTE byLevel; /*ͳһ¼¶±ð£¬ÓÃÓÚ²Ù×÷¼¶±ð¹ÜÀí,1- 255*/ + BYTE byRes[18]; +}NET_MATRIX_USERPARAM, *LPNET_MATRIX_USERPARAM; + +//×î¶à255¸ö×ÊÔ´×é +typedef struct tagNET_MATRIX_RESOURSEGROUPPARAM +{ + DWORD dwSize; + BYTE byGroupName[NAME_LEN]; + BYTE byGroupType;/*0-ÉãÏñ»úCAM×飬1-¼àÊÓÆ÷MON×é*/ + BYTE byRes1; + WORD wMemNum; + DWORD dwGlobalId[512]; + BYTE byRes2[20]; +}NET_MATRIX_RESOURCEGROUPPARAM,*LPNET_MATRIX_RESOURSEGROUPPARAM; + +//×î¶à255¸öÓû§×é +typedef struct tagNET_MATRIX_USERGROUPPARAM +{ + DWORD dwSize; + BYTE sGroupName[NAME_LEN]; + WORD wUserMember[255]; /*°üº¬µÄÓû§³ÉÔ±*/ + WORD wResorceGroupMember[255]; /*°üº¬µÄ×ÊÔ´×é³ÉÔ±*/ + BYTE byPermission[32];//ȨÏÞ£¬Êý×é0-ptzȨÏÞ¡¢Çл»È¨ÏÞ¡¢²éѯȨÏÞ + BYTE byRes[20]; +} NET_MATRIX_USERGROUPPARAM, *LPNET_MATRIX_USERGROUPPARAM; + +typedef struct tagNET_MATRIX_TRUNKPARAM +{ + DWORD dwSize; + DWORD dwTrunkId; + BYTE sTrunkName[NAME_LEN]; + DWORD dwSrcMonId; + DWORD dwDstCamId; + BYTE byTrunkType; /*ʹÓÃÀàÐÍ 1-BNC£¬2-SP3¹âÏ˸ßÇ壬3-SP3¹âÏËD1£¬ 4-V6¹âÏË£¬5-ÆäËû¹âÏË*/ + BYTE byAbility; /*±íʾ¹âÏ˵Ĵø¿í£¬¿ÉÒÔ´«Ê伸·*/ + BYTE bySubChan; /*Õë¶Ô¹âÏ˸ÉÏ߶øÑÔ£¬±íʾ×ÓͨµÀºÅ*/ + BYTE byLevel; /* ¸ÉÏß¼¶±ð 1-255*/ + WORD wReserveUserID; //Ô¤ÁôµÄÓû§ID£º 1~256 £¬0±íʾÊÍ·ÅÔ¤Áô + BYTE byRes[18]; +} NET_MATRIX_TRUNKPARAM, *LPNET_MATRIX_TRUNKPARAM; + +typedef struct tagNET_DVR_MATRIX_TRUNKLIST +{ + DWORD dwSize; + BYTE byRes[12]; + DWORD dwTrunkNum;//É豸·µ»ØµÄ¸ÉÏßÊýÁ¿ + BYTE *pBuffer;//¸ÉÏßÐÅÏ¢»º³åÇø + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +}NET_DVR_MATRIX_TRUNKLIST,*LPNET_DVR_MATRIX_TRUNKLIST; + +#define MATRIX_PROTOCOL_NUM 20 //Ö§³ÖµÄ×î´ó¾ØÕóЭÒéÊý +#define KEYBOARD_PROTOCOL_NUM 20 //Ö§³ÖµÄ×î´ó¼üÅÌЭÒéÊý +typedef struct tagNET_DVR_PROTO_TYPE_EX +{ + WORD wType; /*ipcЭÒéÖµ*/ + WORD wCommunitionType; /*0£ºÄ£Äâ 1£ºÊý×Ö 2£º¼æÈÝÄ£Äâ¡¢Êý×Ö*/ + BYTE byDescribe[DESC_LEN]; /*ЭÒéÃèÊö×Ö¶Î*/ +}NET_DVR_PROTO_TYPE_EX, LPNET_DVR_PROTO_TYPE_EX; + +typedef struct tagNET_DVR_MATRIXMANAGE_ABIILITY +{ + DWORD dwSize; + DWORD dwMaxCameraNum;//×î´óCameraÊýÁ¿ + DWORD dwMaxMonitorNum;//×î´ó¼àÊÓÆ÷ÊýÁ¿ + WORD wMaxMatrixNum;//×î´ó¾ØÕóÊýÁ¿ + WORD wMaxSerialNum;//´®¿ÚÊýÁ¿ + WORD wMaxUser;//×î´óÓû§Êý + WORD wMaxResourceArrayNum;//×î´ó×ÊÔ´×éÊý + WORD wMaxUserArrayNum;//×î´óÓû§×éÊý + WORD wMaxTrunkNum;//×î´ó¸ÉÏßÊý + BYTE nStartUserNum;//ÆðʼÓû§ºÅ + BYTE nStartUserGroupNum;//ÆðʼÓû§×éºÅ + BYTE nStartResourceGroupNum;//Æðʼ×ÊÔ´×éºÅ + BYTE nStartSerialNum;//Æðʼ´®¿ÚºÅ + DWORD dwMatrixProtoNum; /*ÓÐЧµÄ¾ØÕóЭÒéÊýÄ¿£¬´Ó0¿ªÊ¼*/ + NET_DVR_PROTO_TYPE_EX struMatrixProto[MATRIX_PROTOCOL_NUM];/*×î´óЭÒéÁÐ±í³¤¶È*/ + DWORD dwKeyBoardProtoNum; /*ÓÐЧµÄ¼üÅÌЭÒéÊýÄ¿£¬´Ó0¿ªÊ¼*/ + NET_DVR_PROTO_TYPE_EX struKeyBoardProto[KEYBOARD_PROTOCOL_NUM];/*×î´óЭÒéÁÐ±í³¤¶È*/ + BYTE byDelMonitorLongCfg; //ÊÇ·ñÖ§³Öɾ³ýmonitor³¤Á¬½ÓÅäÖà + BYTE byDelCamonitorLongCfg;//ÊÇ·ñÖ§³Öɾ³ýcamera³¤Á¬½ÓÅäÖà + BYTE byAudioSwitchContorl;//ÊÇ·ñÖ§³ÖÒôƵ¿ª¹Ø¿ØÖÆ + BYTE byRes[29]; +} NET_DVR_MATRIXMANAGE_ABILITY, *LPNET_DVR_MATRIXMANAGE_ABILITY; + + +//ÈËÁ³×¥ÅĹæÔò(µ¥Ìõ) +typedef struct tagNET_VCA_SINGLE_FACESNAPCFG +{ + BYTE byActive; //ÊÇ·ñ¼¤»î¹æÔò£º0-·ñ£¬1-ÊÇ + /********* IPC5.1.7 ÐÂÔö²ÎÊý Begin 2014-03-21***********/ + //ÈËÁ³×Ô¶¯ROI¿ª¹ØʹÄÜ + BYTE byAutoROIEnable;//0-¹Ø±Õ,1-¿ªÆô + BYTE byRes[2]; //±£Áô + /********* IPC5.1.7 ÐÂÔö²ÎÊý End 2014-03-21***********/ + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_VCA_POLYGON struVcaPolygon; //ÈËÁ³Ê¶±ðÇøÓò +}NET_VCA_SINGLE_FACESNAPCFG, *LPNET_VCA_SINGLE_FACESNAPCFG; + +//ÈËÁ³×¥ÅĹæÔò²ÎÊý +typedef struct tagNET_VCA_FACESNAPCFG +{ + DWORD dwSize; + BYTE bySnapTime; //µ¥¸öÄ¿±êÈËÁ³µÄ×¥ÅÄ´ÎÊý0-10 + BYTE bySnapInterval; //×¥Åļä¸ô£¬µ¥Î»£ºÖ¡ + BYTE bySnapThreshold; //×¥ÅÄãÐÖµ£¬0-100 + BYTE byGenerateRate; //Ä¿±êÉú³ÉËÙ¶È,·¶Î§[1, 5] + BYTE bySensitive; //Ä¿±ê¼ì²âÁéÃô¶È£¬·¶Î§[1, 5] + BYTE byReferenceBright; //2012-3-27²Î¿¼ÁÁ¶È[0,100] + BYTE byMatchType; //2012-5-3±È¶Ô±¨¾¯Ä£Ê½£¬0-Ä¿±êÏûʧºó±¨¾¯£¬1-ʵʱ±¨¾¯ + BYTE byMatchThreshold; //2012-5-3ʵʱ±È¶ÔãÐÖµ£¬0~100 + NET_DVR_JPEGPARA struPictureParam; //ͼƬ¹æ¸ñ½á¹¹ + NET_VCA_SINGLE_FACESNAPCFG struRule[MAX_RULE_NUM]; //ÈËÁ³×¥ÅĹæÔò + //ÈËÁ³Æعâ×î¶Ì³ÖÐøʱ¼ä£¨Á½¸ö×Ö½Ú£© + WORD wFaceExposureMinDuration;//·¶Î§(1~3600Ã룬ĬÈÏ60)ÉúЧÓÚ×Ô¶¯Ä£Ê½Ï + //ÈËÁ³Æعâģʽ + BYTE byFaceExposureMode;//1-¹Ø±Õ£¬2-¿ªÆô£¬0-×Ô¶¯£¨¸ù¾ÝÈËÁ³Åжϣ© + BYTE byBackgroundPic;//±³¾°Í¼ÉÏ´«Ê¹ÄÜ 0-ĬÈÏÖµ£¨¿ªÆô£©£¬1-½ûÖ¹ + DWORD dwValidFaceTime; //ÓÐЧÈËÁ³×î¶Ì³ÖÐøʱ¼ä£¬µ¥Î»£ºÃë + DWORD dwUploadInterval; //ÈËÁ³×¥ÅÄͳ¼ÆÊý¾ÝÉÏ´«¼ä¸ôʱ¼ä£¬µ¥Î»£ºÃ룬ĬÈÏ900Ãë + DWORD dwFaceFilteringTime;//ÈËÁ³Í£Áôʱ¼ä¹ýÂË,ĬÈÏ5Ã룬·¶Î§0-100Ãë¡£0Ãë±íʾ²»¹ýÂË + BYTE bySceneID; //³¡¾°ºÅ,Ä¿Ç°Ö§³Ö1~4³¡¾°£¬0ΪÎÞЧ + BYTE byInvalCapFilterEnable;//ÎÞЧץÅĹýÂËʹÄÜ£¬0Ϊ¹Ø±Õ£¬1Ϊ¿ªÆô£¬Ä¬ÈÏΪ0 + BYTE byInvalCapFilterThreshold;//ÎÞЧץÅĹýÂËãÐÖµ£¬0~100£¬µ±byInvalCapFilterEnableΪ1ʱÉúЧ + BYTE byRes2[81]; +}NET_VCA_FACESNAPCFG, *LPNET_VCA_FACESNAPCFG; + +typedef struct tagNET_DVR_FIRMWARE_VERSION_IFNO +{ + DWORD dwSize;//½á¹¹Ìå´óС + char szFirmwareVersion[LEN_PROPERTY/*128*/]; //Ö÷¿Ø°æ±¾ÊôÐÔ Ö»¶Á + BYTE byRes2[128]; +}NET_DVR_FIRMWARE_VERSION_IFNO, *LPNET_DVR_FIRMWARE_VERSION_IFNO; + +//ÄêÁä¶Î +typedef enum tagHUMAN_AGE_GROUP_ENUM +{ + ENUM_AGE_GROUP_INFANT = 1, //Ó¤Ó׶ù + ENUM_AGE_GROUP_CHILD = 2, //¶ùͯ + ENUM_AGE_GROUP_YOUNGSTER = 3, //ÉÙÄê + ENUM_AGE_GROUP_ADOLESCENT = 4, //ÇàÉÙÄê + ENUM_AGE_GROUP_YOUTH = 5, //ÇàÄê + ENUM_AGE_GROUP_PRIME = 6, //׳Äê + ENUM_AGE_GROUP_MIDLIFE = 7, //ÖÐÄê + ENUM_AGE_GROUP_MIDAGE = 8, //ÖÐÀÏÄê + ENUM_AGE_GROUP_OLD = 9, //ÀÏÄê + ENUM_AGE_GROUP_ALL = 0xfe, //È«²¿ + ENUM_AGE_GROUP_UNKNOW = 0xff //δ֪,Ëã·¨Ö§³Öδ¼ì³ö +}HUMAN_AGE_GROUP_ENUM; + +//ÈËÁ³±íÇé +typedef enum tagFACE_EXPRESSION_GROUP_ENUM +{ + ENUM_EXPRESSION_GROUP_SURPRISED = 1, //¾ªÑÈ + ENUM_EXPRESSION_GROUP_PANIC = 2, //º¦Å + ENUM_EXPRESSION_GROUP_DISGUUSTED = 3, //Ñá¶ñ + ENUM_EXPRESSION_GROUP_HAPPY = 4, //¸ßÐË + ENUM_EXPRESSION_GROUP_SAD = 5, //Äѹý + ENUM_EXPRESSION_GROUP_ANGRY = 6, //·ßÅ­ + ENUM_EXPRESSION_GROUP_POKER = 7, //ÖÐÐÔ + ENUM_EXPRESSION_GROUP_ALL = 0xfe, //È«²¿ + ENUM_EXPRESSION_GROUP_UNKNOW = 0xff //δ֪,Ëã·¨Ö§³Öδ¼ì³ö +}FACE_EXPRESSION_GROUP_ENUM; + +typedef struct tagNET_DVR_LLI_PARAM +{ + float fSec;//Ãë[0.000000,60.000000] + BYTE byDegree;//¶È:γ¶È[0,90] ¾­¶È[0,180] + BYTE byMinute;//·Ö[0,59] + BYTE byRes[6]; +}NET_DVR_LLI_PARAM, *LPNET_DVR_LLI_PARAM; + +typedef struct tagNET_DVR_LLPOS_PARAM +{ + BYTE byLatitudeType;//γ¶ÈÀàÐÍ£¬0-±±Î³£¬1-ÄÏγ + BYTE byLongitudeType;//¾­¶ÈÀàÐÍ£¬0-¶«¾­£¬1-Î÷¾­ + BYTE byRes1[2]; + NET_DVR_LLI_PARAM struLatitude; /*γ¶È*/ + NET_DVR_LLI_PARAM struLongitude; /*¾­¶È*/ + BYTE byRes[16]; +}NET_DVR_LLPOS_PARAM, *LPNET_DVR_LLPOS_PARAM; + +//ÈËÁ³×¥Åĸ½¼ÓÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_VCA_FACESNAP_ADDINFO +{ + //ÈËÁ³¾ØÐοò,¸Ã×ø±êΪÈËÁ³Ð¡Í¼(Í·¼çÕÕ)ÖÐÈËÁ³µÄ×ø±ê + NET_VCA_RECT struFacePicRect; + int iSwingAngle;//Ðýת½Ç, -90~90¶È + int iTiltAngle;//¸©Ñö½Ç, -90~90¶È + DWORD dwPupilDistance;//Í«¾à,·¶Î§Îª£º×îСֵΪ10ÏñËØ,×î´óֵΪµ±Ç°·Ö±æÂÊ¿í¶È/1.6 + BYTE byBlockingState;//Ä¿±êÕÚµ²×´Ì¬£¬ 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,1~ÎÞÕÚµ²,2~˲ʱÇá¶ÈÕÚµ²£¬3~³ÖÐøÇá¶ÈÕÚµ²£¬4~ÑÏÖØÕÚµ² + BYTE byFaceSnapThermometryEnabled;//ÈËÁ³×¥ÅIJâÎÂʹÄÜ 1-¿ªÆô 0-¹Ø±Õ + BYTE byIsAbnomalTemperature;//ÈËÁ³×¥ÅIJâÎÂÊÇ·ñζÈÒì³£ 1-ÊÇ 0-·ñ + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + NET_DVR_TIME_EX struEnterTime; // ×î¼Ñ×¥ÅÄϽøÈëʱ¼ä + NET_DVR_TIME_EX struExitTime; // ×î¼Ñ×¥ÅÄÏÂÀ뿪ʱ¼ä + float fFaceTemperature; // ÈËÁ³Î¶ȣ¨ - 20.0¡æ~150.0¡æ£¬¾«È·µ½Ð¡Êýµãºó1λ¡£ÆäÖÐ0xffff£¨65535£©±íʾÎÞЧ£¬¿ªÆôÒþ²ØζÈÖµ¹¦ÄÜʱ·µ»Ø£© + float fAlarmTemperature;// ²âα¨¾¯¾¯ãÐÖµ£¨¾«È·µ½Ð¡Êýµãºó1룩 + DWORD dwThermalPicLen;//ÈȳÉÏñͼƬ³¤¶È + BYTE *pThermalPicBuff;// ÈȳÉÏñͼƬָÕë + BYTE szCustomChanID[65];// ×Ô¶¨Òå¼à¿ØµãͨµÀºÅ string max.len = 64 + BYTE byRes1[3];// ±£Áô×Ö½Ú + NET_DVR_LLPOS_PARAM struLLPos;//É豸¾­Î³¶ÈλÖÃÐÅÏ¢ +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pEventNotificationAlertBuff; //ÆäBuff¶ÔÓ¦EventNotificationAlert JSON Block("eventType": "faceCapture") +#else + char* pEventNotificationAlertBuff; //ÆäBuff¶ÔÓ¦EventNotificationAlert JSON Block("eventType": "faceCapture") + BYTE byRes2[4]; +#endif + DWORD dwEventNotificationAlertLen;//³¤¶È¶ÔÓ¦EventNotificationAlert JSON Block("eventType": "faceCapture")Êý¾Ý³¤¶È + BYTE byRes[340];// ±£Áô×Ö½Ú +}NET_VCA_FACESNAP_ADDINFO, *LPNET_VCA_FACESNAP_ADDINFO; + +//ÈËÁ³×¥ÅĽá¹û +typedef struct tagNET_VCA_FACESNAP_RESULT +{ + DWORD dwSize; // ½á¹¹´óС + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + DWORD dwFacePicID; //ÈËÁ³Í¼ID + DWORD dwFaceScore; //ÈËÁ³ÆÀ·Ö,0-100 + NET_VCA_TARGET_INFO struTargetInfo;//±¨¾¯Ä¿±êÐÅÏ¢ + NET_VCA_RECT struRect; //ÈËÁ³×ÓͼÇøÓò + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwFacePicLen; //ÈËÁ³×ÓͼµÄ³¤¶È£¬Îª0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾÓÐͼƬ + DWORD dwBackgroundPicLen; //±³¾°Í¼µÄ³¤¶È£¬Îª0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾÓÐͼƬ(±£Áô) + BYTE bySmart; //IDSÉ豸·µ»Ø0(ĬÈÏÖµ)£¬Smart Functiom Return 1 + BYTE byAlarmEndMark;//±¨¾¯½áÊø±ê¼Ç0-±£Áô£¬1-½áÊø±ê¼Ç£¨¸Ã×ֶνáºÏÈËÁ³ID×Ö¶ÎʹÓ㬱íʾ¸ÃID¶ÔÓ¦µÄϱ¨¾¯½áÊø£¬Ö÷ÒªÌṩ¸øNVRʹÓã¬ÓÃÓÚÅжϱ¨¾¯½áÊø£¬Ìáȡʶ±ðͼƬÊý¾ÝÖУ¬ÇåÎú¶È×î¸ßµÄͼƬ£© + BYTE byRepeatTimes; //Öظ´±¨¾¯´ÎÊý£¬0-ÎÞÒâÒå + BYTE byUploadEventDataType;//ÈËÁ³Í¼Æ¬Êý¾Ý³¤´«·½Ê½£º0-¶þ½øÖÆÊý¾Ý£¬1-URL + NET_VCA_HUMAN_FEATURE struFeature; //ÈËÌåÊôÐÔ + float fStayDuration; //Í£Áô»­ÃæÖÐʱ¼ä(µ¥Î»: Ãë) + char sStorageIP[16]; //´æ´¢·þÎñIPµØÖ· + WORD wStoragePort; //´æ´¢·þÎñ¶Ë¿ÚºÅ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + /*ÈËÁ³×ÓͼͼƬÖÊÁ¿ÆÀ¹ÀµÈ¼¶£¬0-µÍµÈÖÊÁ¿,1-ÖеÈÖÊÁ¿,2-¸ßµÈÖÊÁ¿, + ÐÂÔöÈËÁ³×¥ÅÄÖÊÁ¿ÆÀ·Ö»úÖÆÓëÔ­ÓеÄÈËÁ³ÆÀ·ÖÇø±ð£º + Ô­ÓеÄÈËÁ³ÆÀ·ÖÊÇÔÚÈËÁ³×¥ÅÄÖÐʵÏÖ£¬Ä¿µÄÊÇÈ·±£Ò»´ÎÈËÁ³×¥ÅÄÖлñÈ¡×îºÃµÄͼÏñЧ¹û£¬ÊÇÒ»¸öÏà¶ÔͼÏñÖÊÁ¿µÄÆÀ·Ö£»ÐÂÔöÈËÁ³×¥ÅÄÖÊÁ¿ÆÀ·Ö»úÖÆÊÇÕë¶ÔÒѾ­×¥ÅÄÍê³ÉµÄÈËÁ³Í¼Æ¬£¬Ê¹ÓÃͼÏñËã·¨¶ÔͼÏñÖÐÈËÁ³£¬ÈËÑÛ£¬¼ç¿íµÈÏà¶ÔÖØÒªµÄÐÅÏ¢½øÐзÖÎö£¬°´ÕÕͳһµÄ±ê×¼¶ÔÈËÁ³Í¼Æ¬Ð§¹ûÖÊÁ¿½øÐÐÆÀ·Ö*/ + BYTE byFacePicQuality; + BYTE byUIDLen; // ÉÏ´«±¨¾¯µÄ±êʶ³¤¶È + BYTE byLivenessDetectionStatus;// »îÌå¼ì²â״̬£º0-±£Áô£¬1-δ֪(¼ì²âʧ°Ü)£¬2-·ÇÕæÈËÈËÁ³£¬3-ÕæÈËÈËÁ³£¬4-먦Æô»îÌå¼ì²â + /*¸½¼ÓÐÅÏ¢±êʶ루¼´ÊÇ·ñÓÐNET_VCA_FACESNAP_ADDINFO½á¹¹Ì壩,0-ÎÞ¸½¼ÓÐÅÏ¢, 1-Óи½¼ÓÐÅÏ¢¡£*/ + BYTE byAddInfo; + BYTE *pUIDBuffer; //±êʶָÕë + //¸½¼ÓÐÅÏ¢Ö¸Õë,Ö¸ÏòNET_VCA_FACESNAP_ADDINFO½á¹¹Ìå + BYTE *pAddInfoBuffer; + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÊÇÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE* pBuffer1; //ÈËÁ³×ÓͼµÄͼƬÊý¾Ý + BYTE* pBuffer2; //±³¾°Í¼µÄͼƬÊý¾Ý£¨±£Áô£¬Í¨¹ý²éÕÒ±³¾°Í¼½Ó¿Ú¿ÉÒÔ»ñÈ¡±³¾°Í¼£© +}NET_VCA_FACESNAP_RESULT, *LPNET_VCA_FACESNAP_RESULT; + +typedef struct tagNET_VCA_SUB_PROCIMG_V50 +{ + DWORD dwImageLen; //ͼƬÊý¾Ý³¤¶È + DWORD dwFaceScore; //ÈËÁ³ÆÀ·Ö,0-100 + NET_VCA_RECT struVcaRect; //ÈËÁ³×ÓͼÇøÓò + NET_VCA_POINT struLeftEyePoint; //×óÑÛλÖà + NET_VCA_POINT struRightEyePoint; //ÓÒÑÛλÖà + BYTE byDistance; //Á½ÑÛ¼ä¾à + BYTE bySex; + BYTE byAgeGroup; + BYTE byEyeGlass; + NET_VCA_RECT struPosRect; //ÈËÁ³Î»ÖÃÇøÓò + BYTE byRes[20]; //±£Áô + BYTE *pImage; //ͼƬÊý¾Ý +}NET_VCA_SUB_PROCIMG_V50, *LPNET_VCA_SUB_PROCIMG_V50; + +typedef struct tagNET_DVR_FACE_DETECTION +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + DWORD dwBackgroundPicLen; //±³¾°Í¼µÄ³¤¶È£¬Îª0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾÓÐͼƬ + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + NET_VCA_RECT struFacePic[MAX_FACE_PIC_NUM/*30*/];//ÈËÁ³×ÓͼÇøÓò + BYTE byFacePicNum;//×ÓͼÊýÁ¿ + BYTE byUploadEventDataType;//ͼƬÊý¾Ý³¤´«·½Ê½£º0-¶þ½øÖÆÊý¾Ý£¬1-URL + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byRes[249]; + BYTE* pBackgroundPicpBuffer; //±³¾°Í¼µÄͼƬÊý¾Ý +}NET_DVR_FACE_DETECTION,*LPNET_DVR_FACE_DETECTION; + +typedef struct tagNET_DVR_UPGRADE_PARAM +{ + DWORD dwUpgradeType; + char *sFileName; + void *pInbuffer; + DWORD dwBufferLen; + char *pUnitIdList[64]; +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64)) + char *sCustomURL; +#else + char *sCustomURL; + BYTE byRes2[4]; +#endif + DWORD dwCustomURLLen; + BYTE byRes[100]; +}NET_DVR_UPGRADE_PARAM, *LPNET_DVR_UPGRADE_PARAM; + + +typedef struct tagNET_VCA_FD_PROCIMG_RESULT_V50 +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwImageId; //´óͼID + BYTE byRes[20]; //±£Áô + DWORD dwSubImageNum; //ÈËÁ³×ÓͼÕÅÊý + NET_VCA_SUB_PROCIMG_V50 struProcImg[MAX_TARGET_NUM]; //µ¥ÕÅ×ÓͼÐÅÏ¢ +}NET_VCA_FD_PROCIMG_RESULT_V50, *LPNET_VCA_FD_PROCIMG_RESULT_V50; + +//Ðé½¹Õì²â½á¹û +typedef struct tagNET_DVR_DEFOCUS_ALARM +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + NET_VCA_DEV_INFO struDevInfo;/*É豸ÐÅÏ¢*/ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byRes1[2]; //±£Áô×Ö½Ú + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byRes[49]; // ±£Áô×Ö½Ú +}NET_DVR_DEFOCUS_ALARM, *LPNET_DVR_DEFOCUS_ALARM; + +//´óÎíÕì²â½á¹û +typedef struct tagNET_DVR_DENSEFOGDETECTION_ALARM +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + NET_VCA_DEV_INFO struDevInfo;/*É豸ÐÅÏ¢*/ + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + BYTE byFogLevel; //ÎíµÄµÈ¼¶£¬0-ÎÞÎí~±¡Îí £¬1-±¡Îí~ÖÐÎí£¬ 2-´óÎí~ŨÎí£¬ 3-ŨÎí¼°ÒÔÉÏ + BYTE byRes[259]; // ±£Áô×Ö½Ú +}NET_DVR_DENSEFOGDETECTION_ALARM, *LPNET_DVR_DENSEFOGDETECTION_ALARM; + +typedef struct tagNET_DVR_AUDIOEXCEPTION_ALARM +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + BYTE byAlarmType;//±¨¾¯ÀàÐÍ£¬1-ÒôƵÊäÈëÒì³££¬2-ÒôƵÊäÈëÍ»±ä£¨ÉùÇ¿¶¸Éý£©£¬3-ÉùÇ¿¶¸½µ£¬4-ÒôƵ¶ªÊ§ + BYTE byRes1; + WORD wAudioDecibel;//ÉùÒôÇ¿¶È£¨ÒôƵÊäÈëÍ»±äʱÓõ½£© + NET_VCA_DEV_INFO struDevInfo;/*É豸ÐÅÏ¢*/ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byRes[62]; // ±£Áô×Ö½Ú +}NET_DVR_AUDIOEXCEPTION_ALARM, *LPNET_DVR_AUDIOEXCEPTION_ALARM; + +typedef struct tagNET_BUTTON_DOWN_EXCEPTION_ALARM +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + NET_VCA_DEV_INFO struDevInfo;/*É豸ÐÅÏ¢*/ + BYTE byRes[64]; // ±£Áô×Ö½Ú +}NET_BUTTON_DOWN_EXCEPTION_ALARM, *LPNET_BUTTON_DOWN_EXCEPTION_ALARM; + +typedef struct tagNET_VCA_FD_IMAGE_CFG +{ + DWORD dwWidth; //»Ò¶ÈͼÏñÊý¾Ý¿í¶È + DWORD dwHeight; //»Ò¶ÈͼÏñ¸ß¶È + DWORD dwImageLen; //»Ò¶ÈͼÏñÊý¾Ý³¤¶È + BYTE byRes[20]; //±£Áô + BYTE *pImage; //»Ò¶ÈͼÏñÊý¾Ý +}NET_VCA_FD_IMAGE_CFG, *LPNET_VCA_FD_IMAGE_CFG; + +typedef struct tagNET_VCA_FD_PROCIMG_CFG +{ + DWORD dwSize; //½á¹¹´óС + BYTE byEnable; //ÊÇ·ñ¼¤»î¹æÔò; + BYTE bySensitivity; //¼ì²âÁéÃô¶È£¬[0,5] + BYTE byRes1[22]; //±£Áô×Ö½Ú + NET_VCA_SIZE_FILTER struSizeFilter; //³ß´ç¹ýÂËÆ÷ + NET_VCA_POLYGON struPolygon; //¶à±ßÐÎ + NET_VCA_FD_IMAGE_CFG struFDImage; //ͼƬÐÅÏ¢ + BYTE byRes2[20]; //±£Áô +}NET_VCA_FD_PROCIMG_CFG, *LPNET_VCA_FD_PROCIMG_CFG; + +typedef struct tagNET_VCA_SUB_PROCIMG +{ + DWORD dwImageLen; //ͼƬÊý¾Ý³¤¶È + DWORD dwFaceScore; //ÈËÁ³ÆÀ·Ö,0-100 + NET_VCA_RECT struVcaRect; //ÈËÁ³×ÓͼÇøÓò + BYTE byRes[20]; //±£Áô + BYTE *pImage; //ͼƬÊý¾Ý +}NET_VCA_SUB_PROCIMG, *LPNET_VCA_SUB_PROCIMG; + +typedef struct tagNET_VCA_FD_PROCIMG_RESULT +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwImageId; //´óͼID + BYTE byRes[20]; //±£Áô + DWORD dwSubImageNum; //ÈËÁ³×ÓͼÕÅÊý + NET_VCA_SUB_PROCIMG struProcImg[MAX_TARGET_NUM]; //µ¥ÕÅ×ÓͼÐÅÏ¢ +}NET_VCA_FD_PROCIMG_RESULT, *LPNET_VCA_FD_PROCIMG_RESULT; + +typedef struct tagNET_VCA_PICMODEL_RESULT +{ + DWORD dwImageLen; //ͼƬÊý¾Ý³¤¶È + DWORD dwModelLen; //Ä£ÐÍÊý¾Ý³¤¶È + BYTE byRes[20]; //±£Áô + BYTE *pImage; //ÈËÁ³Í¼Æ¬Êý¾ÝÖ¸Õë + BYTE *pModel; //Ä£ÐÍÊý¾ÝÖ¸Õë +}NET_VCA_PICMODEL_RESULT, *LPNET_VCA_PICMODEL_RESULT; + +typedef struct tagNET_VCA_REGISTER_PIC +{ + DWORD dwImageID; //´óͼID + DWORD dwFaceScore; //ÈËÁ³ÆÀ·Ö,0-100 + NET_VCA_RECT struVcaRect; //ÈËÁ³×ÓͼÇøÓò + BYTE byRes[20]; //±£Áô +}NET_VCA_REGISTER_PIC, *LPNET_VCA_REGISTER_PIC; + +#define MAX_HUMAN_PICTURE_NUM 10 //×î´óÕÕƬÊý +#define MAX_HUMAN_BIRTHDATE_LEN 10 //×î´ó³öÉúÄêÔ³¤¶È + +typedef struct tagNET_DVR_AREAINFOCFG +{ + WORD wNationalityID; //¹ú¼® + WORD wProvinceID; //Ê¡ + WORD wCityID; //ÊÐ + WORD wCountyID; //ÏØ + /* + if (dwCode != 0) dwCode ¸³Öµ²ÎÕÕ ¡°È«¹ú¸÷Ê¡·Ý³ÇÊÐÁбí.txt¡± + else dwCode ¸³Öµ½âÎö²ÎÕÕ PROVINCE_CITY_IDX + */ + DWORD dwCode; +}NET_DVR_AREAINFOCFG, *LPNET_DVR_AREAINFOCFG; + +typedef struct tagNET_VCA_HUMAN_ATTRIBUTE +{ + BYTE bySex; //ÐÔ±ð£º0-ÄУ¬1-Å®£¬0xff-δ֪ + BYTE byCertificateType; //Ö¤¼þÀàÐÍ£º0-Éí·ÝÖ¤£¬1-¾¯¹ÙÖ¤£¬2-¾ü¹ÙÖ¤£¬3-»¤ÕÕ£¬4-ÆäËû£¬0xff-δ֪ + BYTE byBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //³öÉúÄêÔ£¬È磺201106 + BYTE byName[NAME_LEN]; //ÐÕÃû + NET_DVR_AREAINFOCFG struNativePlace; //¼®¹á²ÎÊý + BYTE byCertificateNumber[NAME_LEN]; //Ö¤¼þºÅ + /* + dwPersonInfoExtendLen && pPersonInfoExtend ¶ÔÓ¦URL(/ISAPI/System/Video/inputs/channels//faceContrast/personInfoExtend)±íʾµÄ PersonInfoExtendList XML Block + ÒâÒåËùÔÚ£ºÆ½Ì¨ÖÐÐĹÜÀíµÄʱºò£¬µ¼ÈëpictureÊý¾ÝµÄ×Ô¶¨ÒåÐÅÏ¢£¬ÔÚÉ豸¼ì²âÆ¥Å䱨¾¯ºó£¬Ð¯´ø×÷ΪƥÅäÐÅÏ¢Ò»²¢ÉÏ´«£»Æ½Ì¨ÖÐÐĹÜÀíÆ¥Å䣻 + */ + DWORD dwPersonInfoExtendLen;// ÈËÔ±±êÇ©ÐÅÏ¢À©Õ¹³¤¶È + BYTE *pPersonInfoExtend; //ÈËÔ±±êÇ©ÐÅÏ¢À©Õ¹ÐÅÏ¢ + BYTE byAgeGroup;//ÄêÁä¶Î£¬Ïê¼ûHUMAN_AGE_GROUP_ENUM£¬Èç´«Èë0xff±íʾδ֪ + BYTE byRes2[3]; //±£Áô×Ö½Ú +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE* pThermalData;//ÈȳÉÏñͼƬָÕë +#else + BYTE* pThermalData;//ÈȳÉÏñͼƬָÕë + BYTE byRes3[4];//±£Áô×Ö½Ú +#endif +}NET_VCA_HUMAN_ATTRIBUTE, *LPNET_VCA_HUMAN_ATTRIBUTE; + +typedef struct tagNET_VCA_HUMANATTRIBUTE_COND +{ + BYTE bySex; //ÐÔ±ð£º0-²»ÆôÓã¬1-ÄУ¬2-Å® + BYTE byCertificateType; //Ö¤¼þÀàÐÍ£º0-²»ÆôÓã¬1-Éí·ÝÖ¤£¬2-¾¯¹ÙÖ¤ + BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //Æðʼ³öÉúÄêÔ£¬È磺201106 + BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //½ØÖ¹³öÉúÄêÔ£¬Èç201106 + BYTE byName[NAME_LEN]; //ÐÕÃû + NET_DVR_AREAINFOCFG struNativePlace; //¼®¹á²ÎÊý + BYTE byCertificateNumber[NAME_LEN]; //Ö¤¼þºÅ + BYTE byRes[20]; +}NET_VCA_HUMANATTRIBUTE_COND, *LPNET_VCA_HUMANATTRIBUTE_COND; + + +typedef struct tagNET_VCA_BLOCKLIST_INFO +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwRegisterID; //Ãûµ¥×¢²áIDºÅ£¨Ö»¶Á£© + DWORD dwGroupNo; //·Ö×éºÅ + BYTE byType; //Ãûµ¥±êÖ¾£º0-È«²¿£¬1-ÔÊÐíÃûµ¥£¬2-½ûÖ¹Ãûµ¥ + BYTE byLevel; //½ûÖ¹Ãûµ¥µÈ¼¶£¬0-È«²¿£¬1-µÍ£¬2-ÖУ¬3-¸ß + BYTE byRes1[2]; //±£Áô + NET_VCA_HUMAN_ATTRIBUTE struAttribute; //ÈËÔ±ÐÅÏ¢ + BYTE byRemark[NAME_LEN]; //±¸×¢ÐÅÏ¢ + DWORD dwFDDescriptionLen;//ÈËÁ³¿âÃèÊöÊý¾Ý³¤¶È + BYTE *pFDDescriptionBuffer;//ÈËÁ³¿âÃèÊöÊý¾ÝÖ¸Õë + DWORD dwFCAdditionInfoLen;//×¥ÅĿ⸽¼ÓÐÅÏ¢³¤¶È + BYTE *pFCAdditionInfoBuffer;//×¥ÅĿ⸽¼ÓÐÅÏ¢Êý¾ÝÖ¸Õ루FCAdditionInfoÖаüº¬Ïà»úPTZ×ø±ê¡¢GPSÐÅÏ¢£© + DWORD dwThermalDataLen;//ÈȳÉÏñͼƬ³¤¶È£¬½öÈËÁ³±È¶ÔʼþÉϱ¨Ö§³Ö +}NET_VCA_BLOCKLIST_INFO, *LPNET_VCA_BLOCKLIST_INFO; + +typedef struct tagNET_VCA_BLOCKLIST_PARA +{ + DWORD dwSize; //½á¹¹´óС + NET_VCA_BLOCKLIST_INFO struBlockListInfo; //½ûÖ¹Ãûµ¥»ù±¾²ÎÊý + DWORD dwRegisterPicNum; //½ûÖ¹Ãûµ¥Í¼¸öÊý + NET_VCA_PICMODEL_RESULT struRegisterPic[MAX_HUMAN_PICTURE_NUM]; //½ûÖ¹Ãûµ¥Í¼Æ¬ÐÅÏ¢ + BYTE byRes[40]; //±£Áô +}NET_VCA_BLOCKLIST_PARA, *LPNET_VCA_BLOCKLIST_PARA; + +typedef struct tagNET_VCA_BLOCKLIST_COND +{ + LONG lChannel; //ͨµÀºÅ + DWORD dwGroupNo; //·Ö×éºÅ + BYTE byType; //Ãûµ¥±êÖ¾£º0-È«²¿£¬1-ÔÊÐíÃûµ¥£¬2-½ûÖ¹Ãûµ¥ + BYTE byLevel; //½ûÖ¹Ãûµ¥µÈ¼¶£¬0-È«²¿£¬1-µÍ£¬2-ÖУ¬3-¸ß + BYTE byRes1[2]; //±£Áô + NET_VCA_HUMAN_ATTRIBUTE struAttribute; //ÈËÔ±ÐÅÏ¢ + BYTE byRes[20]; +}NET_VCA_BLOCKLIST_COND, *LPNET_VCA_BLOCKLIST_COND; + +typedef struct tagNET_VCA_BLOCKLIST_PIC +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwFacePicNum; //ÈËÁ³Í¼¸öÊý + BYTE byRes[20]; //±£Áô + NET_VCA_PICMODEL_RESULT struBlockListPic[MAX_HUMAN_PICTURE_NUM]; //µ¥ÕÅÕÕƬÐÅÏ¢ +}NET_VCA_BLOCKLIST_PIC, *LPNET_VCA_BLOCKLIST_PIC; + +typedef struct tagNET_VCA_FIND_PICTURECOND +{ + LONG lChannel;//ͨµÀºÅ + NET_DVR_TIME struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//½áÊøʱ¼ä + BYTE byRes[12]; //±£Áô +}NET_VCA_FIND_PICTURECOND, *LPNET_VCA_FIND_PICTURECOND; + +#define MAX_FACE_PIC_LEN 6144 //×î´óÈËÁ³Í¼Æ¬Êý¾Ý³¤¶È +typedef struct tagNET_VCA_SUB_SNAPPIC_DATA +{ + DWORD dwFacePicID; //ÈËÁ³Í¼ID + DWORD dwFacePicLen; //ÈËÁ³Í¼Êý¾Ý³¤¶È + NET_DVR_TIME struSnapTime; //×¥ÅÄʱ¼ä + DWORD dwSimilarity; //ÏàËÆ¶È + BYTE byRes[16]; //±£Áô + char sPicBuf[MAX_FACE_PIC_LEN]; //ͼƬÊý¾Ý +}NET_VCA_SUB_SNAPPIC_DATA, *LPNET_VCA_SUB_SNAPPIC_DATA; + +typedef struct tagNET_VCA_ADVANCE_FIND +{ + DWORD dwFacePicID; //ÈËÁ³Í¼Æ¬ID + BYTE byRes[36]; +}NET_VCA_ADVANCE_FIND, *LPNET_VCA_ADVANCE_FIND; + +typedef struct tagNET_VCA_NORMAL_FIND +{ + DWORD dwImageID; //´óͼID + DWORD dwFaceScore; //ÈËÁ³ÆÀ·Ö + NET_VCA_RECT struVcaRect; //ÈËÁ³×ÓͼÇøÓò + BYTE byRes[20]; +}NET_VCA_NORMAL_FIND, *LPNET_VCA_NORMAL_FIND; + +typedef union tagNET_VCA_FIND_SNAPPIC_UNION +{ + NET_VCA_NORMAL_FIND struNormalFind; //ÆÕͨ¼ìË÷ + NET_VCA_ADVANCE_FIND struAdvanceFind; //¸ß¼¶¼ìË÷ +}NET_VCA_FIND_SNAPPIC_UNION, *LPNET_VCA_FIND_SNAPPIC_UNION; + +typedef enum _VCA_FIND_SNAPPIC_TYPE_ +{ + VCA_NORMAL_FIND = 0x00000000, //ÆÕͨ¼ìË÷ + VCA_ADVANCE_FIND = 0x00000001 //¸ß¼¶¼ìË÷ +}VCA_FIND_SNAPPIC_TYPE; + +typedef struct tagNET_VCA_FIND_PICTURECOND_ADVANCE +{ + LONG lChannel;//ͨµÀºÅ + NET_DVR_TIME struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//½áÊøʱ¼ä + BYTE byThreshold; //ãÐÖµ£¬0-100 + BYTE byRes[23]; //±£Áô + VCA_FIND_SNAPPIC_TYPE dwFindType;//¼ìË÷ÀàÐÍ£¬Ïê¼ûVCA_FIND_SNAPPIC_TYPE + NET_VCA_FIND_SNAPPIC_UNION uFindParam; //¼ìË÷²ÎÊý +}NET_VCA_FIND_PICTURECOND_ADVANCE, *LPNET_VCA_FIND_PICTURECOND_ADVANCE; + +typedef struct tagNET_VCA_FACESNAP_INFO_ALARM +{ + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + DWORD dwSnapFacePicID; //×¥ÅÄÈËÁ³Í¼ID + DWORD dwSnapFacePicLen; //×¥ÅÄÈËÁ³×ÓͼµÄ³¤¶È£¬Îª0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾÓÐͼƬ + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + BYTE byFaceScore; //ÈËÁ³ÆÀ·Ö£¬Ö¸ÈËÁ³×ÓͼµÄÖÊÁ¿µÄÆÀ·Ö,0-100 + BYTE bySex;//ÐÔ±ð£¬0-δ֪£¬1-ÄУ¬2-Å®,0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byGlasses;//ÊÇ·ñ´øÑÛ¾µ£¬0-δ֪£¬1-ÊÇ£¬2-·ñ,3-´÷Ä«¾µ, 0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + /* + ʶ±ðÈËÁ³µÄÄêÁä¶Î·¶Î§[byAge-byAgeDeviation,byAge+byAgeDeviation] + */ + BYTE byAge;//ÄêÁä,0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©,0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byAgeDeviation;//ÄêÁäÎó²îÖµ + BYTE byAgeGroup;//ÄêÁä¶Î£¬Ïê¼ûHUMAN_AGE_GROUP_ENUM£¬Èô´«Èë0xff±íʾδ֪ + /*ÈËÁ³×ÓͼͼƬÖÊÁ¿ÆÀ¹ÀµÈ¼¶£¬0-µÍµÈÖÊÁ¿,1-ÖеÈÖÊÁ¿,2-¸ßµÈÖÊÁ¿, + ¸ÃÖÊÁ¿ÆÀ¹ÀËã·¨½öÕë¶ÔÈËÁ³×Óͼµ¥ÕÅͼƬ,¾ßÌåÊÇͨ¹ý×Ë̬¡¢ÇåÎú¶È¡¢ÕÚµ²Çé¿ö¡¢¹âÕÕÇé¿öµÈ¿ÉÓ°ÏìÈËÁ³Ê¶±ðÐÔÄܵÄÒòËØ×ÛºÏÆÀ¹ÀµÄ½á¹û*/ + BYTE byFacePicQuality; + BYTE byRes; + DWORD dwUIDLen; // ÉÏ´«±¨¾¯µÄ±êʶ³¤¶È + BYTE *pUIDBuffer; //±êʶָÕë + float fStayDuration; //Í£Áô»­ÃæÖÐʱ¼ä(µ¥Î»: Ãë) + BYTE *pBuffer1; //×¥ÅÄÈËÁ³×ÓͼµÄͼƬÊý¾Ý +}NET_VCA_FACESNAP_INFO_ALARM, *LPNET_VCA_FACESNAP_INFO_ALARM; + +typedef struct tagNET_VCA_BLOCKLIST_INFO_ALARM +{ + NET_VCA_BLOCKLIST_INFO struBlockListInfo; //½ûÖ¹Ãûµ¥»ù±¾ÐÅÏ¢ + DWORD dwBlockListPicLen; //½ûÖ¹Ãûµ¥ÈËÁ³×ÓͼµÄ³¤¶È£¬Îª0±íʾûÓÐͼƬ£¬´óÓÚ0±íʾÓÐͼƬ + DWORD dwFDIDLen;// ÈËÁ³¿âID³¤¶È + BYTE *pFDID; //ÈËÁ³¿âIdÖ¸Õë + DWORD dwPIDLen;// ÈËÁ³¿âͼƬID³¤¶È + BYTE *pPID; //ÈËÁ³¿âͼƬIDÖ¸Õë + WORD wThresholdValue; //ÈËÁ³¿âãÐÖµ[0,100] + BYTE byIsNoSaveFDPicture;//0-±£´æÈËÁ³¿âͼƬ,1-²»±£´æÈËÁ³¿âͼƬ, Èô¿ªÆôÁ˵¼ÈëͼƬ»òÕß½¨Ä£Ê±²»±£´æԭͼ¹¦ÄÜʱ,¸Ã×ֶηµ»Ø1,´ËʱÈËÁ³¿âͼƬ½«²»ÔÙ·µ»Ø + BYTE byRealTimeContrast;//ÊÇ·ñʵʱ±¨¾¯ 0-ʵʱ 1-·Çʵʱ + BYTE *pBuffer1; //½ûÖ¹Ãûµ¥ÈËÁ³×ÓͼµÄͼƬÊý¾Ý +}NET_VCA_BLOCKLIST_INFO_ALARM, *LPNET_VCA_BLOCKLIST_INFO_ALARM; + +typedef struct tagNET_VCA_FACESNAP_MATCH_ALARM +{ + DWORD dwSize; // ½á¹¹´óС + float fSimilarity; //ÏàËƶȣ¬[0.001,1] + NET_VCA_FACESNAP_INFO_ALARM struSnapInfo; //×¥ÅÄÐÅÏ¢ + NET_VCA_BLOCKLIST_INFO_ALARM struBlockListInfo; //½ûÖ¹Ãûµ¥ÐÅÏ¢ + char sStorageIP[16]; //´æ´¢·þÎñIPµØÖ· + WORD wStoragePort; //´æ´¢·þÎñ¶Ë¿ÚºÅ + BYTE byMatchPicNum; //Æ¥ÅäͼƬµÄÊýÁ¿£¬0-±£Áô£¨ÀÏÉ豸Õâ¸öֵĬÈÏ0£¬ÐÂÉ豸Õâ¸öֵΪ0ʱ±íʾºóÐøûÓÐÆ¥ÅäµÄͼƬÐÅÏ¢£© + BYTE byPicTransType;//ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + DWORD dwSnapPicLen;//É豸ʶ±ð×¥ÅÄͼƬ³¤¶È + BYTE *pSnapPicBuffer;//É豸ʶ±ð×¥ÅÄͼƬָÕë + NET_VCA_RECT struRegion;//Ä¿±ê±ß½ç¿ò£¬É豸ʶ±ð×¥ÅÄͼƬÖУ¬ÈËÁ³×Óͼ×ø±ê + DWORD dwModelDataLen;//½¨Ä£Êý¾Ý³¤¶È + BYTE *pModelDataBuffer;// ½¨Ä£Êý¾ÝÖ¸Õë + BYTE byModelingStatus;// ½¨Ä£×´Ì¬ + BYTE byLivenessDetectionStatus;//»îÌå¼ì²â״̬£º0-±£Áô£¬1-δ֪£¨¼ì²âʧ°Ü£©£¬2-·ÇÕæÈËÈËÁ³£¬3-ÕæÈËÈËÁ³£¬4-먦Æô»îÌå¼ì²â + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,0xffÎÞЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬0xffÎÞЧ*/ + BYTE byMask; //×¥ÅÄͼÊÇ·ñ´÷¿ÚÕÖ£¬0-±£Áô£¬1-δ֪£¬2-²»´÷¿ÚÕÖ£¬3-´÷¿ÚÕÖ + BYTE bySmile; //×¥ÅÄͼÊÇ·ñ΢Ц£¬0-±£Áô£¬1-δ֪£¬2-²»Î¢Ð¦£¬3-΢Ц + BYTE byContrastStatus; //±È¶Ô½á¹û£¬0-±£Áô£¬1-±È¶Ô³É¹¦£¬2-±È¶Ôʧ°Ü + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÊÇÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý +}NET_VCA_FACESNAP_MATCH_ALARM, *LPNET_VCA_FACESNAP_MATCH_ALARM; + +typedef struct tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG +{ + NET_VCA_BLOCKLIST_INFO struBlockListInfo; //½ûÖ¹Ãûµ¥»ù±¾ÐÅÏ¢ + DWORD dwBlockListPicID; //½ûÖ¹Ãûµ¥ÈËÁ³×ÓͼID£¬ÓÃÓÚ²éÕÒͼƬ + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_VCA_BLOCKLIST_INFO_ALARM_LOG, *LPNET_VCA_BLOCKLIST_INFO_ALARM_LOG; + +typedef struct tagNET_VCA_FACESNAP_INFO_ALARM_LOG +{ + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + DWORD dwSnapFacePicID; //×¥ÅÄÈËÁ³Í¼ID + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_VCA_FACESNAP_INFO_ALARM_LOG, *LPNET_VCA_FACESNAP_INFO_ALARM_LOG; + +typedef struct tagNET_VCA_FACESNAP_MATCH_ALARM_LOG +{ + DWORD dwSize; // ½á¹¹´óС + float fSimilarity; //ÏàËƶȣ¬[0.001,1] + NET_VCA_FACESNAP_INFO_ALARM_LOG struSnapInfoLog; //×¥ÅÄÐÅÏ¢ + NET_VCA_BLOCKLIST_INFO_ALARM_LOG struBlockListInfoLog; //½ûÖ¹Ãûµ¥ÐÅÏ¢ + BYTE byRes[60]; // ±£Áô×Ö½Ú +}NET_VCA_FACESNAP_MATCH_ALARM_LOG, *LPNET_VCA_FACESNAP_MATCH_ALARM_LOG; + +typedef struct tagNET_VCA_FACEMATCH_PICCOND +{ + DWORD dwSize; // ½á¹¹´óС + DWORD dwSnapFaceID; //×¥ÅÄÈËÁ³×ÓͼID + DWORD dwBlockListID; //Æ¥ÅäµÄ½ûÖ¹Ãûµ¥ID + DWORD dwBlockListFaceID; //±È¶ÔµÄ½ûÖ¹Ãûµ¥ÈËÁ³×ÓͼID + BYTE byRes[20]; // ±£Áô×Ö½Ú +}NET_VCA_FACEMATCH_PICCOND, *LPNET_VCA_FACEMATCH_PICCOND; + +typedef struct tagNET_VCA_FACEMATCH_PICTURE +{ + DWORD dwSize; // ½á¹¹´óС + DWORD dwSnapFaceLen; //×¥ÅÄÈËÁ³×Óͼ³¤¶È + DWORD dwBlockListFaceLen; //±È¶ÔµÄ½ûÖ¹Ãûµ¥ÈËÁ³×Óͼ³¤¶È + BYTE byRes[20]; //±£Áô×Ö½Ú + BYTE *pSnapFace; //×¥ÅÄÈËÁ³×ÓͼµÄͼƬÊý¾Ý + BYTE *pBlockListFace; //±È¶ÔµÄ½ûÖ¹Ãûµ¥ÈËÁ³×ÓͼÊý¾Ý +}NET_VCA_FACEMATCH_PICTURE, *LPNET_VCA_FACEMATCH_PICTURE; + +typedef struct tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA +{ + DWORD dwSize; //½á¹¹´óС + NET_VCA_BLOCKLIST_INFO struBlockListInfo; //½ûÖ¹Ãûµ¥»ù±¾²ÎÊý + DWORD dwImageLen; //ͼÏñÊý¾Ý³¤¶È + BYTE byRes[124]; //±£Áô + BYTE *pImage; //ͼÏñÊý¾Ý +}NET_VCA_BLOCKLIST_FASTREGISTER_PARA, *LPNET_VCA_BLOCKLIST_FASTREGISTER_PARA; + +/*******PJ01C20170209084³¬ÄÔ¼²¥NVSÈí¼þ¹¦ÄÜ¿ª·¢¶¨ÖÆÏîĿרÓÃ******/ +//µ¥Ö¡»­ÃæÈËÊýͳ¼Æ½á¹ûÉÏ´« +typedef struct tagNET_DVR_FRAMES_PEOPLE_COUNTING +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_VCA_DEV_INFO struDevInfo;//Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + DWORD dwPeopleCountingNum; //»­ÃæÖеÄÈËÊýͳ¼ÆÊýÁ¿ + DWORD dwPicLen; //É豸ʶ±ð×¥ÅĵÄÈ«¾°Í¼Æ¬Êý¾Ý³¤¶È + BYTE *pPicBuffer; //É豸ʶ±ð×¥ÅĵÄÈ«¾°Í¼Æ¬Êý¾ÝÖ¸Õë + BYTE byRes[512]; // ±£Áô×Ö½Ú +}NET_DVR_FRAMES_PEOPLE_COUNTING, *LPNET_DVR_FRAMES_PEOPLE_COUNTING; +/*******PJ01C20170209084³¬ÄÔ¼²¥NVSÈí¼þ¹¦ÄÜ¿ª·¢¶¨ÖÆÏîĿרÓÃ******/ + +//µ¥¸ö·ÖÇøÅäÖà +typedef struct tagNET_VCA_SINGLE_PATH +{ + BYTE byActive; // ÊÇ·ñ¿ÉÓÃ,0-·ñ,1-ÊÇ + BYTE byType; //0-´æ´¢×¥ÅÄ£¬1-´æ´¢½ûÖ¹Ãûµ¥±È¶Ô±¨¾¯£¬2-´æ´¢×¥ÅĺͽûÖ¹Ãûµ¥±È¶Ô±¨¾¯£¬0xff-ÎÞЧ + BYTE bySaveAlarmPic; //ÊÇ·ñÓÃÓÚ±£´æ¶ÏÍøµÄ±¨¾¯Í¼Æ¬£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[5]; //±£Áô + DWORD dwDiskDriver; //ÅÌ·ûºÅ£¬´Ó0¿ªÊ¼ + DWORD dwLeftSpace; //Ô¤ÁôÈÝÁ¿£¨µ¥Î»ÎªG£© + BYTE byRes2[8]; //±£Áô +}NET_VCA_SINGLE_PATH, *LPNET_VCA_SINGLE_PATH; + +//´æ´¢Â·¾¶ÉèÖà +typedef struct tagNET_VCA_SAVE_PATH_CFG +{ + DWORD dwSize; //½á¹¹´óС + NET_VCA_SINGLE_PATH struPathInfo[MAX_DISKNUM_V30]; //µ¥¸ö·ÖÇø + BYTE byRes[40]; //±£Áô +}NET_VCA_SAVE_PATH_CFG, *LPNET_VCA_SAVE_PATH_CFG; + +typedef struct tagNET_DVR_DEV_ACCESS_CFG +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; //½ÓÈëÉ豸µÄIPµØÖ· + WORD wDevicePort; //¶Ë¿ÚºÅ + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-·ñ£¬1-ÊÇ + BYTE byRes1; //±£Áô + BYTE sUserName[NAME_LEN]; //½ÓÈëÉ豸µÄµÇ¼ÕʺŠ+ BYTE sPassword[PASSWD_LEN]; //½ÓÈëÉ豸µÄµÇ¼ÃÜÂë + BYTE byRes2[60]; +}NET_DVR_DEV_ACCESS_CFG,*LPNET_DVR_DEV_ACCESS_CFG; + +/********************************ÖÇÄÜÈËÁ³Ê¶±ð end****************************/ +//·Ö±æÂÊ +#define MAKE_RESOLUTION(_interlace_, _width_, _height_, _fps_) \ + (((_interlace_)<<28) \ + |((((_width_)>>3)&0x1ff)<<19)| \ + ((((_height_)>>1)&0x7ff)<<8)| \ +((_fps_)&0xff)) +#define GET_RES_INTERLACE(_res_) \ +(((_res_)>>28)&0x1) +#define GET_RES_WIDTH(_res_) \ +((((_res_)>>19)&0x1ff)<<3) +#define GET_RES_HEIGHT(_res_) \ +((((_res_)>>8)&0x7ff)<<1) +#define GET_RES_FPS(_res_) \ +((_res_)&0xff) + +#define NOT_AVALIABLE MAKE_RESOLUTION (0,0,0,0) +#define SVGA_60HZ MAKE_RESOLUTION(0, 800, 600, 60) +#define SVGA_75HZ MAKE_RESOLUTION(0, 800, 600, 75) +#define XGA_60HZ MAKE_RESOLUTION(0, 1024, 768, 60) +#define XGA_75HZ MAKE_RESOLUTION(0, 1024, 768, 75) +#define SXGA_60HZ MAKE_RESOLUTION(0, 1280, 1024, 60) +#define SXGA2_60HZ MAKE_RESOLUTION(0, 1280, 960, 60) +#define _720P_24HZ MAKE_RESOLUTION(0, 1280, 720, 24) +#define _720P_25HZ MAKE_RESOLUTION(0, 1280, 720, 25) +#define _720P_30HZ MAKE_RESOLUTION(0, 1280, 720, 30) +#define _720P_60HZ MAKE_RESOLUTION(0, 1280, 720, 60) +#define _720P_50HZ MAKE_RESOLUTION(0, 1280, 720, 50) +#define _1080I_60HZ MAKE_RESOLUTION(1, 1920, 1080, 60) +#define _1080I_50HZ MAKE_RESOLUTION(1, 1920, 1080, 50) +#define _1080P_60HZ MAKE_RESOLUTION(0, 1920, 1080, 60) +#define _1080P_50HZ MAKE_RESOLUTION(0, 1920, 1080, 50) +#define _1080P_30HZ MAKE_RESOLUTION(0, 1920, 1080, 30) +#define _1080P_25HZ MAKE_RESOLUTION(0, 1920, 1080, 25) +#define _1080P_24HZ MAKE_RESOLUTION(0, 1920, 1080, 24) +#define UXGA_60HZ MAKE_RESOLUTION(0, 1600, 1200, 60) +#define UXGA_30HZ MAKE_RESOLUTION(0, 1600, 1200, 30) +#define WSXGA_60HZ MAKE_RESOLUTION(0, 1680, 1050, 60) +#define WUXGA_60HZ MAKE_RESOLUTION(0, 1920, 1200, 60) +#define WUXGA_30HZ MAKE_RESOLUTION(0, 1920, 1200, 30) +#define WXGA_60HZ MAKE_RESOLUTION(0, 1360, 768, 60) +#define SXGA_PLUS_60HZ MAKE_RESOLUTION(0, 1400, 1050, 60) +#define VGA_MODE_3840x2160_30HZ MAKE_RESOLUTION(0, 3840, 2160, 30) +#define VGA_MODE_3840x2160_60HZ MAKE_RESOLUTION(0, 3840, 2160, 60) + + + +//ÏÔʾͨµÀ»­Ãæ·Ö¸îģʽ +#define MAX_WINDOWS_NUM 12 //»­Ãæ·Ö¸îģʽµÄÊýÁ¿ +#define MAX_SUPPORT_RES 32 +#define MAX_DISPNUM_V41 32 +#define MAX_SDI_RES 16 //SDIÏÔʾͨµÀ×î´óÖ§³Ö·Ö±æÂÊÊý + +typedef struct tagNET_DVR_DISPWINDOWMODE +{ + BYTE byDispChanType;//ÏÔʾͨµÀÀàÐÍ£º0-BNC, 1-VGA, 2-HDMI, 3-DVI 4-SDI + BYTE byDispChanSeq;//ÏÔʾͨµÀÐòºÅ,´Ó1¿ªÊ¼£¬Èç¹ûÀàÐÍÊÇVGA£¬Ôò±íʾµÚ¼¸¸öVGA + BYTE byRes[2]; + BYTE byDispMode[MAX_WINDOWS_NUM/*12*/]; +}NET_DVR_DISPWINDOWMODE, *LPNET_DVR_DISPWINDOWMODE; + +typedef struct tagNET_DVR_DISPINFO +{ + BYTE byChanNums;//ͨµÀ¸öÊý + BYTE byStartChan;//ÆðʼͨµÀ + BYTE byRes[2]; + DWORD dwSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³Ö·Ö±æÂÊ +}NET_DVR_DISPINFO, *LPNET_DVR_DISPINFO; + +//´óÆÁÆ´½ÓÐÅÏ¢ +typedef struct tagNET_DVR_SCREENINFO +{ + BYTE bySupportBigScreenNums;//×î¶à´óÆÁÆ´½ÓÊýÁ¿ + BYTE byStartBigScreenNum;//´óÆÁÆ´½ÓÆðʼºÅ + BYTE byMaxScreenX;//´óÆÁÆ´½Óģʽ + BYTE byMaxScreenY; + BYTE byRes[8]; +}NET_DVR_SCREENINFO, *LPNET_DVR_SCREENINFO; + +typedef struct tagNET_DVR_SDI_INFO +{ + BYTE byChanNums;//ͨµÀ¸öÊý + BYTE byStartChan;//ÆðʼͨµÀ + BYTE byRes[2]; + DWORD dwSupportResolution[MAX_SDI_RES/*16*/];//Ö§³Ö·Ö±æÂÊ +}NET_DVR_SDI_INFO,*LPNET_DVR_SDI_INFO; + +typedef struct tagNET_DVR_MATRIX_ABILITY_V41 +{ + DWORD dwSize; + BYTE byDspNums;//DSP¸öÊý + BYTE byDecChanNums;//½âÂëͨµÀÊý + BYTE byStartChan;//Æðʼ½âÂëͨµÀ + BYTE byRes1[5]; + NET_DVR_DISPINFO struVgaInfo;//VGAÏÔʾͨµÀÐÅÏ¢ + NET_DVR_DISPINFO struBncInfo;//BNCÏÔʾͨµÀÐÅÏ¢ + NET_DVR_DISPINFO struHdmiInfo;//HDMIÏÔʾͨµÀÐÅÏ¢ + NET_DVR_DISPINFO struDviInfo;//DVIÏÔʾͨµÀÐÅÏ¢ + NET_DVR_DISPWINDOWMODE struDispMode[MAX_DISPNUM_V41/*32*/]; + NET_DVR_SCREENINFO struBigScreenInfo; + BYTE bySupportAutoReboot; //ÊÇ·ñÖ§³Ö×Ô¶¯ÖØÆô£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byRes2[3]; + NET_DVR_SDI_INFO struSDIInfo;//SDIÏÔʾͨµÀÐÅÏ¢ + BYTE byRes3[48]; +} NET_DVR_MATRIX_ABILITY_V41, *LPNET_DVR_MATRIX_ABILITY_V41; + +//ÏÔʾͨµÀÅäÖà +#define MAX_WINDOWS 16 +#define MAX_WINDOWS_V41 36 + +#define STARTDISPCHAN_VGA 1 +#define STARTDISPCHAN_BNC 9 +#define STARTDISPCHAN_HDMI 25 +#define STARTDISPCHAN_DVI 29 + +typedef union tagNET_DVR_VIDEO_PLATFORM +{ + BYTE byRes[160]; + struct + { + /*¸÷¸ö×Ó´°¿Ú¶ÔÓ¦½âÂëͨµÀËù¶ÔÓ¦µÄ½âÂë×ÓϵͳµÄ²ÛλºÅ(¶ÔÓÚÊÓƵ×ÛºÏƽ̨ÖнâÂë×ÓϵͳÓÐЧ)*/ + //Èç¹û×ÛºÏƽ̨֧³Ö×Ô¶¯·ÖÅä½âÂë×ÊÔ´£¬´Ë²ÎÊý²»ÐèÒªÌî³ä + BYTE byJoinDecoderId[MAX_WINDOWS_V41]; + //ÏÔʾ´°¿ÚËù½âÊÓƵ·Ö±æÂÊ£¬1-D1,2-720P,3-1080P£¬É豸¶ËÐèÒª¸ù¾Ý´Ë·Ö±æÂʽøÐнâÂëͨµÀµÄ·ÖÅ䣬Èç1·ÖÆÁÅäÖóÉ1080P£¬ÔòÉ豸»á°Ñ4¸ö½âÂëͨµÀ¶¼·ÖÅä¸ø´Ë½âÂëͨµÀ + BYTE byDecResolution[MAX_WINDOWS_V41]; + NET_DVR_RECTCFG struPosition; //ÏÔʾͨµÀÔÚµçÊÓǽÖÐλÖà + BYTE byRes[80]; + }struVideoPlatform; + struct + { + BYTE byRes[160]; + }struNotVideoPlatform; +}NET_DVR_VIDEO_PLATFORM, LPNET_DVR_VIDEO_PLATFORM; + + +typedef struct tagNET_DVR_MATRIX_VOUTCFG +{ + DWORD dwSize; + BYTE byAudio; /*ÒôƵÊÇ·ñ¿ªÆô*/ + BYTE byAudioWindowIdx; /*ÒôƵ¿ªÆô×Ó´°¿Ú*/ + BYTE byDispChanType; /*ÏÔʾͨµÀÀàÐÍ£º0-BNC£¬1-VGA£¬2-HDMI£¬3-DVI£¬4-YPbPr(½âÂ뿨·þÎñÆ÷DECODER_SERVERרÓÃ)*/ + BYTE byVedioFormat; /*1:NTSC,2:PAL£¬0-NULL*/ + DWORD dwResolution;//·Ö±æÂÊ + DWORD dwWindowMode; /*»­Ãæģʽ£¬ÄÜÁ¦¼¯»ñÈ¡*/ + BYTE byJoinDecChan[MAX_WINDOWS_V41];/*¸÷¸ö×Ó´°¿Ú¹ØÁªµÄ½âÂëͨµÀ,É豸֧³Ö½âÂë×ÊÔ´×Ô¶¯·ÖÅäʱ´Ë²ÎÊý²»ÓÃÌî³ä*/ + BYTE byEnlargeStatus; /*ÊÇ·ñ´¦ÓÚ·Å´ó״̬£¬0£º²»·Å´ó£¬1£º·Å´ó*/ + BYTE byEnlargeSubWindowIndex;//·Å´óµÄ×Ó´°¿ÚºÅ + BYTE byScale; /*ÏÔʾģʽ£¬0---ÕæʵÏÔʾ£¬1---Ëõ·ÅÏÔʾ( Õë¶ÔBNC )*/ + BYTE byUnionType;/*Çø·Ö¹²ÓÃÌå,0-ÊÓƵ×ÛºÏƽ̨ÄÚ²¿½âÂëÆ÷ÏÔʾͨµÀÅäÖã¬1-ÆäËû½âÂëÆ÷ÏÔʾͨµÀÅäÖÃ*/ + NET_DVR_VIDEO_PLATFORM struDiff; + DWORD dwDispChanNum; //ÏÔʾÊä³öºÅ£¬´Ë²ÎÊýÔÚÈ«²¿»ñȡʱÓÐЧ + WORD wLEDWidth; //LED·Ö±æÂÊ¿í£¬0ΪÎÞЧ + WORD wLEDHeight; //LED·Ö±æÂʸߣ¬0ΪÎÞЧ + BYTE byEnableVideoEffect; //ÏÔʾЧ¹ûʹÄÜ£¬ 0-²»Ê¹ÄÜ£¬ !0-ʹÄÜ + BYTE byRes[3]; //±£Áô×ֶΠ+ NET_DVR_VIDEOEFFECT struVideoEffect; //ÏÔʾЧ¹û + BYTE byRes2[60]; +}NET_DVR_MATRIX_VOUTCFG,*LPNET_DVR_MATRIX_VOUTCFG; + +/*½âÂëÆ÷É豸״̬*/ +typedef struct tagNET_DVR_DISP_CHAN_STATUS_V41 +{ + BYTE byDispStatus; /*ÏÔʾ״̬£º0£ºÎ´ÏÔʾ£¬1£ºÆô¶¯ÏÔʾ*/ + BYTE byBVGA; /*0-BNC£¬1-VGA£¬ 2-HDMI£¬3-DVI£¬4-SDI 0xff-ÎÞЧ*/ + BYTE byVideoFormat; /*ÊÓƵÖÆʽ£¬1:NTSC,2:PAL,0-NON*/ + BYTE byWindowMode; /*»­Ãæģʽ*/ + BYTE byJoinDecChan[MAX_WINDOWS_V41]; /*¸÷¸ö×Ó»­Ãæ¹ØÁªµÄ½âÂëͨµÀ*/ + BYTE byFpsDisp[MAX_WINDOWS_V41]; /*ÿ¸ö×Ó»­ÃæµÄÏÔʾ֡ÂÊ*/ + BYTE byScreenMode; /*ÆÁĻģʽ0-ÆÕͨ 1-´óÆÁ*/ + BYTE byRes1[3]; + DWORD dwDispChan; /*»ñÈ¡È«²¿ÏÔʾͨµÀ״̬ʱÓÐЧ£¬ÉèÖÃʱ¿ÉÌî0*/ + BYTE byRes2[24]; +}NET_DVR_DISP_CHAN_STATUS_V41, *LPNET_DVR_DISP_CHAN_STATUS_V41; + +/*½âÂëÆ÷É豸״̬*/ +typedef struct tagNET_DVR_DECODER_WORK_STATUS_V41 +{ + DWORD dwSize; + NET_DVR_MATRIX_CHAN_STATUS struDecChanStatus[32]; /*½âÂëͨµÀ״̬*/ + /*ÏÔʾͨµÀ״̬*/ + NET_DVR_DISP_CHAN_STATUS_V41 struDispChanStatus[MAX_DISPNUM_V41/*32*/]; + BYTE byAlarmInStatus[32]; /*±¨¾¯ÊäÈë״̬*/ + BYTE byAlarmOutStatus[32]; /*±¨¾¯Êä³ö״̬*/ + BYTE byAudioInChanStatus; /*ÓïÒô¶Ô½²×´Ì¬*/ + BYTE byRes[127]; +}NET_DVR_DECODER_WORK_STATUS_V41,*LPNET_DVR_DECODER_WORK_STATUS_V41; +/*******************************Îļþ»Ø·Å-Ô¶³Ì»Ø·ÅÉèÖÃ*******************************/ +typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; /* DVR IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE byChannel; /* ͨµÀºÅ */ + BYTE byReserve; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + DWORD dwPlayMode; /* 0£­°´Îļþ 1£­°´Ê±¼ä*/ + NET_DVR_TIME StartTime; + NET_DVR_TIME StopTime; + char sFileName[128]; + BYTE byRes[64]; /*±£Áô*/ +}NET_DVR_MATRIX_DEC_REMOTE_PLAY_V41, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41; + + +#define MAX_BIGSCREENNUM_SCENE 100 +#define MAX_LAYERNUMS 32 + +//ÏÔʾͨµÀÅäÖýṹ +typedef struct tagNET_DVR_RECTCFG_SCENE +{ + WORD wXCoordinate; /*¾ØÐÎ×óÉϽÇÆðʼµãX×ø±ê*/ + WORD wYCoordinate; /*¾ØÐÎ×óÉϽÇY×ø±ê*/ + WORD wWidth; /*¾ØÐοí¶È*/ + WORD wHeight; /*¾ØÐθ߶È*/ +}NET_DVR_RECTCFG_SCENE, *LPNET_DVR_RECTCFGSCENE; + +typedef struct tagNET_DVR_SCENEDISPCFG +{ + BYTE byEnable;//ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE bySoltNum;//²ÛλºÅ + BYTE byRes1[2]; + BYTE byDispChanNum; + BYTE byAudio; /*ÒôƵÊÇ·ñ¿ªÆô,0-·ñ£¬1-ÊÇ*/ + BYTE byAudioWindowIdx; /*ÒôƵ¿ªÆô×Ó´°¿Ú*/ + BYTE byVedioFormat; /*1:NTSC,2:PAL£¬0-NULL*/ + BYTE byWindowMode; /*»­Ãæģʽ£¬´ÓÄÜÁ¦¼¯»ñÈ¡*/ + BYTE byEnlargeStatus; /*ÊÇ·ñ´¦ÓÚ·Å´ó״̬£¬0£º²»·Å´ó£¬1£º·Å´ó*/ + BYTE byEnlargeSubWindowIndex;//·Å´óµÄ×Ó´°¿ÚºÅ + BYTE byScale; /*ÏÔʾģʽ£¬0-ÕæʵÏÔʾ£¬1-Ëõ·ÅÏÔʾ( Õë¶ÔBNC )*/ + DWORD dwResolution;//·Ö±æÂÊ + BYTE byJoinDecChan[MAX_WINDOWS_V41];/*¸÷¸ö×Ó´°¿Ú¹ØÁªµÄ½âÂëͨµÀ*/ + BYTE byJoinDecoderId[MAX_WINDOWS_V41];/*²ÛλºÅ*/ + //ÏÔʾ´°¿ÚËù½âÊÓƵ·Ö±æÂÊ£¬1-D1,2-720P,3-1080P£¬É豸¶ËÐèÒª¸ù¾Ý´Ë//·Ö±æÂʽøÐнâÂëͨµÀµÄ·ÖÅ䣬Èç1·ÖÆÁÅäÖóÉ1080P£¬ÔòÉ豸»á°Ñ4¸ö½âÂëͨµÀ¶¼·ÖÅä¸ø´Ë½âÂëͨµÀ + BYTE byDecResolution[MAX_WINDOWS_V41]; + BYTE byRow;//´óÆÁËùÔÚµÄÐеÄÐòºÅ + BYTE byColumn;//´óÆÁËùÔÚµÄÁеÄÐòºÅ + BYTE byRes2[5]; + NET_DVR_RECTCFG struDisp; //µçÊÓǽÏÔʾλÖà +} NET_DVR_SCENEDISPCFG,*LPNET_DVR_SCENEDISPCFG; + +typedef struct tagDEV_CHAN_INFO_SCENE +{ + NET_DVR_IPADDR struIP; /* DVR IPµØÖ· */ + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + BYTE byChannel; /* ͨµÀºÅ£¬¶ÔÓÚ9000µÈÉ豸µÄIPC½ÓÈ룬ͨµÀºÅ´Ó33¿ªÊ¼ */ + BYTE byTransProtocol; /* ´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP £¬2-MCAST£¬3-RTP*/ + BYTE byTransMode; /* ´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷*/ + BYTE byFactoryType; /*Ç°¶ËÉ豸³§¼ÒÀàÐÍ*/ + BYTE byDeviceType; //É豸ÀàÐÍ£¬1-IPC£¬2- ENCODER + BYTE byRes[5]; + BYTE sUserName[NAME_LEN]; /* ¼à¿ØÖ÷»úµÇ½ÕʺŠ*/ + BYTE sPassword[PASSWD_LEN]; /* ¼à¿ØÖ÷»úÃÜÂë */ +} NET_DVR_DEV_CHAN_INFO_SCENE,*LPNET_DVR_DEV_CHAN_INFO_SCENE; + +/*Á÷ýÌå·þÎñÆ÷»ù±¾ÅäÖÃ*/ +typedef struct tagSTREAM_MEDIA_SERVER_CFG_SCENE +{ + BYTE byValid; /*ÊÇ·ñÆôÓÃÁ÷ýÌå·þÎñÆ÷È¡Á÷,0±íʾÎÞЧ*/ + BYTE byRes1[3]; + NET_DVR_IPADDR struDevIP; /*Á÷ýÌå·þÎñÆ÷µØÖ·*/ + WORD wDevPort; /*Á÷ýÌå·þÎñÆ÷¶Ë¿Ú*/ + BYTE byTransmitType; /*´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP */ + BYTE byRes2[5]; +}NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE; + +typedef struct tagPU_STREAM_CFG_SCENE +{ + NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE streamMediaServerCfg; + NET_DVR_DEV_CHAN_INFO_SCENE struDevChanInfo; +}NET_DVR_PU_STREAM_CFG_SCENE,*LPNET_DVR_PU_STREAM_CFG_SCENE; + +typedef struct tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE +{ + BYTE byEnable; /* ÊÇ·ñÆôÓà 0£­·ñ 1£­ÆôÓÃ*/ + BYTE byRes[3]; + NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE struStreamMediaSvrCfg; + NET_DVR_DEV_CHAN_INFO_SCENE struDecChanInfo; /*ÂÖѲ½âÂëͨµÀÐÅÏ¢*/ +}NET_DVR_CYC_SUR_CHAN_ELE_SCENE,*LPNET_DVR_CYC_SUR_CHAN_ELE_SCENE; + +//ÂÖѲ½âÂë½á¹¹ +typedef struct tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE +{ + WORD wPoolTime; /*ÂÖѯ¼ä¸ô*/ + BYTE byRes1[2]; + NET_DVR_CYC_SUR_CHAN_ELE_SCENE struChanArray[MAX_CYCLE_CHAN/*16*/]; + BYTE byRes2[4]; +} NET_DVR_MATRIX_LOOP_DECINFO_SCENE,*LPNET_DVR_MATRIX_LOOP_DECINFO_SCENE; + +//µ¥¸ö½âÂëͨµÀÅäÖýṹÌå +typedef struct tagNET_DVR_DECODECHANCFG_SCENE/*struct size : 2064*/ +{ + BYTE byDecodeEnable;//½âÂëÆðÍ£±êÖ¾£¬0-Í£Ö¹£¬1-ÆôÓö¯Ì¬½âÂ룬2-ÆôÓÃÂÖѲ½âÂë + BYTE bySlotNum;//²ÛλºÅ + BYTE byDecChan; + BYTE byJointAllDecodeChan; //ÊÇ·ñ¹ØÁªÍòÄܽâÂëͨµÀ 0-²»¹ØÁª£¬1-¹ØÁª + BYTE byJointSlotNum; //¹ØÁªµÄ²ÛλºÅ£¨ÍòÄܽâÂë°åµÄ²ÛλºÅ£© + BYTE byJointChanNum; //¹ØÁªµÄͨµÀºÅ£¨ÍòÄܽâÂë°åͨµÀºÅ£© + BYTE byRes[2]; + union + { + NET_DVR_PU_STREAM_CFG_SCENE struSceneDynamicDecCfg; + NET_DVR_MATRIX_LOOP_DECINFO_SCENE struSceneCycDecCfg; + } struDecCfg; +}NET_DVR_DECODECHANCFG_SCENE,*LPNET_DVR_DECODECHANCFG_SCENE; + +typedef struct tagNET_DVR_BIGSCREENCFG_SCENE +{ + BYTE byAllValid; /*ÂþÓÎʹÄܱêÖ¾ */ + BYTE byAssociateBaseMap;//¹ØÁªµÄµ×ͼÐòºÅ£¬0´ú±í²»¹ØÁª + BYTE byEnableSpartan;//´óÆÁ³©ÏÔʹÄÜ£¬1-¿ª£¬0-¹Ø + BYTE byRes; + NET_DVR_WINCFG struWinCfg[MAX_LAYERNUMS]; + NET_DVR_BIGSCREENCFG struBigScreen; +}NET_DVR_BIGSCREENCFG_SCENE, *LPNET_DVR_BIGSCREENCFG_SCENE; + +typedef struct tagNET_DVR_MATRIX_SCENECFG +{ + DWORD dwSize; + BYTE sSceneName[NAME_LEN]; + BYTE byBigScreenNums;//´óÆÁµÄ¸öÊý£¬×î´óֵͨ¹ýÄÜÁ¦¼¯»ñÈ¡ + BYTE byRes1[3]; + WORD wDecChanNums;//³¡¾°ÖнâÂëͨµÀµÄ¸öÊý + WORD wDispChanNums;//³¡¾°ÖÐÏÔʾͨµÀµÄ¸öÊý + BYTE byRes2[12]; + BYTE *pBigScreenBuffer;//´óÆÁÅäÖûº³åÇø, byBigScreenNums¡Ásizeof(NET_DVR_BIGSCREENCFG_SCENE) + BYTE *pDecChanBuffer;//½âÂëͨµÀÅäÖûº³åÇø, wDecChanNums¡Ásizeof(NET_DVR_DECODECHANCFG_SCENE) + BYTE *pDispChanBuffer;//ÏÔʾͨµÀÅäÖûº³åÇø, wDispChanNums¡Ásizeof(NET_DVR_SCENEDISPCFG) +}NET_DVR_MATRIX_SCENECFG, *LPNET_DVR_MATRIX_SCENECFG; + + + +typedef struct tagNET_DVR_BIGSCREENASSOCIATECFG +{ + DWORD dwSize; + BYTE byEnableBaseMap;//ʹÄܵ×ͼÏÔʾ + BYTE byAssociateBaseMap;//¹ØÁªµÄµ×ͼÐòºÅ£¬0´ú±í²»¹ØÁª + BYTE byEnableSpartan;//´óÆÁ³©ÏÔʹÄÜ£¬1-¿ª£¬0-¹Ø + BYTE byRes[21]; +} NET_DVR_BIGSCREENASSOCIATECFG, *LPNET_DVR_BIGSCREENASSOCIATECFG; +/*******************************´°¿ÚÉèÖÃ*******************************/ +#define MAX_WIN_COUNT 224 //Ö§³ÖµÄ×î´ó¿ª´°Êý + +typedef struct tagNET_DVR_SCREEN_WINCFG +{ + DWORD dwSize; + BYTE byVaild; + BYTE byInputType; //¼ûCAM_MDOE + WORD wInputIdx; /*ÊäÈëÔ´Ë÷Òý*/ + DWORD dwLayerIdx; /*ͼ²ã£¬0Ϊ×îµ×²ã*/ + NET_DVR_RECTCFG struWin; //Ä¿µÄ´°¿Ú(Ïà¶ÔÏÔʾǽ) + BYTE byWndIndex; //´°¿ÚºÅ + BYTE byCBD; //0-ÎÞ£¬1-´ø±³¾°£¬2-²»´ø±³¾° + BYTE bySubWnd; //0²»ÊÇ£¬1ÊÇ + BYTE byRes1; + DWORD dwDeviceIndex;//É豸ÐòºÅ + BYTE byRes2[16]; +}NET_DVR_SCREEN_WINCFG, *LPNET_DVR_SCREEN_WINCFG; + +typedef struct tagNET_DVR_WINLIST +{ + DWORD dwSize; + WORD wScreenSeq; //É豸ÐòºÅ + BYTE byRes[10]; + DWORD dwWinNum; //É豸·µ»ØµÄ´°¿ÚÊýÁ¿ + BYTE *pBuffer; //´°¿ÚÐÅÏ¢»º³åÇø£¬×î´óΪ224*sizeof(NET_DVR_WINCFG) + DWORD dwBufLen; //Ëù·ÖÅäÖ¸Õ볤¶È +}NET_DVR_WINLIST,*LPNET_DVR_WINLIST; + +#define MAX_LAYOUT_COUNT 16 //×î´ó²¼¾ÖÊý +typedef struct tagNET_DVR_LAYOUTCFG +{ + DWORD dwSize; + BYTE byValid; //²¼¾ÖÊÇ·ñÓÐЧ + BYTE byRes1[3]; + BYTE byLayoutName[NAME_LEN/*32*/]; //²¼¾ÖÃû³Æ + NET_DVR_SCREEN_WINCFG struWinCfg[MAX_WIN_COUNT/*224*/]; //²¼¾ÖÄÚ´°¿Ú²ÎÊý + BYTE byRes2[16]; +}NET_DVR_LAYOUTCFG, *LPNET_DVR_LAYOUTCFG; + +typedef struct tagNET_DVR_LAYOUT_LIST +{ + DWORD dwSize; + NET_DVR_LAYOUTCFG struLayoutInfo[MAX_LAYOUT_COUNT/*16*/]; //ËùÓв¼¾Ö + BYTE byRes[4]; +}NET_DVR_LAYOUT_LIST, *LPNET_DVR_LAYOUT_LIST; + +#define MAX_CAM_COUNT 224 +#define MAX_CAM_COUNT_V50 512 + +typedef enum tagNET_DVR_CAM_MODE +{ + NET_DVR_UNKNOW = 0,//ÎÞЧ + NET_DVR_CAM_BNC, + NET_DVR_CAM_VGA, + NET_DVR_CAM_DVI, + NET_DVR_CAM_HDMI, + NET_DVR_CAM_IP, + NET_DVR_CAM_RGB, + NET_DVR_CAM_DECODER, + NET_DVR_CAM_MATRIX, + NET_DVR_CAM_YPBPR, + NET_DVR_CAM_USB, + NET_DVR_CAM_SDI, + NET_DVR_CAM_HDI, + NET_DVR_CAM_DP, //´ËÀàÐÍÊÓƵ×ÛºÏƽ̨²»·µ»Ø + NET_DVR_CAM_HDTVI, + NET_DVR_CAM_JOINT, //Æ´½ÓÐźÅÔ´ + NET_DVR_CAM_HDBASET, + NET_DVR_CAM_DVIT, //DVIË«Á´Â·£¬´ËÀàÐÍÊÓƵ×ÛºÏƽ̨²»·µ»Ø + NET_DVR_CAM_FUSION, //¶àIPCÆ´½Ó + NET_DVR_CAM_VSCREEN, //ÐéÄâÆÁ + NET_DVR_CAM_FIBER, //¹âÏË + NET_DVR_CAM_3GSDI, //3G-SDI + NET_DVR_CAM_DISTRIBUTED_IP, //·Ö²¼Ê½ÍøÂçÔ´ + NET_DVR_CAM_JONIT_X86,// x86Æ´½Ó×ÓϵͳµÄÆ´½ÓͨµÀ + NET_DVR_CAM_TVI, //TVIÐźÅÔ´ +}NET_DVR_CAM_MODE; + +typedef struct tagNET_DVR_INPUTSTREAMCFG +{ + DWORD dwSize ; + BYTE byValid; + BYTE byCamMode; //ÐźÅÊäÈëÔ´ÀàÐÍ£¬¼ûNET_DVR_CAM_MODE + WORD wInputNo; //ÐźÅÔ´ÐòºÅ0-224 + BYTE sCamName[NAME_LEN] ; //ÐźÅÊäÈëÔ´Ãû³Æ + NET_DVR_VIDEOEFFECT struVideoEffect; //ÊÓƵ²ÎÊý + NET_DVR_PU_STREAM_CFG struPuStream; //ipÊäÈëʱʹÓà + WORD wBoardNum ; //ÐźÅÔ´ËùÔڵİ忨ºÅ + WORD wInputIdxOnBoard; //ÐźÅÔ´Ôڰ忨ÉϵÄλÖà + DWORD dwResolution;//·Ö±æÂÊ + BYTE byVideoFormat;//ÊÓƵÖÆʽ£¬¼ûVIDEO_STANDARD + BYTE byStatus; //ÐźÅԴ״̬£¬0-×Ö¶ÎÎÞЧ 1-ÓÐÐźŠ2-ÎÞÐźŠ3-Òì³£ + BYTE sGroupName[NAME_LEN/*32*/]; //ÍøÂçÐźÅÔ´·Ö×é ×éÃû + BYTE byJointMatrix; // ¹ØÁª¾ØÕó £¬0-²»¹ØÁª 1-¹ØÁª + BYTE byRes; +}NET_DVR_INPUTSTREAMCFG, *LPNET_DVR_INPUTSTREAMCFG; + +typedef struct tagNET_DVR_INPUTSTREAM_LIST +{ + DWORD dwSize; + NET_DVR_INPUTSTREAMCFG struInputStreamInfo[MAX_CAM_COUNT]; //ËùÓÐÐźÅÔ´ + BYTE byRes[4]; +}NET_DVR_INPUTSTREAM_LIST, *LPNET_DVR_INPUTSTREAM_LIST; + +/*******************************Êä³ö²ÎÊýÅäÖÃ*******************************/ +/*Êä³öͨµÀ¹ÜÀí*/ +typedef struct tagNET_DVR_OUTPUTPARAM +{ + DWORD dwSize; + BYTE byMonMode; /*Êä³öÁ¬½Óģʽ,1-BNC,2-VGA,3-DVI,4-HDMI*/ + BYTE byRes1[3]; + DWORD dwResolution; /*·Ö±æÂÊ£¬¸ù¾ÝÄÜÁ¦¼¯»ñÈ¡ËùÖ§³ÖµÄ½øÐÐÉèÖÃ*/ + NET_DVR_VIDEOEFFECT struVideoEffect; /*Êä³öͨµÀÊÓƵ²ÎÊýÅäÖÃ*/ + BYTE byRes2[32]; +}NET_DVR_OUTPUTPARAM, *LPNET_DVR_OUTPUTPARAM; + +typedef struct tagNET_DVR_OUTPUTCFG +{ + DWORD dwSize; + BYTE byScreenLayX; //´óÆÁ²¼¾Ö-ºá×ø±ê + BYTE byScreenLayY; //´óÆÁ²¼¾Ö-×Ý×ø±ê + WORD wOutputChanNum; //Êä³öͨµÀ¸öÊý£¬0±íʾÉ豸֧³ÖµÄ×î´óÊä³öͨµÀ¸öÊý£¬×î´ó¸öÊý´ÓÄÜÁ¦¼¯»ñÈ¡£¬ÆäËûÖµ±íʾʵ¼ÊÊä³öͨµÀ¸öÊý + BYTE byRes1[4]; + NET_DVR_OUTPUTPARAM struOutputParam; /*Êä³öͨµÀÊÓƵ²ÎÊýÅäÖÃ*/ + BYTE sWallName[16]; //µçÊÓǽÃû³Æ + BYTE byRes2[8]; +}NET_DVR_OUTPUTCFG, *LPNET_DVR_OUTPUTCFG; + +/*******************************ÄÜÁ¦¼¯*******************************/ +#define SCREEN_PROTOCOL_NUM 20 //Ö§³ÖµÄ×î´ó´óÆÁ¿ØÖÆÆ÷ЭÒéÊý +//¶àÆÁ·þÎñÆ÷ÄÜÁ¦¼¯ +typedef struct tagNET_DVR_SCREENSERVER_ABILITY +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + BYTE byIsSupportScreenNum; /*ËùÖ§³Ö´óÆÁ¿ØÖÆÆ÷µÄÊýÄ¿*/ + BYTE bySerialNums; //´®¿Ú¸öÊý + BYTE byMaxInputNums; + BYTE byMaxLayoutNums; + BYTE byMaxWinNums; + BYTE byRes1[19]; + BYTE byMaxScreenLayX;//´óÆÁ²¼¾Ö-×î´óºá×ø±ê´óÆÁÊý + BYTE byMaxScreenLayY;//´óÆÁ²¼¾Ö-×î´ó×Ý×ø±ê´óÆÁÊý + WORD wMatrixProtoNum; /*ÓÐЧµÄ´óÆÁЭÒéÊýÄ¿*/ + NET_DVR_PROTO_TYPE struScreenProto[SCREEN_PROTOCOL_NUM];/*×î´óЭÒéÁбí*/ + BYTE byRes2[24]; +}NET_DVR_SCREENSERVER_ABILITY, *LPNET_DVR_SCREENSERVER_ABILITY; + +//¶àÆÁ¿ØÖÆÆ÷ÄÜÁ¦¼¯ +typedef struct tagNET_DVR_SCREENCONTROL_ABILITY +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + BYTE byLayoutNum; /* ²¼¾Ö¸öÊý*/ + BYTE byWinNum; /*ÆÁÄ»´°¿Ú¸öÊý*/ + BYTE byOsdNum; /*OSD¸öÊý*/ + BYTE byLogoNum; /*Logo¸öÊý*/ + BYTE byInputStreamNum; //ÊäÈëÔ´¸öÊý ---É豸֧³Ö×î´óÊäÈëͨµÀ¸öÊý£¨°üÀ¨±¾µØÊäÈëÔ´ºÍÍøÂçÊäÈëÔ´£© + BYTE byOutputChanNum; //Êä³öͨµÀ¸öÊý---É豸֧³Ö×î´óÊä³öͨµÀ¸öÊý + BYTE byCamGroupNum; /*·Ö×é¸öÊý*/ + BYTE byPlanNum; /*Ô¤°¸¸öÊý*/ + BYTE byRes1[5]; + BYTE byIsSupportPlayBack; /*ÊÇ·ñÖ§³Ö»Ø·Å*/ + BYTE byMatrixInputNum; //Ö§³ÖÊäÈë¾ØÕó×î´ó¸öÊý + BYTE byMatrixOutputNum; //Ö§³ÖÊä³ö¾ØÕó×î´ó¸öÊý + NET_DVR_DISPINFO struVgaInfo;//VGAÊä³öÐÅÏ¢ + NET_DVR_DISPINFO struBncInfo;//BNCÊä³öÐÅÏ¢ + NET_DVR_DISPINFO struHdmiInfo;//HDMIÊä³öÐÅÏ¢ + NET_DVR_DISPINFO struDviInfo;//DVIÊä³öÐÅÏ¢ + BYTE byMaxUserNums;//Ö§³ÖÓû§Êý + BYTE byPicSpan; //µ×ͼ¿ç¶È£¬Ò»Õŵ×ͼ×î¶à¿É¸²¸ÇµÄÆÁÄ»Êý + WORD wDVCSDevNum; //·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷×î´óÉ豸Êý + WORD wNetSignalNum; //×î´óÍøÂçÊäÈëÔ´¸öÊý + WORD wBaseCoordinateX;//»ù×¼×ø±ê + WORD wBaseCoordinateY; + BYTE byExternalMatrixNum; //×î´óÍâ½Ó¾ØÕó¸öÊý + BYTE byRes2[49]; +}NET_DVR_SCREENCONTROL_ABILITY, *LPNET_DVR_SCREENCONTROL_ABILITY; + +/*******************************ÊäÈëÐźÅ״̬*******************************/ +typedef struct tagNET_DVR_ANALOGINPUTSTATUS +{ + DWORD dwLostFrame; /*ÊÓƵÊäÈ붪֡Êý*/ + BYTE byHaveSignal; /*ÊÇ·ñÓÐÊÓƵÐźÅÊäÈë*/ + BYTE byVideoFormat; /*ÊÓƵÖÆʽ£¬1£ºNTSC,2£ºPAL,0£ºÎÞ*/ + BYTE byRes[46]; +} NET_DVR_ANALOGINPUTSTATUS, *LPNET_DVR_ANALOGINPUTSTATUS; + +typedef union tagNET_DVR_INPUTSTATUS_UNION +{ + NET_DVR_MATRIX_CHAN_STATUS struIpInputStatus; + NET_DVR_ANALOGINPUTSTATUS struAnalogInputStatus; +} NET_DVR_INPUTSTATUS_UNION, *LPNET_DVR_INPUTSTATUS_UNION; + +typedef struct tagNET_DVR_INPUTSTATUS +{ + WORD wInputNo; /*ÐźÅÔ´ÐòºÅ*/ + BYTE byInputType; //¼ûNET_DVR_CAM_MODE + BYTE byRes1[9]; + NET_DVR_INPUTSTATUS_UNION struStatusUnion; + BYTE byRes2[16]; +} NET_DVR_INPUTSTATUS, *LPNET_DVR_INPUTSTATUS; + +typedef struct tagNET_DVR_SCREENINPUTSTATUS +{ + DWORD dwSize; + BYTE byRes[12]; + DWORD dwNums; //É豸·µ»ØµÄÊäÈëԴ״̬µÄÊýÁ¿ + BYTE *pBuffer; //»º³åÇø + DWORD dwBufLen; //Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +}NET_DVR_SCREENINPUTSTATUS,*LPNET_DVR_SCREENINPUTSTATUS; + +typedef struct tagNET_DVR_SCREENALARMCFG +{ + DWORD dwSize; + BYTE byAlarmType; //±¨¾¯ÀàÐÍ£¬1-×Ó°å°Î³ö£¬2-×Ó°å²åÈ룬3-×Óϵͳ״̬Òì³££¬4-×Óϵͳ»Ö¸´»Ö¸´ 5-ÊäÈëÔ´Òì³£ 6-ζȱ¨¾¯ 7-FPGA°æ±¾²»Æ¥Åä 8-Ô¤°¸¿ªÊ¼ 9-Ô¤°¸½áÊø 10-½âÂë°å¶ÏÍø 11-½âÂë°åIPµØÖ·³åÍ»£¬12-·çÉÈÒì³£ + BYTE byBoardType; // 1-ÊäÈë°å 2-Êä³ö°å £¬3-Ö÷°å£¬4-±³°å£¬±¨¾¯ÀàÐÍΪ1£¬2£¬3£¬6µÄʱºòʹÓà + BYTE bySubException; //ÊäÈëÒ쳣ʱ¾ßÌå×ÓÒì³£ 1- ·Ö±æÂÊÕý³£¸Ä±ä 2-ÊäÈë¶Ë¿ÚÀàÐ͸ıä3-·Ö±æÂÊ´íÎó4-·Ö±æÂʸı䵼Ö½âÂë×ÊÔ´²»×㣬¹Ø±Õ¸ÃÊäÈëÔ´¶ÔÓ¦´°¿Ú¡£5-·Ö±æÂʸı䣬µ¼ÖÂÒÑ¿ª´°µÄËõ·Å±ÈÀý²»ÔÚ1/8µ½8±¶·¶Î§¡£6-·Ö±æÂʻָ´Õý³£,7-·Ö±æÂʸı䵼ÖÂÊä³ö°åÊý¾ÝÁ¿³¬ÏÞ,É豸¹Ø±Õ´°¿Ú + BYTE byRes1; + WORD wStartInputNum; // Òì³£ÊäÈëÔ´£¨Òì³£Æðµã£© + WORD wEndInputNum; // Òì³£ÊäÈëÔ´£¨Òì³£Öյ㣩 + BYTE byRes2[16]; +}NET_DVR_SCREENALARMCFG, *LPNET_DVR_SCREENALARMCFG; + +typedef struct tagNET_DVR_MATRIX_CFG +{ + BYTE byValid; //ÅжÏÊÇ·ñÊÇÄ£Äâ¾ØÕó£¨ÊÇ·ñÓÐЧ£© + BYTE byCommandProtocol; //Ä£Äâ¾ØÕóµÄÖ¸Á4ÖÖ£© + BYTE byScreenType; //±£Áô + BYTE byRes1; + BYTE byScreenToMatrix[32]; //Ä£Äâ¾ØÕóµÄÊä³öÓëÆÁÄ»µÄ¶ÔÓ¦¹Øϵ + BYTE byRes2[4]; +}NET_DVR_MATRIX_CFG, *LPNET_DVR_MATRIX_CFG; + +typedef struct tagNET_DVR_DIGITALSCREEN +{ + NET_DVR_IPADDR struAddress;/*É豸ΪÊý×ÖÉ豸ʱµÄIPÐÅÏ¢*/ + WORD wPort; //ͨµÀºÅ + BYTE byRes[26]; //±£Áô +}NET_DVR_DIGITALSCREEN, *LPNET_DVR_DIGITALSCREEN; +typedef struct tagNET_DVR_ANALOGSCREEN +{ + BYTE byDevSerPortNum; /*Á¬½ÓÉ豸µÄ´®¿ÚºÅ*/ + BYTE byScreenSerPort; /*Á¬½Ó´óÆÁµÄ´®¿ÚºÅ*/ + BYTE byRes[130]; + NET_DVR_MATRIX_CFG struMatrixCfg; +}NET_DVR_ANALOGSCREEN, *LPNET_DVR_ANALOGSCREEN; + +typedef union tagNET_DVR_SCREEN_UNION +{ + NET_DVR_DIGITALSCREEN struDigitalScreen; + NET_DVR_ANALOGSCREEN struAnalogScreen; +}NET_DVR_SCREEN_UNION, *LPNET_DVR_SCREEN_UNION; +typedef struct tagNET_DVR_SCREEN_SCREENINFO +{ + DWORD dwSize; + BYTE byValid; //ÊÇ·ñÓÐЧ + BYTE nLinkMode; //Á¬½Ó·½Ê½£¬0-´®¿Ú£¬1-Íø¿Ú + BYTE byDeviceType; //É豸Ðͺţ¬ÄÜÁ¦¼¯»ñÈ¡ + BYTE byScreenLayX; //´óÆÁ²¼¾Ö-ºá×ø±ê + BYTE byScreenLayY; //´óÆÁ²¼¾Ö-×Ý×ø±ê + BYTE byRes1[3]; + BYTE sUserName[NAME_LEN]; /*µÇ¼Óû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /*µÇ¼ÃÜÂë*/ + BYTE sDevName[NAME_LEN]; /*É豸Ãû³Æ*/ + NET_DVR_SCREEN_UNION struScreenUnion; + BYTE byInputNum; // ÊäÈëÔ´¸öÊý + BYTE byOutputNum; // Êä³öÔ´¸öÊý + BYTE byCBDNum; //CBD¸öÊý + BYTE byRes2[29]; +} NET_DVR_SCREEN_SCREENINFO, *LPNET_DVR_SCREEN_SCREENINFO; + +/*******************************µ×ͼÉÏ´«*******************************/ +typedef struct tagNET_DVR_BASEMAP_CFG +{ + BYTE byScreenIndex; //ÆÁÄ»µÄÐòºÅ + BYTE byMapNum; /*±»·Ö¸î³ÉÁ˶àÉÙ¿é */ + BYTE res[2]; + WORD wSourWidth; /* ԭͼƬµÄ¿í¶È */ + WORD wSourHeight; /* ԭͼƬµÄ¸ß¶È */ +}NET_DVR_BASEMAP_CFG, LPNET_DVR_BASEMAP_CFG; + + +typedef struct tagNET_DVR_PICCFG +{ + DWORD dwSize; //´óС + BYTE byUseType; //1-µ×ͼ£¬2-GIFͼƬ£¬3-CADͼƬ 4-Êä³ö¿ÚͼƬ + BYTE bySequence;//ÐòºÅ + BYTE byOverlayEnabled; //ͼƬµþ¼ÓʹÄÜ£¬ÊÇ·ñÔÚÉÏ´«Í¼Æ¬°üº¬Í¼Æ¬µþ¼Ó²ÎÊý 1-°üº¬µþ¼Ó²ÎÊý£¬0-²»°üº¬ + BYTE byRes[1]; + NET_DVR_BASEMAP_CFG struBasemapCfg; //µ×ͼ²ÎÊý¶ÔºÏÂëÆ÷É豸ÎÞЧ + BYTE sPicName[NAME_LEN];//ͼƬÃû³Æ + DWORD dwVideoWall; //ǽºÅ£¨1×Ö½ÚǽºÅ£¨¶ÔÓÚºÏÂëÆ÷£¬¸ÃÖµ¹Ì¶¨Îª1¼´¿É£©+1×Ö½ÚͨµÀÊä³ö£¨ºÏÂëͨµÀºÅ£©+2×Ö½Ú´°¿ÚºÅ£© + BYTE byFlash; //ͼƬÉÁ˸ʹÄÜ£¬1-ÉÁ˸£¬0-²»ÉÁ˸ + BYTE byTranslucent; //ͼƬ°ë͸Ã÷ʹÄÜ£¬1-°ë͸Ã÷£¬0-²»°ë͸Ã÷ + BYTE byShowEnabled; //ͼƬÏÔʾʹÄÜ£¬1-ÏÔʾ£¬0-Òþ²Ø + BYTE byPictureType; //ͼƬÀàÐÍ£¬1-bmp£¬2-jpg£¬3-png£¬¡­¡­ + BYTE byRes2[24]; +}NET_DVR_PICTURECFG, *LPNET_DVR_PICTURECFG; + +/*******************************OSD*******************************/ +#define MAX_OSDCHAR_NUM 256 +typedef struct tagNET_DVR_OSDCFG +{ + DWORD dwSize; + BYTE byValid; /*ÊÇ·ñÓÐЧ 0ÎÞЧ 1ÓÐЧ*/ + BYTE byDispMode; //ÏÔʾģʽ£¬1-͸Ã÷£¬2-°ë͸Ã÷£¬3-¸²¸ÇÈýÖÖģʽ + BYTE byFontColorY; /*×ÖÌåÑÕÉ«Y,0-255*/ + BYTE byFontColorU; /*×ÖÌåÑÕÉ«U,0-255*/ + BYTE byFontColorV; /*×ÖÌåÑÕÉ«V,0-255*/ + BYTE byBackColorY; /*±³¾°ÑÕÉ«Y,0-255*/ + BYTE byBackColorU; /*±³¾°ÑÕÉ«U,0-255*/ + BYTE byBackColorV; /*±³¾°ÑÕÉ«V,0-255*/ + WORD wXCoordinate; /*OSDÔÚÆÁÄ»×óÉϽÇλÖÃx*/ + WORD wYCoordinate; /*OSDÔÚÆÁÄ»×óÉϽÇλÖÃy*/ + WORD wWidth; /*OSD¿í¶È*/ + WORD wHeight; /*OSD¸ß¶È*/ + DWORD dwCharCnt; /*×Ö·ûµÄ¸öÊý*/ + WORD wOSDChar[MAX_OSDCHAR_NUM]; /*OSD×Ö·ûÄÚÈÝ*/ + BYTE byRes[32]; +}NET_DVR_OSDCFG, *LPNET_DVR_OSDCFG; + + +/*******************************»ñÈ¡´®¿ÚÐÅÏ¢*******************************/ +typedef struct tagNET_DVR_SERIAL_CONTROL +{ + DWORD dwSize ; + BYTE bySerialNum; // ´®¿Ú¸öÊý + BYTE byRes1[3]; + BYTE bySerial[32]; + BYTE byRes2[32]; +}NET_DVR_SERIAL_CONTROL, *LPNET_DVR_SERIAL_CONTROL; + +/*******************************ÆÁÄ»¿ØÖÆ*******************************/ +//ÆÁÄ»ÊäÈëÔ´¿ØÖÆ +typedef enum tagINPUT_INTERFACE_TYPE +{ + INTERFACE_VGA = 0, + INTERFACE_SVIDEO, // 2046NL²»Ö§³Ö£¬2046NHÖ§³Ö + INTERFACE_YPBPR, + INTERFACE_DVI , + INTERFACE_BNC , + INTERFACE_DVI_LOOP,//(»·Í¨) 2046NH²»Ö§³Ö£¬2046NLÖ§³Ö + INTERFACE_BNC_LOOP, //(»·Í¨) 2046NH²»Ö§³Ö£¬2046NL.Ö§³Ö + INTERFACE_HDMI, + INTERFACE_IP, + INTERFACE_USB, + INTERFACE_SDI, + INTERFACE_DP, + INTERFACE_HDBASET +}INPUT_INTERFACE_TYPE; +typedef struct tagNET_DVR_INPUT_INTERFACE_CTRL +{ + BYTE byInputSourceType; //¼ûINPUT_INTERFACE_TYPE + BYTE byRes[15]; +}NET_DVR_INPUT_INTERFACE_CTRL, *LPNET_DVR_INPUT_INTERFACE_CTRL; +//ÏÔʾµ¥ÔªÑÕÉ«¿ØÖÆ +typedef struct tagNET_DVR_DISPLAY_COLOR_CTRL +{ + BYTE byColorType; //1-ÁÁ¶È 2-¶Ô±È¶È 3-±¥ºÍ¶È 4-ÇåÎú¶È + char byScale; //-1 ¡¢0¡¢+1Èý¸öÖµ + BYTE byRes[14]; +}NET_DVR_DISPLAY_COLOR_CTRL, *LPNET_DVR_DISPLAY_COLOR_CTRL; +//ÏÔʾµ¥ÔªÎ»ÖÿØÖÆ +typedef struct tagNET_DVR_DISPLAY_POSITION_CTRL +{ + BYTE byPositionType; //1-ˮƽλÖà 2-´¹Ö±Î»Ö㬠+ char byScale; //-1 ¡¢0¡¢+1Èý¸öÖµ + BYTE byRes[14]; +}NET_DVR_DISPLAY_POSITION_CTRL, *LPNET_DVR_DISPLAY_POSITION_CTRL; + + +/*******************************ÆÁÄ»¿ØÖÆV41*******************************/ +typedef struct tagNET_DVR_RECTCFG_EX +{ + DWORD dwXCoordinate; /*¾ØÐÎ×óÉϽÇÆðʼµãX×ø±ê*/ + DWORD dwYCoordinate; /*¾ØÐÎ×óÉϽÇY×ø±ê*/ + DWORD dwWidth; /*¾ØÐοí¶È*/ + DWORD dwHeight; /*¾ØÐθ߶È*/ + BYTE byRes[4]; +}NET_DVR_RECTCFG_EX, *LPNET_DVR_RECTCFG_EX; + +/*******************************Ô¤°¸¹ÜÀí*******************************/ +#define MAX_PLAN_ACTION_NUM 32 //Ô¤°¸¶¯×÷¸öÊý +#define DAYS_A_WEEK 7 //Ò»ÖÜ7Ìì +#define MAX_PLAN_COUNT 16 //Ô¤°¸¸öÊý + + +typedef enum +{ + NET_DVR_SWITCH_LAYOUT = 1, // ²¼¾ÖÇл» ĬÈÏ + NET_DVR_SCREEN_POWER_OFF, // ¹Ø±Õ´óÆÁÄ»ÏÔʾ + NET_DVR_SCREEN_POWER_ON, // ´ò¿ª´óÆÁÄ»ÏÔʾ + NET_DVR_SWITCH_BASEMAP //µ×ͼÇл» +}NET_DVR_PLAN_OPERATE_TYPE; + +/*Ô¤°¸ÏîÐÅÏ¢*/ +typedef struct tagNET_DVR_PLAN_INFO +{ + BYTE byValid; // ¸ÃÏîÊÇ·ñÓÐЧ + BYTE byType; // ¼û¶¨ÒåNET_DVR_PLAN_OPERATE_TYPE + WORD wLayoutNo; // ²¼¾ÖºÅ + BYTE byScreenStyle; //ÆÁÄ»Ðͺţ¬¿ª¹Ø»úËùÓã¬1ÊǵÍÁÁ£¬2ÊǸßÁÁ + BYTE byBaseMapType; //µ×ͼÀàÐÍ£¬1-ͼƬµ×ͼ£¬2-³¬¸ßÇåÊäÈëµ×ͼ£¬µ×ͼÇл»Ê±ÓÐЧ + BYTE byRes1[2]; + DWORD dwDelayTime; // Ò»¸öÏîµÄÔËÐÐʱ¼ä, µ¥Î»Ãë + DWORD dwSerialNo; //´®¿ÚºÅ£¬ÆÁÄ»¿ØÖÆʱʹÓà + DWORD dwBaseMapWndNo; //µ×ͼ´°¿ÚºÅ£¬µ×ͼÇл»Ê±ÓÐЧ + DWORD dwBaseMapNo; //µ×ͼºÅ£¬µ×ͼÇл»Ê±ÓÐЧ£»µ×ͼÀàÐÍΪ1ʱ£¬´Ë²ÎÊýΪͼƬÐòºÅ£¬µ×ͼÀàÐÍΪ2ʱ´Ë²ÎÊýΪ³¬¸ßÇåÊäÈë×ÓϵͳÊäÈëºÅ£¨1×Ö½ÚÉ豸ºÅ+1×Ö½Ú×Ó°åºÅ+2×Ö½ÚÏÔʾÊäÈëÐòºÅ£© + BYTE byRes2[20]; +} NET_DVR_PLAN_INFO, *LPNET_DVR_PLAN_INFO; + +typedef struct tagNET_DVR_CYCLE_TIME +{ + BYTE byValid; + BYTE byRes[3]; + NET_DVR_TIME_EX struTime; +}NET_DVR_CYCLE_TIME, *LPNET_DVR_CYCLE_TIME; +/*Ô¤°¸¹ÜÀí*/ +typedef struct tagNET_DVR_PLAN_CFG +{ + DWORD dwSize; + BYTE byValid; // ¸ÃÔ¤°¸ÊÇ·ñÓÐЧ + BYTE byWorkMode; // Ô¤°¸¹¤×÷ģʽ 1±íʾÊÖ¶¯£¬2×Ô¶¯£¬3Ô¤°¸Ñ­»· + BYTE byWallNo; //µçÊÓǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byPlanNo; //Ô¤°¸ºÅ£¬»ñÈ¡Ô¤°¸ÁбíʱÓÐЧ£¬0-ÎÞЧ»ò²»Ö§³Ö + BYTE byPlanName[NAME_LEN/*32*/]; //Ô¤°¸Ãû³Æ + NET_DVR_TIME_EX struTime; // ¹¤×÷ģʽΪ×Ô¶¯Ê±Ê¹Óà + NET_DVR_CYCLE_TIME struTimeCycle[DAYS_A_WEEK/*7*/]; /*Ñ­»·Ê±¼ä£¬ÖÜÆÚΪһ¸öÐÇÆÚ£¬Äê¡¢Ô¡¢ÈÕÈý¸ö²ÎÊý²»Ê¹Óá£È磺struTimeCycle[0]ÖеÄbyValidµÄÖµÊÇ1£¬±íʾÐÇÆÚÌìÖ´ÐиÃÔ¤°¸¡£ÐÇÆÚÈ¡ÖµÇø¼äΪ[0,6]£¬ÆäÖÐ0´ú±íÐÇÆÚÌ죬1´ú±íÐÇÆÚÒ»£¬ÒÔ´ËÀàÍÆ*/ + DWORD dwWorkCount; // Ô¤°¸ÄÚÈÝÖ´ÐдÎÊý + NET_DVR_PLAN_INFO strPlanEntry[MAX_PLAN_ACTION_NUM/*32*/]; // Ô¤°¸Ö´ÐеÄÄÚÈÝ + DWORD dwPlanNo; //4×Ö½ÚÔ¤°¸ºÅ£¬¿Í»§¶ËͳһʹÓÃ4×Ö½ÚµÄÔ¤°¸ºÅ£¬µ¥×Ö½ÚµÄÔ¤°¸ºÅ²»ÔÙʹÓà + BYTE byRes2[60]; +}NET_DVR_PLAN_CFG, *LPNET_DVR_PLAN_CFG; + + +/*******************************»ñÈ¡É豸״̬*******************************/ +/*Ô¤°¸Áбí*/ +typedef struct tagNET_DVR_PLAN_LIST +{ + DWORD dwSize; + DWORD dwPlanNums; //É豸ÊäÈëÐźÅÔ´ÊýÁ¿ + BYTE *pBuffer; //Ö¸ÏòdwInputSignalNums¸öNET_DVR_PLAN_CFG½á¹¹´óСµÄ»º³åÇø + BYTE byWallNo; //ǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes1[2]; + DWORD dwBufLen; //Ëù·ÖÅ仺³åÇø³¤¶È£¬ÊäÈë²ÎÊý£¨´óÓÚµÈÓÚdwInputSignalNums¸öNET_DVR_PLAN_CFG½á¹¹´óС£© + BYTE byRes2[64]; +} NET_DVR_PLAN_LIST,*LPNET_DVR_PLAN_LIST; + + +/*******************************Ô¤°¸¿ØÖÆ*******************************/ +//¸Ã½á¹¹Ìå¿É×÷ΪͨÓÿØÖƽṹÌå +typedef struct tagNET_DVR_CONTROL_PARAM +{ + DWORD dwSize; + BYTE sDeviceID[NAME_LEN]; //±»¿ØÉ豸µÄÉ豸ID + WORD wChan; //±»¿ØͨµÀ + BYTE byIndex; //¿ØÖÆË÷Òý£¬¸ù¾ÝÃüÁîÈ·¶¨¾ßÌå±íʾʲôË÷Òý + BYTE byRes1; + DWORD dwControlParam; + BYTE byMandatoryAlarm; //1-ʹÄÜ 0-²»Ê¹ÄÜ + BYTE byRes2; + WORD wZoneIndex; //·ÀÇøºÅ + BYTE byOperatorCode[16]; //»Ø¿ØÂë + DWORD dwPlanNo; //4×Ö½ÚÔ¤°¸ºÅ£¬¿Í»§¶ËͳһʹÓÃ4×Ö½ÚµÄÔ¤°¸ºÅ£¬µ¥×Ö½ÚµÄÔ¤°¸ºÅ²»ÔÙʹÓà + BYTE byRes3[8]; +}NET_DVR_CONTROL_PARAM, *LPNET_DVR_CONTROL_PARAM; + +/*******************************»ñÈ¡É豸״̬*******************************/ +typedef struct tagNET_DVR_DEVICE_RUN_STATUS +{ + DWORD dwSize; + DWORD dwMemoryTotal; //ÄÚ´æ×ÜÁ¿£¬µ¥Î»Kbyte + DWORD dwMemoryUsage; //ÄÚ´æʹÓÃÁ¿£¬µ¥Î»Kbyte + BYTE byCPUUsage; //CPUʹÓÃÂÊ£¬0-100 + BYTE byMainFrameTemp; //»úÏäζȣ¬µ¥Î»£ºÉãÊÏ¶È + BYTE byBackPanelTemp; //±³°åζȣ¬µ¥Î»£ºÉãÊÏ¶È + BYTE byRes1; + BYTE byLeftDecResource[32]; //¸÷½âÂë°åÊ£Óà½âÂë×ÊÔ´£¬ÒÔ½âD1·Ö±æÂÊ×ÊԴΪµ¥Î»£¬byLeftDecResource[i],±íʾ²ÛλºÅi½âÂë°åÊ£Óà×ÊÔ´£¬0xff±íʾÎÞЧ£¨·Ç½âÂë°å»òû²å°å×Ó£© + float fNetworkFlow; //ÍøÂçÁ÷Á¿£¬µ¥Î»£ºKB/s£¬¹éÒ»»¯´¦Àí£¬±£ÁôСÊýµãºóÁ½Î» + BYTE byRes2[88]; +}NET_DVR_DEVICE_RUN_STATUS, *LPNET_DVR_DEVICE_RUN_STATUS; + +// 91ϵÁÐHD-SDI¸ßÇåDVR Ïà»úÐÅÏ¢ +typedef struct tagNET_DVR_ACCESS_CAMERA_INFO +{ + DWORD dwSize; + char sCameraInfo[32]; // Ç°¶ËÏà»úÐÅÏ¢ + BYTE byInterfaceType; // Ç°¶Ë½ÓÈë½Ó¿ÚÀàÐÍ£¬1:VGA, 2:HDMI, 3:YPbPr 4:SDI 5:FC + BYTE byRes1[3]; + DWORD dwChannel; + BYTE byRes[24]; +}NET_DVR_ACCESS_CAMERA_INFO, *LPNET_DVR_ACCESS_CAMERA_INFO; + +typedef struct tagNET_DVR_AUDIO_INPUT_PARAM +{ + BYTE byAudioInputType; //ÒôƵÊäÈëÀàÐÍ£¬0-mic in£¬1-line in + BYTE byVolume; //volume,[0-100] + BYTE byEnableNoiseFilter; //ÊÇ·ñ¿ªÆôÉùÒô¹ýÂË-¹Ø£¬-¿ª + BYTE byres[5]; +}NET_DVR_AUDIO_INPUT_PARAM, *LPNET_DVR_AUDIO_INPUT_PARAM; + +typedef struct tagNET_DVR_CAMERA_DEHAZE_CFG +{ + DWORD dwSize; + BYTE byDehazeMode; //0-²»ÆôÓã¬1-×Ô¶¯Ä£Ê½£¬2-¿ª + BYTE byLevel; //µÈ¼¶£¬0-100 + BYTE byRes[6]; +}NET_DVR_CAMERA_DEHAZE_CFG, *LPNET_DVR_CAMERA_DEHAZE_CFG; + +typedef struct tagNET_DVR_INPUT_SIGNAL_LIST +{ + DWORD dwSize; + DWORD dwInputSignalNums; //É豸ÊäÈëÐźÅÔ´ÊýÁ¿ + BYTE *pBuffer; //Ö¸ÏòdwInputSignalNums¸öNET_DVR_INPUTSTREAMCFG½á¹¹´óСµÄ»º³åÇø + BYTE byRes1[3]; + DWORD dwBufLen; //Ëù·ÖÅ仺³åÇø³¤¶È£¬ÊäÈë²ÎÊý£¨´óÓÚµÈÓÚdwInputSignalNums¸öNET_DVR_INPUTSTREAMCFG½á¹¹´óС£© + BYTE byRes2[64]; +} NET_DVR_INPUT_SIGNAL_LIST,*LPNET_DVR_INPUT_SIGNAL_LIST; + +// °²È«°ÎÅÌ״̬ +#define PULL_DISK_SUCCESS 1 // °²È«°ÎÅ̳ɹ¦ +#define PULL_DISK_FAIL 2 // °²È«°ÎÅÌʧ°Ü +#define PULL_DISK_PROCESSING 3 // ÕýÔÚÍ£Ö¹ÕóÁÐ +#define PULL_DISK_NO_ARRAY 4 // ÕóÁв»´æÔÚ +#define PULL_DISK_NOT_SUPPORT 5 // ²»Ö§³Ö°²È«°ÎÅÌ + +// ɨÃèÕóÁÐ״̬ +#define SCAN_RAID_SUC 1 // ɨÃèÕóÁгɹ¦ +#define SCAN_RAID_FAIL 2 // ɨÃèÕóÁÐʧ°Ü +#define SCAN_RAID_PROCESSING 3 // ÕýÔÚɨÃèÕóÁÐ +#define SCAN_RAID_NOT_SUPPORT 4 // ²»Ö§³ÖÕóÁÐɨÃè + +// ÉèÖÃÇ°¶ËÏà»úÀàÐÍ״̬ +#define SET_CAMERA_TYPE_SUCCESS 1 // ³É¹¦ +#define SET_CAMERA_TYPE_FAIL 2 // ʧ°Ü +#define SET_CAMERA_TYPE_PROCESSING 3 // ÕýÔÚ´¦Àí + +//9000 2.2 +typedef struct tagNET_DVR_RECORD_TIME_SPAN_INQUIRY +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byType; //0 Õý³£ÒôÊÓƵ¼Ïñ, 1ͼƬͨµÀ¼Ïñ, 2ANRͨµÀ¼Ïñ, 3³é֡ͨµÀ¼Ïñ + BYTE byRes[63]; //±£Áô +}NET_DVR_RECORD_TIME_SPAN_INQUIRY, *LPNET_DVR_RECORD_TIME_SPAN_INQUIRY; + +typedef struct tagNET_DVR_RECORD_TIME_SPAN +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME strBeginTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME strEndTime; //½áÊøʱ¼ä + BYTE byType; //0 Õý³£ÒôÊÓƵ¼Ïñ, 1ͼƬͨµÀ¼Ïñ, 2ANRͨµÀ¼Ïñ, 3³é֡ͨµÀ¼Ïñ + BYTE byRes[35]; //±£Áô +}NET_DVR_RECORD_TIME_SPAN, *LPNET_DVR_RECORD_TIME_SPAN; + +typedef struct tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byPicQuota; //ͼƬ°Ù·Ö±È [0%, 30%] + BYTE byRecordQuota; //ÆÕͨ¼Ïñ°Ù·Ö±È [20%, 40%] + BYTE byDrawFrameRecordQuota; //³é֡¼Ïñ°Ù·Ö±È [30%, 80%] + BYTE byRes[61]; //±£Áô×Ö½Ú +}NET_DVR_DRAWFRAME_DISK_QUOTA_CFG, *LPNET_DVR_DRAWFRAME_DISK_QUOTA_CFG; + +typedef struct tagNET_DVR_NAT_PORT +{ + WORD wEnable; //¸Ã¶Ë¿ÚÊÇ·ñʹÄÜÓ³Éä + WORD wExtPort; //Ó³ÉäµÄÍⲿ¶Ë¿ÚºÅ + BYTE byRes[12]; //±£Áô +}NET_DVR_NAT_PORT, *LPNET_DVR_NAT_PORT; + +typedef struct tagNET_DVR_NAT_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + WORD wEnableUpnp; //UPNP¹¦ÄÜÊÇ·ñÆôÓà + WORD wEnableNat; //UPNP¶Ë¿ÚÓ³É䣨NAT£©¹¦ÄÜÊÇ·ñÆôÓÃ(±£Áô£¬ÓëwEnableUpnp±£³ÖÒ»ÖÂ) + NET_DVR_IPADDR struIpAddr; //NAT·ÓÉÆ÷LAN IPµØÖ· + NET_DVR_NAT_PORT struHttpPort; //web server http¶Ë¿ÚÓ³ÉäÅäÖà + NET_DVR_NAT_PORT struCmdPort; //ÃüÁî¶Ë¿ÚÓ³ÉäÅäÖÃ(8000) + NET_DVR_NAT_PORT struRtspPort; //rtsp¶Ë¿ÚÓ³ÉäÅäÖà + BYTE byFriendName[64]; //·þÎñÃû + BYTE byNatType; //UPNP¶Ë¿ÚÓ³ÉäÀàÐÍ£¬0-ÊÖ¶¯£¬1-×Ô¶¯ + BYTE byRes1[3]; //±£Áô + NET_DVR_NAT_PORT struHttpsPort; //https¶Ë¿ÚÓ³ÉäÅäÖà + NET_DVR_NAT_PORT struSDKOverTLSPort; //SDKOverTLS¶Ë¿ÚÓ³ÉäÅäÖà + NET_DVR_NAT_PORT struRtspsPort; //Rtsps¶Ë¿ÚÓ³ÉäÅäÖà + BYTE byres[44]; //±£Áô +}NET_DVR_NAT_CFG, *LPNET_DVR_NAT_CFG; + +typedef struct +{ + DWORD dwEnabled; //¸Ã¶Ë¿ÚÊÇ·ñ±»Ê¹ÄÜÓ³Éä + WORD wInternalPort; //Ó³ÉäÇ°µÄ¶Ë¿Ú + WORD wExternalPort; //Ó³ÉäºóµÄ¶Ë¿Ú + DWORD dwStatus; /*¶Ë¿ÚÓ³Éä״̬ + 0 δÉúЧ + 1 δÉúЧ£ºÓ³ÉäÔ´¶Ë¿ÚÓëÄ¿µÄ¶Ë¿ÚÐèÒ»Ö + 2 δÉúЧ: Ó³Éä¶Ë¿ÚºÅÒѱ»Ê¹Óà + 3 ÉúЧ + */ + NET_DVR_IPADDR struNatExternalIp; //Ó³ÉäºóµÄÍⲿµØÖ· + NET_DVR_IPADDR struNatInternalIp; //NAT·ÓÉÆ÷LAN IPµØÖ· + BYTE byRes[16]; //±£Áô +}NET_DVR_UPNP_PORT_STATE, *LPNET_DVR_UPNP_PORT_STATE; + + +typedef struct +{ + NET_DVR_UPNP_PORT_STATE strUpnpPort[UPNP_PORT_NUM]; //¶Ë¿ÚÓ³Éä״̬,Êý×é0 web server¶Ë¿Ú Êý×é1 ¹ÜÀí¶Ë¿Ú Êý×é2 rtsp¶Ë¿Ú + BYTE byRes[200]; //±£Áô +}NET_DVR_UPNP_NAT_STATE, *LPNET_DVR_UPNP_NAT_STATE; + +typedef struct tagNET_DVR_PLAYCOND +{ + DWORD dwChannel; + NET_DVR_TIME struStartTime; + NET_DVR_TIME struStopTime; + BYTE byDrawFrame; //0:²»³éÖ¡£¬1£º³éÖ¡ + BYTE byStreamType ; //ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷ 1-×ÓÂëÁ÷ 2-ÂëÁ÷Èý + BYTE byStreamID[STREAM_ID_LEN]; + BYTE byCourseFile; //¿Î³ÌÎļþ0-·ñ£¬1-ÊÇ + BYTE byDownload; //ÊÇ·ñÏÂÔØ 0-·ñ£¬1-ÊÇ + BYTE byOptimalStreamType; //ÊÇ·ñ°´×îÓÅÂëÁ÷ÀàÐͻطŠ0-·ñ£¬1-ÊÇ£¨¶ÔÓÚË«ÂëÁ÷É豸£¬Ä³Ò»¶Îʱ¼äÄڵļÏñÎļþÓëÖ¸¶¨ÂëÁ÷ÀàÐͲ»Í¬£¬Ôò·µ»Øʵ¼ÊÂëÁ÷ÀàÐ͵ļÏñ£© + BYTE byVODFileType; // ÏÂÔؼÏñÎļþ£¬Îļþ¸ñʽ 0-PSÂëÁ÷¸ñʽ£¬1-3GP¸ñʽ + BYTE byRes[26]; //±£Áô +}NET_DVR_PLAYCOND, *LPNET_DVR_PLAYCOND; + +typedef struct tagNET_DVR_ATMFINDINFO +{ + BYTE byTransactionType; //½»Ò×ÀàÐÍ 0-È«²¿£¬1-²éѯ£¬ 2-È¡¿î£¬ 3-´æ¿î£¬ 4-ÐÞ¸ÄÃÜÂ룬5-תÕË£¬ 6-ÎÞ¿¨²éѯ 7-ÎÞ¿¨´æ¿î£¬ 8-Í̳® 9-ÍÌ¿¨ 10-×Ô¶¨Òå + BYTE byRes[3] ; //±£Áô + DWORD dwTransationAmount ; //½»Ò×½ð¶î ; +} NET_DVR_ATMFINDINFO, *LPNET_DVR_ATMFINDINFO ; + +typedef union tagNET_DVR_SPECIAL_FINDINFO_UNION +{ + BYTE byLenth[8] ; + NET_DVR_ATMFINDINFO struATMFindInfo; //ATM²éѯ +}NET_DVR_SPECIAL_FINDINFO_UNION, *LPNET_DVR_SPECIAL_FINDINFO_UNION; + + +typedef struct tagNET_DVR_FILECOND_V40 +{ + LONG lChannel; + DWORD dwFileType;/*²»´ø¿¨ºÅ¼ÏóÎļþÀàÐÍ0xff-È«²¿£¬0-¶¨Ê±Â¼Ïñ£¬1-Òƶ¯Õì²â£¬2-±¨¾¯´¥·¢£¬3-±¨¾¯´¥·¢»òÒƶ¯Õì²â£¬4-±¨¾¯´¥·¢ºÍÒƶ¯Õì²â£¬5-ÃüÁî´¥·¢£¬6-ÊÖ¶¯Â¼Ïñ£¬ + 7-ÖÇÄܼÏñ£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ£¬14-ÖÇÄܽ»Í¨Ê¼þ£¬15-Ô½½çÕì²â£¬16-ÇøÓòÈëÇÖ£¬17-ÉùÒôÒì³££¬18-³¡¾°±ä¸üÕì²â£¬19-ÖÇÄÜÕì²â£¨Ô½½çÕì²â|ÇøÓòÈëÇÖ|ÈËÁ³Õì²â|ÉùÒôÒì³£|³¡¾°±ä¸üÕì²â£©£¬ + 20-ÈËÁ³Õì²â£¬ 21-ÐźÅÁ¿£¬22-»Ø´«£¬23-»ØǨ¼Ïñ£¬24-ÕÚµ²£¬25-pos¼Ïñ£¬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-ÆðÁ¢£¬58-ÈËÊý±ä»¯£¬59-Υͣ, 60-ÄæÐÐ,61-ѹÏß,62-»úÕ¼·Ç,63-±äµÀ,64-µôÍ·,65-ÐÐÈ˼ì²â,66-·ÕÏ,67-Å×È÷Îï,68-ŨÎí¼ì²â,69-Ê©¹¤,70-Óµ¶Â,71-½»Í¨Ê¹ʼì²â, 72-²à·½Í£³µ£¬73-ÊÖ¶¯´¥·¢±¨¾¯,74-½»Í¨Î¥Õ£¬75-ÍÚɳ´¬¼ì²â±¨¾¯ 76-·ÏÆøÅŷżà²â77-»Ò¶È±¨¾¯,78-Õñ¶¯Õì²â, + 79-ÑÌÎí¼ì²â,80-ͨµÀ¶¨Ê±Â¼Ïñʼþ,81-AI¿ª·Åƽ̨ʼþ,82-´«¸ÐÆ÷ʼþ +*/ + DWORD dwIsLocked; + DWORD dwUseCardNo;//ÊÇ·ñ´øATMÐÅÏ¢½øÐвéѯ£º0-²»´øATMÐÅÏ¢£¬1-°´½»Ò׿¨ºÅ²éѯ£¬2-°´½»Ò×ÀàÐͲéѯ£¬3-°´½»Ò×½ð¶î²éѯ£¬4-°´¿¨ºÅ¡¢½»Ò×ÀàÐͼ°½»Ò×½ð¶îµÄ×éºÏ²éѯ 5-°´¿Î³ÌÃû³Æ²éÕÒ£¬´Ëʱ¿¨ºÅ±íʾ¿Î³ÌÃû³Æ + BYTE sCardNumber[CARDNUM_LEN_OUT]; + NET_DVR_TIME struStartTime; + NET_DVR_TIME struStopTime; + BYTE byDrawFrame; //0:²»³éÖ¡£¬1£º³éÖ¡ + BYTE byFindType; //0:²éѯÆÕͨ¾í£¬1£º²éѯ´æµµ¾í + BYTE byQuickSearch; //0:ÆÕͨ²éѯ£¬1£º¿ìËÙ£¨ÈÕÀú£©²éѯ + BYTE bySpecialFindInfoType ; //רÓвéѯÌõ¼þÀàÐÍ 0-ÎÞЧ£¬ 1-´øATM²éѯÌõ¼þ + DWORD dwVolumeNum; //´æµµ¾íºÅ + BYTE byWorkingDeviceGUID[GUID_LEN]; //¹¤×÷»úGUID£¬Í¨¹ý»ñÈ¡N+1µÃµ½ + NET_DVR_SPECIAL_FINDINFO_UNION uSpecialFindInfo ; //רÓвéѯÌõ¼þ + BYTE byStreamType; //0-ͬһ¸öʱ¼ä¶ÎÖ»·µ»ØÒ»ÖÖ¼Ïñ£¬ÓÅÏȼ¶Ë³ÐòΪ£ºÖ÷ÂëÁ÷¡¢×ÓÂëÁ÷¡¢ÈýÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ÈýÂëÁ÷£¬3-Ö÷ÂëÁ÷£¬254-Ë«ÂëÁ÷ËÑË÷(ÓÅÏÈ·µ»ØÖ÷ÂëÁ÷¼Ïñ£¬Ã»ÓÐÖ÷ÂëÁ÷¼Ïñʱ·µ»Ø×ÓÂëÁ÷¼Ïñ) + BYTE byAudioFile; //ÒôƵÎļþ 0-·ÇÒôƵÎļþ£¬1-ÒôƵÎļþ + BYTE byRes2[30]; //±£Áô +}NET_DVR_FILECOND_V40, *LPNET_DVR_FILECOND_V40; + +//¼ÏñÎļþ²éÕÒÌõ¼þ½á¹¹V50 +typedef struct tagNET_DVR_FILECOND_V50 +{ + NET_DVR_STREAM_INFO struStreamID; //Á÷ID»òͨµÀºÅ + NET_DVR_TIME_SEARCH_COND struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_SEARCH_COND struStopTime; //½áÊøʱ¼ä + BYTE byFindType; //0-²éѯÆÕͨ¾í£¬1-²éѯ´æµµ¾í 2-²éѯN+1¼ÏñÎļþ + BYTE byDrawFrame; //ÊÇ·ñ³éÖ¡ 0-²»³éÖ¡ 1-³éÖ¡ + BYTE byQuickSearch; //0-ÆÕͨ²éѯ£¬1-¿ìËÙ£¨ÈÕÀú£©²éѯ + BYTE byStreamType; //0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-3ÂëÁ÷£¬0xff-È«²¿ + DWORD dwFileType; // ÎļþÀàÐÍ + DWORD dwVolumeNum; //´æµµ¾íºÅ£¬byFindTypeΪ1ʱÓÐЧ + BYTE byIsLocked; //ÊÇ·ñËø¶¨ 0-Õý³£Îļþ,1-Ëø¶¨Îļþ, 0xff±íʾËùÓÐÎļþ + BYTE byNeedCard; //ÊÇ·ñÐèÒª²éѯ¿¨£¬0-²»ÐèÒª 1-ÐèÒª + BYTE byOnlyAudioFile; //ÒôƵÎļþ 0-ÊÓƵÎļþ 1-ÒôƵÎļþ + BYTE bySpecialFindInfoType; //0-ÎÞЧ£¬ 1-´øATM²éѯÌõ¼þ + char szCardNum[32]; //¿¨ºÅ£¬byNeedCardΪ1ʱÓÐЧ + char szWorkingDeviceGUID[16]; //¹¤×÷»úGUID£¬Í¨¹ý»ñÈ¡N+1µÃµ½£¬byFindTypeΪ2ʱÓÐЧ + NET_DVR_SPECIAL_FINDINFO_UNION uSpecialFindInfo; //רÓвéѯÌõ¼þÁªºÏÌå + DWORD dwTimeout; //²éÕÒ³¬Ê±Ê±¼ä£¨Ö¸¶¨NET_DVR_FindNextFile_V30/NET_DVR_FindNextFile_V40/NET_DVR_FindNextFile_V50½Ó¿ÚµÄ³¬Ê±Ê±¼ä·µ»Ø£©£»µ¥Î»£ººÁÃ룬²»Ìîд£¨Ä¬ÈÏΪ0ʱ£©£¬½Ó¿ÚÐÐΪ¸úÒÔÇ°Ò»Ñù ;ÓÐЧֵ£º0, [5000 ¨C 15000] + BYTE byRes[252]; +}NET_DVR_FILECOND_V50, *LPNET_DVR_FILECOND_V50; + +typedef struct +{ + BYTE sAESKey[16]; /*ÂëÁ÷¼ÓÃÜÃÜÔ¿*/ + BYTE byRes[64]; /*±£Áô×Ö½Ú*/ +}NET_DVR_AES_KEY_INFO, *LPNET_DVR_AES_KEY_INFO; + +typedef struct +{ + NET_DVR_IPADDR struIP; //IPµØÖ· + BYTE byRes[128]; //±£Áô +}NET_DVR_POE_CFG, *LPNET_DVR_POE_CFG; + +#define MAX_PRO_PATH 256 //×î´óЭÒé·¾¶³¤¶È + +typedef struct +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwEnabled; //ÊÇ·ñÆôÓøÃЭÒé0 ²»ÆôÓà 1 ÆôÓà + char sProtocalName[DESC_LEN]; //×Ô¶¨ÒåЭÒéÃû³Æ, 16λ + BYTE byRes1[64]; //±£Áô,ÓÃÓÚЭÒéÃû³ÆÀ©Õ¹ + DWORD dwEnableSubStream; //×ÓÂëÁ÷ÊÇ·ñÆôÓÃ0 ²»ÆôÓà 1 ÆôÓà + + BYTE byMainProType; //Ö÷ÂëÁ÷ЭÒéÀàÐÍ 1 RTSP + BYTE byMainTransType; //Ö÷ÂëÁ÷´«ÊäÀàÐÍ 0£ºAuto 1£ºudp 2£ºrtp over rtsp + WORD wMainPort; //Ö÷ÂëÁ÷¶Ë¿Ú + char sMainPath[MAX_PRO_PATH]; //Ö÷ÂëÁ÷·¾¶ + + BYTE bySubProType; //×ÓÂëÁ÷ЭÒéÀàÐÍ 1 RTSP + BYTE bySubTransType; //×ÓÂëÁ÷´«ÊäÀàÐÍ 0£ºAuto 1£ºudp 2£ºrtp over rtsp + WORD wSubPort; //×ÓÂëÁ÷¶Ë¿Ú + char sSubPath[MAX_PRO_PATH]; //×ÓÂëÁ÷·¾¶ + + BYTE byRes2[200]; //±£Áô +}NET_DVR_CUSTOM_PROTOCAL, *LPNET_DVR_CUSTOM_PROTOCAL; + + +//B10ÄÜÖ§³ÖPSIAÉ豸 +//Ñ­»·ÉÏǽ½á¹¹Ì壨ʵʱ£© +typedef struct +{ + DWORD dwEnable; /* ÊÇ·ñÆôÓà 0£­·ñ 1£­ÆôÓÃ*/ + BYTE byType; //É豸ÀàÐÍ 0: DEV_SDK 1:DEV_DAHUA 2:DEV_EHOME 3:DEV_OTHERES + BYTE byRes[3]; //±£Áô + NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg; + NET_DVR_DEV_CHAN_INFO struDevChanInfo; /* ÂÖÑ­½âÂëͨµÀÐÅÏ¢ */ + BYTE sRtspUrl[128];//Á÷µØÖ· +}NET_DVR_MATRIX_CHAN_INFO_EX,*LPNET_DVR_MATRIX_CHAN_INFO_EX; + +typedef struct +{ + DWORD dwSize; + DWORD dwPoolTime; /*ÂÖѯ¼ä¸ô*/ + NET_DVR_MATRIX_CHAN_INFO_EX struchanConInfo[MAX_CYCLE_CHAN_V30]; + BYTE byRes[16]; +}NET_DVR_MATRIX_LOOP_DECINFO_EX,*LPNET_DVR_MATRIX_LOOP_DECINFO_EX; + +//ʵʱԤÀÀÉÏǽ½á¹¹Ìå +typedef struct +{ + DWORD dwSize; + BYTE byType; //É豸ÀàÐÍ 0: DEV_SDK 1:DEV_DAHUA 2:DEV_EHOME 3:DEV_OTHERES + BYTE byRes[3]; //±£Áô + NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg; + NET_DVR_DEV_CHAN_INFO struDevChanInfo; + BYTE sRtspUrl[128];//Á÷µØÖ· +}NET_DVR_PU_STREAM_CFG_EX,*LPNET_DVR_PU_STREAM_CFG_EX; + +typedef struct tagNET_DVR_MATRIX_TRUNKCFG +{ + DWORD dwGlobalIndex; //Ö÷¼ü + DWORD dwInterIndex; //±¾µØÈ«¾Ö±àºÅ + BYTE sTrunkName[NAME_LEN]; + BYTE byType; //É豸ÀàÐÍ1-bnc, 2-SP3, 3-V6 + BYTE byDir; //¸ÉÏß·½Ïò 1-ÊäÈë2-Êä³ö + BYTE byAbility; //¸ÉÏßÄÜÁ¦£¬D1ºâÁ¿ + BYTE bySubsys; //×ÓϵͳID + BYTE byChan; //ͨµÀID + BYTE byRes[255]; //Ô¤Áô +} NET_DVR_MATRIX_TRUNKCFG,*LPNET_DVR_MATRIX_TRUNKCFG; + +typedef struct tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41 +{ + BYTE byJoinStatus;//¹ØÁª×´Ì¬£¬0-ûÓйØÁª£¬1-ÒѾ­¹ØÁª£¬Í¨¹ýÆäËû×Ö¶ÎÅжϱ»×Ô¼º¹ØÁª»ò±»ÆäËû×Óϵͳ¹ØÁª£¬2-±»Õ¼Óã¬byDecodeAbility´óÓÚ1ʱÓÐЧ£¬3-±»´óÆÁÖ÷ÆÁ¹ØÁª£¬4-±»´óÆÁ×ÓÆÁ¹ØÁª + BYTE byJoinSubSystem;// Ëù¹ØÁª»òÕ¼ÓõÄ×Óϵͳ²ÛλºÅ + BYTE byJoinDispNum;// Ëù¹ØÁª»òÕ¼ÓõÄÏÔʾͨµÀºÅ + BYTE byJoinSubWindowNum;// Ëù¹ØÁª»òÕ¼ÓõÄ×Ó´°¿ÚºÅ + BYTE byDecodeAbility; //½âÂëͨµÀµÄµ±Ç°½âÂëÄÜÁ¦£¬0-δ¹ØÁª£¬1-D1£¬2-720£¬3-1080 + BYTE byRes[15]; +}NET_DVR_DECSUBSYSTEMJIONSTATUS_V41,LPNET_DVR_DECSUBSYSTEMJIONSTATUS_V41; + +typedef struct tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41 +{ + /*×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬8-V6½âÂë×Óϵͳ£¬9-V6×Óϵͳ£¬0-NULL£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£©*/ + BYTE bySubSystemType; + BYTE byConnectStatus;//¼¶ÁªÏµÍ³¹ØÁª×´Ì¬£¬1-Á¬½ÓÕý³££¬2-Á¬½Ó¶Ï¿ª + BYTE byMatrixNum;//¼¶ÁªÊÓƵ×ÛºÏƽ̨ºÅ£¬×ÓϵͳÀàÐÍÊÇ3»ò4ʱ¿ÉÓà + BYTE bySubSystemNum;//¼¶Áª×Óϵͳ²ÛλºÅ£¬×ÓϵͳÀàÐÍÊÇ3»ò4ʱ¿ÉÓà + NET_DVR_DECSUBSYSTEMJIONSTATUS_V41 struSubSystem[MAX_DECODECHANNUM]; + BYTE byBindStatus;//°ó¶¨×´Ì¬£¬0-ûÓа󶨣¬1-ÒѾ­°ó¶¨£¨´óÆÁÆ´½ÓʱÓõ½£© + BYTE bySlotNum ;//²ÛλºÅ£¬´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byUsedTrunk;//ÊÇ·ñ±»¸ÉÏßʹÓã¬0-δ±»Ê¹Óã¬1-±»Ê¹Óà + BYTE byRes[65]; +}NET_DVR_SINGLESUBSYSTEMJOININFO_V41,LPNET_DVR_SINGLESUBSYSTEMJOININFO_V41; + +typedef struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41 +{ + DWORD dwSize; + NET_DVR_SINGLESUBSYSTEMJOININFO_V41 struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM_V40]; + BYTE byRes[48]; +}NET_DVR_ALLDECSUBSYSTEMJOININFO_V41,*LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V41; + +//////////×ÓϵͳÅäÖÃ///////////// +#define MAX_ALARMHOSTKEYBOARD 64 //ÍøÂ籨¾¯Ö÷»ú×î´ó¼üÅÌÊý +typedef struct tagNET_DVR_PUBLIC_SUB_SYSTEM +{ + //¹ØÁª×ÓϵͳºÅ£¬°´Î»±íʾ£¬bit0±íʾ¸Ã¹«¹²×Óϵͳ¹ØÁª×Óϵͳ1. + DWORD dwJointSubSystem; + BYTE byRes[16]; +}NET_DVR_PUBLIC_SUB_SYSTEM, *LPNET_DVR_PUBLIC_SUB_SYSTEM; + +typedef struct tagNET_DVR_NOAMAL_SUB_SYSTEM +{ + //±íʾ±»ÄÄЩ¹«¹²×Óϵͳ¹ØÁª£¬°´Î»±íʾ£¬bit0 ±íʾ£¬¸Ã×Óϵͳ.±»¹ØÁªµ½¹«¹²×Óϵͳ1 + DWORD dwBeJoinedSubSystem; + BYTE byRes[16]; +}NET_DVR_NOAMAL_SUB_SYSTEM, *LPNET_DVR_NOAMAL_SUB_SYSTEM; + +typedef union tagNET_DVR_JOINT_SUB_SYSTEM +{ + // byPublicAttributeEnableΪ0ʱʹÓøñäÁ¿ + NET_DVR_NOAMAL_SUB_SYSTEM struNormalSubSystem; + //byPublicAttributeEnableΪ1ʱʹÓøñäÁ¿ + NET_DVR_PUBLIC_SUB_SYSTEM struPublicSubSystem; + BYTE byRes[20]; +}NET_DVR_JOINT_SUB_SYSTEM,*LPNET_DVR_JOINT_SUB_SYSTEM; + +#define MAX_SUBSYSTEM_ID_LEN 16 //×ÓϵͳID×î´ó³¤¶È + +//////////GPRS²ÎÊýÅäÖÃ///////////// +#define ACCOUNTNUM_LEN 6 +#define ACCOUNTNUM_LEN_32 32 +#define ACCOUNTNUM_LEN_V40 9 +#define APN_NAME_LEN 32 +#define APN_USERNAME_LEN 24 +#define APN_USERPASSWORD_LEN 16 + +typedef struct tagNET_DVR_ALARMSUBSYSTEMPARAM +{ + DWORD dwSize; + WORD wEnterDelay; //½øÈëÑÓʱ,µ¥Î»:Ãë, ·¶Î§£º10-150 ¶¯»·±¨¾¯Ö÷»úºÍ×ÔÖúÐб¨¾¯Ö÷»úµÄÑÓʱʱ¼äÔÚ NET_DVR_ALARMIN_PARAM ÖеÄdwParamÀ´ÉèÖÃÑÓʱʱ¼ä + //¾ßÌåÓÃÄÄÖÖÉèÖ÷½Ê½Í¨¹ýÄÜÁ¦¼¯ÖеÄbySupportAlarmInDelay×Ö¶ÎÀ´Çø±ð + WORD wExitDelay;//Í˳öÑÓʱ,µ¥Î»:Ã룬 ·¶Î§10-300 + BYTE byHostageReport; //Ю³Ö±¨¸æ£¬0½ûÄÜ 1ʹÄÜ + BYTE bySubsystemEnable; //×ÓϵͳʹÄÜ + BYTE byKeyToneOfArmOrDisarm; // ³É¹¦·¢ËͲ¼³··À±¨¸æÊÇ·ñ¼üÅÌÌáʾ£¬0-¼üÅ̲»Ìáʾ 1-¼üÅÌÊä³öÌáʾÒô + BYTE byKeyToneOfManualTestReport; //³É¹¦·¢ËͲâÊÔ±¨¸æÊÇ·ñ¼üÅÌÌáʾ£¬0-¼üÅ̲»Ìáʾ 1-¼üÅÌÊä³öÌáʾÒô + WORD wDelayTime; //¾¯ºÅÊä³öÑÓʱ£¬µ±ÄÜÁ¦¼¯ÖÐdwSupport1ÖеÄbit0λΪ1ʱ£¬Ê¹ÓøòÎÊýÉèÖþ¯ºÅÊä³öʱ¼ä¡£bit0Ϊ0ʱ£¬Ê¹ÓÃNET_DVR_SIREN_PARAMÖеÄwDelay²ÎÊýÉèÖþ¯ºÅÊä³öʱ¼ä + BYTE byEnableAlarmInDelay;//0--²»ÆôÓÃ(ʹÓÃ×ÓϵͳÑÓʱ),1--ÆôÓÃ(ʹÓ÷ÀÇøÑÓʱ)£¬Ä¬Èϲ»ÆôÓà + BYTE byPublicAttributeEnable; //ÊÇ·ñΪ¹«¹²×Óϵͳ + NET_DVR_JOINT_SUB_SYSTEM struJointSubSystem; + BYTE byKeyZoneArm; //ÊÇ·ñÖ§³ÖÔ¿³×·ÀÇø¶Ô×Óϵͳ½øÐв¼·À²Ù×÷ + BYTE byKeyZoneArmReport; //ÊÇ·ñÖ§³ÖÔ¿³×·ÀÇø¶Ô×Óϵͳ²¼·Àʱ·¢ËͲ¼·À±¨¸æ + BYTE byKeyZoneDisarm; //ÊÇ·ñÖ§³ÖÔ¿³×·ÀÇø¶Ô×Óϵͳ½øÐг··À²Ù×÷ + BYTE byKeyZoneDisarmReport; //ÊÇ·ñÖ§³ÖÔ¿³×·ÀÇø¶Ô×Óϵͳ½øÐг··À²Ù×÷ʱ·¢Ëͳ··À±¨¸æ + BYTE bySubSystemID[MAX_SUBSYSTEM_ID_LEN]; //×ÓϵͳID + BYTE byKeyZoneArmReportEnable; //Ô¿³×·ÀÇøÉÏ´«²¼·À±¨¸æʹÄÜ 0-½ûÄÜ 1-ʹÄÜ + BYTE byKeyZoneArmEnable; //Ô¿³×·ÀÇøʹÄÜ£¬ 0 -½ûÄÜ 1-ʹÄÜ + BYTE byOneKeySetupAlarmEnable; //Ò»¼ü²¼·ÀʹÄÜ + BYTE bySingleZoneSetupAlarmEnable; //µ¥·ÀÇø²¼³··ÀʹÄÜ + BYTE byCenterType; //0-ÎÞЧ, 1-ÖÐÐÄÕ˺Å(³¤¶È6),2-À©Õ¹µÄÖÐÐÄÕ˺Å(³¤¶È9) + BYTE sCenterAccount[ACCOUNTNUM_LEN/*6*/]; //ÖÐÐÄÕʺŠ+ BYTE sCenterAccountV40[ACCOUNTNUM_LEN_32/*32*/]; //ÖÐÐÄÕ˺ÅV40,ʹÓôË×Ö¶ÎʱsCenterAccountÎÞЧ + BYTE byRes2[565]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMSUBSYSTEMPARAM, *LPNET_DVR_ALARMSUBSYSTEMPARAM; + +typedef struct tagNET_DVR_REMIND_TIME//8 +{ + BYTE byEnable;//ÊÇ·ñÆôÓñ¾´ÎÌáÐÑ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byHour;//0~24 + BYTE byMinute;//0~60 + BYTE bySecond;//0~60 +}NET_DVR_REMIND_TIME,*LPNET_DVR_REMIND_TIME; + +//×Óϵͳ²ÎÊýÅäÖÃÀ©Õ¹ +#define MAX_KEYBOARD_USER_NUM 256 +typedef struct tagNET_DVR_SUBSYSTEM_PARAM_EX +{ + DWORD dwSize; + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS/*7*/][MAX_TIMESEGMENT_V30/*8*/]; //²¼³··Àʱ¼ä + BYTE byAlarmInAdvance; // ²¼³··ÀÌáÇ°Ìáʾʱ¼ä0~45·Ö + BYTE byRes1[3]; + BYTE byJointAlarmIn[MAX_ALARMHOST_ALARMIN_NUM / 8];//°´Î»£¬±íʾ×Óϵͳ¹ØÁªµÄ±¨¾¯ÊäÈëͨµÀºÅ£¬0-²»¼ÓÈ룬1-¼ÓÈë + BYTE byJointKeyboard[MAX_ALARMHOSTKEYBOARD/*64*/ / 8];//°´Î»£¬±íʾ֧³ÖµÄ¼üÅ̺ţ¬0-²»¼ÓÈ룬1-¼ÓÈë + BYTE byJointOpetaterUser[MAX_KEYBOARD_USER_NUM/8];//°´Î»±íʾ£¬bit0±íʾ¼üÅ̲Ù×÷Óû§1 £¬0-²»¹ØÁª 1-¹ØÁª + NET_DVR_REMIND_TIME struAlarmRemindTime[MAX_DAYS/*7*/][MAX_TIMESEGMENT_V30/*8*/];//MAX_TIMESEGMENT_V30±íʾÿÌì×î¶àÖ§³Ö8¸öÌáÐÑ + BYTE byJointNetUser[NET_SDK_MAX_NET_USER_NUM / 8];//¹ØÁªÍøÂçÓû§£¨°´Î»±íʾ£¬bit0±íʾÍøÂçÓû§1£»0-²»¹ØÁª 1-¹ØÁª£© + BYTE byRes2[280]; // ±£Áô×Ö½Ú +}NET_DVR_SUBSYSTEM_PARAM_EX, *LPNET_DVR_SUBSYSTEM_PARAM_EX; + + +typedef struct tagNET_DVR_ALARMHOST_PRINTER_CFG +{ + DWORD dwSize; + BYTE byPrinterEnable; //ÊÇ·ñÆôÓôòÓ¡»ú + BYTE byPrintTime; //ÊÇ·ñ´òӡʱ¼ä + BYTE byFaultDetect; //ÊÇ·ñ¼ì²â´òÓ¡»ú¹ÊÕÏ + BYTE byRes1; + DWORD dwAlarmInfo; //±¨¾¯ÐÅÏ¢£¬°´Î»±íʾ¡£bit0-·ÀÇø±¨¾¯£¬bit1-·ÀÇø±¨¾¯»Ö¸´£¬bit2-½ô¼±±¨¾¯£¬bit-3Ю³Ö±¨¾¯ + DWORD dwDeviceInfo; //É豸ÐÅÏ¢£¬°´Î»±íʾ¡£bit0-½»Á÷µç¶Ïµç¡¢bit1-½»Á÷µç¶Ïµç»Ö¸´£¬bit2-Ðîµç³ØǷѹ¡¢bit3-Ðîµç³ØǷѹ»Ö¸´£¬bit4-µç»°Ï߶ÏÏß¡¢bit5-µç»°Ï߶ÏÏ߻ָ´£¬bit6-²âÊÔ±¨¸æ¡¢bit7-·À²ð¡¢bit8-·À²ð»Ö¸´¡¢bit9-485É豸µôÏß¡¢bit10-485É豸µôÏ߻ָ´¡¢bit11-ÎÞÏßÍøÂçÒì³£¡¢bit12-ÎÞÏßÍøÂç»Ö¸´Õý³£¡¢bit13-ÓÐÏßÍøÂçÒì³£¡¢bit14-ÓÐÏßÍøÂç»Ö¸´Õý³£¡¢bit15-À©Õ¹×ÜÏßÒì³£¡¢bit17-À©Õ¹×ÜÏ߻ָ´Õý³£¡¢bit17-Ó²Å̹ÊÕÏ¡¢bit18-Ó²Å̹ÊÕϻָ´¡¢bit19-¼üÅÌËø¶¨ + DWORD dwOperateInfo; //²Ù×÷ÐÅÏ¢£¬°´Î»±íʾ¡£bit0-²¼·À¡¢bit1-³··À¡¢bit2-Ïû¾¯¡¢bit3-ÅÔ·¡¢bit4-ÅÔ·»Ö¸´¡¢bit5-½øÈë±à³Ì¡¢bit6-Í˳ö±à³Ì¡¢bit7-Ö÷»ú¸´Î» + BYTE byRes2[256]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_PRINTER_CFG, *LPNET_DVR_ALARMHOST_PRINTER_CFG; + +typedef struct tagNET_DVR_ALARMHOST_NETPARAM +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; + WORD wPort; + BYTE byAddressType; //0 - ÎÞÒâÒå, 1 - ipv4/ipv6µØÖ·£¬2 - ÓòÃû + BYTE byRes1[1]; + BYTE byDomainName[MAX_DOMAIN_NAME/*64*/]; //ÓòÃû£¬GPRS²ÎÊýÅäÖá¢ÍøÂç²ÎÊýÅäÖÃʱ¸Ã×ֶξùÓÐЧ + BYTE byReportProtocol; //1-private 2-NAL2300, 3-Ehome + BYTE byDevID[ACCOUNTNUM_LEN_32/*32*/]; //ЭÒéΪNAL2300ʱÓÐЧ + BYTE byRes2[7]; //GPRSµÄÓòÃû½âÎöÊÇÔڹ̶¨µÄ·þÎñÆ÷ÉϽøÐеģ¬ËùÒÔ²»ÐèÒª¸ø½âÎö·þÎñÆ÷µÄÐÅÏ¢Ô¤ÁôһЩ×ֶΠ+}NET_DVR_ALARMHOST_NETPARAM, *LPNET_DVR_ALARMHOST_NETPARAM; + +typedef struct tagNET_DVR_REGISTER_RS485CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + WORD wDeviceProtocol; // Ç°¶ËÉ豸ЭÒé ͨ¹ý»ñȡЭÒéÁбí»ñÈ¡ + BYTE byRes[2]; + DWORD dwBaudRate; //²¨ÌØÂÊ(bps)£¬0-50£¬1-75£¬2-110£¬3-150£¬4-300£¬5-600£¬6-1200£¬7-2400£¬8-4800£¬9-9600£¬10-19200£¬11-38400£¬12-57600£¬13-76800£¬14-115.2k + BYTE byRes1[124]; // ±£Áô×Ö½Ú +}NET_DVR_REGISTER_RS485CFG, *LPNET_DVR_REGISTER_RS485CFG; + +typedef struct tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG +{ + DWORD dwSize; + NET_DVR_ALARMHOST_NETPARAM struNetCenter[MAX_CENTERNUM]; //ÖÐÐÄ GPRSÍøÂçÏà¹Ø²ÎÊýµÄÅäÖà + BYTE byAPNName[APN_NAME_LEN/*32*/]; + BYTE byAPNUserName[APN_USERNAME_LEN/*24*/]; + BYTE byAPNPassWord[APN_USERPASSWORD_LEN/*16*/]; + BYTE byReconnTime; //ÖØÁ¬Ê±¼ä£¬Á¬½ÓʧЧºóÆôÓÃÖØÁ¬µÄʱ¼ä£¬10ÃëΪµ¥Î»,È¡Öµ·¶Î§1-30 + BYTE byOverTime; //³¬Ê±Ê±¼ä£¬³¬¹ýOverTimeʱ¼äûÓÐÊÕµ½ÓÐЧÊý¾ÝÔòÖØÁ¬£¬·¶Î§1-254£¬µ¥Î»30Ãë + BYTE byDetectLinkTime; // //̽²âÁ´Â·ÊÇ·ñ»¹±£³Ö£¬·¶Î§1-30£¬µ¥Î»10s + BYTE byRes1; + BYTE bySIMNum[NAME_LEN/*32*/]; //SIM¿¨ºÅ£¨ÊÖ»úºÅ£© + NET_DVR_IPADDR struSIMIP; //µÇ½ÍøÂçºóÍøÂç¸ø·ÖÅäµÄIPµØÖ·£¬Ö»ÄÜ»ñÈ¡ + BYTE byRes2[64]; +}NET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG, *LPNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG; + + +//////////ÍøÂç²ÎÊýÅäÖÃ///////////// +typedef struct tagNET_DVR_ALARMHOST_NETCFG +{ + DWORD dwSize; + NET_DVR_ALARMHOST_NETPARAM struNetCenter[MAX_CENTERNUM]; + BYTE byRes1[32]; +}NET_DVR_ALARMHOST_NETCFG, *LPNET_DVR_ALARMHOST_NETCFG; + +//////////»ýľÉÏ´«·½Ê½///////////// +#define MAX_REPORTCHAN_NUM 4 +#define MAX_CENTERGROUP_NUM 16 +typedef struct tagNET_DVR_ALARMHOST_REPORTCENTER_CFG +{ + DWORD dwSize; + BYTE byValid; //ÊÇ·ñÆôÓà + BYTE byRes[3]; //±£Áô1 + BYTE byChanAlarmMode[MAX_REPORTCHAN_NUM/*4*/]; //ÖÐÐÄ×鱨¾¯Í¨µÀ£¬ 1-T1¡¢2-T2¡¢ 3-N1¡¢ 4-N2¡¢5-G1¡¢ 6-G2 + BYTE byDealFailCenter[MAX_CENTERGROUP_NUM/*16*/]; //ÏòÖ¸¶¨ÖÐÐÄ×é·¢ËÍʧ°Ü±¨¸æ£¬ÓÃÊý×éϱê±íʾÊÇÄĸöÖÐÐÄ×飬0-²»Ñ¡Ôñ¡¢1-Ñ¡Ôñ + BYTE byDataType; //1-±¨¾¯Êý¾Ý 2-·Ç±¨¾¯Êý¾Ý 3-ËùÓÐÊý¾Ý + BYTE byRes2[15]; //±£Áô2 +}NET_DVR_ALARMHOST_REPORTCENTER_CFG, *LPNET_DVR_ALARMHOST_REPORTCENTER_CFG; + +#define MAX_EVENT_NUM 32//ÍøÂ籨¾¯Ö÷»ú×î´óʼþÊý +typedef struct tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40 +{ + DWORD dwSize; + BYTE byValid; //ÊÇ·ñÆôÓà + BYTE byDataType; //1-ËùÓб¨¾¯Êý¾Ý 2-ËùÓзDZ¨¾¯Êý¾Ý 3-ËùÓÐÊý¾Ý£¬4-·ÀÇø±¨¾¯±¨¸æ£¬5-·Ç·ÀÇø±¨¾¯±¨¸æ + BYTE byRes[2]; //±£Áô1 + BYTE byChanAlarmMode[MAX_REPORTCHAN_NUM/*4*/]; //ÖÐÐÄ×鱨¾¯Í¨µÀ£¬ 1-T1¡¢2-T2¡¢ 3-N1¡¢ 4-N2¡¢5-G1¡¢ 6-G2¡¢7-N3¡¢ 8-N4¡¢9-CMK-4G¡¢10-CMK-NET(Èç¹ûÉ豸֧³Ö3G£¬G1£¬G2±íʾ3GÄ£¿é£¬Èç¹û²»Ö§³Ö£¬±íʾGPRSÄ£¿é£¬Ò»¿îÉ豸ÖÐ3GÄ£¿éºÍGPRSÄ£¿éÖ»»á³öÏÖÒ»ÖÖ) + BYTE byDealFailCenter[MAX_CENTERGROUP_NUM/*16*/]; //ÏòÖ¸¶¨ÖÐÐÄ×é·¢ËÍʧ°Ü±¨¸æ£¬ÓÃÊý×éϱê±íʾÊÇÄĸöÖÐÐÄ×飬0-²»Ñ¡Ôñ¡¢1-Ñ¡Ôñ + BYTE byZoneReport[MAX_ALARMHOST_ALARMIN_NUM]; //·ÀÇø±¨¸æÀàÐÍ£¬0-²»ÉÏ´«£¬1-ÉÏ´« + BYTE byNonZoneReport[MAX_EVENT_NUM]; //·Ç·ÀÇø±¨¾¯±¨¸æ, ÿһ¸öÔªËرíʾһÖÖʼþÀàÐÍ£¬0-²»ÉÏ´«£¬1-ÉÏ´«£¬byNonZoneReport[0]-Èí·ÀÇø±¨¸æ byNonZoneReport[1]-ϵͳ״̬±¨¸æ byNonZoneReport[2]-È¡Ïû±¨¸æ byNonZoneReport[3]-²âÊÔ±¨¸æ byNonZoneReport[4]-²¼·À±¨¸æ byNonZoneReport[5]-³··À±¨¸æ byNonZoneReport[6]-Ю³Ö±¨¸æ byNonZoneReport[7]-±¨¾¯»Ö¸´±¨¸æ byNonZoneReport[8]-ÅÔ·±¨¸æ byNonZoneReport[9]-ÅÔ·»Ö¸´±¨¸æ¡£byNonZoneReport[10]-̽²âÆ÷Á¬½Ó״̬±¨¸æ£¨ÉÏÏß¡¢ÀëÏߣ©¡£byNonZoneReport[11]-̽²âÆ÷µçÁ¿×´Ì¬±¨¸æ£¨µçѹÕý³£¡¢Ç·Ñ¹£©byNonZoneReport[12]-ÊÓƵ±¨¾¯±¨¸æ + BYTE byAlarmNetCard[MAX_REPORTCHAN_NUM/*4*/]; //ÖÐÐÄ×鱨¾¯Íø¿¨ÖÐÐÄ£¬0-Ö÷Íø¿¨ÖÐÐÄ1£¬1-Ö÷Íø¿¨ÖÐÐÄ2£¬2-À©Õ¹Íø¿¨ÖÐÐÄ1,3-À©Õ¹Íø¿¨ÖÐÐÄ2£¨±¨¾¯Í¨µÀΪN1¡¢N2¡¢N3¡¢N4ʱÓÐЧ£© + BYTE byRes2[252]; //±£Áô2 +}NET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40, *LPNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40; + + +//////////·À»¤²Õ״̬ÉÏ´«///////////// +typedef struct tagNET_DVR_ALARMHOST_SAFETYCABINSTATE +{ + DWORD dwSize; + BYTE byEnterButton; //½øÃÅ°´Å¥×´Ì¬ 0-²»°´Ï 1-°´Å¥°´Ï + BYTE byExitButton; //³öÃÅ°´Å¥×´Ì¬ 0-²»°´Ï 1-°´Å¥°´Ï + BYTE byDoorState; //ÃÅ״̬ 0-ÃÅ¹Ø±Õ 1-ÃÅ´ò¿ª + BYTE byLockState; //Ëø״̬ 0-Ëø¹Ø 1-Ëø¿ª + BYTE byUrgencyButton; //½ô¼±°´Å¥×´Ì¬ 0-²»°´Ï 1-°´Å¥°´Ï + BYTE byManState; //ÈË״̬ 0-ûÈË 1-ÓÐÈË + BYTE byAbnormal; //Ò쳣״̬ 0-Õý³£ 1-Òì³£(·À»¤²ÕʹÓó¬Ê±ÉÏ´«Òì³£) + BYTE byLightState; //µÆ¹â״̬ 0-¹Ø £¬1-¿ª + BYTE byFanState; //·çÉÈ״̬ 0-¹Ø£¬1-¿ª + BYTE byFollow; //βËæ½øÈë״̬ 0-ÎÞβË棬1-ÓÐβËæ + BYTE byFighting; //´ò¶·×´Ì¬ 0-ÎÞ´ò¶·£¬1-Óдò¶· + BYTE byFaint; //Ôε¹×´Ì¬ 0-ÎÞÔε¹£¬1-ÓÐÈËÔε¹ + BYTE byManyPerson; //¶àÈË״̬ 0-ÎÞ¶àÈ˽ø²Õ£¬1-¶àÈ˽ø²Õ + BYTE byRes[59]; //±£Áô +}NET_DVR_ALARMHOST_SAFETYCABINSTATE,*LPNET_DVR_ALARMHOST_SAFETYCABINSTATE; + +/////////¾¯ºÅÊä³ö¿Ú£¬¾¯ºÅ״̬ÉÏ´«///////////// +typedef struct tagNET_DVR_ALARMHOST_ALARMOUTSTATUS +{ + DWORD dwSize; + BYTE byName[32]; //±¨¾¯Êä³ö¿ÚÃû³Æ»ò¾¯ºÅÃû³Æ + BYTE byAlarmType; //1-±¨¾¯Êä³ö¿Ú״̬£¬ 2-¾¯ºÅ״̬ + WORD wChan; //Èç¹ûÊDZ¨¾¯Êä³ö¿Ú״̬£¬¸ÃÖµµÄ·¶Î§Îª0-511£»Èç¹ûÊǾ¯ºÅ״̬£¬·¶Î§1-8£¨·À»¤²ÕÖ»ÓÐ1¸ö¾¯ºÅÊä³ö£© + BYTE byAlarmStatus; //±¨¾¯×´Ì¬ 0-ÎÞ±¨¾¯ 1-Óб¨¾¯ + BYTE byRes[32]; +}NET_DVR_ALARMHOST_ALARMOUTSTATUS,*LPNET_DVR_ALARMHOST_ALARMOUTSTATUS; + +//////////ÓïÒôÉÏ´«ÏÂÔØ///////////// +typedef struct tagNET_DVR_AUDIO_PARAM +{ + DWORD dwSize; + BYTE byAudioFormat; //ÒôƵ¸ñʽ£¬1-G711£¬2-G722 + BYTE byRes1; + WORD wChannels; // number of channels (i.e. mono, stereo...) + DWORD dwSamplesPerSec; //²ÉÑùÂÊ + BYTE byRes2[20]; //±£Áô + DWORD dwAudioSize; //ÒôƵ³¤¶È´óС£¬Ñ¹ËõºóµÄ´óС +}NET_DVR_AUDIO_PARAM,*LPNET_DVR_AUDIO_PARAM; + +//Ô¤ÀÀV40½Ó¿Ú +typedef struct tagNET_DVR_PREVIEWINFO +{ + LONG lChannel;//ͨµÀºÅ + DWORD dwStreamType; // ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ÂëÁ÷3£¬3-ÂëÁ÷4, 4-ÂëÁ÷5,5-ÂëÁ÷6,7-ÂëÁ÷7,8-ÂëÁ÷8,9-ÂëÁ÷9,10-ÂëÁ÷10 + DWORD dwLinkMode;// 0£ºTCP·½Ê½,1£ºUDP·½Ê½,2£º¶à²¥·½Ê½,3 - RTP·½Ê½£¬4-RTP/RTSP,5-RSTP/HTTP ,6- HRUDP£¨¿É¿¿´«Ê䣩 ,7-RTSP/HTTPS + HWND hPlayWnd;//²¥·Å´°¿ÚµÄ¾ä±ú,ΪNULL±íʾ²»²¥·ÅͼÏó + DWORD bBlocked; //0-·Ç×èÈûÈ¡Á÷, 1-×èÈûÈ¡Á÷, Èç¹û×èÈûSDKÄÚ²¿connectʧ°Ü½«»áÓÐ5sµÄ³¬Ê±²ÅÄܹ»·µ»Ø,²»ÊʺÏÓÚÂÖѯȡÁ÷²Ù×÷. + DWORD bPassbackRecord; //0-²»ÆôÓüÏñ»Ø´«,1ÆôÓüÏñ»Ø´« + BYTE byPreviewMode;//Ô¤ÀÀģʽ£¬0-Õý³£Ô¤ÀÀ£¬1-ÑÓ³ÙÔ¤ÀÀ + BYTE byStreamID[STREAM_ID_LEN/*32*/];//Á÷ID£¬lChannelΪ0xffffffffʱÆôÓô˲ÎÊý + BYTE byProtoType; //Ó¦ÓòãÈ¡Á÷ЭÒ飬0-˽ÓÐЭÒ飬1-RTSPЭÒé,2-SRTPÂëÁ÷¼ÓÃÜ£¨¶ÔÓ¦´Ë½á¹¹ÌåÖÐdwLinkMode ×ֶΣ¬Ö§³ÖÈçÏ·½Ê½, Ϊ1£¬±íʾudp´«Ê䷽ʽ£¬ÐÅÁî×ßTLS¼ÓÃÜ£¬ÂëÁ÷×ßSRTP¼ÓÃÜ£¬Îª2£¬±íʾ¶à²¥´«Ê䷽ʽ£¬ÐÅÁî×ßTLS¼ÓÃÜ£¬ÂëÁ÷×ßSRTP¼ÓÃÜ£© + BYTE byRes1; + BYTE byVideoCodingType; //ÂëÁ÷Êý¾Ý±à½âÂëÀàÐÍ 0-ͨÓñàÂëÊý¾Ý 1-ÈȳÉÏñ̽²âÆ÷²úÉúµÄԭʼÊý¾Ý£¨Î¶ÈÊý¾ÝµÄ¼ÓÃÜÐÅÏ¢£¬Í¨¹ýÈ¥¼ÓÃÜÔËË㣬½«Ô­Ê¼Êý¾ÝËã³öÕæʵµÄζÈÖµ£© + DWORD dwDisplayBufNum; //²¥·Å¿â²¥·Å»º³åÇø×î´ó»º³åÖ¡Êý£¬·¶Î§1-50£¬ÖÃ0ʱĬÈÏΪ1 + BYTE byNPQMode; //NPQÊÇÖ±Á¬Ä£Ê½£¬»¹ÊǹýÁ÷ýÌå 0-Ö±Á¬ 1-¹ýÁ÷ýÌå + BYTE byRecvMetaData; //ÊÇ·ñ½ÓÊÕmetadataÊý¾Ý£¬É豸ÊÇ·ñÖ§³Ö¸Ã¹¦ÄÜͨ¹ýGET /ISAPI/System/capabilities ÖÐDeviceCap.SysCap.isSupportMetadataÊÇ·ñ´æÔÚÇÒΪtrue + BYTE byDataType; //Êý¾ÝÀàÐÍ£¬0-ÂëÁ÷Êý¾Ý£¬1-ÒôƵÊý¾Ý + BYTE byRes[213]; +}NET_DVR_PREVIEWINFO, *LPNET_DVR_PREVIEWINFO; + +//Á¬½ÓÀàÐÍö¾Ù +typedef enum _NET_DVR_LINK_KIND_ +{ + ENUM_LINK_PREVIEW = 1, //Ô¤ÀÀ + ENUM_LINK_PLAYBACK, //»Ø·Å£¬ÏÂÔØ + ENUM_LINK_VOICEPLAY //ÓïÒô¶Ô½²/ת·¢ +}NET_DVR_LINK_KIND; + +//Á¬½ÓµØÖ·½á¹¹Ì壬RTSPÈ¡Á÷ʱ´æÔÚÒ»¸ö¾ä±ú´´½¨¶à¸ö¶Ë¿ÚͨÐŵÄÇé¿ö +typedef struct tagNET_DVR_LINK_ADDR +{ + NET_DVR_IPADDR_UNION uLocalIP; //±¾µØIPµØÖ· + WORD wLocalPort[10]; //±¾µØ¶Ë¿ÚºÅ + BYTE byLocalPortNum; //±¾µØ¶Ë¿ÚÊý + BYTE byRes1[3]; + NET_DVR_IPADDR_UNION uDevIP; //É豸IPµØÖ· + WORD wDevPort[10]; //É豸¶Ë¿ÚºÅ + BYTE byDevPortNum; //É豸¶Ë¿ÚÊý + BYTE byRes2[3]; + BYTE byRes[80]; +}NET_DVR_LINK_ADDR, *LPNET_DVR_LINK_ADDR; + +//ÖÐÐÄÖÇÄÜÉ豸ȡÁ÷ +typedef struct tagNET_DVR_PREVIEWINFO_SPECIAL +{ + char sURL[1024]; //È¡Á÷URL£¬¶ÔÓ¦/ISAPI/SDT/Management/Region/ID·µ»ØµÄÈ¡Á÷URL£¬²¿·ÖÉ豸·µ»ØµÄURL²»ºÏ·¨£¬ÐèÒªÔö¼ÓÓû§ÃûÃÜÂë½Úµã£¬ÆäÖÐÓû§ÃûºÍÃÜÂëÐÅÏ¢À´×ÔdeviceUserºÍdevicePassword½Úµã + //ʾÀý£ºrtsp://admin:abcd12345@10.7.37.2:554/Streaming/Channels/101?transportmode=unicast + DWORD dwLinkMode;// 0£ºTCP·½Ê½,1£ºUDP·½Ê½,2£º¶à²¥·½Ê½,3 - RTP·½Ê½£¬4-RTP/RTSP,5-RSTP/HTTP + HWND hPlayWnd;//²¥·Å´°¿ÚµÄ¾ä±ú,ΪNULL±íʾ²»²¥·ÅͼÏó + DWORD bBlocked; //0-·Ç×èÈûÈ¡Á÷, 1-×èÈûÈ¡Á÷, Èç¹û×èÈûSDKÄÚ²¿connectʧ°Ü½«»áÓÐ5sµÄ³¬Ê±²ÅÄܹ»·µ»Ø,²»ÊʺÏÓÚÂÖѯȡÁ÷²Ù×÷. + DWORD dwDisplayBufNum; //²¥·Å¿â²¥·Å»º³åÇø×î´ó»º³åÖ¡Êý£¬·¶Î§1-50£¬ÖÃ0ʱĬÈÏΪ1 + BYTE byRes[64]; +}NET_DVR_PREVIEWINFO_SPECIAL, *LPNET_DVR_PREVIEWINFO_SPECIAL; + + +//ʼþ´¥·¢±¨¾¯Êä³ö + +typedef struct tagNET_DVR_TRIGGER_EVENT +{ + DWORD dwSize; + DWORD dwOverallEventTriggerAlarmoutOn; //È«¾Öʼþ´¥·¢±¨¾¯Êä³ö¿ªÆô£¬°´Î»»ò£¬bit0-½»Á÷µçµôµç£¬bit1-µç³ØµçѹµÍ£¬bit2-µç»°ÏßµôÏߣ¬bit3-ÓÐÏßÍøÂçÒì³££¬bit4-ÎÞÏßÍøÂçÒì³£ ,bit5-Ó²Å̹ÊÕÏ, bit6-3G/4GÐźÅÒì³£, bit7-£¨Ä£¿éÁ´½Ó£©µÚÈý·½Ö÷»úµôÏß £¬bit8- WIFIͨÐŹÊÕÏ£¬bit9-RFÐźŸÉÈŹÊÕÏ + DWORD dwOverallEventTriggerAlarmoutOff; //È«¾Öʼþ´¥·¢±¨¾¯Êä³ö¿ªÆô£¬°´Î»»ò£¬bit0-½»Á÷µçµôµç£¬bit1-µç³ØµçѹµÍ£¬bit2-µç»°ÏßµôÏߣ¬bit3-ÓÐÏßÍøÂçÒì³££¬bit4-ÎÞÏßÍøÂçÒì³£ ,bit5-Ó²Å̹ÊÕÏ, bit6-3G/4GÐźÅÒì³£, bit7-£¨Ä£¿éÁ´½Ó£©µÚÈý·½Ö÷»úµôÏß £¬bit8- WIFIͨÐŹÊÕÏ£¬bit9-RFÐźŸÉÈŹÊÕÏ + DWORD dwSubSystemEventTriggerAlarmoutOn[MAX_ALARMHOST_SUBSYSTEM/*32*/]; //×Óϵͳʼþ´¥·¢±¨¾¯Êä³ö¿ªÆô,dwSubSystemEvent[0]±íʾ×Óϵͳ1£¬dwSubSystemEvent[2]±íʾ×Óϵͳ2£¬¾ßÌåµÄ×Óϵͳ¸öÊý´ÓÄÜÁ¦¼¯»ñÈ¡£¨wSubSystem£©£¬Ã¿¸ö×ÓϵͳµÄʼþ°´Î»±íʾ£¬bit0-½øÈëÑÓʱ£¬bit1-Í˳öÑÓʱ£¬bit2-²¼·À£¬bit3-³··À£¬bit4-±¨¾¯£¬bit5-Ïû³ý±¨¾¯¼ÇÒä,bit6-±¨¾¯»Ö¸´,bit7-·ÀÇø·À²ð,bit8-·ÀÇø·À²ð»Ö¸´ + DWORD dwSubSystemEventTriggerAlarmoutOff[MAX_ALARMHOST_SUBSYSTEM/*32*/]; //×Óϵͳʼþ´¥·¢±¨¾¯Êä³ö¹Ø±Õ,wSubSystemEvent[0]±íʾ×Óϵͳ1£¬dwSubSystemEvent[2]±íʾ×Óϵͳ2£¬¾ßÌåµÄ×Óϵͳ¸öÊý´ÓÄÜÁ¦¼¯»ñÈ¡£¨wSubSystem£©£¬Ã¿¸ö×ÓϵͳµÄʼþ°´Î»±íʾ£¬bit0-½øÈëÑÓʱ£¬bit1-Í˳öÑÓʱ£¬bit2-²¼·À£¬bit3-³··À£¬bit4-±¨¾¯£¬bit5-Ïû³ý±¨¾¯¼ÇÒä,bit6-±¨¾¯»Ö¸´,bit7-·ÀÇø·À²ð,bit8-·ÀÇø·À²ð»Ö¸´ + BYTE byRes[128]; +}NET_DVR_TRIGGER_EVENT, *LPNET_DVR_TRIGGER_EVENT; + +//¹ÊÕÏ´¦ÀíÅäÖà +typedef struct tagNET_DVR_ALARMHOST_FAULT_CFG +{ + DWORD dwSize; + DWORD dwCheckFault; //ÊÇ·ñ¼ì²â¹ÊÕÏ£¬bit0-½»Á÷µç¶Ïµç£¬bit1-Ðîµç³ØǷѹ£¬bit2-Ö÷»ú·À²ð¿ª£¬bit3-µç»°ÏßµôÏߣ¬bit4-485É豸Òì³££¬bit5-ÍøÂç¹ÊÕÏ£¬bit6-ÎÞÏßÒì³££¬bit7-À©Õ¹×ÜÏßÒì³££¬bit8-Ó²ÅÌÒì³££¬bit9- FPGA¹ÊÕÏ£¬bit10- Ä£ÄâÁ¿¹ÊÕÏ, bit11-·ÀÇøÀ©Õ¹°åÒì³££¬bit12-WIFIͨÐŹÊÕÏ£¬bit13-RFÐźŸÉÈŹÊÕÏ£¬¾ßÌåÖ§³ÖµÄ¹ÊÕÏÀàÐÍ´ÓÄÜÁ¦¼¯»ñÈ¡ + DWORD dwOverallFaultJointLED; //¹ÊÕϹØÁªÈ«¾Ö¼üÅÌָʾµÆÊä³ö bit0-½»Á÷µç¶Ïµç£¬bit1-Ðîµç³ØǷѹ£¬bit2-Ö÷»ú·À²ð¿ª£¬bit3-µç»°ÏßµôÏߣ¬bit4-485É豸Òì³££¬bit5-ÍøÂç¹ÊÕÏ£¬bit6-ÎÞÏßÒì³££¬bit7-À©Õ¹×ÜÏßÒì³££¬bit8-Ó²ÅÌÒì³££¬¾ßÌåÖ§³ÖµÄ¹ÊÕÏÀàÐÍ´ÓÄÜÁ¦¼¯»ñÈ¡ + DWORD dwOverallFaultJointSound; //¹ÊÕϹØÁªÈ«¾Ö¼üÅÌÉùÒôÊä³ö bit0-½»Á÷µç¶Ïµç£¬bit1-Ðîµç³ØǷѹ£¬bit2-Ö÷»ú·À²ð¿ª£¬bit3-µç»°ÏßµôÏߣ¬bit4-485É豸Òì³££¬bit5-ÍøÂç¹ÊÕÏ£¬bit6-ÎÞÏßÒì³££¬bit7-À©Õ¹×ÜÏßÒì³££¬bit8-Ó²ÅÌÒì³££¬¾ßÌåÖ§³ÖµÄ¹ÊÕÏÀàÐÍ´ÓÄÜÁ¦¼¯»ñÈ¡ + DWORD dwSubSystemFaultJointLED[MAX_ALARMHOST_SUBSYSTEM]; /*¹ÊÕϹØÁª×Óϵͳ¼üÅÌָʾµÆÊä³ö£¬dwSubSystemFaultJointLED[0]±íʾ×Óϵͳ1µÄ¹ØÁªÐÅÏ¢¡£dwSubSystemFaultJointLED[0]µÄÿһλ±íʾһÖйÊÕÏ£¬bit0-½»Á÷µç¶Ïµç£¬bit1-Ðîµç³ØǷѹ£¬bit2-Ö÷»ú·À²ð¿ª£¬bit3-µç»°ÏßµôÏߣ¬bit4-485É豸Òì³££¬bit5-ÍøÂç¹ÊÕÏ£¬bit6-ÎÞÏßÒì³££¬bit7-À©Õ¹×ÜÏßÒì³££¬bit8-Ó²ÅÌÒì³£; dwSubSystemFaultJointLED[1]±íʾ×Óϵͳ2£¬ÒÔ´ËÀàÍÆ*/ + DWORD dwSubSystemFaultJointSound[MAX_ALARMHOST_SUBSYSTEM];/*¹ÊÕϹØÁª×Óϵͳ¼üÅÌÉùÒôÊä³ö£¨ÉùÒôÔÚ¼üÅÌÉÏÊä³ö£©dwSubSystemFaultJointLED[0]±íʾ×Óϵͳ1µÄ¹ØÁªÐÅÏ¢¡£dwSubSystemFaultJointSound [0]µÄÿһλ±íʾһÖйÊÕÏ£¬bit0-½»Á÷µç¶Ïµç£¬bit1-Ðîµç³ØǷѹ£¬bit2-Ö÷»ú·À²ð¿ª£¬bit3-µç»°ÏßµôÏߣ¬bit4-485É豸Òì³££¬bit5-ÍøÂç¹ÊÕÏ£¬bit6-ÎÞÏßÒì³££¬bit7-À©Õ¹×ÜÏßÒì³££¬bit8-Ó²ÅÌÒì³£; dwSubSystemFaultJointSound [1]±íʾ×Óϵͳ2£¬ÒÔ´ËÀàÍÆ*/ + DWORD dwFaultJointFaultLight;//¹ÊÕϹØÁª¹ÊÕϵÆÊä³ö + BYTE byRes[60]; +}NET_DVR_ALARMHOST_FAULT_CFG, *LPNET_DVR_ALARMHOST_FAULT_CFG; + +typedef struct tagNET_DVR_LIST_INFO +{ + DWORD dwSize; + BYTE byIndex; //×ÓϵͳºÅ£¬0xff±íʾËùÓÐ×Óϵͳ + BYTE byRes[63]; //±£Áô +}NET_DVR_LIST_INFO, *LPNET_DVR_LIST_INFO; + +#define CID_CODE_LEN 4 +#define DEV_SERIAL_LEN 9 +typedef enum tagNET_DVR_ALARMHOST_REPORT_TYPE +{ + NET_DVR_DEFENCE_ALARM = 1, //·ÀÇø±¨¾¯ + NET_DVR_VIDEO_ALARM, //ÊÓƵ±¨¾¯ + NET_DVR_VIRTUAL_DEFENCE_ALARM, //Èí·ÀÇø±¨¾¯ + NET_DVR_HOSTAGE_ALARM, //Ю³Ö±¨¾¯ + NET_DVR_KNOCK_DOWN_ALARM, //·À²ð±¨¾¯ + NET_DVR_OPERATE_ALARM, //²Ù×÷±¨¸æ + NET_DVR_OHTER_ABNORMAL_ALARM //Òì³£±¨¸æ +}NET_DVR_ALARMHOST_REPORT_TYPE; + + +typedef enum tagNET_DVR_ALARMHOST_CID_MAIN_TYPE +{ + CID_ENTER = 1000, /*´¥·¢±¨¸æµÄ»ùÊý*/ + CID_EXIT = 3000 /*»Ö¸´±¨¸æµÄ»ùÊý*/ +}NET_DVR_ALARMHOST_CID_MAIN_TYPE; + + +typedef enum tagNET_DVR_ALARMHOST_CID_MINOR_TYPE +{ + CID_MEDICAL_ALARM = 100, /*¾È»¤±¨¾¯*/ + CID_ALARM = 103, /*±¨¾¯*/ + CID_FIRE_ALARM = 110, /*»ð¾¯*/ + CID_ABDUCT_REPORT = 121, /*Ю³Ö±¨¸æ*/ + CID_SILENT_24 = 122, /*24СʱÎÞÉù*/ + CID_AUDIO_24 = 123, /*24СʱÓÐÉù*/ + CID_AUXILIARY_24 = 124, /*24Сʱ¸¨Öú*/ + CID_SHOCK_24 = 125, /*24СʱÕð¶¯*/ + CID_OVERTIME_ALARM = 126, /*³¬Ê±±¨¾¯*/ + CID_EMERGENCE_CALL_HELP = 129, /*½ô¼±±¨¾¯ÇóÖú*/ + CID_BURGLARY_ALARM = 130, /*µÁÇÔ±¨¾¯*/ + CID_PERIMETER_ALARM = 131, /*Öܽç*/ + CID_INNET_ALARM = 132, /*ÄÚ²¿·ÀÇø*/ + CID_ENTER_EXIT = 134, /*³öÈë*/ + CID_DEVICE_OPEN = 137, /*É豸·À²ð*/ + CID_ZONE_BUS_BREAK = 141, /*×ÜÏß¿ªÂ·*/ + CID_ZONE_BUS_SHORT = 142, /*×ÜÏ߶Ì·*/ + CID_MOTION_ALARM = 148, /*Òƶ¯±¨¾¯*/ + CID_GAS_LEAKAGE = 151, /*ȼÆøй©*/ + CID_ZONE_EARLY_WARNING = 207, /*·ÀÇøÔ¤¾¯*/ + CID_AC_LOSS = 301, /*½»Á÷µôµç*/ + CID_LOW_BATT_VOL = 302, /*Ðîµç³ØµçѹµÍ*/ + CID_DEV_RESET = 305, /*Ö÷»ú¸´Î»*/ + CID_MBUS_MODEL_FAULT = 333, /*À©Õ¹Ä£¿é¹ÊÕÏ*/ + CID_PRINTER_FAIL = 336, /*´òÓ¡»úµôÏß*/ + CID_LOW_EXPANDER_VOL = 338, /*À©Õ¹Ä£¿éµçѹµÍ*/ + CID_EXPANDER_OPEN = 341, /*À©Õ¹Ä£¿é±»²ð*/ + CID_EXPANDER_AC_POWER_DOWN = 342, /*À©Õ¹Ä£¿é½»Á÷µçµôµç*/ + CID_WIRELESS_REPEATER_TAMPERED = 343, /*ÎÞÏßÖмÌÆ÷·À²ð´¥·¢*/ + CID_WIRELESS_SIREN_TAMPERED = 344, /*ÎÞÏß¾¯ºÅ·À²ð´¥·¢*/ + CID_WIRELESS_SIREN_DISCONNECTED = 345, /*ÎÞÏß¾¯ºÅµôÏß*/ + CID_LINE_LOSS = 354, /*µç»°ÏßͨѶʧ°Ü*/ + CID_BUS_LOSS = 382, /*À©Õ¹×ÜÏßÄ£¿éµôÏß*/ + CID_DETECTOR_OPEN = 383, /*·ÀÇø¸ÐÓ¦Æ÷±»²ð*/ + CID_ZONE_OPEN_CIRCUIT = 386, /*·ÀÇø¿ªÂ·ÌáÐÑ*/ + CID_ZONE_SHORT_CIRCUIT = 387, /*·ÀÇø¶Ì·ÌáÐÑ*/ + CID_GUARD = 401, /*²¼·À³··À*/ + CID_GUARD_AUTO = 403, /*×Ô¶¯²¼³··À*/ + CID_CANCEL_ARM = 406, /*Ïû¾¯*/ + CID_GUARD_IMME = 408, /*¼´Ê±²¼³··À*/ + CID_KEY_ZONE_GUARD = 409, /*Ô¿³×·ÀÇø²¼³··À*/ + CID_GUARD_STAY = 441, /*ÁôÊز¼³··À*/ + CID_FORCED_ARM = 442, /*Ç¿ÖƲ¼·À*/ + CID_AUTOCTRL_TRIG = 443, /*¶¨Ê±¿ª/¹Ø´¥·¢Æ÷*/ + CID_ONETOUCH_AWAY_ARMING = 444, /*Ò»¼üÍâ³ö²¼·À*/ + CID_ONETOUCH_STAY_ARMING = 445, /*Ò»¼üÁôÊز¼·À*/ + CID_CARD_ARMING_OR_DISARMING = 446, /*Ë¢¿¨²¼³··À*/ + CID_LATE_TO_DISARM = 452, /*³Ùµ½³··À*/ + CID_AUTOGUARD_FAIL = 455, /*×Ô¶¯²¼·Àʧ°Ü*/ + CID_AOPEN_TRIG_FAIL = 460, /*¶¨Ê±¿ªÆô´¥·¢Æ÷ʧ°Ü*/ + CID_ACLOSE_TRIG_FAIL = 461, /*¶¨Ê±¹Ø±Õ´¥·¢Æ÷ʧ°Ü*/ + CID_AUTOUNGUARD_FAIL = 462, /*×Ô¶¯³··Àʧ°Ü*/ + CID_BYPASS = 570, /*ÅԷʼþ*/ + CID_GROUP_BYPASS = 574, /*×éÅÔ·*/ + CID_MANUAL_TEST_RPT = 601, /*ÊÖ¶¯²âÊÔ±¨¸æ*/ + CID_AUTO_TEST_RPT = 602, /*¶¨Ê±²âÊÔ±¨¸æ*/ + CID_PHONE_CONNET_TEST = 617, /*µç»°Á´Â·²âÊÔ*/ + CID_ENTER_PROG = 627, /*½øÈë±à³Ì*/ + CID_EXIT_PROG = 628, /*Í˳ö±à³Ì*/ + CID_FIELD_DETECTION = 759, /*ÇøÓòÈëÇÖ*/ + CID_LINE_DETECTION = 773, /*¿ç½ç±¨¾¯*/ + CID_PIR_ALARM = 774, /*PIR±¨¾¯*/ + CID_SOUND_INTENSITY_RISE = 775, /*ÉùÇ¿¶¸Éý±¨¾¯*/ + CID_SOUND_INTENSITY_DROP = 776, /*ÉùÇ¿¶¸½µ±¨¾¯*/ + CID_AUDIO_INPUT_EXCEPTION = 777, /*ÒôƵÊäÈëÒì³£±¨¾¯*/ + CID_SOFT_INSTAND = 810, /*Èí·ÀÇø½ô¼±±¨¾¯*/ + CID_SOFT_FIRE = 811, /*Èí·ÀÇø»ð¾¯*/ + CID_SOFT_MOBS = 812, /*Èí·ÀÇø·Ë¾¯mobster*/ + CID_KEYPAD_LOCKED = 862, /*¼üÅÌËø¶¨*/ + CID_ABSENCE_ALARM = 863, /*ÖµÊØÀë¸Ú*/ + CID_KEY_FAIL = 910, /*¼üÅ̵ôÏß*/ + CID_TRIGGER_FAIL = 911, /*¼üÅÌ×ÜÏßÉÏ´¥·¢Æ÷µôÏß*/ + CID_GPK_FAIL = 912, /*¼üÅÌ×ÜÏßÉÏGP/KµôÏß*/ + CID_MODULE_FAIL = 913, /*¼üÅÌ×ÜÏßÉÏMN/KµôÏß*/ + CID_WIRELESS_DETECTOR_FAIL = 914, /*ÎÞÏß̽²âÆ÷µôÏß*/ + CID_WIRELESS_DETECTOR_BATTERY_LOW = 915,/*ÎÞÏß̽²âÆ÷Ƿѹ/µçÁ¿»Ö¸´Õý³£*/ + CID_EXPANDER_DISCONNECT = 916, /*À©Õ¹Ä£¿éµôÏß*/ + CID_WIRELESS_REPEATER_DISCONNECT = 917, /*ÎÞÏßÖмÌÆ÷µôÏß*/ + CID_RADAR_TRANS_FAULT = 918, /*À×´ïÐźÅÒì³£*/ + CID_WIRELESS_SIREN_LOW_BATTERY = 919, /*ÎÞÏß¾¯ºÅµçÁ¿µÍ*/ + CID_WRIE_LESS_NET = 920, /*ÎÞÏßÍøÂç¹ÊÕÏ*/ + CID_SIM_FAULT = 921, /*SIM¿¨¹ÊÕÏ*/ + CID_WIFI_ABNORMAL = 922, /*WIFIͨÐÅÒì³£/»Ö¸´Õý³£*/ + CID_RF_ABNORMAL = 923, /*RFÐźÅÒì³£/»Ö¸´Õý³£*/ + CID_DATE_TRAFFIC_OVERFLOW = 924, /*Á÷Á¿³¬¶î*/ + CID_IPADDR_CONFLICT = 930, /*IP³åÍ»*/ + CID_ETHERNET_BROKEN = 931, /*ÍøÏ߶Ï*/ + CID_GROUP_OUT_RP = 932, /*×é¼äͨѶʧ°Ü*/ + CID_GROUP_IN_RP = 933, /*ͨµÀͨѶʧ°Ü*/ + CID_MOTION_DECTECT = 940, /*Òƶ¯Õì²â±¨¾¯¿ªÊ¼/½áÊø*/ + CID_MASK_ALARM = 941, /*ÕÚµ²±¨¾¯¿ªÊ¼/½áÊø*/ + CID_VI_LOST = 942, /*ÊÓƵ¶ªÊ§¿ªÊ¼/½áÊø*/ + CID_VS_MISMATCH = 943, /*ÊäÈë/Êä³öÊÓƵÖÆʽ²»Æ¥Åä*/ + CID_VI_EXCEPTION = 944, /*ÊÓƵÊäÈëÒì³£/»Ö¸´Õý³£*/ + CID_HD_FULL = 945, /*Ó²ÅÌÂú/»Ö¸´Õý³£*/ + CID_HD_ERROR = 946, /*Ó²ÅÌ´í/»Ö¸´Õý³£*/ + CID_PIC_SEND_FAILED = 947, /*ͼƬÉÏ´«Ê§°Ü*/ + CID_KEY_LOCKED = 948, /*¼üÅÌËø¶¨*/ + CID_NETWORK_CAMERA_DISCONNECT = 949, /*IPC¶Ï¿ªÁ¬½Ó*/ + CID_DUTY_CHECKING = 960, /*ÖµÊزé¸Ú*/ + CID_POST_RESPONSE = 961, /*ÖµÊØÓ¦´ð*/ + CID_ZONE_BUS_SEARCH = 970, /*×ÜÏßËÑË÷*/ + CID_ZONE_BUS_REGIST = 971, /*×ÜÏß×¢²á*/ + CID_GUARD_DELAY_OP = 972, /*×Ô¶¯²¼³··ÀÑÓʱ²Ù×÷*/ + CID_GUARD_SINGLE = 973, /*µ¥·ÀÇø²¼³··À*/ + CID_SINGLE_ZONE_CLEARED = 974, /*µ¥·ÀÇøÏû¾¯*/ + CID_ZONE_ASSOCIATED_DETECTOR = 975, /*·ÀÇøÌí¼Ó/ɾ³ý̽²âÆ÷*/ + CID_ZONE_CONSULTING = 976, /*ÒµÎñ×Éѯ*/ + CID_EXPANDER_DELETED = 977, /*ɾ³ýÀ©Õ¹Ä£¿é*/ + CID_WIRELESS_REPEATER_DELETED = 978, /*ɾ³ýÎÞÏßÖмÌÆ÷*/ + CID_WIRELESS_SIREN_DELETED = 979, /*ɾ³ýÎÞÏß¾¯ºÅ*/ +}NET_DVR_ALARMHOST_CID_MINOR_TYPE; + +typedef enum tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE +{ + CID_TYPE_MEDICAL_ALARM = 1100, /*¸öÈ˾Ȼ¤±¨¾¯*/ + CID_TYPE_MEDICAL_ALARM_RESET = 3100, /*¸öÈ˾Ȼ¤±¨¾¯»Ö¸´*/ + CID_TYPE_ALARM = 1103, /*¼´Ê±±¨¾¯*/ + CID_TYPE_ALARM_RESET = 3103, /*¼´Ê±±¨¾¯»Ö¸´*/ + CID_TYPE_FIRE_ALARM = 1110, /*»ð¾¯±¨¾¯*/ + CID_TYPE_FIRE_ALARM_RESET = 3110, /*»ð¾¯±¨¾¯»Ö¸´*/ + CID_TYPE_ABDUCT_REPORT = 1121, /*Ю³Ö±¨¸æ*/ + CID_TYPE_SILENT_24 = 1122, /*24СʱÎÞÉù±¨¾¯*/ + CID_TYPE_SILENT_24_RESET = 3122, /*24СʱÎÞÉù±¨¾¯»Ö¸´*/ + CID_TYPE_AUDIO_24 = 1123, /*24СʱÓÐÉù±¨¾¯*/ + CID_TYPE_AUDIO_24_RESET = 3123, /*24СʱÓÐÉù±¨¾¯»Ö¸´*/ + CID_TYPE_AUXILIARY_24 = 1124, /*24Сʱ¸¨Öú±¨¾¯*/ + CID_TYPE_AUXILIARY_24_RESET = 3124, /*24Сʱ¸¨Öú±¨¾¯»Ö¸´*/ + CID_TYPE_SHOCK_24 = 1125, /*24СʱÕ𶯱¨¾¯*/ + CID_TYPE_SHOCK_24_RESET = 3125, /*24СʱÕ𶯱¨¾¯»Ö¸´*/ + CID_TYPE_TIMEOUT = 1126, /*³¬Ê±±¨¾¯*/ + CID_TYPE_TIMEOUT_RESET = 3126, /*³¬Ê±±¨¾¯»Ö¸´*/ + CID_TYPE_EMERGENCE_CALL_HELP = 1129, /*½ô¼±ÇóÖú±¨¾¯*/ + CID_TYPE_EMERGENCE_CALL_HELP_RESET = 3129, /*½ô¼±ÇóÖú±¨¾¯»Ö¸´*/ + CID_TYPE_BURGLARY_ALARM = 1130, /*µÁÇÔ±¨¾¯*/ + CID_TYPE_BURGLARY_ALARM_RESET = 3130, /*µÁÇÔ±¨¾¯»Ö¸´*/ + CID_TYPE_PERIMETER_ALARM = 1131, /*Öܽ籨¾¯*/ + CID_TYPE_PERIMETER_ALARM_RESET = 3131, /*Öܽ籨¾¯»Ö¸´*/ + CID_TYPE_INNET_ALARM = 1132, /*ÄÚ²¿ÑÓʱ±¨¾¯*/ + CID_TYPE_INNET_ALARM_RESET = 3132, /*ÄÚ²¿ÑÓʱ±¨¾¯»Ö¸´*/ + CID_TYPE_ENTER_EXIT = 1134, /*ÑÓʱ±¨¾¯*/ + CID_TYPE_ENTER_EXIT_RESET = 3134, /*ÑÓʱ±¨¾¯»Ö¸´*/ + CID_TYPE_DEVICE_OPEN = 1137, /*É豸·À²ð±¨¾¯*/ + CID_TYPE_DEVICE_OPEN_RESET = 3137, /*É豸·À²ð±¨¾¯»Ö¸´*/ + CID_TYPE_ZONE_BUS_BREAK = 1141, /*×ÜÏß¿ªÂ·±¨¾¯*/ + CID_TYPE_ZONE_BUS_BREAK_RESET = 3141, /*×ÜÏß¿ªÂ·±¨¾¯»Ö¸´*/ + CID_TYPE_ZONE_BUS_SHORT = 1142, /*×ÜÏ߶Ì·±¨¾¯*/ + CID_TYPE_ZONE_BUS_SHORT_RESET = 3142, /*×ÜÏ߶Ì·±¨¾¯»Ö¸´*/ + CID_TYPE_MOTION_ALARM = 1148, /*É豸Òƶ¯±¨¾¯*/ + CID_TYPE_MOTION_ALARM_RESET = 3148, /*É豸Òƶ¯±¨¾¯»Ö¸´*/ + CID_TYPE_GAS_LEAKAGE_ALARM = 1151, /*ȼÆøй©±¨¾¯*/ + CID_TYPE_GAS_LEAKAGE_ALARM_RESET = 3151, /*ȼÆøй©±¨¾¯»Ö¸´*/ + CID_TYPE_ZONE_EARLY_WARNING = 1207, /*·ÀÇøÔ¤¾¯*/ + CID_TYPE_ZONE_EARLY_WARNING_RESET = 3207, /*·ÀÇøÔ¤¾¯»Ö¸´*/ + CID_TYPE_AC_LOSS = 1301, /*½»Á÷µçµôµç*/ + CID_TYPE_AC_LOSS_RESET = 3301, /*½»Á÷µç»Ö¸´*/ + CID_TYPE_LOW_BATT_VOL = 1302, /*Ðîµç³ØµçѹµÍ*/ + CID_TYPE_LOW_BATT_VOL_NORMAL = 3302, /*Ðîµç³ØµçѹÕý³£*/ + CID_TYPE_DEV_RESET = 1305, /*Ö÷»ú¸´Î»*/ + CID_TYPE_MBUS_MODEL_FAULT = 1333, /*À©Õ¹Ä£¿é¹ÊÕÏ*/ + CID_TYPE_MBUS_MODEL_RESET = 3333, /*À©Õ¹Ä£¿é»Ö¸´*/ + CID_TYPE_PRINTER_OFF = 1336, /*´òÓ¡»úµôÏß*/ + CID_TYPE_PRINTER_ON = 3336, /*´òÓ¡»ú»Ö¸´*/ + CID_TYPE_EXTEND_MODULE_VOL_LOW = 1338, /*À©Õ¹Ä£¿éµçѹµÍ*/ + CID_TYPE_EXTEND_MODULE_VOL_NORMAL = 3338, /*À©Õ¹Ä£¿éµçѹÕý³£*/ + CID_TYPE_EXTEND_MODULE_REMOVE = 1341, /*À©Õ¹Ä£¿é·À²ð´¥·¢*/ + CID_TYPE_EXTEND_MODULE_RECOVER = 3341, /*À©Õ¹Ä£¿é·À²ð»Ö¸´*/ + CID_TYPE_EXTEND_MODULE_AC_LOSS = 1342, /*À©Õ¹Ä£¿é½»Á÷µçµôµç*/ + CID_TYPE_EXTEND_MODULE_AC_LOSS_RESET = 3342, /*À©Õ¹Ä£¿é½»Á÷µç»Ö¸´*/ + CID_TYPE_WIRELESS_REPEATER_TAMPER = 1343, /*ÎÞÏßÖмÌÆ÷·À²ð´¥·¢*/ + CID_TYPE_WIRELESS_REPEATER_RESTORE = 3343, /*ÎÞÏßÖмÌÆ÷·À²ð»Ö¸´*/ + CID_TYPE_WIRELESS_SIREN_TAMPER = 1344, /*ÎÞÏß¾¯ºÅ·À²ð´¥·¢*/ + CID_TYPE_WIRELESS_SIREN_RESTORE = 3344, /*ÎÞÏß¾¯ºÅ·À²ð»Ö¸´*/ + CID_TYPE_WIRELESS_SIREN_DISCONNECT = 1345, /*ÎÞÏß¾¯ºÅµôÏß*/ + CID_TYPE_WIRELESS_SIREN_CONNECT = 3345, /*ÎÞÏß¾¯ºÅµôÏ߻ָ´*/ + CID_TYPE_LINE_LOSS = 1354, /*µç»°Ï߶Ͽª*/ + CID_TYPE_LINE_LOSS_RESET = 3354, /*µç»°ÏßÁ¬½Ó*/ + CID_TYPE_BUS_LOSS = 1382, /*À©Õ¹×ÜÏßÄ£¿éµôÏß*/ + CID_TYPE_BUS_LOSS_RESET = 3382, /*À©Õ¹×ÜÏßÄ£¿éµôÏ߻ָ´*/ + CID_TYPE_SENSOR_TAMPER = 1383, /*·ÀÇø¸ÐÓ¦Æ÷·À²ð*/ + CID_TYPE_SENSOR_TAMPER_RESET = 3383, /*·ÀÇø¸ÐÓ¦Æ÷·À²ð»Ö¸´*/ + CID_TYPE_ZONE_OPEN_CIRCUIT_ALARM = 1386, /*·ÀÇø¿ªÂ·ÌáÐÑ*/ + CID_TYPE_ZONE_SHORT_CIRCUIT_ALARM = 1387, /*·ÀÇø¶Ì·ÌáÐÑ*/ + CID_TYPE_DISARM = 1401, /*³··À*/ + CID_TYPE_ARM = 3401, /*Íâ³ö²¼·À*/ + CID_TYPE_DISARM_AUTO = 1403, /*×Ô¶¯³··À*/ + CID_TYPE_ARM_AUTO = 3403, /*×Ô¶¯²¼·À*/ + CID_TYPE_CANCEL_ARM = 1406, /*Ïû¾¯*/ + CID_TYPE_ARM_IMME = 3408, /*¼´Ê±²¼·À*/ + CID_TYPE_KEY_ZONE_ARM = 1409, /*Ô¿³×·ÀÇø³··À*/ + CID_TYPE_KEY_ZONE_DISARM = 3409, /*Ô¿³×·ÀÇø²¼·À*/ + CID_TYPE_GUARD_STAY = 3441, /*ÁôÊز¼·À*/ + CID_TYPE_FORCED_ARM = 3442, /*Ç¿ÖƲ¼·À*/ + CID_TYPE_AUTOCTRL_TRIG_ON = 1443, /*¶¨Ê±¿ª´¥·¢Æ÷*/ + CID_TYPE_AUTOCTRL_TRIG_OFF = 3443, /*¶¨Ê±¹Ø´¥·¢Æ÷*/ + CID_TYPE_LATE_TO_DISARM = 1452, /*³Ùµ½³··À*/ + CID_TYPE_AUTOGUARD_FAIL = 1455, /*×Ô¶¯²¼³··Àʧ°Ü*/ + CID_TYPE_AOPEN_TRIG_FAIL = 1460, /*¶¨Ê±¿ªÆô´¥·¢Æ÷ʧ°Ü*/ + CID_TYPE_ACLOSE_TRIG_FAIL = 1461, /*¶¨Ê±¹Ø±Õ´¥·¢Æ÷ʧ°Ü*/ + CID_TYPE_AUTOUNGUARD_FAIL = 1462, /*×Ô¶¯³··Àʧ°Ü*/ + CID_TYPE_BYPASS = 1570, /*ÅÔ·*/ + CID_TYPE_BYPASS_RESET = 3570, /*ÅÔ·»Ö¸´*/ + CID_TYPE_GROUP_BYPASS = 1574, /*×Óϵͳ×éÅÔ·*/ + CID_TYPE_GROUP_BYPASS_RESET = 3574, /*×Óϵͳ×éÅÔ·»Ö¸´*/ + CID_TYPE_MANUAL_TEST_RPT = 1601, /*ÊÖ¶¯²âÊÔ±¨¸æ*/ + CID_TYPE_AUTO_TEST_RPT = 1602, /*¶¨Ê±²âÊÔ±¨¸æ*/ + CID_TYPE_LINE_TEST = 1617, /*µç»°Á´Â·²âÊÔ*/ + CID_TYPE_ENTER_PROG = 1627, /*½øÈë±à³Ì*/ + CID_TYPE_EXIT_PROG = 1628, /*Í˳ö±à³Ì*/ + CID_TYPE_FIELD_DETECTION = 1759, /*ÇøÓòÈëÇÖ*/ + CID_TYPE_FIELD_DETECTION_RESET = 3759, /*ÇøÓòÈëÇÖ»Ö¸´*/ + CID_TYPE_LINE_DETECTION = 1773, /*¿ç½ç±¨¾¯*/ + CID_TYPE_LINE_DETECTION_RESET = 3773, /*¿ç½ç±¨¾¯»Ö¸´*/ + CID_TYPE_PIR_ALARM = 1774, /*PIR±¨¾¯*/ + CID_TYPE_PIR_ALARM_RESET = 3774, /*PIR±¨¾¯»Ö¸´*/ + CID_TYPE_SOUND_INTENSITY_RISE = 1775, /*ÉùÇ¿¶¸Éý±¨¾¯*/ + CID_TYPE_SOUND_INTENSITY_RISE_RESET = 3775, /*ÉùÇ¿¶¸Éý±¨¾¯»Ö¸´*/ + CID_TYPE_SOUND_INTENSITY_DROP = 1776, /*ÉùÇ¿¶¸½µ±¨¾¯*/ + CID_TYPE_SOUND_INTENSITY_DROP_RESET = 3776, /*ÉùÇ¿¶¸½µ±¨¾¯»Ö¸´*/ + CID_TYPE_AUDIO_INPUT_EXCEPTION = 1777, /*ÒôƵÊäÈëÒì³£±¨¾¯*/ + CID_TYPE_AUDIO_INPUT_EXCEPTION_RESET = 3777, /*ÒôƵÊäÈëÒì³£±¨¾¯»Ö¸´*/ + CID_TYPE_SOFT_INSTAND = 1810, /*Èí·ÀÇø½ô¼±±¨¾¯*/ + CID_TYPE_SOFT_FIRE = 1811, /*Èí·ÀÇø»ð¾¯*/ + CID_TYPE_SOFT_MOBS = 1812, /*Èí·ÀÇø·Ë¾¯*/ + CID_TYPE_KEYPAD_LOCK = 1862, /*¼üÅÌËø¶¨*/ + CID_TYPE_KEYPAD_UNLOCK = 3862, /*¼üÅ̽âËø*/ + CID_TYPE_ABSENCE_ALARM = 1863, /*ÖµÊØÀë¸Ú*/ + CID_TYPE_KEY_FAIL = 1910, /*¼üÅ̵ôÏß*/ + CID_TYPE_KEY_RESET = 3910, /*¼üÅָ̻´*/ + CID_TYPE_TRIGGER_FAIL = 1911, /*¼üÅÌ×ÜÏßÉÏ´¥·¢Æ÷µôÏß*/ + CID_TYPE_TRIGGER_RESET = 3911, /*¼üÅÌ×ÜÏßÉÏ´¥·¢Æ÷»Ö¸´*/ + CID_TYPE_GPK_FAIL = 1912, /*¼üÅÌ×ÜÏßÉÏGP/KµôÏß*/ + CID_TYPE_GPK_RESET = 3912, /*¼üÅÌ×ÜÏßÉÏGP/K»Ö¸´*/ + CID_TYPE_MODULE_FAIL = 1913, /*¼üÅÌ×ÜÏßÉÏMN/KµôÏß*/ + CID_TYPE_MODULE_RESET = 3913, /*¼üÅÌ×ÜÏßÉÏMN/K»Ö¸´*/ + CID_TYPE_WIRELESS_DETECTOR_FAIL = 1914, /*ÎÞÏß̽²âÆ÷µôÏß*/ + CID_TYPE_WIRELESS_DETECTOR_RESET = 3914, /*ÎÞÏß̽²âÆ÷µôÏ߻ָ´*/ + CID_TYPE_WIRELESS_DETECTOR_BATTERY_LOW = 1915, /*ÎÞÏß̽²âÆ÷µçѹµÍ*/ + CID_TYPE_WIRELESS_DETECTOR_BATTERY_NORMAL = 3915, /*ÎÞÏß̽²âÆ÷µçѹÕý³£*/ + CID_TYPE_EXTEND_MODULE_LOSS = 1916, /*À©Õ¹Ä£¿éµôÏß*/ + CID_TYPE_EXTEND_MODULE_LOSS_RESET = 3916, /*À©Õ¹Ä£¿éµôÏ߻ָ´*/ + CID_TYPE_WIRELESS_REPEATER_DISCONNECT = 1917, /*ÎÞÏßÖмÌÆ÷µôÏß*/ + CID_TYPE_WIRELESS_REPEATER_CONNECT = 3917, /*ÎÞÏßÖмÌÆ÷µôÏ߻ָ´*/ + CID_TYPE_RADAR_TRANS_FAULT = 1918, /*À×´ïÐźÅÒì³£*/ + CID_TYPE_RADAR_TRANS_RESET = 3918, /*À×´ïÐźÅÒì³£»Ö¸´*/ + CID_TYPE_WRIELESS_SIREN_LOW_BATTERY = 1919, /*ÎÞÏß¾¯ºÅµçÁ¿µÍ*/ + CID_TYPE_NORMAL_WRIELESS_SIREN_BATTERY = 3919, /*ÎÞÏß¾¯ºÅµçÁ¿Õý³£*/ + CID_TYPE_WRIELESS_NET_FAULT = 1920, /*ÎÞÏßÍøÂç¹ÊÕÏ*/ + CID_TYPE_WRIELESS_NET_RESET = 3920, /*ÎÞÏßÍøÂç¹ÊÕϻָ´*/ + CID_TYPE_SIM_FAULT = 1921, /*SIM¿¨Òì³£*/ + CID_TYPE_SIM_RESET = 3921, /*SIM¿¨Òì³£»Ö¸´*/ + CID_TYPE_WIFI_ABNORMAL = 1922, /*WIFIͨÐÅÒì³£*/ + CID_TYPE_WIFI_NORMAL = 3922, /*WIFIͨÐŻָ´Õý³£*/ + CID_TYPE_RF_ABNORMAL = 1923, /*RFÐźÅÒì³£*/ + CID_TYPE_RF_NORMAL = 3923, /*RFÐźÅÕý³£*/ + CID_TYPE_DATE_TRAFFIC_OVERFLOW = 1924, /*Á÷Á¿³¬¶î*/ + CID_TYPE_IPADDR_CONFLICT = 1930, /*IP³åÍ»*/ + CID_TYPE_IPADDR_NORMAL = 3930, /*IPÕý³£*/ + CID_TYPE_ETHERNET_BROKEN = 1931, /*ÓÐÏßÍøÂç¹ÊÕÏ*/ + CID_TYPE_ETHERNET_NORMAL = 3931, /*ÓÐÏßÍøÂç¹ÊÕϻָ´*/ + CID_TYPE_MOTION_DECTECT_START = 1940, /*Òƶ¯Õì²â±¨¾¯¿ªÊ¼*/ + CID_TYPE_MOTION_DECTECT_STOP = 3940, /*Òƶ¯Õì²â±¨¾¯½áÊø*/ + CID_TYPE_MASK_ALARM_START = 1941, /*ÕÚµ²±¨¾¯¿ªÊ¼*/ + CID_TYPE_MASK_ALARM_STOP = 3941, /*ÕÚµ²±¨¾¯½áÊø*/ + CID_TYPE_VI_LOST_START = 1942, /*ÊÓƵÐźŶªÊ§*/ + CID_TYPE_VI_LOST_STOP = 3942, /*ÊÓƵÐźŻָ´*/ + CID_TYPE_VS_MISMATCH = 1943, /*ÊäÈë/Êä³öÊÓƵÖÆʽ²»Æ¥Åä*/ + CID_TYPE_VS_MATCH = 3943, /*ÊäÈë/Êä³öÊÓƵÖÆʽ»Ö¸´Õý³£*/ + CID_TYPE_VI_EXCEPTION = 1944, /*ÊÓƵÊäÈëÒì³£*/ + CID_TYPE_VI_NORMAL = 3944, /*ÊÓƵÊäÈë»Ö¸´Õý³£*/ + CID_TYPE_HD_FULL = 1945, /*Ó²ÅÌÂú*/ + CID_TYPE_HD_FREE = 3945, /*Ó²ÅÌ¿ÕÏÐ*/ + CID_TYPE_HD_ERROR = 1946, /*Ó²ÅÌÒì³£*/ + CID_TYPE_HD_RESET = 3946, /*Ó²Åָ̻´Õý³£*/ + CID_TYPE_PIC_SEND_FAILED = 1947, /*ͼƬÉÏ´«Ê§°Ü*/ + CID_TYPE_SENDING_EMAIL_FAILED = 1948, /*Óʼþ·¢ËÍʧ°Ü*/ + CID_TYPE_NETWORK_CAMERA_DISCONNECT = 1949, /*IPC¶Ï¿ªÁ¬½Ó*/ + CID_TYPE_NETWORK_CAMERA_CONNECT = 3949, /*IPC»Ö¸´Á¬½Ó*/ + CID_TYPE_DUTY_CHECKING = 1960, /*ÖµÊزé¸Ú*/ + CID_TYPE_POST_RESPONSE = 1961, /*ÖµÊØÓ¦´ð*/ + CID_TYPE_ZONE_BUS_SEARCH = 1970, /*×ÜÏßËÑË÷*/ + CID_TYPE_ZONE_BUS_REGIST = 1971, /*×ÜÏß×¢²á*/ + CID_TYPE_GUARD_SINGLE_ARM = 1973, /*µ¥·ÀÇø³··À*/ + CID_TYPE_GUARD_SINGLE_DISARM = 3973, /*µ¥·ÀÇø²¼·À*/ + CID_TYPE_SINGLE_ZONE_ALARM_CLEARED = 1974, /*µ¥·ÀÇøÏû¾¯*/ + CID_TYPE_ZONE_ASSOCIATED_DETECTOR_DEL = 1975, /*ɾ³ý̽²âÆ÷*/ + CID_TYPE_ZONE_ASSOCIATED_DETECTOR_ADD = 3975, /*Ìí¼Ó̽²âÆ÷*/ + CID_TYPE_ZONE_CONSULT = 1976, /*ÒµÎñ×Éѯ*/ + CID_TYPE_ZONE_CONSULT_STOP = 3976, /*ÒµÎñ×Éѯ½áÊø*/ + CID_TYPE_EXTEND_MODULE_DEL = 1977, /*ɾ³ýÀ©Õ¹Ä£¿é*/ + CID_TYPE_EXTEND_MODULE_ADD = 3977, /*Ìí¼ÓÀ©Õ¹Ä£¿é*/ + CID_TYPE_WIRELESS_REPEATER_DEL = 1978, /*ɾ³ýÎÞÏßÖмÌÆ÷*/ + CID_TYPE_WIRELESS_REPEATER_ADD = 3978, /*Ìí¼ÓÎÞÏßÖмÌÆ÷*/ + CID_TYPE_WIRELESS_SIREN_DEL = 1979, /*ɾ³ýÎÞÏß¾¯ºÅ*/ + CID_TYPE_WIRELESS_SIREN_ADD = 3979 /*Ìí¼ÓÎÞÏß¾¯ºÅ*/ +}NET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE; + + +typedef struct tagNET_DVR_CID_ALARM +{ + DWORD dwSize; + BYTE sCIDCode[CID_CODE_LEN/*4*/]; //CIDʼþºÅ + BYTE sCIDDescribe[NAME_LEN/*32*/]; //CIDʼþÃû + NET_DVR_TIME_EX struTriggerTime; //´¥·¢±¨¾¯µÄʱ¼äµã + NET_DVR_TIME_EX struUploadTime; //ÉÏ´«±¨¾¯µÄʱ¼äµã + BYTE sCenterAccount[ACCOUNTNUM_LEN/*6*/]; //ÖÐÐÄÕʺŠ+ BYTE byReportType; //¼û¶¨ÒåNET_DVR_ALARMHOST_REPORT_TYPE + BYTE byUserType; //Óû§ÀàÐÍ£¬0-ÍøÂçÓû§ 1-¼üÅÌÓû§,2-ÊÖ»úÓû§,3-ϵͳÓû§ + BYTE sUserName[NAME_LEN/*32*/]; //ÍøÂçÓû§Óû§Ãû + WORD wKeyUserNo; //¼üÅÌÓû§ºÅ 0xFFFF±íʾÎÞЧ + BYTE byKeypadNo; //¼üÅ̺Š0xFF±íʾÎÞЧ + BYTE bySubSysNo; //×ÓϵͳºÅ 0xFF±íʾÎÞЧ + WORD wDefenceNo; //·ÀÇøºÅ 0xFFFF±íʾÎÞЧ + BYTE byVideoChanNo; //ÊÓƵͨµÀºÅ 0±íʾÎÞЧ£¬±íʾÉ豸×Ô´øµÄĬÈÏÊÓƵͨµÀºÅ + BYTE byDiskNo; //Ó²Å̺Š0xFF±íʾÎÞЧ + WORD wModuleAddr; //Ä£¿éµØÖ· 0xFFFF±íʾÎÞЧ + BYTE byCenterType; //0-ÎÞЧ, 1-ÖÐÐÄÕ˺Å(³¤¶È6),2-À©Õ¹µÄÖÐÐÄÕ˺Å(³¤¶È9) + BYTE byRelativeChannel; //Íâ½ÓµÄÊÓƵͨµÀºÅ£¬0±íʾÎÞЧ£¬×Ö½Ú±íʾͨµÀºÅ + BYTE sCenterAccountV40[ACCOUNTNUM_LEN_32/*32*/]; //ÖÐÐÄÕ˺ÅV40,ʹÓôË×Ö¶ÎʱsCenterAccountÎÞЧ + BYTE byDevSerialNo[DEV_SERIAL_LEN]; /*²úÆ·ÐòÁкÅ*/ + BYTE byRepeaterNo; //ÖмÌÆ÷ºÅ£¬Îª0ÎÞЧ + WORD wRemoteCtrllerUserNo; //Ò£¿ØÆ÷Óû§ºÅ£¬Îª0ÎÞЧ + DWORD dwIOTChannelNo; //IOTͨµÀºÅ + BYTE standardCIDcode; //±ê×¼CIDÂë + BYTE byRes2[11]; +}NET_DVR_CID_ALARM, *LPNET_DVR_CID_ALARM; + +typedef struct tagNET_DVR_ALARMHOST_MODULE_CFG +{ + DWORD dwSize; + BYTE byModuleType; //1-·ÀÇø£¬2-´¥·¢Æ÷ 3-·ÀÇø´¥·¢Æ÷ + BYTE byZoneType; //·ÀÇøÀàÐÍ£¬1-±¾µØ·ÀÇø£¬2-µ¥·ÀÇø£¬3-Ë«·ÀÇø£¬4-8·ÀÇø£¬5-8·ģÄâÁ¿·ÀÇø£¬6-µ¥·ÀÇø´¥·¢Æ÷£¬0xff±íʾ¸Ã²ÎÊýÎÞЧ + BYTE byTriggerType; //´¥·¢Æ÷ÀàÐÍ£¬1-±¾µØ´¥·¢Æ÷£¬ 2-4·´¥·¢Æ÷£¬3-8·´¥·¢Æ÷£¬4-µ¥·ÀÇø´¥·¢Æ÷£¬0xff±íʾ¸Ã²ÎÊýÎÞЧ + BYTE byRes1[1]; + char sModelInfo[MODULE_INFO_LEN]; //Ä£¿éÐÅÏ¢ + char sDeviceVersionInfo[VERSION_INFO_LEN]; /* °æ±¾ÐÅÏ¢*/ + BYTE byRes[188]; +} NET_DVR_ALARMHOST_MODULE_CFG, *LPNET_DVR_ALARMHOST_MODULE_CFG; + + +#define MAX_DECODE_CARD_SUPPORTDISPNUMS 8//ÿ¸ö½âÂ뿨×î¶àÖ§³ÖµÄÏÔʾͨµÀÊý +#define MAX_SUPPORT_RES 32 +typedef struct tagNET_DVR_DECCARD_ABILITY_V41 /*¸ßÇå½âÂ뿨ÄÜÁ¦¼¯*/ +{ + BYTE byCardType; //½âÂ뿨ÀàÐÍ(0:MD,1:MD+,2:HD) + BYTE byDecNums; //½âÂëͨµÀÊý + BYTE byDispNums; //ÏÔʾͨµÀÊý + BYTE byDecStartIdx; //Ê׸ö½âÂëͨµÀÔÚËùÓнâÂëͨµÀÖеÄË÷Òý + BYTE byDispStartIdx; //Ê׸öÏÔʾͨµÀÔÚËùÓÐÏÔʾͨµÀÖеÄË÷Òý + BYTE byRes1[3]; + DWORD dwVgaSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + DWORD dwHdmiSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + DWORD dwDviSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + DWORD dwYpbprSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + BYTE byDispFormat[MAX_DECODE_CARD_SUPPORTDISPNUMS]; //Ö§³ÖµÄÊä³öģʽ(°´HD_DISPLAY_FORMATÖеÄö¾Ù) + BYTE byWindowMode[MAX_DECODE_CARD_SUPPORTDISPNUMS][12]; //Ö§³ÖµÄ´°¿Úģʽ(±ÈÈç1,2,4,9,16)) + BYTE byRes2[36]; +} NET_DVR_DECCARD_ABILITY_V41,*LPNET_DVR_DECCARD_ABILITY_V41; + +#define MAX_DECODE_CARD_NUM 6 //×î¶à¸ßÇå½âÂ뿨Êý +typedef struct tagNET_DVR_DECODESVR_ABILITY_V41 +{ + DWORD dwSize; /* ½á¹¹Ìå´óС */ + BYTE byCardNums; /* ½âÂ뿨Êý */ + BYTE byStartChan; /* ÆðʼͨµÀºÅ */ + BYTE byRes1[2]; + NET_DVR_DECCARD_ABILITY_V41 struDecCardAbility[MAX_DECODE_CARD_NUM]; + BYTE byRes2[64]; +}NET_DVR_DECODESVR_ABILITY_V41, *LPNET_DVR_DECODESVR_ABILITY_V41; + +// Á÷¼Ïñ״̬ +typedef struct tagNET_DVR_STREAM_RECORD_STATUS +{ + DWORD dwSize; + BYTE byRecord; //(Ö»¶Á)¼ÏñÀàÐÍ, 0£º²»ÔÚ¼Ïñ£¬1£ºÔÚ¼Ïñ 2-¿ÕÏÐ + //3-ÎÞÁ¬½Ó 4-ÎÞÊäÈëÊÓƵ 5-δ¼ÓÔØ 6-´æµµÖÐ + //7-»Ø´«ÖÐ 8-Óû§Ãû»òÃÜÂë´í 9-δÑéÖ¤ + //10-´æµµÖкͼÏñÖÐ 11-¼Ïñ»Ø´«ÖкͼÏñÖÐ12-tokenÈÏ֤ʧ°Ü + //13-µ±Ç°Ìõ¼þ²»Âú×ã¼Ïñ¼Æ»®Ìõ¼þ 14-ͨµÀ½ÓÈëÒì³££¨¼ûͨµÀ״̬£© 15-Ó²ÅÌÂú + //16-Ó²ÅÌ´í 17-ÎÞÓ²ÅÌ + BYTE byOffLineRecord; //¶ÏÍø¼Ïñ¹¦ÄÜ 0-¹Ø±Õ 1-¿ªÆô + BYTE byRes1[2]; //±£Áô×Ö½Ú + DWORD dwRelatedHD; //¹ØÁª´ÅÅÌ + BYTE byRes2[8]; //±£Áô×Ö½Ú +}NET_DVR_STREAM_RECORD_STATUS, *LPNET_DVR_STREAM_RECORD_STATUS; + +#define CHAN_NO_LEN 24 + +typedef struct tagNET_DVR_DIRECT_CONNECT_CHAN_INFO +{ + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byProType; //ЭÒéÀàÐÍ£¬0-˽ÓÐЭÒé(default), (ÐèÒª´ÓÉ豸»ñÈ¡ÄÜÁ¦) + BYTE byZeroChan; //ÊÇ·ñÊÇÁãͨµÀ,0-²»ÊÇ£¬1-ÊÇ + BYTE byPriority; //ÓÅÏȼ¶ + BYTE sUserName[NAME_LEN]; //Óû§Ãû + BYTE sPassword[PASSWD_LEN]; //ÃÜÂë + BYTE byDomain[MAX_DOMAIN_NAME]; //É豸ÓòÃû + NET_DVR_IPADDR struIP; //IPµØÖ· + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byStreamType; //Ö÷ÂëÁ÷:0; ×ÓÂëÁ÷£º1 + BYTE byOnline; //Ö»¶Á£¬0-²»ÔÚÏß 1-ÔÚÏß + DWORD dwChannel; //ͨµÀºÅ + BYTE byTransProtocol; //ЭÒéÀàÐÍ£¬0-TCP£¬1-UDP£¬2-¶à²¥ + BYTE byLocalBackUp; //±¾µØ±¸·Ý: 0-²»ÆôÓÃCVR±¾µØ±¸·Ý£¬1-ÆôÓÃCVR±¾µØ±¸·Ý--¼´»Ø·ÅʱµÄÁ÷Ò»·ÝÔÚ¼Ïñ¾í£¬Ò»·ÝÔÚ´æµµ¾í£¨±¾µØ±¸·Ý£© + WORD wDirectLastTime; //µ¼²¥³ÖÐøʱ¼ä + BYTE byChanNo[CHAN_NO_LEN]; //ͨµÀ±àºÅ--ÓÃÓÚVAGÈ¡Á÷ +}NET_DVR_DIRECT_CONNECT_CHAN_INFO, *LPNET_DVR_DIRECT_CONNECT_CHAN_INFO; + +typedef struct tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 +{ + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byProType; //ЭÒéÀàÐÍ£¬0-˽ÓÐЭÒé(default), 1-ËÉÏÂЭÒ飬2-Ë÷Äá, 3-´ó»ª (ÐèÒª´ÓÉ豸»ñÈ¡ÄÜÁ¦) + BYTE byZeroChan; //ÊÇ·ñÊÇÁãͨµÀ,0-²»ÊÇ£¬1-ÊÇ + BYTE byRes1; //±£Áô×ֶΣ¬ÖÃ0 + BYTE sUserName[NAME_LEN]; //Óû§Ãû + BYTE sPassword[PASSWD_LEN]; //ÃÜÂë + BYTE byAddress[MAX_DOMAIN_NAME]; //Ç°¶ËIP»òÕßÓòÃû,ÐèÒªÉ豸 ½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓÐ'.'ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byStreamType; //Ö÷ÂëÁ÷:0; ×ÓÂëÁ÷£º1 + BYTE byOnline; //Ö»¶Á£¬0-²»ÔÚÏß 1-ÔÚÏß + DWORD dwChannel; //ͨµÀºÅ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ£¬0-TCP£¬1-UDP 2-¶à²¥ + BYTE byLocalBackUp; //±¾µØ±¸·Ý£¬0-²»ÆôÓÃCVR±¾µØ±¸·Ý£¬1-ÆôÓÃCVR±¾µØ±¸·Ý--¼´Â¼ÏñʱµÄÁ÷Ò»·ÝÔÚ¼Ïñ¾í£¬Ò»·ÝÔÚ´æµµ¾í£¨±¾µØ±¸·Ý£© + BYTE byRes2[2]; //±£Áô×ֶΣ¬ÖÃ0 + BYTE byVAGChanNo[MAX_VAG_CHANNO_LEN]; //ЭÒéÀàÐÍΪVAGʱ£¬¶ÔÓ¦µÄVAGͨµÀ±àºÅ + BYTE byRes[340]; +}NET_DVR_DIRECT_CONNECT_CHAN_INFO_V40, *LPNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40; + + +typedef struct tagNET_DVR_PU_STREAM_URL_CFG +{ + BYTE byEnable; + BYTE byRes[3]; + BYTE byStreamMediaIP[64];//Á÷ýÌåIP + WORD wStreamMediaPort; //Á÷ýÌå¶Ë¿Ú + BYTE byTransmitType; //Á÷ýÌå´«ÊäЭÒé 0- TCP 1- UDP + BYTE byRes1[33]; + BYTE byDevIP[64]; //É豸IP + WORD wDevPort; //É豸¶Ë¿Ú + BYTE byChannel; //ͨµÀºÅ + BYTE byTransMode; //´«Êäģʽ 0-Ö÷ÂëÁ÷ 1- ×ÓÂëÁ÷ + BYTE byProType; + //³§¼ÒÀàÐÍ 0-˽ÓÐ 1-´ó»ª 2-ºº°î 3-ÀÉ³Û 4-À¶É«ÐÇ¼Ê NET_DVR_GetIPCProtoList½Ó¿Ú»ñÈ¡ + //VQDÁ÷ýÌåÏÂÖ»Ö§³Ö 0£¬1·½Ê½£»Ö±Á¬Ö§³Ö 0£¬1£¬2£¬3£¬4 + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP, 1-UDP, 2-¶à²¥·½Ê½, 3-RTP + BYTE byRes3[2]; + BYTE sUserName[NAME_LEN]; //É豸µÇ½Óû§Ãû + BYTE sPassWord[PASSWD_LEN]; // É豸µÇ½ÃÜÂë + BYTE byRes2[28]; //Ô¤Áô +}NET_DVR_PU_STREAM_URL_CFG, *LPNET_DVR_PU_STREAM_URL_CFG; + +typedef struct tagNET_DVR_PU_STREAM_URL_CFG_V40 +{ + BYTE byEnable; + BYTE byRes[3]; + BYTE byStreamMediaIP[64];//Á÷ýÌåIP + WORD wStreamMediaPort; //Á÷ýÌå¶Ë¿Ú + BYTE byTransmitType; //Á÷ýÌå´«ÊäЭÒé 0- TCP 1- UDP + BYTE byRes1; + BYTE byDevIP[64]; //É豸IP + WORD wDevPort; //É豸¶Ë¿Ú + BYTE byChannel; //ͨµÀºÅ + BYTE byTransMode; //´«Êäģʽ 0-Ö÷ÂëÁ÷ 1- ×ÓÂëÁ÷ + BYTE byProType; + //³§¼ÒÀàÐÍ 0-º£¿µ 1-´ó»ª 2-ºº°î 3-ÀÉ³Û 4-À¶É«ÐÇ¼Ê NET_DVR_GetIPCProtoList½Ó¿Ú»ñÈ¡ + //VQDÁ÷ýÌåÏÂÖ»Ö§³Ö 0£¬1·½Ê½£»Ö±Á¬Ö§³Ö 0£¬1£¬2£¬3£¬4 + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP, 1-UDP 2-¶à²¥·½Ê½ + BYTE byRes3[2]; + BYTE sUserName[NAME_LEN]; //É豸µÇ½Óû§Ãû + BYTE sPassWord[PASSWD_LEN]; // É豸µÇ½ÃÜÂë + BYTE byRes2[308]; //Ô¤Áô +}NET_DVR_PU_STREAM_URL_CFG_V40, *LPNET_DVR_PU_STREAM_URL_CFG_V40; + +typedef struct tagNET_DVR_STREAM_URL_V40 +{ + BYTE byEnable; + BYTE byStreamType; //Ö÷×ÓÂëÁ÷ + BYTE byLocalBackUp; //ÊÇ·ñ±¾µØ±¸·Ý + BYTE byRes; + BYTE strURL[URL_LEN_V40]; //Á÷ýÌåURL£¬¿ÉÒÔ¼¶Áª + DWORD dwProtocalType; //IPCЭÒéÀàÐÍÖµ£¬¿ÉÒÔͨ¹ý»ñÈ¡IPCЭÒéÁбíµÃµ½ + BYTE sUserName[NAME_LEN]; //É豸µÇ½Óû§Ãû + BYTE sPassWord[PASSWD_LEN]; // É豸µÇ½ÃÜÂë + BYTE byAddress[MAX_DOMAIN_NAME]; //Á÷À´Ô´IP»òÕßÓòÃû,ÐèÒª½âÎö ½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓÐ'.'ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· + WORD wIPPort; //Á÷À´Ô´¶ÔÓ¦µÄ¶Ë¿ÚºÅ + WORD wChanNo; //Á÷À´Ô´É豸IPͨµÀºÅ + BYTE byVAGChanNo[MAX_VAG_CHANNO_LEN]; //Á÷À´Ô´Í¨µÀ±àºÅ,ÓÃÓÚVAG¹¦ÄÜ + BYTE byRes1[88]; +}NET_DVR_STREAM_URL_V40, *LPNET_DVR_STREAM_URL_V40; + +typedef union tagNET_DVR_STREAM_TYPE_UNION +{ + NET_DVR_DIRECT_CONNECT_CHAN_INFO struChanInfo; //IPͨµÀÐÅÏ¢ ÀàÐÍֵΪ0 + NET_DVR_PU_STREAM_URL struStreamUrl; //ͨ¹ýÁ÷ýÌåµ½urlÈ¡Á÷£¬ÀàÐÍֵΪ4 + NET_DVR_PU_STREAM_URL_CFG struStreamUrlCfg; //ͨ¹ýÁ÷ýÌåµ½Ö¸¶¨¼à¿ØÉ豸ÉÏÈ¡Á÷£¬ÀàÐÍֵΪ6 +}NET_DVR_STREAM_TYPE_UNION, *LPNET_DVR_STREAM_TYPE_UNION; + +typedef union tagNET_DVR_STREAM_TYPE_V40_UNION +{ + NET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 struChanInfo; //IPͨµÀÐÅÏ¢£¬ÀàÐÍֵΪ0 + NET_DVR_PU_STREAM_URL struPuStreamUrl; //ͨ¹ýÁ÷ýÌåµ½urlÈ¡Á÷£¬ÀàÐÍֵΪ4 + NET_DVR_PU_STREAM_URL_CFG_V40 struStreamUrlCfg; //ͨ¹ýÁ÷ýÌåµ½×éºÏurlÈ¡Á÷£¬ÀàÐÍֵΪ6 + NET_DVR_RTSP_PROTOCAL_CFG struRtspCfg; //Óɱê×¼RTSP½ÓÈëÈ¡Á÷ ÀàÐÍÖµ7 + NET_DVR_STREAM_URL_V40 struStreamUrlV40; //ͨ¹ýÁ÷ýÌ壨֧³Ö¼¶Áª·½Ê½£©ÏòÁ÷À´Ô´È¡Á÷£¬ÀàÐÍֵΪ8 +}NET_DVR_STREAM_TYPE_V40_UNION, *LPNET_DVR_STREAM_TYPE_V40_UNION; + + +typedef struct tagNET_DVR_STREAM_MODE_TYPE +{ + BYTE byGetStreamType; //È¡Á÷·½Ê½£¬0-Ö±½Ó´ÓÉ豸ȡÁ÷£¬1-´ÓÁ÷ýÌåÈ¡Á÷¡¢2-ͨ¹ýIPServer»ñµÃipµØÖ·ºóÈ¡Á÷, 3.ͨ¹ýIPServerÕÒµ½É豸£¬ÔÙͨ¹ýÁ÷ýÌåÈ¥É豸µÄÁ÷ 4-ͨ¹ýÁ÷ýÌåÓÉURLȥȡÁ÷ + BYTE byRes[3]; // ±£Áô×Ö½Ú + NET_DVR_STREAM_TYPE_UNION uGetStream; // ²»Í¬È¡Á÷·½Ê½½á¹¹Ìå +}NET_DVR_STREAM_MODE_TYPE, *LPNET_DVR_STREAM_MODE_TYPE; + +// Á÷À´Ô´ÐÅÏ¢ +typedef struct tagNET_DVR_STREAM_SRC_INFO +{ + DWORD dwSize; + NET_DVR_STREAM_MODE_TYPE struStreamSrcInfo; +}NET_DVR_STREAM_SRC_INFO,*LPNET_DVR_STREAM_SRC_INFO; + +typedef struct tagNET_DVR_STREAM_SRC_INFO_V40 +{ + DWORD dwSize; + BYTE byGetStreamType; //È¡Á÷·½Ê½£¬0-Ö±½Ó´ÓÉ豸ȡÁ÷£¬1-´ÓÁ÷ýÌåÈ¡Á÷¡¢2-ͨ¹ýIPServer»ñµÃipµØÖ·ºóÈ¡Á÷, 3.ͨ¹ýIPServerÕÒµ½É豸£¬ÔÙͨ¹ýÁ÷ýÌåÈ¥É豸µÄÁ÷ 4-ͨ¹ýÁ÷ýÌåÓÉURLȥȡÁ÷ 6-ͨ¹ýÁ÷ýÌåµ½Ö¸¶¨¼à¿ØÉ豸ÉÏÈ¡Á÷ + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_STREAM_TYPE_V40_UNION uGetStream; // ²»Í¬È¡Á÷·½Ê½½á¹¹Ìå + BYTE byMonitorName[128];/*¼à¿ØµãÃû³Æ£¨Ö§³ÖÖÐÎÄ£¬´óСд×Öĸ£¬Êý×Ö£¬Ï»®ÏߵȷÇÌØÊâ×Ö·û£¬±àÂë¸ñʽ¸ù¾ÝµÇ¼·µ»ØµÄbyCharEncodeType×Ö¶ÎÅжϣ¬ + Ä¿Ç°CVRÖÐÓ¢ÎÄ°æ±¾²»Ò»Ñù£¬Óв»Í¬Ñ¡Ôñ£¬ÖÐÎÄCVRÒªÇó¼à¿ØµãÃû³ÆΪgbk£¬Ó¢ÎÄ°æ±¾CVRÒªÇó¼à¿ØµãÃû³ÆΪiso8859-1£¬Èç¡°AºÅÂ¥_¼à¿Øµã1¡±£©*/ + BYTE byRes[384]; // ±£Áô×Ö½Ú +}NET_DVR_STREAM_SRC_INFO_V40,*LPNET_DVR_STREAM_SRC_INFO_V40; + + +// Á÷¼ÏñÐÅÏ¢ +typedef struct +{ + DWORD dwSize; + NET_DVR_RECORD_V30 struRecordInfo; +}NET_DVR_STREAM_RECORD_INFO, *LPNET_DVR_STREAM_RECORD_INFO; + +// °´Á÷ID¶Ôʱ¼ä¶Î¼ÓËø +typedef struct tagNET_DVR_STREAM_TIME_LOCK +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_TIME strBeginTime; // ¿ªÊ¼Ê±¼ä + NET_DVR_TIME strEndTime; // ½áÊøʱ¼ä + NET_DVR_STREAM_INFO struStreamInfo; // Á÷ÐÅÏ¢ + DWORD dwRecordType; // ¼ÏñÀàÐÍ: 0xffffffff£­È«²¿£¬£­¶¨Ê±Â¼Ïñ£¬-Òƶ¯Õì²â£¬£­±¨¾¯´¥·¢£¬-±¨¾¯´¥·¢»òÒƶ¯Õì²â£¬-±¨¾¯´¥·¢ºÍÒƶ¯Õì²â£¬-ÃüÁî´¥·¢£¬-ÊÖ¶¯Â¼Ïñ£¬-ÖÇÄܼÏñ(ͬÎļþ²éÕÒ) + DWORD dwLockDuration; // Ëø¶¨³ÖÐøʱ¼ä,µ¥Î»Ã룬0xffffffff±íʾÓÀ¾ÃËø¶¨ + NET_DVR_TIME_EX strUnlockTimePoint; // ¼ÓËøʱÓÐЧ£¬µ±dwLockDuration²»ÎªÓÀ¾ÃËø¶¨Ê±£¬Ëø¶¨³ÖÐøµÄʱ¼äµ½´Ëʱ¼äµã¾Í×Ô¶¯½âËø + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ,0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø, byISO8601Ϊ1ʱÓÐЧ + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø, byISO8601Ϊ1ʱÓÐЧ + BYTE byRes[1]; +}NET_DVR_STREAM_TIME_LOCK, *LPNET_DVR_STREAM_TIME_LOCK; + +//»Ø·Å³éÖ¡½Ó¿Ú ¿ªÊ¼³éÖ¡ÃüÁî NET_DVR_START_DRAWFRAME£¬¶ÔÓ¦µÄ¿ØÖƽṹÌå +typedef struct tagNET_DVR_VOD_DRAWFRAME_PARA +{ + NET_DVR_TIME_EX struTime; + /* + dwDrawTypeÖ»ÓÐÉ豸֧³ÖÑ¡ÔñÐÔ³é֡ʱ£¬²ÎÊý²ÅÓÐЧ¹û£¬³éÖ¡·½Ê½ÓУº + 0£ºÖ»´«IÖ¡ + 1£º¶ª1/2 PÖ¡£¨Ö»ÓÐsvcÂëÁ÷Ö§³Ö£© + 2£º¶ª3/4PÖ¡ £¨Ö»ÓÐsvcÂëÁ÷Ö§³Ö£© + 3£º´«1/2 IÖ¡(Ö»´«IÖ¡£¬ÇÒÿ2¸öIÖ¡´«Ò»¸ö¡£) + 4£º´«1/4 IÕñ(Ö»´«IÖ¡£¬ÇÒÿ4¸öIÖ¡´«Ò»¸ö¡£) + 5£º´«1/8 IÖ¡(Ö»´«IÖ¡£¬ÇÒÿ8¸öIÖ¡´«Ò»¸ö¡£) + */ + DWORD dwDrawType; + BYTE byRes[128]; +}NET_DVR_VOD_DRAWFRAME_PARA, *LPNET_DVR_VOD_DRAWFRAME_PARA; + +// °´ID+ʱ¼ä»Ø·Å½á¹¹Ìå +typedef struct tagNET_DVR_VOD_PARA +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struIDInfo; + NET_DVR_TIME struBeginTime; + NET_DVR_TIME struEndTime; + HWND hWnd; + BYTE byDrawFrame; //0:²»³éÖ¡£¬1£º³éÖ¡ + BYTE byVolumeType; //0-ÆÕͨ¼Ïñ¾í 1-´æµµ¾í + BYTE byVolumeNum; //¾íºÅ£¬Ä¿Ç°Ö¸´æµµ¾íºÅ + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ 0-Ö÷ÂëÁ÷£¬ 1-×ÓÂëÁ÷£¬2-ÂëÁ÷Èý£¬3-ÑÓʱÉãÓ°ÂëÁ÷ + DWORD dwFileIndex; //´æµµ¾íÉϵļÏñÎļþË÷Òý£¬ËÑË÷´æµµ¾í¼Ïñʱ·µ»ØµÄÖµ + BYTE byAudioFile; //ÒôƵÎļþ0-·ñ£¬1-ÊÇ + BYTE byCourseFile; //¿Î³ÌÎļþ0-·ñ£¬1-ÊÇ + BYTE byDownload; //ÊÇ·ñÏÂÔØ 0-·ñ£¬1-ÊÇ + BYTE byOptimalStreamType; //ÊÇ·ñ°´×îÓÅÂëÁ÷ÀàÐͻطŠ0-·ñ£¬1-ÊÇ£¨¶ÔÓÚË«ÂëÁ÷É豸£¬Ä³Ò»¶Îʱ¼äÄڵļÏñÎļþÓëÖ¸¶¨ÂëÁ÷ÀàÐͲ»Í¬£¬Ôò·µ»Øʵ¼ÊÂëÁ÷ÀàÐ͵ļÏñ£© + BYTE byUseAsyn; //0-ʹÓÃͬ²½IO£¬1-ʹÓÃÒì²½IO + BYTE byRes2[19]; +}NET_DVR_VOD_PARA, *LPNET_DVR_VOD_PARA; + +typedef struct tagNET_DVR_VOD_PARA_V50 +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struIDInfo; + NET_DVR_TIME_V50 struBeginTime; + NET_DVR_TIME_V50 struEndTime; + HWND hWnd; + BYTE byDrawFrame; //0:²»³éÖ¡£¬1£º³éÖ¡ + BYTE byVolumeType; //0-ÆÕͨ¼Ïñ¾í 1-´æµµ¾í + BYTE byVolumeNum; //¾íºÅ£¬Ä¿Ç°Ö¸´æµµ¾íºÅ + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ 0-Ö÷ÂëÁ÷£¬ 1-×ÓÂëÁ÷£¬2-ÂëÁ÷Èý£¬3-ÑÓʱÉãÓ°ÂëÁ÷ + DWORD dwFileIndex; //´æµµ¾íÉϵļÏñÎļþË÷Òý£¬ËÑË÷´æµµ¾í¼Ïñʱ·µ»ØµÄÖµ + BYTE byAudioFile; //»Ø·ÅÒôƵÎļþ£¬0-²»»Ø·ÅÒôƵÎļþ£¬1-½ö»Ø·ÅÒôƵÎļþ + BYTE byCourseFile; //»Ø·Å¿Î³ÌÎļþ0-·ñ£¬1-ÊÇ + BYTE byPlayMode; //²¥·Å·½Ê½0-Õý·Å£¬1-µ¹·Å + BYTE byLinkMode; //Á¬½Ó·½Ê½0-TCP£¬1-AdaptiveUDP + BYTE byDownload; //ÊÇ·ñÏÂÔØ 0-·ñ£¬1-ÊÇ + BYTE byOptimalStreamType; //ÊÇ·ñ°´×îÓÅÂëÁ÷ÀàÐͻطŠ0-·ñ£¬1-ÊÇ£¨¶ÔÓÚË«ÂëÁ÷É豸£¬Ä³Ò»¶Îʱ¼äÄڵļÏñÎļþÓëÖ¸¶¨ÂëÁ÷ÀàÐͲ»Í¬£¬Ôò·µ»Øʵ¼ÊÂëÁ÷ÀàÐ͵ļÏñ£© + BYTE byDisplayBufNum; //ÉèÖò¥·Å»º³åÖ¡Êý£¬µ±Îª0ʱ£¬Ä¬ÈÏΪ3Ö¡£¬hWnd²»Îª¿ÕʱÓÐЧ + BYTE byNPQMode; //NPQÊÇÖ±Á¬Ä£Ê½£¬»¹ÊǹýÁ÷ýÌå 0-Ö±Á¬ 1-¹ýÁ÷ýÌå + BYTE sUserName[NAME_LEN/*32*/]; //¶þ´ÎÈÏÖ¤Óû§Ãû + BYTE sPassword[PASSWD_LEN/*16*/]; //¶þ´ÎÈÏÖ¤ÃÜÂë + BYTE byRemoteFile; //»Ø·ÅÔ¶³ÌÎļþ0-·ñ£¬1-ÊÇ + BYTE byUseAsyn; //0-ʹÓÃͬ²½IO£¬1-ʹÓÃÒì²½IO + BYTE byRes2[201]; + BYTE byHls; //HLS»Ø·Å£¬0-·ñ£¬1-ÊÇ + char* pSavedFileName; //ÏÂÔØʱ£¬±£´æµÄ¼ÏñÎļþ·¾¶£¬byDownloadΪ1ʱÓÐЧ£¬³¤¶È³¬¹ý256½«»á±»½Ø¶Ï +}NET_DVR_VOD_PARA_V50, *LPNET_DVR_VOD_PARA_V50; + +// ÊÖ¶¯Â¼Ïñ +typedef struct tagNET_DVR_MANUAL_RECORD_PARA +{ + NET_DVR_STREAM_INFO struStreamInfo; + DWORD lRecordType; + BYTE byRes[32]; +}NET_DVR_MANUAL_RECORD_PARA, *LPNET_DVR_MANUAL_RECORD_PARA; + + +// CABACÂëÁ÷ѹËõÐÔÄÜÑ¡Ï¿ªÆô¿ÉÌá¸ß20%£¬Ö»ÓÐÄ£ÄâͨµÀ¿ÉÒÔÓà +typedef struct tagNET_DVR_STREAM_CABAC +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byCabacEnable; //ÂëÁ÷ѹËõÐÔÄÜÑ¡ÏîÖµ0 ²»ÌáÉý 1 ÌáÉý + BYTE byRes1[31]; //±£Áô +}NET_DVR_STREAM_CABAC, *LPNET_DVR_STREAM_CABAC; + +#define MAX_IOSPEED_GROUP_NUM 4 //IO²âËÙ×é¸öÊý +#define MAX_IOOUT_NUM 4 //×î´óIOÊä³ö¿Ú¸öÊý +#define MAX_IOIN_NUM 8 //×î´óIOÊäÈë¿Ú¸öÊý +#define MAX_RELAY_NUM 12 //¼ÌµçÆ÷¿ØÖÆÉ豸×î´óÊý 2013-11-04 +#define MAX_VEHICLE_TYPE_NUM 8 //³µÁ¾ÐÅÏ¢¹Ü¿Ø×î´óÊý2013-11-04 +#define MAX_IOIN_NUMEX 10 //×î´óIOÊäÈë¿Ú¸öÊý(À©Õ¹) +#define MAX_ITC_LANE_NUM 6 //×î´ó³µµÀ¸öÊý +#define MAX_LANEAREA_NUM 2 //µ¥³µµÀ×î´óÇøÓò¸öÊý +#define ITC_MAX_POLYGON_POINT_NUM 20 //¼ì²âÇøÓò×î¶àÖ§³Ö20¸öµãµÄ¶à±ßÐÎ +#define MAX_ITC_SERIALCHECK_NUM 8 //´®¿ÚУÑéÀàÐ͸öÊý +#define MAX_LIGHT_NUM 6 //×î´ó½»Í¨µÆÊý +#define MAX_VIDEO_INTERVAL_NUM 2 //×î´ó×¥Åļä¸ôÊý +#define MAX_VIDEO_DETECT_LIGHT_NUM 12 //ÊÓƵ¼ì²âµÄ×î´ó¼ì²âÇøÓò +#define MAX_CALIB_RECOG_NUM 2 //±ê¶¨ÇøÓò¸öÊý +#define MAX_RS485_NUM 12 //485¿Ú×î´óÖ§³ÖÊý +#define MAX_MOBILE_POLYGON_NUM 3 //Òƶ¯²¼¿ØÖ§³Ö×î´óÅÆʶÇøÓò¸öÊý +#define MAX_MOBILE_DETECTLINE_NUM 3 //Òƶ¯²¼¿ØÖ§³Ö×î´óÎ¥¹æ¼ì²âÏ߸öÊý +#define MAX_IOOUT_K_NUM 8 //KϵÁÐ×î´óIOÊä³ö¿Ú¸öÊý + +//IOÊä³ö¿Ú²ÎÊý£¨3.1°æ±¾£¨º¬£©Ö®ºó£© +typedef struct tagNET_ITC_IOOUT_PARAM +{ + DWORD dwSize; + BYTE byDefaultStatus;//IOĬÈÏ״̬£º0-µÍµçƽ£¬1-¸ßµçƽ + BYTE byIOOutStatus;//IOÆðЧʱ״̬£º0-µÍµçƽ£¬1-¸ßµçƽ£¬2-Âö³å + BYTE byMode; //ÉÁ¹âµÆ¹¤×÷·½Ê½,°´Î»±íʾ£¬0-±íʾ¹¤×÷£¬1-±íʾ²»¹¤×÷£¬bit0-ÊÓƵ£¬bit1-¿¨¿Ú£¬bit2-Î¥Õ + BYTE byIOWorkMode;//IOÊä³ö¿Ú¹¤×÷ģʽ£º0-ÉÁ¹âµÆ£¬1-Æ«Õñ¾µ, 2-³£ÁÁµÆ + DWORD dwTimeDelay;//IOÓÐЧ³ÖÐøʱ¼ä£¬µ¥Î»us + WORD wAheadTime;//Êä³öIOÌáǰʱ¼ä£¬µ¥Î»us + BYTE byFreqMulti; //±¶Æµ£¬ÊýÖµ·¶Î§[1,15] + BYTE byDutyRate; //Õ¼¿Õ±È£¬[0,40%] + BYTE byDetectBrightness;/*×Ô¶¯¼ì²âÁÁ¶ÈʹÄÜÉÁ¹âµÆ0-²»¼ì²â£»1-¼ì²â*/ + BYTE byBrightnessThreld;/*ʹÄÜÉÁ¹âµÆÁÁ¶ÈãÐÖµ£¬·¶Î§[0,100],¸ßÓÚãÐÖµÉÁ*/ + BYTE byFlashLightEnable; //ÉèÖÃÉÁ¹âµÆʱ¼äʹÄÜ:0-¹Ø;1-¿ª + BYTE byStartHour; //¿ªÊ¼Ê±¼ä-Сʱ,È¡Öµ·¶Î§0-23 + BYTE byStartMinute; //¿ªÊ¼Ê±¼ä-·Ö,È¡Öµ·¶Î§0-59 + BYTE byEndHour; //½áÊøʱ¼ä-Сʱ,È¡Öµ·¶Î§0-23 + BYTE byEndMinute; //½áÊøʱ¼ä-·Ö,È¡Öµ·¶Î§0-59 + BYTE byAutoPlateBrightness;// ³µÅÆÁÁ¶È×Ô¶¯Ê¹ÄÜÉÁ¹âµÆ 0-²»ÆôÓà 1-ÆôÓà + BYTE byIncrBrightEnable;//ÊÇ·ñÆôÓÃÔöÁÁģʽ£¨³£ÁÁµÆģʽÏ£© + BYTE byIncrBrightPercent;//ÔöÁ¿°Ù·Ö±È£¬0~100%£¨ÆôÓÃÔöÁÁģʽÏÂÉúЧ£© + WORD wIncrBrightTime;//ÔöÁÁʱ¼ä,µ¥Î»ÎªºÁÃ루ÆôÓÃÔöÁÁģʽÏÂÉúЧ£© + BYTE byBrightness;//ÁÁ¶ÈÖµ£»0~100£¨³£ÁÁµÆģʽÏ£© + BYTE byEnvironBright;//»·¾³ÕÕ¶ÈÖµ£»0~100£¨ÉÁ¹âµÆģʽÏÂÉúЧ£¬¸Ã²ÎÊýÖ»¶Á£©»·¾³ÕÕ¶ÈÖµ´ú±í×ÅÉÁ¹âµÆËù´¦»·¾³µÄÁÁ¶ÈÖµ£¬¿Í»§¿ÉÒÔÄøÃÖµ×÷Ϊ²Î¿¼£¬È¥ÅäÖÃÏàÓ¦µÄÁÁ¶ÈãÐÖµ¡£ + WORD wDelayCaptureTime;//ÑÓʱץÅÄʱ¼ä1~1000ms£¨ÆôÓÃÔöÁÁģʽÏÂÉúЧ£© +}NET_ITC_IOOUT_PARAM, *LPNET_ITC_IOOUT_PARAM; + +typedef enum _ITC_TRIGGERMODE_TYPE_ +{ + ITC_POST_IOSPEED_TYPE = 0x1, //IO²âËÙ£¨¿¨¿Ú£© + ITC_POST_SINGLEIO_TYPE = 0x2, //µ¥IO´¥·¢£¨¿¨¿Ú£© + ITC_POST_RS485_TYPE = 0x4, //RS485³µ¼ìÆ÷´¥·¢£¨¿¨¿Ú£© + ITC_POST_RS485_RADAR_TYPE = 0x8, //RS485À×´ï´¥·¢£¨¿¨¿Ú£© + ITC_POST_VIRTUALCOIL_TYPE = 0x10, //ÐéÄâÏßȦ´¥·¢£¨¿¨¿Ú£© + ITC_POST_HVT_TYPE_V50 = 0x20, //»ìÐп¨¿ÚÊÓƵ´¥·¢V50 + ITC_POST_MPR_TYPE = 0x40, //¶à֡ʶ±ð(¿¨¿Ú)(Ver3.7) + ITC_POST_PRS_TYPE = 0x80, //ÊÓƵ¼ì²â´¥·¢ÅäÖà + ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE = 0x100, //IOºìÂ̵ƣ¨µç¾¯£© + ITC_EPOLICE_RS485_TYPE = 0x200, //RS485³µ¼ìÆ÷µç¾¯´¥·¢£¨µç¾¯£© + ITC_POST_HVT_TYPE = 0x400, //»ìÐп¨¿ÚÊÓƵ´¥·¢£¨¿¨¿Ú£© + ITC_PE_RS485_TYPE = 0x10000, //RS485³µ¼ìÆ÷¿¨Ê½µç¾¯´¥·¢£¨¿¨Ê½µç¾¯£© + ITC_VIDEO_EPOLICE_TYPE = 0x20000, //ÊÓƵµç¾¯´¥·¢£¨¿¨Ê½µç¾¯£© + ITC_VIA_VIRTUALCOIL_TYPE = 0x40000, //VIA´¥·¢ÅäÖà + ITC_POST_IMT_TYPE = 0x80000, //Öǻۼà¿ØÅäÖà + IPC_POST_HVT_TYPE = 0x100000, //IPCÖ§³ÖµÄHVT + ITC_POST_MOBILE_TYPE = 0x200000, //Òƶ¯½»Í¨´¥·¢Ä£Ê½ + ITC_REDLIGHT_PEDESTRIAN_TYPE = 0x400000, //ÐÐÈË´³ºìµÆ´¥·¢ + ITC_NOCOMITY_PEDESTRIAN_TYPE = 0x800000 //²»ÀñÈÃÐÐÈË´¥·¢ +}ITC_TRIGGERMODE_TYPE; + +//ÄÜÁ¦¼¯½Ó¿ÚµÄÊä³ö²ÎÊý£¬¶ÔÓ¦pOutBuf²ÎÊý +typedef struct tagNET_ITC_TRIGGERMODE_ABILITY +{ + DWORD dwSize; + DWORD dwTriggerType; //´¥·¢ÀàÐÍ£¬°´Î»±íʾ£¬¶¨ÒåITC_TRIGGERMODE_ABILITY¶¨Ò壬¸ù¾ÝÊäÈëµÄÄÜÁ¦ÀàÐͲ»Í¬£¬´Ë´¦·µ»ØµÄ´¥·¢ÀàÐÍÒ²²»Í¬ + BYTE byRes[16]; +}NET_ITC_TRIGGERMODE_ABILITY, *LPNET_ITC_TRIGGERMODE_ABILITY; + +typedef struct tagNET_ITC_INTERVAL_PARAM +{ + BYTE byIntervalType; //¼ä¸ôÀàÐÍ£¨Ä¬ÈÏ°´Ê±¼ä£©£¬0-ʱ¼äÆðЧ,1-¾àÀëÆðЧ + BYTE byRes1[3]; + WORD wInterval[MAX_INTERVAL_NUM];//Á¬Åļä¸ôʱ¼ä£¨µ¥Î»ms£©»òÁ¬Åļä¸ô¾àÀ루µ¥Î»·ÖÃ×£©£¬µ±byIntervalTypeΪ0ʱ£¬±íʾ¼ä¸ôʱ¼ä£¬µ±byIntervalTypeΪ1ʱ£¬±íʾ¾àÀë + BYTE byRes[8]; +}NET_ITC_INTERVAL_PARAM, *LPNET_ITC_INTERVAL_PARAM; + +//ÅÆʶ²ÎÊý +typedef struct tagNET_ITC_PLATE_RECOG_PARAM +{ + BYTE byDefaultCHN[MAX_CHJC_NUM]; /*É豸ÔËÐÐÊ¡·ÝµÄºº×Ö¼òд*/ + BYTE byEnable; //ÊÇ·ñÆôÓøÃÇøÓòÅÆʶ£¬0-·ñ£¬1-ÊÇ + DWORD dwRecogMode; + /*ʶ±ðµÄÀàÐÍ£¬ + bit0-±³Ïòʶ±ð£º0-ÕýÏò³µÅÆʶ±ð£¬1-±³Ïòʶ±ð(βÅÆʶ±ð) £» + bit1-´ó³µÅÆʶ±ð»òС³µÅÆʶ±ð£º0-С³µÅÆʶ±ð£¬1-´ó³µÅÆʶ±ð £» + bit2-³µÉíÑÕɫʶ±ð£º0-²»²ÉÓóµÉíÑÕɫʶ±ð£¬ÔÚ±³Ïòʶ±ð»òС³µÅÆʶ±ðʱ½ûÖ¹ÆôÓã¬1-³µÉíÑÕɫʶ±ð£» + bit3-Å©ÓóµÊ¶±ð£º0-²»²ÉÓÃÅ©ÓóµÊ¶±ð£¬1-Å©ÓóµÊ¶±ð£» + bit4-Ä£ºýʶ±ð£º0-²»²ÉÓÃÄ£ºýʶ±ð£¬1-Ä£ºýʶ±ð£» + bit5-Ö¡¶¨Î»»ò³¡¶¨Î»£º0-Ö¡¶¨Î»£¬1-³¡¶¨Î»£» + bit6-֡ʶ±ð»ò³¡Ê¶±ð£º0-֡ʶ±ð£¬1-³¡Ê¶±ð£» + bit7-ÍíÉÏ»ò°×Ì죺0-°×Ì죬1-ÍíÉÏ + bit8-ĦÍгµÊ¶±ð£º0-²»²ÉÓÃĦÍгµÊ¶±ð£¬1-ĦÍгµÊ¶±ð; + bit9-³¡¾°Ä£Ê½£º0-µç¾¯/¶àÖ¡£¬1-¿¨¿Ú£» + bit10-΢С³µÅÆ£º0-²»ÆôÓã¬1-ÆôÓÃ΢С³µÅÆʶ±ð(ÏñËØ60¡«80) + bit11-°²È«´ø¼ì²â£º0-²»ÆôÓã¬1-ÆôÓð²È«´ø¼ì²â + bit12-Ãñº½³µÅÆʶ±ð: 0-²»ÆôÓã¬1-¿ªÆôÃñº½³µÅÆʶ±ð + bit13-³µÅƹý¶ÉÇãб´¦Àí: 0-²»ÆôÓã¬1-¿ªÆô¹ý¶ÉÇãб´¦Àí£¨PRS£© + bit14-³¬´ó³µÅÆʶ±ð: 0-²»ÆôÓã¬1-¿ªÆô³¬´ó³µÅÆʶ±ð£¨PRS£© + bit15-ÕÚÑô°å¼ì²â£º0-²»ÆôÓã¬1-ÆôÓÃÕÚÑô°å¼ì²â + bit16-»Æ±ê³µ¼ì²â£º0-²»ÆôÓã¬1-ÆôÓûƱ공¼ì²â + bit17-ΣÏÕÆ·³µÁ¾¼ì²â£º0-²»ÆôÓã¬1-ÆôÓÃΣÏÕÆ·³µÁ¾¼ì²â + bit18-ʹ¹Ý³µÅÆʶ±ð£º0-²»ÆôÓã¬1-ÆôÓÃʹ¹Ý³µÅÆʶ±ð + bit19-³µÁ¾×ÓÆ·ÅÆʶ±ð£º0-²»ÆôÓã¬1-ÆôÓóµÁ¾×ÓÆ·ÅÆʶ±ð + bit20-´òµç»°Ê¶±ð£º0-²»ÆôÓã¬1-ÆôÓà + bit21-³µ´°Ðü¹ÒÎïʶ±ð£º0-²»ÆôÓã¬1-ÆôÓà + */ + BYTE byVehicleLogoRecog;//³µ±êʶ±ð 0-²»ÆôÓã¬1-ÆôÓà + /* + 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-Í0xff-È«²¿ + */ + BYTE byProvince;//Ê¡·ÝË÷ÒýÖµ + BYTE byRegion;// ÇøÓòË÷ÒýÖµ 0-±£Áô£¬1-Å·ÖÞ£¬2-¶íÓïÇøÓò, 3-Å·ÖÞ&¶íÂÞ˹(EU&CIS),4-Öж«(Middle East) + BYTE byCountry;//¹ú¼ÒË÷Òý£¬²ÎÕÕö¾ÙCOUNTRY_INDEX(²»Ö§³Ö¡°COUNTRY_ALL = 0xff,//ALL È«²¿¡±) + WORD wPlatePixelWidthMin;//³µÅÆÏñËØʶ±ð¿í¶È×îСֵ£¨µ¥Î»ÊÇÏñËØ£©µ±Ç°ÍƼö·¶Î§[130,500] + WORD wPlatePixelWidthMax;//³µÅÆÏñËØʶ±ð¿í¶È×î´óÖµ£¨µ¥Î»ÊÇÏñËØ£©µ±Ç°ÍƼö·¶Î§[130,500] + BYTE byRes[24]; +}NET_ITC_PLATE_RECOG_PARAM, *LPNET_ITC_PLATE_RECOG_PARAM; + +//¶à±ßÐͽṹÌå +typedef struct tagNET_ITC_POLYGON +{ + DWORD dwPointNum; //ÓÐЧµã ´óÓÚµÈÓÚ3£¬ÈôÊÇ3µãÔÚÒ»ÌõÏßÉÏÈÏΪÊÇÎÞЧÇøÓò£¬Ïß½»²æÈÏΪÊÇÎÞЧÇøÓò + NET_VCA_POINT struPos[ITC_MAX_POLYGON_POINT_NUM]; //¶à±ßÐα߽çµã,×î¶à20¸ö +}NET_ITC_POLYGON, *LPNET_ITC_POLYGON; + +typedef struct tagNET_ITC_PLATE_RECOG_REGION_PARAM +{ + BYTE byMode; //ÇøÓòÀàÐÍ£¬0-¾ØÐΣ¬1-¶à±ßÐÎ + BYTE byRes1[3]; + union + { + NET_VCA_RECT struRect; //¾ØÐÎÇøÓò + NET_ITC_POLYGON struPolygon; //¶à±ßÐÎÇøÓò + }uRegion; + BYTE byRes[16]; //±£Áô +}NET_ITC_PLATE_RECOG_REGION_PARAM, *LPNET_ITC_PLATE_RECOG_REGION_PARAM; + +//µ¥×éIO²âËÙ²ÎÊý +typedef struct tagNET_ITC_SINGLE_IOSPEED_PARAM +{ + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byTrigCoil1; //µÚÒ»ÏßȦ¹ØÁªIO£¬0-IO1,1-IO2,2-IO3,3-IO4,4-IO5,5-IO6 + BYTE byCoil1IOStatus;//µÚÒ»ÏßȦIOÊäÈë¿Ú״̬£¬0-ϽµÑØ£¨Ä¬ÈÏ£©£¬1-ÉÏÉýÑØ£¬2-ÉÏÉýÑغÍϽµÑØ£¬3-¸ßµçƽ£¬4-µÍµçƽ + BYTE byTrigCoil2; //µÚ¶þÏßȦ¹ØÁªIO£¬0-IO1,1-IO2,2-IO3,3-IO4,4-IO5,5-IO6 + BYTE byCoil2IOStatus;//µÚ¶þÏßȦIOÊäÈë¿Ú״̬£¬0-ϽµÑØ£¨Ä¬ÈÏ£©£¬1-ÉÏÉýÑØ£¬2-ÉÏÉýÑغÍϽµÑØ£¬3-¸ßµçƽ£¬4-µÍµçƽ + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + BYTE byTimeOut;//³¬Ê±Ê±¼ä£¨Ä¬ÈÏ10£©£¬µ¥Î»s + BYTE byRelatedIOOutEx;//µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª Ö§³Ö¹ØÁªµ½8¸ö(¼æÈÝbyRelatedIOOut×Ö¶Î) + DWORD dwDistance;//ÏßȦ¾àÀ루ĬÈÏ1000£©,µ¥Î»£ºÀåÃ× + BYTE byCapSpeed;//ÆðÅÄËٶȣ¨Ä¬ÈÏ30£©£¬µ¥Î»km/h + BYTE bySpeedLimit;//ÏÞËÙÖµ£¨Ä¬ÈÏ60£©£¬µ¥Î»km/h + BYTE bySpeedCapEn; //ÊÇ·ñÆôÓó¬ËÙ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE bySnapTimes1; //ÏßȦ1×¥ÅÄ´ÎÊý£¨Ä¬Èϲ»×¥ÅÄ£©£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE bySnapTimes2; //ÏßȦ2×¥ÅÄ´ÎÊý£¨Ä¬ÈÏ1£©£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE byBigCarSpeedLimit; //´ó³µ³µËÙÏÞÖÆÖµ + BYTE byBigCarSignSpeed;//±êÖ¾ÏÞËÙ(´ó³µ)£¬µ¥Î»km/h(3.7Ver) + BYTE byIntervalType; //¼ä¸ôÀàÐÍ£¨Ä¬ÈÏ°´Ê±¼ä£©£¬0-ʱ¼äÆðЧ,1-¾àÀëÆðЧ + WORD wInterval1[MAX_INTERVAL_NUM];//ÏßȦ1Á¬Åļä¸ôʱ¼ä£¨µ¥Î»ms£©»òÁ¬Åļä¸ô¾àÀ루µ¥Î»·ÖÃ×£©£¬µ±byIntervalTypeΪ0ʱ£¬±íʾ¼ä¸ôʱ¼ä£¬µ±byIntervalTypeΪ1ʱ£¬±íʾ¾àÀë + WORD wInterval2[MAX_INTERVAL_NUM];//ÏßȦ2Á¬Åļä¸ôʱ¼ä£¨µ¥Î»ms£©»òÁ¬Åļä¸ô¾àÀ루µ¥Î»·ÖÃ×£©£¬µ±byIntervalTypeΪ0ʱ£¬±íʾ¼ä¸ôʱ¼ä£¬µ±byIntervalTypeΪ1ʱ£¬±íʾ¾àÀë + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú(¿ÉÒÔͬʱ¹ØÁª¶à¸ö)£¬Êý×é0±íʾIOÊä³ö¿Ú1£¬Êý×é1±íʾIOÊä³ö¿Ú2£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE byLaneType; //³µµÀÀàÐÍ£¬0-δÅäÖá¢1-¸ßËÙ¹«Â·¡¢2-³ÇÊпìËÙ·¡¢0xff-ÆäËûµÀ· + BYTE byCarSignSpeed;//±êÖ¾ÏÞËÙ£¬µ¥Î»km/h(3.7Ver) + BYTE byUseageType; //³µµÀÓÃ;ÀàÐÍ£¬Ïê¼ûITC_LANE_USEAGE_TYPE + NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; //ÅÆʶ²ÎÊý(¿ÉÓÃÅÆʶÇøÓò1¸ö£¬±£ÁôÒ»¸ö) + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byLowSpeedLimit; //С³µÏÞµ×ËÙÖµ£¬µ¥Î»km/h + BYTE byBigCarLowSpeedLimit; //´ó³µÏÞµ×ËÙÖµ£¬µ¥Î»km/h + BYTE byLowSpeedCapEn; //ÊÇ·ñÆôÓõÍËÙ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE byEmergencyCapEn; //ÊÇ·ñÆôÓÃÓ¦¼±³µµÀ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE byRes[27]; +}NET_ITC_SINGLE_IOSPEED_PARAM, *LPNET_ITC_SINGLE_IOSPEED_PARAM; + +//¿¨¿ÚIO²âËÙ²ÎÊý +typedef struct tagNET_ITC_POST_IOSPEED_PARAM +{ + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_SINGLE_IOSPEED_PARAM struSingleIOSpeed[MAX_IOSPEED_GROUP_NUM]; //µ¥¸öIO²âËÙ×é²ÎÊý + BYTE byRes[32]; +}NET_ITC_POST_IOSPEED_PARAM, *LPNET_ITC_POST_IOSPEED_PARAM; + +//µ¥IO²ÎÊý +typedef struct tagNET_ITC_SINGLEIO_PARAM +{ + BYTE byDefaultStatus;//IO´¥·¢Ä¬ÈÏ״̬£º0-µÍµçƽ£¬1-¸ßµçƽ + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + BYTE bySnapTimes; //×¥ÅÄ´ÎÊý£¨Ä¬ÈÏ1£©£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5 + BYTE byRelatedIOOutEx;//µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª Ö§³Ö¹ØÁªµ½8¸ö(¼æÈÝbyRelatedIOOut×Ö¶Î) + NET_ITC_INTERVAL_PARAM struInterval; //×¥Åļä¸ô²ÎÊý + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú£¬¿ÉÒÔͬʱ¹ØÁª¶à¸ö + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE byEnable;//µ¥IOʹÄܱêÖ¾0-²»ÆôÓã¬1-ÆôÓà (Remark:ÔÚÄÜÁ¦·µ»ØÖ§³Ö bySupport&0x20£¬±íʾÊÇ·ñÖ§³Öµ¥IO´¥·¢½çÃæIOʹÄÜÅäÖà ʱÉúЧ) + BYTE byUseageType; //³µµÀÓÃ;ÀàÐÍ£¬Ïê¼ûITC_LANE_USEAGE_TYPE + BYTE byEmergencyCapEn; //ÊÇ·ñÆôÓÃÓ¦¼±³µµÀ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; //ÅÆʶ²ÎÊý + BYTE byRes[24]; +}NET_ITC_SINGLEIO_PARAM, *LPNET_ITC_SINGLEIO_PARAM; + +//µ¥IO´¥·¢²ÎÊý +typedef struct tagNET_ITC_POST_SINGLEIO_PARAM +{ + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_SINGLEIO_PARAM struSingleIO[MAX_IOIN_NUMEX]; //µ¥¸öIO´¥·¢²ÎÊý +}NET_ITC_POST_SINGLEIO_PARAM, *LPNET_ITC_POST_SINGLEIO_PARAM; + +typedef struct tagNET_ITC_LANE_PARAM +{ + BYTE byEnable; //ÊÇ·ñÆôÓøóµµÀ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + WORD wDistance; //ÏßȦ¾àÀ룬¼ÆËãËÙ¶È + WORD wTrigDelayTime; //´¥·¢ÑÓ³Ùʱ¼ä£¨Ä¬ÈÏ200£©£¬µ¥Î»£ººÁÃë + BYTE byTrigDelayDistance; //´¥·¢ÑÓ³Ù¾àÀ루ĬÈÏ0£©£¬µ¥Î»£º·ÖÃ× + BYTE bySpeedCapEn; //ÊÇ·ñÆôÓó¬ËÙ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE bySignSpeed;//±êÖ¾ÏÞËÙ£¬µ¥Î»km/h + BYTE bySpeedLimit;//ÏÞËÙÖµ£¬µ¥Î»km/h + BYTE bySnapTimes; //×¥ÅÄ´ÎÊý£¨Ä¬ÈÏ1£©£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5 + BYTE byOverlayDriveWay; //OSDµþ¼ÓµÄ³µµÀºÅ + NET_ITC_INTERVAL_PARAM struInterval; //×¥Åļä¸ô²ÎÊý + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú£¬¿ÉÒÔͬʱ¹ØÁª¶à¸ö + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE byCartSignSpeed;//±êÖ¾ÏÞËÙ(´ó³µ)£¬µ¥Î»km/h + BYTE byCartSpeedLimit;//ÏÞËÙÖµ£¨´ó³µ£©£¬µ¥Î»km/h + BYTE byRelatedIOOutEx;//µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª Ö§³Ö¹ØÁªµ½8¸ö(¼æÈÝbyRelatedIOOut×Ö¶Î) + NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; //³µµÀÅÆʶ²ÎÊý + BYTE byLaneType; //³µµÀÀàÐÍ£¬0-δÅäÖá¢1-¸ßËÙ¹«Â·¡¢2-³ÇÊпìËÙ·¡¢0xff-ÆäËûµÀ· + BYTE byUseageType; //³µµÀÓÃ;ÀàÐÍ£¬Ïê¼ûITC_LANE_USEAGE_TYPE + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byLowSpeedLimit; //С³µÏÞµ×ËÙÖµ£¬µ¥Î»km/h + BYTE byBigCarLowSpeedLimit; //´ó³µÏÞµ×ËÙÖµ£¬µ¥Î»km/h + BYTE byLowSpeedCapEn; //ÊÇ·ñÆôÓõÍËÙ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE byEmergencyCapEn; //ÊÇ·ñÆôÓÃÓ¦¼±³µµÀ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE byRes[9]; +}NET_ITC_LANE_PARAM, *LPNET_ITC_LANE_PARAM; + +//¿¨¿ÚRS485³µ¼ìÆ÷´¥·¢²ÎÊý +typedef struct tagNET_ITC_POST_RS485_PARAM +{ + BYTE byRelatedLaneNum;//¹ØÁªµÄ³µµÀ¸öÊý + BYTE byTriggerSpareMode; //´¥·¢±¸ÓÃģʽ£¬0-ĬÈÏ£¬1-¿¨¿ÚÐéÄâÏßȦģʽ,2-¿¨¿Ú»ìºÏ³µµÀģʽ + BYTE byFaultToleranceTime;//ÈÝ´íʱ¼ä(µ¥Î»:·ÖÖÓ)£¬ÓÃÓÚ¼ì²â³µ¼ìÆ÷ÊÇ·ñÕý³£µÄ×î´óʱ¼ä + BYTE byRes1; + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_LANE_PARAM struLane[MAX_ITC_LANE_NUM]; //¹ØÁªµÄ³µµÀ²ÎÊý + BYTE byRes[32]; +}NET_ITC_POST_RS485_PARAM, *LPNET_ITC_POST_RS485_PARAM; + +typedef struct tagNET_ITC_RADAR_PARAM +{ + BYTE byRadarType; //À×´ïÀàÐÍ£¬0-ÎÞÀ×´ï,1-°²µÀÀ×À״2-°ÂÀûάÑÇ£¬3-´¨ËÙ΢²¨4,À×´ï½ÓIOÀ©Õ¹ºÐ(´Ë²ÎÊýÔÚ¿¨¿ÚÐéÄâÏßȦ¡¢»ìÐп¨¿Ú½çÃæÖÐʹÓ㬿¨¿ÚRS485À״ﲻʹÓÃ),0xff-ÆäËüÀàÐÍ + BYTE byLevelAngle; //ÓëˮƽÏßËù³É½Ç¶È,ĬÈÏΪ25¡ã(0µ½90¶È) + WORD wRadarSensitivity; //À×´ïÁéÃô¶È + WORD wRadarSpeedValidTime;//À×´ïËÙ¶ÈÓÐЧʱ¼ä(0~2000] ,0±íʾ²»Ö§³Ö + BYTE byRes1[2]; + float fLineCorrectParam;//ÏßÐÔ½ÃÕý²ÎÊý[0.0~2.0] + int iConstCorrectParam;//³£Á¿½ÃÕý²ÎÊý[-100~100] + BYTE byRes2[8]; +}NET_ITC_RADAR_PARAM, *LPNET_ITC_RADAR_PARAM; + +typedef struct tagNET_ITC_RS485_ACCESS_INFO_COND //Ìõ¼þ½á¹¹ +{ + DWORD dwSize; + DWORD dwChannel; + DWORD dwTriggerModeType; + BYTE byAssociateRS485No;//¹ØÁªµÄRS485ºÅ 1¡«5 (Ψһֵ) + // BYTE byModeType; //0¡«Ô¤Áô£¬1¡«À״2¡«³µ¼ìÆ÷£¬3¡«ÐźŵƼì²âÆ÷ + BYTE byRes[15]; +}NET_ITC_RS485_ACCESS_INFO_COND,*LPNET_ITC_RS485_ACCESS_INFO_COND; + +typedef struct tagNET_ITC_RADAR_INFO_PARAM +{ + NET_ITC_RADAR_PARAM struRadarParam;//24 + BYTE byAssociateLaneNo;//¹ØÁªµÄ³µµÀºÅ1¡«99 (Õâ¸öÖµ¿ÉÒÔÔÚ²»Í¬RS485¿ÚÖظ´) + BYTE byRes[103]; +}NET_ITC_RADAR_INFO_PARAM, *LPNET_ITC_RADAR_INFO_PARAM; + +typedef union tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION +{ + BYTE uLen[128]; + NET_ITC_RADAR_INFO_PARAM struRadarInfoParam;//À×´ï²ÎÊýÅäÖà +}NET_ITC_ACCESS_DEVINFO_PARAM_UNION, *LPNET_ITC_ACCESS_DEVINFO_PARAM_UNION; + +typedef struct tagNET_ITC_RS485_ACCESS_CFG //144 ÅäÖýṹ +{ + DWORD dwSize; + BYTE byModeType;//0¡«Ô¤Áô£¬bit1¡«À״bit2¡«³µ¼ìÆ÷£¬bit3¡«ÐźŵƼì²âÆ÷ + BYTE byRes[3]; + NET_ITC_ACCESS_DEVINFO_PARAM_UNION uITCAccessDevinfoParam; //64 + BYTE byRes1[12]; +}NET_ITC_RS485_ACCESS_CFG,*LPNET_ITC_RS485_ACCESS_CFG; + +//2013-07-09 À×´ï¹ØÁª³µµÀÀ©Õ¹ +typedef struct tagNET_ITC_RS485_ACCESS_INFO +{ + DWORD dwSize; + NET_ITC_RADAR_PARAM struRadar[MAX_ITC_LANE_NUM];//¶à³µµÀÀ×´ïÐÅÏ¢ + //¸ù¾ÝÄÜÁ¦¼¯¿ª·¢ÏÔʾ£¬²»Ö§³ÖµÄĬÈÏΪ0£¬²»ÏÔʾ £¨Óм¸¸ö³µµÀÖ§³Ö¼¸¸ö£© + BYTE byRes[20]; +}NET_ITC_RS485_ACCESS_INFO, *LPNET_ITC_RS485_ACCESS_INFO; + + +//¿¨¿ÚRS485À×´ï´¥·¢²ÎÊý +typedef struct tagNET_ITC_POST_RS485_RADAR_PARAM +{ + BYTE byRelatedLaneNum;//¹ØÁªµÄ³µµÀ¸öÊý + BYTE byRes1[3]; + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_LANE_PARAM struLane[MAX_ITC_LANE_NUM]; //¹ØÁªµÄ³µµÀ²ÎÊý + NET_ITC_RADAR_PARAM struRadar; //À×´ï²ÎÊý + BYTE byRes[32]; +}NET_ITC_POST_RS485_RADAR_PARAM, *LPNET_ITC_POST_RS485_RADAR_PARAM; + +typedef struct tagNET_ITC_VTLANE_PARAM +{ + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + BYTE bySpeedCapEn; //ÊÇ·ñÆôÓó¬ËÙ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE bySignSpeed;//±êÖ¾ÏÞËÙ£¬µ¥Î»km/h + BYTE bySpeedLimit;//ÏÞËÙÖµ£¬µ¥Î»km/h + BYTE bySnapTimes; //×¥ÅÄ´ÎÊý£¨Ä¬ÈÏ1£©£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5 + BYTE byBigCarSignSpeed;///*´ó³µ±êÖ¾ÏÞËÙ£¬µ¥Î»km/h*/ + BYTE byBigCarSpeedLimit;/*´ó³µÏÞËÙÖµ£¬µ¥Î»km/h*/ + BYTE byRelatedIOOutEx;//µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª Ö§³Ö¹ØÁªµ½8¸ö(¼æÈÝbyRelatedIOOut×Ö¶Î) + NET_ITC_INTERVAL_PARAM struInterval; //×¥Åļä¸ô²ÎÊý + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú£¬¿ÉÒÔͬʱ¹ØÁª¶à¸ö + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE byLowSpeedLimit;/*ÏÞµÍËÙ£¬µ¥Î»km/h*/ + BYTE byBigCarLowSpeedLimit; /*´ó³µÏÞµÍËÙ£¬µ¥Î»km/h*/ + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; //³µµÀÅÆʶ²ÎÊý + NET_VCA_LINE struLine; //³µµÀÏß +}NET_ITC_VTLANE_PARAM, *LPNET_ITC_VTLANE_PARAM; + +typedef struct tagNET_ITC_VTCOIL_INFO +{ + NET_VCA_RECT struLaneRect; /*ÐéÄâÏßȦÇøÓò*/ + BYTE byTrigFlag; //´¥·¢±êÖ¾£¬0-³µÍ·´¥·¢£»1-³µÎ²´¥·¢£»2-³µÍ·/³µÎ²¶¼´¥·¢ + BYTE byTrigSensitive; //´¥·¢ÁéÃô¶È£¬1-100 + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú(¿ÉÒÔͬʱ¹ØÁª¶à¸ö)£¬Êý×é0±íʾIOÊä³ö¿Ú1£¬Êý×é1±íʾIOÊä³ö¿Ú2£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE byLaneType; //³µµÀÀàÐÍ£¬0-δÅäÖá¢1-¸ßËÙ¹«Â·¡¢2-³ÇÊпìËÙ·¡¢0xff-ÆäËûµÀ· + BYTE byEnableRadar; //ÊÇ·ñÆôÓÃÀ×´ï²âËÙ£¬0-·ñ£¬1-ÊÇ + NET_ITC_VTLANE_PARAM struLane; //¹ØÁªµÄ³µµÀ²ÎÊý + //³µµÀÓÃ;ÀàÐÍ£¬Ïê¼ûITC_LANE_USEAGE_TYPE£¬Ê¹ÓÃ1ºÍ8Á½ÖÖÀàÐÍ(3.7Ver) + BYTE byUseageType; + //³µÁ¾ÐÐÊ»·½Ïò£¬Ïê¼ûITC_LANE_CAR_DRIVE_DIRECT(3.7Ver) + BYTE byCarDriveDirect; + BYTE byRes[30]; +}NET_ITC_VTCOIL_INFO, *LPNET_ITC_VTCOIL_INFO; + +//¿¨¿ÚÐéÄâÏßȦ´¥·¢²ÎÊý +typedef struct tagNET_ITC_POST_VTCOIL_PARAM +{ + BYTE byRelatedLaneNum;//¹ØÁªµÄ³µµÀ¸öÊý + BYTE byIsDisplay; //ÊÓƵÖÐÊÇ·ñÏÔʾÐéÄâÏßȦ£¬0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byLoopPos; //Íí¼ä´¥·¢ÏßȦµÄÆ«Ïò£¨Ä¬ÈÏ10£© + BYTE byPolarLenType; /*Æ«Õñ¾µÀàÐÍ£¬0£º²»¼ÓÆ«Õñ¾µ£»1£º¼ÓÊ©Ä͵ÂÆ«Õñ¾µ¡£*/ + BYTE byDayAuxLightMode; /*°×Ì츨ÖúÕÕÃ÷ģʽ£¬0£ºÎÞ¸¨ÖúÕÕÃ÷£»1£ºLEDµÆÕÕÃ÷£»2£ºÉÁ¹âµÆÕÕÃ÷*/ + BYTE byVideoLaneNO; //ÊÓƵ²Î¿¼ÁÁ¶ÈµÄ²Î¿¼³µµÀºÅ + BYTE byVideoLowTh; /*ÊÓƵ²Î¿¼ÁÁ¶ÈµÍãÐÖµ³õʼ»¯Öµ£¨Ä¬ÈÏ40£©*/ + BYTE byVideoHighTh; /*ÊÓƵ²Î¿¼ÁÁ¶È¸ßãÐÖµ³õʼ»¯Öµ£¨Ä¬ÈÏ55£©*/ + BYTE byRecordMode; //¼Ïñ±êÖ¾£º0-²»Â¼Ïñ£¬1-¼Ïñ + BYTE bySnapMode;//×¥ÅÄģʽ£º0-ƵÉÁģʽ£»1-±¬ÉÁģʽ + /*²âËÙ·½Ê½£º0-²»²âËÙ£¬0x1-À×´ï²âËÙ£¬0x2-ÊÓƵ²âËÙ*/ + BYTE bySpeedDetector; + BYTE byRes2; + WORD wResolutionX;/* É豸µ±Ç°·Ö±æÂÊ¿í*/ + WORD wResolutionY;/* É豸µ±Ç°·Ö±æÂʸß*/ + DWORD dwDayInitExp; /*ÊÓƵ°×ÌìÆعâʱ¼äµÄ³õʼֵ2000*/ + DWORD dwDayMaxExp; /*ÊÓƵ°×ÌìÆعâʱ¼äµÄ×î´óÖµ20000*/ + DWORD dwNightExp; /*Íí¼äÊÓƵÆعâʱ¼äµÄÉèÖÃÖµ3000*/ + DWORD dwSnapExp; /*×¥ÅÄÆعâʱ¼ä*/ + BYTE byDayInitGain; /*ÊÓƵ°×ÌìÔöÒæµÄ³õʼֵ200*/ + BYTE byDayMaxGain; /*ÊÓƵ°×ÌìÔöÒæµÄ×î´óÖµ400*/ + BYTE byNightGain; /*Íí¼äÊÓƵÔöÒæ*/ + BYTE bySnapGain; /*×¥ÅÄÔöÒæ*/ + DWORD dwSceneMode; //³¡¾°Ä£Ê½£¬ Ïê¼ûSCENE_MODE + NET_DVR_GEOGLOCATION struGeogLocation; //µØַλÖÃ(ĬÈÏÕã½­) + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_VTCOIL_INFO struVtCoil[MAX_VL_NUM]; //ÐéÄâÏßȦ²ÎÊý + NET_ITC_RADAR_PARAM struRadar; //À×´ï²ÎÊý + NET_VCA_LINE struLine; //ÓÒ³µµÀÏß + //Î¥¹æ¼ì²âÀàÐÍ£¬°´Î»±íʾ£¬Ïê¼ûITC_VIOLATION_DETECT_TYPE£¬0-²»ÆôÓã¬1-ÆôÓÃ(3.7Ver) + DWORD dwVioDetectType; + BYTE byDebugMode; /*µ÷ÊÔģʽ£¬0-²»ÆôÓã¬1-ÆôÓÃ*/ + BYTE byRes[11]; +}NET_ITC_POST_VTCOIL_PARAM, *LPNET_ITC_POST_VTCOIL_PARAM; + +//µ¥×éIOºìÂ̵ƲÎÊý +typedef struct tagNET_ITC_SINGLE_IOTL_PARAM +{ + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byLightIO; //ºìÂ̵ÆIO£¬0-IO1,1-IO2,2-IO3,3-IO4,4-IO5,5-IO6 + BYTE byTrafficLight; //ºìÂ̵ÆÓÐЧ״̬0-¸ßµçƽºìµÆ£¬µÍµçƽÂ̵ƣ»1-¸ßµçƽÂ̵ƣ¬µÍµçƽºìµÆ + BYTE byTrigIO;//´¥·¢µÄIOºÅ£¬0-IO1,1-IO2,2-IO3,3-IO4,4-IO5,5-IO6 + BYTE byTrigIOStatus;//´¥·¢IO¿ÚµÄ״̬£¨Ä¬ÈÏ0£©£¬0-ϽµÑØ£¬1-ÉÏÉýÑØ£¬2-ÉÏÉýÑغÍϽµÑØ£¬3-¸ßµçƽ£¬4-µÍµçƽ + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + BYTE byRecordEnable;//´³ºìµÆÖÜÆÚ¼Ïñ±êÖ¾£¬0-²»Â¼Ïñ£¬1-¼Ïñ + BYTE byRecordType;//´³ºìµÆ¼ÏñÀàÐÍ£¬0-Ԥ¼£¬1-ÑÓʱ¼Ïñ + BYTE byPreRecordTime;//´³ºìµÆ¼ÏñƬ¶ÎԤ¼ʱ¼ä£¨Ä¬ÈÏ0£©£¬µ¥Î»£ºÃë + BYTE byRecordDelayTime;//´³ºìµÆ¼ÏñƬ¶ÎÑÓʱʱ¼ä£¨Ä¬ÈÏ0£©£¬µ¥Î»£ºÃë + BYTE byRecordTimeOut;//´³ºìµÆÖÜÆÚ¼Ïñ³¬Ê±Ê±¼ä£¨Ã룩 + BYTE byRedSnapTimes; //ºìµÆ×¥ÅÄ´ÎÊý£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE byGreenSnapTimes; //Â̵Æ×¥ÅÄ´ÎÊý£¬0-²»×¥ÅÄ£¬·Ç0-Á¬ÅÄ´ÎÊý£¬×î´ó5´Î + BYTE byRelatedIOOutEx;//µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª Ö§³Ö¹ØÁªµ½8¸ö(¼æÈÝbyRelatedIOOut×Ö¶Î) + BYTE byRes1; + BYTE byIntervalType; //¼ä¸ôÀàÐÍ£¨Ä¬ÈÏ°´Ê±¼ä£©£¬0-ʱ¼äÆðЧ,1-¾àÀëÆðЧ + WORD wRedInterval[MAX_INTERVAL_NUM];//ºìµÆÁ¬Åļä¸ôʱ¼ä£¨µ¥Î»ms£©»òÁ¬Åļä¸ô¾àÀ루µ¥Î»·ÖÃ×£©£¬µ±byIntervalTypeΪ0ʱ£¬±íʾ¼ä¸ôʱ¼ä£¬µ±byIntervalTypeΪ1ʱ£¬±íʾ¾àÀë + WORD wGreenInterval[MAX_INTERVAL_NUM];//Â̵ÆÁ¬Åļä¸ôʱ¼ä£¨µ¥Î»ms£©»òÁ¬Åļä¸ô¾àÀ루µ¥Î»·ÖÃ×£©£¬µ±byIntervalTypeΪ0ʱ£¬±íʾ¼ä¸ôʱ¼ä£¬µ±byIntervalTypeΪ1ʱ£¬±íʾ¾àÀë + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú£¬¿ÉÒÔͬʱ¹ØÁª¶à¸ö + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE byRes2[3]; + NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; //ÅÆʶÇøÓò²ÎÊý + BYTE byRes[32]; +}NET_ITC_SINGLE_IOTL_PARAM, *LPNET_ITC_SINGLE_IOTL_PARAM; + +//µç¾¯IOºìÂ̵ƲÎÊý +typedef struct tagNET_ITC_EPOLICE_IOTL_PARAM +{ + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_SINGLE_IOTL_PARAM struSingleIOTL[MAX_IOSPEED_GROUP_NUM]; //µ¥×éIOºìÂ̵ƲÎÊý + BYTE byRes[32]; +}NET_ITC_EPOLICE_IOTL_PARAM, *LPNET_ITC_EPOLICE_IOTL_PARAM; + +typedef enum _ITC_SERIAL_PROTOCOL_ +{ + ITC_PROTOCOL_UNKNOW = 0, /*δ֪*/ + ITC_SINGLE_COIL_PROTOCOL_MODE1 = 1, /*µ¥ÏßȦ³µ¼ìÆ÷ЭÒéģʽ1£¨ÏÔʾΪ£ºµ¥_½ø1_³ö1_ÑÓ1_1£©£¬µ½´ï¡¢À뿪¡¢À뿪ÑÓʱץÅÄ£¬À뿪ÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍ³µÅƽá¹û*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE1 = 2, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ1£¨ÏÔʾΪ£ºË«_½ø1_³ö1_³ö2_1£©£¬µ½´ï1¡¢À뿪1¡¢À뿪2×¥ÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍ³µÅƽá¹û£¨Ä¬ÈÏ£©*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE2 = 3, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ2£¨ÏÔʾΪ£ºË«_³ö1_³ö2_ÑÓ2_1£©£¬À뿪1¡¢À뿪2¡¢À뿪2ÑÓʱץÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍ³µÅƽá¹û*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE3 = 4, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ3£¨ÏÔʾΪ£ºË«_½ø2_³ö1_ÑÓ2_1£©£¬½øÈë2¡¢À뿪1¡¢À뿪2ÑÓʱץÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍ³µÅƽá¹û*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE4 = 5, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ4£¨ÏÔʾΪ£ºË«/Èý_½ø2_³ö2_ÑÓ2_1£©£¬µ½´ï2¡¢À뿪2¡¢À뿪2ÑÓʱץÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍ³µÅƽá¹û*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE5 = 6, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ5£¨ÏÔʾΪ£ºË«/Èý_½ø2_³ö2_ÑÓ2_2£©£¬µ½´ï2¡¢À뿪2¡¢À뿪2ÑÓʱץÅÄ£¬µ½´ï2¡¢À뿪1¾ùÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍÖÃÐŶȸߵijµÅƽá¹û£¨Ä¬ÈÏ£©*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE6 = 7, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ6£¨ÏÔʾΪ£ºË«/Èý_½ø1_³ö2_ÑÓ2_2£©£¬µ½´ï1¡¢À뿪2¡¢À뿪2ÑÓʱץÅÄ£¬µ½´ï1¡¢À뿪1¾ùÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍÖÃÐŶȸߵijµÅƽá¹û*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE7 = 8, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ7£¨ÏÔʾΪ£ºË«_½ø1_³ö1_ÑÓ2_1£©£¬µ½´ï1¡¢À뿪1¡¢À뿪2ÑÓʱץÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«³µÁ¾Í¼Æ¬£¨¿¨¿ÚÀ뿪1£¬´³ºìµÆµ½´ï1¡¢À뿪1¡¢À뿪2ÑÓʱ£©ºÍ³µÅƽá¹û*/ + ITC_DOUBLE_COIL_PROTOCOL_MODE8 = 9, /*Ë«ÏßȦ³µ¼ìÆ÷ЭÒéģʽ8£¨ÏÔʾΪ£ºË«_½ø1_³ö1_ÑÓ2_2£©£¬µ½´ï1¡¢À뿪1¡¢À뿪2ÑÓʱץÅÄ£¬µ½´ï1¡¢À뿪1¾ùÅÆʶ£¬ÉÏ´«³µÁ¾Í¼Æ¬£¨¿¨¿ÚÀ뿪1£¬´³ºìµÆµ½´ï1¡¢À뿪1¡¢À뿪2ÑÓʱ£©ºÍÖÃÐŶȸߵijµÅƽá¹û£¨Ä¬ÈÏ£©*/ + ITC_SINGLE_COIL_PROTOCOL_MODE2 = 10, /*µ¥ÏßȦ³µ¼ìÆ÷ЭÒéģʽ2£¨ÏÔʾΪ£ºµ¥_½ø1_³ö1_ÑÓ1_2£©£¬µ½´ï¡¢À뿪¡¢À뿪ÑÓʱץÅÄ£¬µ½´ï¡¢À뿪¾ùÅÆʶ£¬ÉÏ´«³µÁ¾Í¼Æ¬£¨¿¨¿ÚÀ뿪£¬´³ºìµÆµ½´ï¡¢À뿪¡¢À뿪ÑÓʱ£©ºÍÖÃÐŶȸߵijµÅƽá¹û£¨Ä¬ÈÏ£©*/ + ITC_OTHER_PROTOCOL = 0xff /*ÆäËü³µ¼ìÆ÷ЭÒé(ÓÃÓÚÀÏdemo²ÎÊýÅäÖã¬3.3Ö®ºó°æ±¾¹ØÁªµÄdemoºÍ¿Ø¼þ¾ù²»Ö§³Ö´ËÖµ)*/ +}ITC_SERIAL_PROTOCOL; + +//Õý³£¹ý³µÂß¼­×¥ÅÄÀàÐÍ +typedef enum _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ +{ + ITC_NORMAL_PASS_SERIAL_UNKNOW = 0, //δ֪ + ITC_NORMAL_PASS_PROTOCOL_MODE1 = 1, //µ¥ÏßȦ£¬À뿪ץÅÄ£¬ÅÆʶÉÏ´«£¨Ä¬ÈÏ£© + ITC_NORMAL_PASS_PROTOCOL_MODE2 =2, //µ¥ÏßȦ£¬µ½´ï¡¢À뿪ץÅÄ£¬¾ùÅÆʶ£¬½öÉÏ´«À뿪³µÁ¾Í¼Æ¬ºÍÖÃÐŶȸߵijµÅƽá¹û + ITC_NORMAL_PASS_PROTOCOL_MODE3 =3, //Ë«ÏßȦ£¬À뿪1×¥ÅÄ£¬ÅÆʶÉÏ´«£¨Ä¬ÈÏ£© + ITC_NORMAL_PASS_PROTOCOL_MODE4 =4, //Ë«ÏßȦ£¬µ½´ï1¡¢À뿪1×¥ÅÄ£¬¾ùÅÆʶ£¬½öÉÏ´«À뿪1³µÁ¾Í¼Æ¬ºÍÖÃÐŶȸߵijµÅƽá¹û + ITC_NORMAL_PASS_PROTOCOL_MODE5 =5, //Ë«ÏßȦ£¬µ½´ï2¡¢À뿪1×¥ÅÄ£¬¾ùÅÆʶ£¬½öÉÏ´«À뿪1³µÁ¾Í¼Æ¬ºÍÖÃÐŶȸߵijµÅƽá¹û +}ITC_NORMAL_PASS_SERIAL_PROTOCOL; + +//ÄæÐÐÎ¥¹æÂß¼­×¥ÅÄÀàÐÍ +typedef enum _ITC_INVERSE_SERIAL_PROTOCOL_ +{ + ITC_INVERSE_SERIAL_UNKNOW = 0, //δ֪ + ITC_INVERSE_PROTOCOL_MODE1 = 1, //²»×¥ÅÄ + ITC_INVERSE_PROTOCOL_MODE2 =2, //µ½´ï1Á¬×¥2ÕÅ¡¢À뿪2×¥ÅÄ£¬µ½´ï1Á½ÕžùÅÆʶ£¬ÉÏ´«3ÕųµÁ¾Í¼Æ¬ºÍÖÃÐŶȸߵijµÅƽá¹û + ITC_INVERSE_PROTOCOL_MODE3 =3, //µ½´ï1¡¢À뿪2×¥ÅÄ£¬µ½´ï1ÅÆʶ£¬ÉÏ´«2ÕųµÁ¾Í¼Æ¬ºÍ³µÅƽá¹û +}ITC_INVERSE_SERIAL_PROTOCOL; + +//³¬ËÙÎ¥¹æÂß¼­×¥ÅÄÀàÐÍ +typedef enum _ITC_SPEED_SERIAL_PROTOCOL_ +{ + ITC_SPEED_SERIAL_UNKNOW = 0, //δ֪ + ITC_SPEED_PROTOCOL_MODE1 = 1, //²»×¥ÅÄ + ITC_SPEED_PROTOCOL_MODE2 =2, //Ë«/ÈýÏßȦ£¬À뿪1£¬À뿪2£¬À뿪2ÑÓʱץÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«³µÁ¾Í¼Æ¬£¨¿¨¿ÚÀ뿪1£¬³¬ËÙÀ뿪1¡¢À뿪2¡¢À뿪2ÑÓʱ£©ºÍ³µÅƽá¹û + ITC_SPEED_PROTOCOL_MODE3 =3, //Ë«/ÈýÏßȦ£¬À뿪1£¬À뿪2£¬À뿪2ÑÓʱץÅÄ£¬À뿪1ÅÆʶ£¬ÉÏ´«³µÁ¾Í¼Æ¬£¨¿¨¿ÚÀ뿪1£¬³¬ËÙÀ뿪1¡¢À뿪2£©ºÍ³µÅƽá¹û +}ITC_SPEED_SERIAL_PROTOCOL; + +//³µ¼ìÆ÷²ÎÊý +typedef struct tagNET_ITC_SERIAL_INFO +{ + BYTE bySerialProtocol; //³µ¼ìÆ÷ЭÒéÀàÐÍ£¬Ïê¼ûITC_SERIAL_PROTOCOL + BYTE byIntervalType; //¼ä¸ôÀàÐÍ£¨Ä¬ÈÏ°´Ê±¼ä£©£¬0-ʱ¼äÆðЧ,1-¾àÀëÆðЧ + WORD wInterval;//Á¬Åļä¸ôʱ¼ä£¨µ¥Î»ms£©»òÁ¬Åļä¸ô¾àÀ루µ¥Î»·ÖÃ×£©£¬µ±byIntervalTypeΪ0ʱ£¬±íʾ¼ä¸ôʱ¼ä£¬µ±byIntervalTypeΪ1ʱ£¬±íʾ¾àÀë + BYTE byNormalPassProtocol; //Õý³£¹ý³µ×¥ÅÄЭÒéÀàÐÍ£¬Ïê¼ûITC_NORMAL_PASS_SERIAL_PROTOCOL + BYTE byInverseProtocol; //ÄæÐÐ×¥ÅÄЭÒéÀàÐÍ£¬Ïê¼ûITC_INVERSE_SERIAL_PROTOCOL + BYTE bySpeedProtocol; //³¬ËÙ×¥ÅÄЭÒéÀàÐÍ£¬Ïê¼ûITC_SPEED_SERIAL_PROTOCOL + BYTE byRes[9]; +}NET_ITC_SERIAL_INFO, *LPNET_ITC_SERIAL_INFO; + +typedef struct tagNET_ITC_EPOLICE_LANE_PARAM +{ + BYTE byEnable; //ÊÇ·ñÆôÓøóµµÀ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + WORD wDistance; //ÏßȦ¾àÀ룬µ¥Î»ÀåÃ× + BYTE byRecordEnable;//´³ºìµÆÖÜÆÚ¼Ïñ±êÖ¾£¬0-²»Â¼Ïñ£¬1-¼Ïñ + BYTE byRecordType;//´³ºìµÆ¼ÏñÀàÐÍ£¬0-Ԥ¼£¬1-ÑÓʱ¼Ïñ + BYTE byPreRecordTime;//´³ºìµÆ¼ÏñƬ¶ÎԤ¼ʱ¼ä£¨Ä¬ÈÏ0£©£¬µ¥Î»£ºÃë + BYTE byRecordDelayTime;//´³ºìµÆ¼ÏñƬ¶ÎÑÓʱʱ¼ä£¨Ä¬ÈÏ0£©£¬µ¥Î»£ºÃë + BYTE byRecordTimeOut;//´³ºìµÆÖÜÆÚ¼Ïñ³¬Ê±Ê±¼ä£¨Ã룩 + BYTE bySignSpeed;//±êÖ¾ÏÞËÙ(¿¨Ê½µç¾¯Ä£Ê½ÓÐЧ)£¬µ¥Î»km/h + BYTE bySpeedLimit;//ÏÞËÙÖµ(¿¨Ê½µç¾¯Ä£Ê½ÓÐЧ)£¬µ¥Î»km/h + BYTE byOverlayDriveWay; //OSDµþ¼ÓµÄ³µµÀºÅ + NET_ITC_SERIAL_INFO struSerialInfo; //³µ¼ìÆ÷²ÎÊý + BYTE byRelatedIOOut[MAX_IOOUT_NUM]; //¹ØÁªµÄIOÊä³ö¿Ú£¬¿ÉÒÔͬʱ¹ØÁª¶à¸ö + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE bySerialType; //³µ¼ìÆ÷ÀàÐÍ£¬0-˽Óгµ¼ìÆ÷£¬1-˽ÓÐOEM³µ¼ìÆ÷£¬2-ÆäËû³µ¼ìÆ÷ + BYTE byRelatedIOOutEx;//µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª Ö§³Ö¹ØÁªµ½8¸ö(¼æÈÝbyRelatedIOOut×Ö¶Î) + BYTE bySnapPicPreRecord; //×¥ÅÄͼƬԤ¼ʱ¼äµã£»0-ĬÈÏÖµ£¨µÚ¶þÕÅͼƬ£©£¬1-µÚÒ»ÕÅͼƬ£¬2-µÚ¶þÕÅͼƬ£¬3-µÚÈýÕÅͼƬ + NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; //³µµÀÅÆʶ²ÎÊý + BYTE byBigCarSignSpeed; ///*´ó³µ±êÖ¾ÏÞËÙ£¬µ¥Î»km/h*/ + BYTE byBigCarSpeedLimit;/*´ó³µÏÞËÙÖµ£¬µ¥Î»km/h*/ + BYTE byRedTrafficLightChan;//ºìµÆͨµÀºÅ£º1¡«16£¨ºìÂ̵Ƽì²âÆ÷£© + BYTE byYellowTrafficLightChan;//»ÆµÆͨµÀºÅ£º1¡«16£¨ºìÂ̵Ƽì²âÆ÷£© + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byRes3[11]; +}NET_ITC_EPOLICE_LANE_PARAM, *LPNET_ITC_EPOLICE_LANE_PARAM; + +//µç¾¯/¿¨Ê½µç¾¯RS485³µ¼ìÆ÷´¥·¢²ÎÊý +typedef struct tagNET_ITC_EPOLICE_RS485_PARAM +{ + BYTE byRelatedLaneNum;//¹ØÁªµÄ³µµÀ¸öÊý + BYTE byTrafficLightSignalSrc;//½»Í¨µÆÐźÅÀ´Ô´ 0¡«³µ¼ìÆ÷ 1¡«ºìÂ̵Ƽì²âÆ÷ + BYTE byRes1[2]; + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_EPOLICE_LANE_PARAM struLane[MAX_ITC_LANE_NUM]; //¹ØÁªµÄ³µµÀ²ÎÊý + BYTE byRes[32]; +}NET_ITC_EPOLICE_RS485_PARAM, *LPNET_ITC_EPOLICE_RS485_PARAM; + +//³µµÀÊôÐÔ²ÎÊý½á¹¹ +typedef struct tagNET_ITC_LANE_LOGIC_PARAM +{ + BYTE byUseageType; //³µµÀÓÃ;ÀàÐÍ£¬Ïê¼ûITC_LANE_USEAGE_TYPE + BYTE byDirectionType; //³µµÀ·½ÏòÀàÐÍ£¬Ïê¼ûITC_LANE_DIRECTION_TYPE + BYTE byCarDriveDirect; //³µÁ¾ÐÐÊ»·½Ïò£¬Ïê¼ûITC_LANE_CAR_DRIVE_DIRECT + BYTE byRes[33]; //±£Áô +}NET_ITC_LANE_LOGIC_PARAM, *LPNET_ITC_LANE_LOGIC_PARAM; + +//ÊÓƵµç¾¯Ï߽ṹ +typedef struct tagNET_ITC_LINE +{ + NET_VCA_LINE struLine; //Ïß²ÎÊý + BYTE byLineType; //ÏßÀàÐÍ£¬Ïê¼ûITC_LINE_TYPE + BYTE byRes[7]; +}NET_ITC_LINE, *LPNET_ITC_LINE; + +typedef struct tagNET_ITC_SNAPMODE_PARAM +{ + BYTE byVehicleCapMode;//»ú¶¯³µ×¥ÅÄģʽ£¬0-ƵÉÁģʽ£»1-±¬ÉÁģʽ + BYTE byNoVehicleCapMode;//·Ç»ú¶¯³µ×¥ÅÄģʽ£¬0-ƵÉÁģʽ£»1-±¬ÉÁģʽ + BYTE byPasserCapMode;//ÐÐÈË×¥ÅÄģʽ£¬0-ƵÉÁģʽ£»1-±¬ÉÁģʽ + BYTE byRes[29]; +}NET_ITC_SNAPMODE_PARAM, *LPNET_ITC_SNAPMODE_PARAM; + +//size = 128 +typedef struct tagNET_ITC_HVT_EC_PARAM +{ + DWORD dwCapShutter; //×¥ÅÄ¿ìÃÅ0~65535 + WORD wCapGain; //×¥ÅÄÔöÒæ0¡«100 + BYTE byRes[2]; + DWORD dwDayTimeVideoShutter; //°×ÌìÆعâʱ¼ä×î´óÖµ + WORD wDayTimeVideoGain; //°×ÌìÔöÒæ×î´óÖµ + WORD wNightVideoGain; //ÍíÉÏÔöÒæ×î´óÖµ + DWORD wNightVideoShutter; //ÍíÉÏÆعâʱ¼ä×î´óÖµ + BYTE byRes1[108]; +}NET_ITC_HVT_EC_PARAM, *LPNET_ITC_HVT_EC_PARAM; + +typedef struct tagNET_ITC_LANE_HVT_PARAM +{ + BYTE byLaneNO; //¹ØÁªµÄ³µµÀºÅ 1~255£¨ÓÃÓÚµþ¼ÓºÍÉÏ´«£© + BYTE bySignSpeed; //±êÖ¾ÏÞËÙ£¬µ¥Î»km/h 0¡«255 70 + BYTE bySpeedLimit; //ÏÞËÙÖµ£¬µ¥Î»km/h 0¡«255 80 ʵ¼ÊÆðЧ + BYTE byBigCarSignSpeed;///*´ó³µ±êÖ¾ÏÞËÙ£¬µ¥Î»km/h*/ + BYTE byBigCarSpeedLimit;/*´ó³µÏÞËÙÖµ£¬µ¥Î»km/h*/ + BYTE bySpeedCapEn; //ÊÇ·ñÆôÓó¬ËÙ×¥ÅÄ£¬0-·ñ£¬1-ÊÇ + BYTE byCaptureCount;//×¥ÅÄÕÅÊý1¡«5(Õý³£) + BYTE byRelatedIOOut; /*¹ØÁªµÄIOÊä³ö¿Ú(¿ÉÒÔͬʱ¹ØÁª¶à¸ö)£¬°´Î»±íʾIOÊä³ö¿Ú£¬µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª*/ + BYTE byFlashMode; /*ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ*/ + BYTE byEnableRadar; //ÊÇ·ñÆôÓÃÀ×´ï²âËÙ£¬0-·ñ£¬1-ÊÇ + BYTE byChangeLaneEnable; //Î¥Õ±äµÀ×¥ÅÄʹÄÜ£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byChangeLaneCapNo; //Î¥Õ±äµÀ×¥ÅÄÕÅÊý2-3 + DWORD dwCapTarget; //×¥ÅÄÀàÐÍ bit0 ±íʾ»ú¶¯³µ bit1 ±íʾ·Ç»ú¶¯³µ bit2 ±íʾÐÐÈË 0¡«±íʾ²»Ñ¡Ôñ 1¡«±íʾѡÔñ + NET_ITC_INTERVAL_PARAM struInterval; //×¥Åļä¸ô²ÎÊý + BYTE byRes3[24]; + NET_ITC_LANE_LOGIC_PARAM struLane; //³µµÀÊôÐÔ£¬ÓÃbyUseageTypeºÍbyCarDriveDirect + NET_ITC_LINE struLeftLaneLine; //×ó³µµÀÏߣ¬ÏßÀàÐÍΪÐéÏß¡¢ÊµÏß¡¢µ¥»ÆÏߺÍË«»ÆÏß + NET_ITC_LINE struRightLaneLine; //ÓÒ³µµÀÏߣ¬ÏßÀàÐÍΪÐéÏß¡¢ÊµÏß¡¢µ¥»ÆÏߺÍË«»ÆÏß + NET_ITC_POLYGON struPlateRecog; //ÅÆʶÇøÓò²ÎÊý + NET_ITC_POLYGON struTraceArea; //ÊÓƵ´¥·¢½¹µãÇøÓò + NET_VCA_LINE struForwardTrigLine; //ÕýÏò´¥·¢ÏߣºÒ»ÌõÏ߶Σ¬¹ØÐĶ˵ãλÖã¬Ä¿Ç°Ö»Ö§³ÖˮƽÅäÖ㬽ӿڰ´Ï߶εÄÁ½¸ö¶Ëµã±£´æ¡££¨Ò»°ãÅäÖÃΪÕýÏò³µÁ¾µÄ×î¼Ñ´¥·¢Î»Öã© + NET_VCA_LINE struBackwardTrigLine; //±³Ïò´¥·¢ÏߣºÒ»ÌõÏ߶Σ¬¹ØÐĶ˵ãλÖã¬Ä¿Ç°Ö»Ö§³ÖˮƽÅäÖ㬽ӿڰ´Ï߶εÄÁ½¸ö¶Ëµã±£´æ£¨Ò»°ãÅäÖÃΪ±³Ïò³µÁ¾µÄ×î¼Ñ´¥·¢Î»Öã© + NET_VCA_LINE struLeftTrigLine; //×ó±ß´¥·¢ÏߣºÒ»ÌõÏ߶Σ¬¹ØÐĶ˵ãλÖã¬Ä¿Ç°Ö»Ö§³Ö´¹Ö±ÅäÖ㬽ӿڰ´Ï߶εÄÁ½¸ö¶Ëµã±£´æ£¨Ò»°ãÅäÖÃΪ´Ó×ó±ß½øÈë³µÁ¾µÄ×î¼Ñ´¥·¢Î»Öã© + NET_VCA_LINE struRightTrigLine; //Óұߴ¥·¢ÏߣºÒ»ÌõÏ߶Σ¬¹ØÐĶ˵ãλÖã¬Ä¿Ç°Ö»Ö§³Ö´¹Ö±ÅäÖ㬽ӿڰ´Ï߶εÄÁ½¸ö¶Ëµã±£´æ£¨Ò»°ãÅäÖÃΪ´ÓÓұ߽øÈë³µÁ¾µÄ×î¼Ñ´¥·¢Î»Öã© + BYTE byRes4[60]; +}NET_ITC_LANE_HVT_PARAM, *LPNET_ITC_LANE_HVT_PARAM; + +typedef struct tagNET_ITC_POST_HVT_PARAM +{ + BYTE byLaneNum;//ʶ±ðµÄ³µµÀ¸öÊý£¬1-6 + BYTE bySceneMode;//0-δ֪1-³ÇÇøµÀ·£»2-СÇø³öÈë¿Ú + BYTE byRoadExpBright;//·ÃæÆÚÍûÁÁ¶È£¨ÊÓƵÆعâ²ÎÊýµ÷ÕûµÄÒÀ¾ÝÖ®Ò»¡£ÔÚÎÞ»ú¶¯³µÊ±£¬ÒÀ¾Ý´ËÁÁ¶ÈÆÚÍûÖµ£¬µ÷ÕûÊÓƵÆعâ²ÎÊý£© + BYTE byPlateExpBright;//³µÅÆÆÚÍûÁÁ¶È£¨ÊÓƵÆعâ²ÎÊýµ÷ÕûµÄÒÀ¾ÝÖ®Ò»¡£ÔÚÓлú¶¯³µÍ¨¹ý²¢Ê¶±ðµ½³µÅÆʱ£¬ÒÀ¾Ý´ËÁÁ¶ÈÆÚÍûÖµ£¬¶ÔÊÓƵÆعâ²ÎÊýµ÷Õû£© + NET_ITC_POLYGON struDetectArea; //ÊÓƵ¼ì²âÇøÓò + NET_ITC_SNAPMODE_PARAM struCapMode;//×¥ÅÄģʽ + NET_ITC_HVT_EC_PARAM struEcParam; //Æعâ¿ØÖƲÎÊý + NET_ITC_LANE_HVT_PARAM struLaneParam[MAX_ITC_LANE_NUM]; //µ¥³µµÀÊôÐÔ + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_DVR_GEOGLOCATION struGeogLocation; //µØַλÖã¨Ä¬ÈÏÕã½­£© + BYTE byRes[324]; +}NET_ITC_POST_HVT_PARAM, *LPNET_ITC_POST_HVT_PARAM; + +/*************************MPR´¥·¢Ä£Ê½ begin 2013-12-07****************/ +typedef struct tagNET_ITC_LANE_MPR_PARAM +{ + BYTE byLaneNO; + union + { + BYTE uLen[4]; + struct + { + BYTE byIONo;//IOºÅ[1, byIoInNum+1] ×îС´Ó1¿ªÊ¼£¬×î´óÖµ¸ù¾Ý½Ó¿ÚÄÜÁ¦·µ»ØNET_DVR_SNAP_ABILITYµÄ×Ö¶ÎbyIoInNum + BYTE byTriggerType;//0-ϽµÑØ£¬1-ÉÏÉýÑØ + BYTE byRes1[2]; + }struIO;//IOģʽÏÂÉúЧ + struct + { + BYTE byRelateChan;//¹ØÁª³µ¼ìÆ÷ͨµÀºÅ[1,16] + BYTE byRes2[3]; + }struRS485; + }uTssParamInfo; + BYTE byCarDriveDirect; //³µÁ¾ÐÐÊ»·½Ïò ITC_LANE_CAR_DRIVE_DIRECT + BYTE byRes[58]; + NET_ITC_LINE struLaneLine;//³µµÀÏß + NET_ITC_POLYGON struPlateRecog;//ÅÆʶÇøÓò + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPEtypedef struct tagNET_ITS_PICTURE_INFO + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byRes1[255]; +}NET_ITC_LANE_MPR_PARAM,*LPNET_ITC_LANE_MPR_PARAM; + +typedef struct tagNET_ITC_POST_MPR_PARAM +{ + BYTE byEnable; + BYTE byLaneNum; + BYTE bySourceType;//0-MPR´¥·¢£¨ÊÓƵ´¥·¢£©,1-¹ØÁªIO´¥·¢£¨µØ¸ÐÏßȦ£©,2-¹ØÁªRS485µÄ´¥·¢ÐźŠ+ BYTE byPicUploadType;//ͼƬÉÏ´«ÀàÐÍ£¬0~È«²¿ÉÏ´«£¬1-ÕýÏòÉÏ´«£¬2-±³ÏòÉÏ´« + BYTE byRoadType;//ģʽѡÔñ 0-³öÈë¿Ú£¬1-³ÇÊеÀ·£¬2-×Ô¶¨Ò壬3-±¨¾¯ÊäÈ룬4-¿¨¿Ú, 5-Öΰ²¼à¿Ø(¸ÃģʽÏ¿ÉÒÔ¼ì²â³µÁ¾±È½Ï»ìÂÒÇÒûÓгµµÀÏߵij¡¾°) + BYTE byRes2; + WORD wCustomDelayTime;//×Ô¶¨Òå×¥ÅÄÑÓʱʱ¼ä£¨ÔÚbyRoadTypeΪ "×Ô¶¨Òå"µÄʱºòÉúЧ£©£¬·¶Î§ÔÚ[0,15000]ms + BYTE byRes[56]; + NET_ITC_LINE struLaneBoundaryLine;//³µµÀ±ß½çÏߣ¨×î×ó±ß³µµÀµÄ×ó±ß½çÏߣ© + NET_ITC_PLATE_RECOG_PARAM struPlateRecog;//ÅÆʶ²ÎÊý 40 + NET_ITC_LANE_MPR_PARAM struLaneParam[MAX_ITC_LANE_NUM/*6*/]; + char szSceneName[NAME_LEN/*32*/]; //³¡¾°Ãû³Æ + NET_VCA_LINE struSnapLine;//×¥ÅÄÏߣ¬ÔÚÏà»úµÄ¼ÜÉ跽ʽΪ²à×°£¬ÅäÖÃÕâ¸ö²ÎÊýÉúЧ£¨¼´4.5ÖÐNET_DVR_CAMERA_SETUPCFG½á¹¹ÌåÖÐbyErectMethod×Ö¶ÎΪ1ʱ £© + BYTE byRes1[392]; +}NET_ITC_POST_MPR_PARAM,*LPNET_ITC_POST_MPR_PARAM; +/*************************MPR´¥·¢Ä£Ê½ end 2013-12-07****************/ + +typedef struct tagNET_DVR_VIA_LANE_PARAM +{ + BYTE byLaneNO; //¹ØÁª³µµÀºÅ + BYTE byRes[63]; //±£Áô + NET_ITC_LANE_LOGIC_PARAM struLogicParam; //³µµÀÊôÐÔ²ÎÊý + NET_ITC_LINE struLaneLine;//³µµÀÏß + NET_ITC_POLYGON struPlateRecog;//ÅÆʶÇøÓò + BYTE byRes1[300]; //±£Áô +} NET_DVR_VIA_LANE_PARAM,*LPNET_DVR_VIA_LANE_PARAM; + +typedef struct tagNET_DVR_VIA_VTCOIL_PARAM +{ + BYTE byEnable; //ʹÄÜ 0-²»¿ªÆô 1-¿ªÆô + BYTE byLaneNum; //³µµÀÊý + BYTE byRes[62]; //±£Áô + NET_ITC_LINE struLaneBoundaryLine;//³µµÀ±ß½çÏߣ¨×î×ó±ß³µµÀµÄ×ó±ß½çÏߣ© + NET_DVR_VIA_LANE_PARAM struLaneParam[MAX_ITC_LANE_NUM/*6*/]; + NET_ITC_PLATE_RECOG_PARAM struPlateRecog;//ÅÆʶ²ÎÊý + BYTE byRes1[624];//±£Áô +}NET_DVR_VIA_VTCOIL_PARAM,*LPNET_DVR_VIA_VTCOIL_PARAM; + +//ÅäÖÃÌõ¼þ½Ó¿Ú +typedef struct tagNET_DVR_TRIGGER_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + DWORD dwTriggerMode;//´¥·¢·½Ê½£¬²Î¿¼ ITC_TRIGGERMODE_TYPE + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1,4], IPCĬÈÏÊÇ0 + BYTE byRes[63]; //±£ÁôÁô +}NET_DVR_TRIGGER_COND,*LPNET_DVR_TRIGGER_COND; + +typedef struct tagNET_ITC_LANE_IMT_PARAM +{ + BYTE byLaneNO;//µþ¼Ó³µµÀºÅ + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byRes[146]; + NET_ITC_LINE struLaneLine;//³µµÀÏß + BYTE byRes1[256]; +}NET_ITC_LANE_IMT_PARAM,*LPNET_ITC_LANE_IMT_PARAM; + +typedef struct tagNET_ITC_POST_IMT_PARAM +{ + BYTE byEnable; + BYTE byLaneNum; + BYTE bySnapMode; //×¥ÅÄÀàÐÍ£»0~»ú¶¯³µ£¬1~»ú·ÇÈË + BYTE byRes[61]; + NET_ITC_PLATE_RECOG_PARAM struPlateRecog;//ÅÆʶ²ÎÊý + NET_ITC_LINE struLaneBoundaryLine;//³µµÀ±ß½çÏߣ¨×îÓұ߳µµÀµÄ±ß½çÏߣ© + NET_ITC_LANE_IMT_PARAM struLaneParam[MAX_ITC_LANE_NUM/*6*/]; + BYTE byRes1[1584]; +}NET_ITC_POST_IMT_PARAM,*LPNET_ITC_POST_IMT_PARAM; + +typedef struct tagNET_ITC_LANE_PRS_PARAM +{ + BYTE byLaneNO; + union + { + BYTE uLen[4]; + struct + { + BYTE byIONo;//IOºÅ[1,4] + BYTE byTriggerType;//0-ϽµÑØ£¬1-ÉÏÉýÑØ + BYTE byRes1[2]; + }struIO;//IOģʽÏÂÉúЧ + struct + { + BYTE byRelateChan;//¹ØÁª³µ¼ìÆ÷ͨµÀºÅ[1,16] + BYTE byRes2[3]; + }struRS485; + }uTssParamInfo; + BYTE byRes[59]; + NET_ITC_LINE struLaneLine;//³µµÀÏß + NET_ITC_POLYGON struPlateRecog;//ÅÆʶÇøÓò + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byRes2[3]; + NET_ITC_LINE struTrigLine;//´¥·¢Ïß + BYTE byRes1[228]; +}NET_ITC_LANE_PRS_PARAM,*LPNET_ITC_LANE_PRS_PARAM; + + +typedef struct tagNET_ITC_POST_PRS_PARAM +{ + BYTE byEnable; + BYTE byLaneNum; + BYTE bySourceType;//0-ÊÓƵ¼ì²â,1-¹ØÁªIO´¥·¢£¨µØ¸ÐÏßȦ£©,2-¹ØÁªRS485µÄ´¥·¢ÐźŠ+ BYTE bySnapMode;//0-È«¾°Í¼£¬1-È«¾°Í¼+ÌØд + BYTE byCapMode;//bySourceTypeΪ0ÊÓƵ¼ì²âʱʹÓã¬0-ƵÉÁģʽ£»1-±¬ÉÁģʽ + BYTE byNoPlatCarCap;//ÊÇ·ñÆôÓÃÎÞ³µÅÆ×¥ÅÄ 0-²»ÆôÓà 1-ÆôÓà + BYTE bySceneMode;//³¡¾°Ä£Ê½:0-ÆÕͨ³öÈë¿Ú³¡¾°¡¢1-ÊÕ·Ñվģʽ³¡¾°(³µÁ¾Í£Áôʱ¼ä½Ï³¤)¡¢2-µØÏÂÍ£³µ³¡³öÈë¿Ú³¡¾°(°×ÌìºÚÒ¹¾ù½Ï°µ) + BYTE byRes[57]; + NET_ITC_LINE struLaneBoundaryLine;//³µµÀ±ß½çÏߣ¨×î×ó±ß³µµÀµÄ×ó±ß½çÏߣ© + NET_ITC_PLATE_RECOG_PARAM struPlateRecog;//ÅÆʶ²ÎÊý 40 + NET_ITC_LANE_PRS_PARAM struLaneParam[MAX_ITC_LANE_NUM/*6*/]; + BYTE byRes1[440]; +}NET_ITC_POST_PRS_PARAM,*LPNET_ITC_POST_PRS_PARAM; + +typedef struct tagNET_IPC_LANE_HVT_PARAM +{ + BYTE byLaneNO; + BYTE byCarDriveDirect; //³µÁ¾ÐÐÊ»·½Ïò ITC_LANE_CAR_DRIVE_DIRECT + BYTE byRes[62]; + NET_ITC_LINE struLaneLine;//³µµÀÏß + NET_ITC_POLYGON struPlateRecog;//ÅÆʶÇøÓò + BYTE byRes1[256]; +} NET_IPC_LANE_HVT_PARAM,*LPNET_IPC_LANE_HVT_PARAM; + +typedef struct _NET_ITC_PARKING_DETECTION_ +{ + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes; //±£Áô×Ö½Ú + WORD wDuration;//¼ì²âʱ¼ä¼ä¸ô£¬µ¥Î»£ºs + WORD wAlarmIntervalTime;//ÉÏ´«Ê±¼ä¼ä¸ô£¬µ¥Î»£ºs + BYTE byRes1[58]; //±£Áô×Ö½Ú +}NET_ITC_PARKING_DETECTION, *LPNET_ITC_PARKING_DETECTION; + +typedef struct tagNET_IPC_POST_HVT_PARAM +{ + BYTE byEnable; + BYTE byLaneNum; + BYTE byEnhancedMode; //Ôöǿģʽ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byPicRecognition; //³µÁ¾±¨¾¯Í¼Æ¬¶þ´Îʶ±ð£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes[60]; + NET_ITC_LINE struLaneBoundaryLine;//³µµÀ±ß½çÏߣ¨×î×ó±ß³µµÀµÄ×ó±ß½çÏߣ© + NET_ITC_PLATE_RECOG_PARAM struPlateRecog;//ÅÆʶ²ÎÊý 40 + NET_IPC_LANE_HVT_PARAM struLaneParam[MAX_ITC_LANE_NUM/*6*/]; + char szSceneName[NAME_LEN/*32*/]; //³¡¾°Ãû³Æ + NET_VCA_LINE struSnapLine;//×¥ÅÄÏߣ¬×¥ÔÚÏà»úµÄ¼ÜÉ跽ʽΪ²à×°£¬ÅäÖÃÕâ¸ö²ÎÊýÉúЧ£¨¼´4.5ÖÐNET_DVR_CAMERA_SETUPCFG½á¹¹ÌåÖÐbyErectMethod×Ö¶ÎΪ1ʱ £© + NET_ITC_PARKING_DETECTION struParkingDetection; //Í£³µ¼ì²â²ÎÊý + BYTE byRes1[328]; +} NET_IPC_POST_HVT_PARAM,*LPNET_IPC_POST_HVT_PARAM; + +//×¥ÅÄ»ú4.0ÐÂÔö +typedef struct tagNET_ITC_LANE_HVT_PARAM_V50 +{ + BYTE byLaneNO; //¹ØÁªµÄ³µµÀºÅ1¡«255(ÓÃÓÚµþ¼ÓºÍÉÏ´«) + BYTE byFlashMode; //ÉÁ¹âµÆÉÁ˸ģʽ£¬0-ͬʱÉÁ£¬1-ÂÖÁ÷ÉÁ + BYTE bySignSpeed; //С³µ±êÖ¾ÏÞ¸ßËÙ£¬µ¥Î»km/h + BYTE bySpeedLimit; //С³µÏÞ¸ßËÙÖµ£¬µ¥Î»km/h + BYTE bySignLowSpeed; //С³µ±êÖ¾ÏÞµ×ËÙ£¬µ¥Î»km/h + BYTE byLowSpeedLimit; //С³µÏÞµ×ËÙÖµ£¬µ¥Î»km/h + BYTE byBigCarSignSpeed; //´ó³µ±êÖ¾ÏÞ¸ßËÙ£¬µ¥Î»km/h£¨Ð½»¹æ£© + BYTE byBigCarSpeedLimit; //´ó³µÏÞ¸ßËÙÖµ£¬µ¥Î»km/h£¨Ð½»¹æ£© + BYTE byBigCarSignLowSpeed; //´ó³µ±êÖ¾ÏÞµ×ËÙ£¬µ¥Î»km/h + BYTE byBigCarLowSpeedLimit; //´ó³µÏÞµ×ËÙÖµ£¬µ¥Î»km/h + BYTE bySnapTimes; //¿¨¿Ú×¥ÅÄÕÅÊý£¬1~3 + BYTE byDriveLineSnapTime;// ѹÏß×¥ÅÄÕÅÊý 1~3 + BYTE byHighSpeedSnapTime;// ³¬¸ßËÙ×¥ÅÄÕÅÊý1~3 + BYTE byLowSpeedSnapTime;// ³¬µÍËÙ×¥ÅÄÕÅÊý1~3 + BYTE byBanSnapTime;// Î¥·´½ûÁî×¥ÅÄÕÅÊý 1~3 + BYTE byReverseSnapTime;//ÄæÐÐ×¥ÅÄÕÅÊý 1~3 + BYTE byRelatedDriveWay; //¹ØÁª³µµÀºÅ£¬ÓÃÓÚÆ¥Åä³µ¼ìÆ÷ + BYTE byLaneType; //³µµÀÀàÐÍ£¬0-δÅäÖá¢1-¸ßËÙ¹«Â·¡¢2-³ÇÊпìËÙ·¡¢0xff-ÆäËûµÀ· + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅbyRelatedDriveWay¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byRes1[27]; + BYTE byChangeLaneEnable; //Î¥Õ±äµÀ×¥ÅÄʹÄÜ£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byChangeLaneCapNo; //Î¥Õ±äµÀ×¥ÅÄÕÅÊý2-3 + //Ä¿Ç°½öʹÓõÚÒ»¸ö³µµÀµÄ£¬ÒÔºó¿ÉÄÜ»áÀ©Õ¹Îª¶à³µµÀ·Ö±ðÅäÖà + //ÀàÐÍ, °´Î»±íʾ,0-²»ÆôÓÃ,1-ÆôÓòο¼ ITC_VIOLATION_DETECT_TYPE + DWORD dwVioDetectType; + DWORD dwRelatedIOOut; //¹ØÁªµÄIOÊä³ö¿Ú(¿ÉÒÔͬʱ¹ØÁª¶à¸ö)£¬°´Î»±íʾIOÊä³ö¿Ú£¬µÚ0λ±íʾIOÊä³ö¿Ú1£¬ÒÔ´ËÀàÍÆ£¬0-²»¹ØÁª£¬1-¹ØÁª + NET_ITC_LINE struTrigLine; //´¥·¢Ïߣ¬Ä¿Ç°½öʹÓõÚÒ»¸ö³µµÀµÄ£¬ÒÔºó¿ÉÄÜ»áÀ©Õ¹Îª¶à³µµÀ·Ö±ðÅäÖà + NET_ITC_LINE struLineLeft; //×ó³µµÀÏß + NET_ITC_POLYGON struPlateRecog; //ÅÆʶÇøÓò + NET_ITC_LANE_LOGIC_PARAM struLane; //³µµÀÊôÐÔ£¬ÓÃbyUseageTypeºÍbyCarDriveDirect + NET_ITC_INTERVAL_PARAM struInterval;//×¥Åļä¸ô²ÎÊý£¨20byte£© + BYTE byRes2[280]; +}NET_ITC_LANE_HVT_PARAM_V50, *LPNET_ITC_LANE_HVT_PARAM_V50; + +typedef struct tagNET_ITC_POST_HVT_PARAM_V50 +{ + BYTE byLaneNum; //ʶ±ðµÄ³µµÀ¸öÊý£¬1-6 + BYTE byCapType; //×¥ÅÄÀàÐÍ£¬0-»ú¡¢·Ç¡¢ÈË£¨Ä¬ÈÏ£©£¬1-»ú¶¯³µ + BYTE byCapMode; //×¥ÅÄ·½Ê½£¬0-ÊÓƵ³éÖ¡£¬1-´ò¶Ï×¥ÅÄ£¬2-»ìºÏģʽ£¬ + BYTE bySecneMode; //³¡¾°Ä£Ê½£¬0-³ÇÇøµÀ·£¨Ä¬ÈÏ£©£¬1-СÇø³öÈë¿Ú£¬2-¸ßËÙ¹«Â· + BYTE bySpeedMode; //²âËÙģʽ£¬0-ÎÞ²âËÙ£¬1-À×´ï²âËÙ£¬2-ÊÓƵ²âËÙ + BYTE byLineRuleEffect; //´¥·¢¹æÔòÏßÓÐЧÐÔ,ÿһλ´ú±íÒ»Ìõ´¥·¢Ïß,0-ÎÞЧ;1-ÓÐЧ¡£bit0-×ó´¥·¢Ïß;bit1-ÓÒ´¥·¢Ïß;bit2-ÊÓƵ¼ì²âÇøÓò + BYTE byRes1[78]; + NET_ITC_LINE struLeftTrigLine; //×ó´¥·¢Ïß(Ò»Ìõ´¹Ö±Ïß) + NET_ITC_LINE struRigtTrigLine; //ÓÒ´¥·¢Ïß(Ò»Ìõ´¹Ö±Ïß) + NET_ITC_LINE struLaneBoundaryLine; //³µµÀ±ß½çÏߣ¨×îÓұ߳µµÀµÄÓÒ³µµÀÏߣ© + NET_ITC_POLYGON struDetectArea; //ÊÓƵ¼ì²âÇøÓò + NET_DVR_GEOGLOCATION struGeogLocation; //µØÀíλÖã¨Ä¬ÈÏÕã½­Ê¡£©¼ÆËãʱÇø + NET_ITC_LANE_HVT_PARAM_V50 struLaneParam[MAX_ITC_LANE_NUM/*6*/]; //µ¥³µµÀÊôÐÔ + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + BYTE byRes2[260]; +} NET_ITC_POST_HVT_PARAM_V50, *LPNET_ITC_POST_HVT_PARAM_V50; + + +//³µµÀ²ÎÊý +typedef struct tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM +{ + BYTE byRelatedDriveWay;//¹ØÁªµÄ³µµÀºÅ + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byPedestriansNum;//ÐÐÈËÊýÁ¿ãÐÖµ£º·¶Î§1-100£¬Ä¬ÈÏÖµ1 + BYTE byVehicleSpeed;//³µÁ¾ËÙ¶ÈãÐÖµ£º·¶Î§0-100£¬Ä¬ÈÏÖµ0 + DWORD dwVehicleInterval; //¸ú³µ¼ì²âãÐÖµ£º·¶Î§0-65536£¬Ä¬ÈÏÖµ0 + BYTE byPedesDetRule; //ÐÐÈ˼ì²â¹æÔò£»´ú±íÐÐÈ˼ì²âÇøÓòÖÐÐÐÈËÐÐÊ»·½Ïò£» 0~Ïò×ó£¬ 1~ÏòÓÒ¡£ + BYTE byRes[3]; + NET_ITC_LINE struLaneLine;//³µµÀÏß + NET_ITC_LINE struStopLine;//Í£Ö¹Ïß + NET_ITC_POLYGON struPlateRecog; //ÅÆʶÇøÓò + BYTE byRes1[280]; +} NET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM, +*LPNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM; + +//²»ÀñÈÃÐÐÈ˲ÎÊý +typedef struct tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM +{ + BYTE byEnable; //ʹÄÜ + BYTE byLaneNum;// ¹ØÁª³µµÀ×ÜÊý£º·¶Î§1-3£¬Ä¬ÈÏÖµ3 + BYTE byRes[74]; + NET_ITC_LINE struLaneBoundaryLine;//³µµÀÓұ߽çÏß + NET_ITC_LINE struTriggerLine;//²»ÀñÈÃÐÐÈË´¥·¢Ïß + NET_ITC_POLYGON struPedesDetRecog;//ÐÐÈ˼ì²âÇøÓò + NET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM struLaneParam[MAX_ITC_LANE_NUM/*6*/]; //³µµÀ²ÎÊý + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + BYTE byRes1[400]; +}NET_ITC_NOCOMITY_PEDESTRIAN_PARAM, +*LPNET_ITC_NOCOMITY_PEDESTRIAN_PARAM; + +//µ¥¸öIO½ÓÈëÐźŵƲÎÊý +typedef struct tagNET_ITC_SINGLE_IO_LIGHT_PARAM +{ + BYTE byLightType; //½»Í¨µÆµ¼ÏòÀàÐÍ,0-×óתµÆ,1-Ö±ÐеÆ,2-ÓÒתµÆ + BYTE byRelatedIO; //¹ØÁªµÄIO¿ÚºÅ + BYTE byRedLightState; //ºìµÆµçƽ״̬£¬0-¸ßµçƽºìµÆ£¬1-µÍµçƽºìµÆ + BYTE byRes[17]; +}NET_ITC_SINGLE_IO_LIGHT_PARAM, *LPNET_ITC_SINGLE_IO_LIGHT_PARAM; + +//IO½ÓÈëÐźŵƲÎÊý +typedef struct tagNET_ITC_IO_LIGHT_PARAM +{ + NET_ITC_SINGLE_IO_LIGHT_PARAM struIOLight[MAX_LIGHT_NUM]; //µ¥¸öIO½ÓÈëÐźŵƲÎÊý + BYTE byRes[8]; +}NET_ITC_IO_LIGHT_PARAM, *LPNET_ITC_IO_LIGHT_PARAM; + +//µ¥¸ö485½ÓÈëÐźŵƲÎÊý +typedef struct tagNET_ITC_SINGLE_RS485_LIGHT_PARAM +{ + BYTE byLightType; //½»Í¨µÆµ¼ÏòÀàÐÍ£¬0-×óתµÆ£¬1-Ö±Ðеƣ¬2-ÓÒתµÆ + BYTE byRelatedLightChan; //¹ØÁªµÄºìÂ̵Ƽì²âÆ÷ͨµÀºÅ + BYTE byInputLight; //½ÓÈëµÄÐźŵÆÀàÐÍ£¬0-½ÓºìµÆ£¬1-½ÓÂÌµÆ + BYTE byRelatedYLightChan; //¹ØÁªµÄ»ÆµÆ¼ì²âÆ÷ͨµÀºÅ + BYTE byRes[16]; +}NET_ITC_SINGLE_RS485_LIGHT_PARAM, *LPNET_ITC_SINGLE_RS485_LIGHT_PARAM; + +//485½ÓÈëÐźŵƲÎÊý +typedef struct tagNET_ITC_RS485_LIGHT_PARAM +{ + NET_ITC_SINGLE_RS485_LIGHT_PARAM struRS485Light[MAX_LIGHT_NUM]; //µ¥¸ö485½ÓÈëÐźŵƲÎÊý + BYTE byRes[8]; +}NET_ITC_RS485_LIGHT_PARAM, *LPNET_ITC_RS485_LIGHT_PARAM; + +typedef struct tagNET_POS_PARAM +{ + WORD wLeft; + WORD wTop; + WORD wRight; + WORD wBottom; +}NET_POS_PARAM, *LPNET_POS_PARAM; + +//µ¥×éÊÓƵ¼ì²â½»Í¨ÐźŵƲÎÊý½á¹¹ +typedef struct tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM +{ + BYTE byLightNum; //½»Í¨µÆ¸öÊý + BYTE byStraightLight; //ÊÇ·ñÓÐÖ±ÐбêÖ¾µÆ£¬0-·ñ £¬1-ÊÇ + BYTE byLeftLight; //ÊÇ·ñÓÐ×óת±êÖ¾µÆ£¬0-·ñ£¬1-ÊÇ + BYTE byRightLight; //ÊÇ·ñÓÐÓÒת±êÖ¾µÆ£¬0-·ñ£¬1-ÊÇ + BYTE byRedLight;//ÊÇ·ñÓкìµÆ£¬0-·ñ£¬1-ÊÇ + BYTE byGreenLight; //ÊÇ·ñÓÐÂ̵ƣ¬0-·ñ£¬1-ÊÇ + BYTE byYellowLight; //ÊÇ·ñÓлƵƣ¬0-·ñ£¬1-ÊÇ + BYTE byYellowLightTime;//È¡Öµ·¶Î§£¨0¡«10s£©£¨ITC3.7Ver£© + NET_POS_PARAM struLightRect; //½»Í¨µÆÇøÓò + BYTE byRes[24]; +}NET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM, *LPNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM; + + +//ÊÓƵ¼ì²â½»Í¨ÐźŵƲÎÊý½á¹¹(×î´ó¿ÉÓÐ12¸öÇøÓò¼ì²â£¬488×Ö½Ú) +typedef struct tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM +{ + NET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM struTrafficLight[MAX_VIDEO_DETECT_LIGHT_NUM]; //µ¥¸öÊÓƵ¼ì²âÐźŵƲÎÊý + BYTE byRes[8]; +}NET_ITC_VIDEO_DETECT_LIGHT_PARAM, *LPNET_ITC_VIDEO_DETECT_LIGHT_PARAM; + +//½»Í¨ÐźŵƽÓÈë²ÎÊý +typedef union tagNET_ITC_LIGHT_ACCESSPARAM_UNION +{ + DWORD uLen[122]; + NET_ITC_IO_LIGHT_PARAM struIOLight; //IO½ÓÈëÐźŵƲÎÊý + NET_ITC_RS485_LIGHT_PARAM struRS485Light; //485½ÓÈëÐźŵƲÎÊý + NET_ITC_VIDEO_DETECT_LIGHT_PARAM struVideoDelectLight; //ÊÓƵ¼ì²âÐźŵƲÎÊý +}NET_ITC_LIGHT_ACCESSPARAM_UNION, *LPNET_ITC_LIGHT_ACCESSPARAM_UNION; + +//½»Í¨ÐźŵƲÎÊý½á¹¹ +typedef struct tagNET_ITC_TRAFFIC_LIGHT_PARAM +{ + BYTE bySource; //½»Í¨ÐźŵƽÓÈëÔ´£¬0-IO½ÓÈ룬1-RS485½ÓÈë + BYTE byRes1[3]; + NET_ITC_LIGHT_ACCESSPARAM_UNION struLightAccess;//ÐźŵƽÓÈë²ÎÊý + BYTE byRes[32]; +}NET_ITC_TRAFFIC_LIGHT_PARAM, *LPNET_ITC_TRAFFIC_LIGHT_PARAM; + +//Î¥¹æ¼ì²âÏß²ÎÊý½á¹¹ +typedef struct tagNET_ITC_VIOLATION_DETECT_LINE +{ + NET_ITC_LINE struLaneLine; //³µµÀÏß²ÎÊý + NET_ITC_LINE struStopLine; //Í£Ö¹Ïß²ÎÊý + NET_ITC_LINE struRedLightLine; //´³ºìµÆ´¥·¢Ïß²ÎÊý + NET_ITC_LINE struCancelLine; //Ö±Ðд¥·¢Î»ÖÃÈ¡ÏûÏß + NET_ITC_LINE struWaitLine; //´ýÐÐÇøÍ£Ö¹Ïß²ÎÊý + NET_ITC_LINE struRes[8]; +}NET_ITC_VIOLATION_DETECT_LINE, *LPNET_ITC_VIOLATION_DETECT_LINE; + +//ÐÐÈË´³ºìµÆ²ÎÊý +typedef struct tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM +{ + BYTE byEnable; //ʹÄÜ + BYTE bySnapNumTimes; //×¥ÅÄÕÅÊý£º1-3£¬Ä¬ÈÏ3ÕÅ + BYTE byPedesDir; //ÐÐÈË·½Ïò£º0~ÕýÏò£¬1~±³Ïò£¬2~Ë«Ïò + BYTE byDelayTime; //ÑÓʱʱ¼ä1-5s + BYTE byStackTargetEnble;//µþ¼ÓÄ¿±ê¿ò£¨¼´×¥ÅĵÚÒ»ÕÅͼƬÉÏ¿òס´³ºìµÆµÄÐÐÈË£©£¬0~²»µþ¼Ó£¬1~µþ¼Ó + BYTE byCalibRecogCtrl;//±ê¶¨ÇøÓò¿ØÖÆ£»0~ÒƳý±ê¶¨ÇøÓò£¬1~Ìí¼Ó±ê¶¨ÇøÓò + BYTE byRes1[2]; + NET_ITC_TRAFFIC_LIGHT_PARAM struTrafficLight; //½»Í¨ÐźŵƲÎÊý + NET_ITC_LINE struStopLine;//Í£Ö¹Ïß + NET_ITC_POLYGON struCalibRecog[MAX_CALIB_RECOG_NUM/*2*/];//±ê¶¨ÇøÓò + BYTE byRes[440]; +}NET_ITC_REDLIGHT_PEDESTRIAN_PARAM, +*LPNET_ITC_REDLIGHT_PEDESTRIAN_PARAM; + +typedef struct tagNET_ITC_POST_MOBILE_PARAM +{ + BYTE byEnable; + BYTE bySceneMode;//³¡¾°Ä£Ê½ 0-¸ßËÙ¹«Â· 1-³ÇÊеÀ· + /*×¥ÅÄÀàÐÍ + bit0-¿¨¿Ú,bit1-´ó³µÕ¼µÀ,bit2-ѹӲ·¼ç + */ + WORD wExpressWayCapType;//¸ßËÙ¹«Â· + /*×¥ÅÄÀàÐÍ + bit0-¿¨¿Ú,bit1-»úÕ¼·Ç,bit2-Õ¼ÓÃרÓóµµÀ + */ + WORD wUrbanRoadCapType;//³ÇÊеÀ· + BYTE byCapNum;//×¥ÅÄÕÅÊý [2,3] + BYTE byRecordEnable;//Î¥Õ¼ÏñʹÄÜ 0-¹Ø±Õ£¬1-¿ªÆô + DWORD dwPreRecordTime;//¼ÏñԤ¼ʱ¼ä(s) + DWORD dwOverRecordTime;//¼Ïñ³¬Ê±Ê±¼ä(s) + NET_ITC_LANE_LOGIC_PARAM struLane; //³µµÀÊôÐÔ + NET_ITC_POLYGON struPolygon[MAX_MOBILE_POLYGON_NUM/*3*/]; //ÅÆʶÇøÓò²ÎÊý + NET_ITC_VIOLATION_DETECT_LINE struLine[MAX_MOBILE_DETECTLINE_NUM/*3*/]; //Î¥¹æ¼ì²âÏß + NET_ITC_LINE struLaneBoundaryLine; //³µµÀ±ß½çÏߣ¨×îÓұ߳µµÀµÄÓÒ³µµÀÏߣ© + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_INTERVAL_PARAM struInterval;//×¥Åļä¸ô²ÎÊý£¨20byte£© + BYTE byRes[256]; +}NET_ITC_POST_MOBILE_PARAM,*LPNET_ITC_POST_MOBILE_PARAM; + +typedef union tagNET_ITC_TRIGGER_PARAM_UNION +{ + DWORD uLen[1070]; //²ÎÊý + NET_ITC_POST_IOSPEED_PARAM struIOSpeed; //£¨¿¨¿Ú£©IO²âËÙ²ÎÊý + NET_ITC_POST_SINGLEIO_PARAM struSingleIO; //£¨¿¨¿Ú£©µ¥IO²ÎÊý + NET_ITC_POST_RS485_PARAM struPostRs485; //£¨¿¨¿Ú£©RS485³µ¼ìÆ÷²ÎÊý + NET_ITC_POST_RS485_RADAR_PARAM struPostRadar; //£¨¿¨¿Ú£©RS485À×´ï²ÎÊý + NET_ITC_POST_VTCOIL_PARAM struVtCoil; //£¨¿¨¿Ú£©ÐéÄâÏßȦ²ÎÊý + NET_ITC_POST_HVT_PARAM struHvt; //£¨¿¨¿Ú£©»ìÐп¨¿Ú²ÎÊý + NET_ITC_EPOLICE_IOTL_PARAM struIOTL; //£¨µç¾¯£©IOºìÂ̵ƲÎÊý + NET_ITC_EPOLICE_RS485_PARAM struEpoliceRs485; //£¨µç¾¯£©RS485³µ¼ìÆ÷´¥·¢²ÎÊý + NET_ITC_EPOLICE_RS485_PARAM struPERs485; //£¨¿¨Ê½µç¾¯£©RS485³µ¼ìÆ÷´¥·¢²ÎÊý + NET_ITC_POST_MPR_PARAM struPostMpr; //¶àÖ¡¼ì²â´¥·¢£¨MPR£© + NET_DVR_VIA_VTCOIL_PARAM struViaVtCoil; //(VIA)ÊÓƵ¼ì²â²ÎÊý + NET_ITC_POST_IMT_PARAM struPostImt;//Öǻۼà¿Ø´¥·¢ + NET_ITC_POST_PRS_PARAM struPostPrs;//ÊÓƵ¼ì²â´¥·¢ + NET_IPC_POST_HVT_PARAM struIpcHvt;//(IPC) »ìÐп¨¿Ú²ÎÊý + NET_ITC_POST_HVT_PARAM_V50 struHvtV50; /*£¨¿¨¿Ú£©»ìÐп¨¿Ú²ÎÊýV50*/ + NET_ITC_POST_MOBILE_PARAM struPostMobile;// Òƶ¯½»Í¨´¥·¢Ä£Ê½ + NET_ITC_NOCOMITY_PEDESTRIAN_PARAM struNoComityPed;//²»ÀñÈÃÐÐÈ˲ÎÊý + NET_ITC_REDLIGHT_PEDESTRIAN_PARAM struRedLightPed;//ÐÐÈË´³ºìµÆ²ÎÊý +}NET_ITC_TRIGGER_PARAM_UNION, *LPNET_ITC_TRIGGER_PARAM_UNION; + +//µ¥¸ö´¥·¢²ÎÊý½á¹¹ +typedef struct tagNET_ITC_SINGLE_TRIGGERCFG +{ + BYTE byEnable; //ÊÇ·ñÆôÓøô¥·¢Ä£Ê½£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + DWORD dwTriggerType; //´¥·¢ÀàÐÍ£¬Ïê¼ûITC_TRIGGERMODE_TYPE + NET_ITC_TRIGGER_PARAM_UNION uTriggerParam; //´¥·¢²ÎÊý + BYTE byRes[64]; +}NET_ITC_SINGLE_TRIGGERCFG, *LPNET_ITC_SINGLE_TRIGGERCFG; + +//´¥·¢²ÎÊý½á¹¹ +typedef struct tagNET_ITC_TRIGGERCFG +{ + DWORD dwSize; //½á¹¹³¤¶È + NET_ITC_SINGLE_TRIGGERCFG struTriggerParam; //µ¥¸ö´¥·¢²ÎÊý + BYTE byRes[32]; +}NET_ITC_TRIGGERCFG, *LPNET_ITC_TRIGGERCFG; + + +//Î¥¹æ¼ì²âÀàÐͺ궨Òå +typedef enum _ITC_VIOLATION_DETECT_TYPE_ +{ + ITC_VIOLATION_POST = 0x01, //¿¨¿Ú×¥ÅÄ + ITC_VIOLATION_DRIVELINE = 0x02,//ѹ³µµÀÏß×¥ÅÄ + ITC_VIOLATION_REVERSE = 0x04,//ÄæÐÐ×¥ÅÄ + ITC_VIOLATION_REDLIGHT = 0x08,//´³ºìµÆ×¥ÅÄ + ITC_VIOLATION_DIRECTION = 0x10,//²»°´µ¼ÏòÐÐÊ»×¥ÅÄ + ITC_VIOLATION_INTERSECTION_CONGEST = 0x20,//·¿ÚÖÍÁô×¥ÅÄ + ITC_VIOLATION_NONDRIVEWAY = 0x40, //»úÕ¼·Ç×¥ÅÄ + ITC_VIOLATION_CHANGELANE = 0x80, //Î¥·¨±äµÀ + ITC_VIOLATION_BAN = 0x100, //Î¥·¨½ûÁî + ITC_VIOLATION_INTERSECTION_PARK=0x200,//ºìµÆÔ½Ïß + ITC_VIOLATION_GREEN_PARK=0x400,//Â̵ÆÍ£³µ + ITC_VIOLATION_HIGH_SPEED = 0x800, /*³¬ËÙ*/ + ITC_VIOLATION_LOW_SPEED = 0x1000, /*µÍËÙ*/ + ITC_VIOLATION_EMERGENCY = 0x2000, /*Õ¼ÓÃÓ¦¼±³µµÀ*/ + ITC_VIOLATION_TURN_AROUND = 0x8000,/*Î¥·¨µôÍ·*/ + ITC_VIOLATION_CONGESTION = 0x10000 /*Óµ¶Â*/ +}ITC_VIOLATION_DETECT_TYPE; + + +//Î¥¹æ¼ì²â²ÎÊý½á¹¹ +typedef struct tagNET_ITC_VIOLATION_DETECT_PARAM +{ + DWORD dwVioDetectType; //Î¥¹æ¼ì²âÀàÐÍ, °´Î»±íʾ, Ïê¼ûITC_VIOLATION_DETECT_TYPE ,0-²»ÆôÓÃ,1-ÆôÓà + BYTE byDriveLineSnapTimes; //ѹ³µµÀÏß×¥ÅÄÕÅÊý,2-3 + BYTE byReverseSnapTimes; //ÄæÐÐ×¥ÅÄ,2-3 + WORD wStayTime; //»úÕ¼·ÇÍ£Áôʱ¼ä£¨¸Ãʱ¼äºó×¥ÅÄ£©£¬µ¥Î»s + BYTE byNonDriveSnapTimes;//»úÕ¼·Ç×¥ÅÄÕÅÊý2-3 + BYTE byChangeLaneTimes;//Î¥·¨±äµÀ×¥ÅÄÕÅÊý 2-3 + BYTE bybanTimes;//Î¥·¨½ûÁî×¥ÅÄÕÅÊý2-3 + BYTE byDriveLineSnapSen;// ѹÏßÁéÃô¶È(0~100)(3.7Ver) + WORD wSnapPosFixPixel; //µÚ2,3ÕÅ×¥ÅÄλÖÃ×îСƫÒÆ(Î¥·´ÐźŵÆʱÆðЧ)£¨µ¥Î»£ºÏñËØ£© ÃüÃûÐè¸Ä½ø + BYTE bySpeedTimes;//Î¥·¨³¬ËÙ×¥ÅÄÕÅÊý2-3(3.8Ver) + BYTE byTurnAroundEnable;//Î¥ÕµôͷʹÄÜ 0~¹Ø±Õ 1~¿ªÆô + BYTE byThirdPlateRecogTime;//µÚÈýÕÅÅÆʶʱ¼ä 0~180s + BYTE byPostSnapTimes;//¿¨¿Ú×¥ÅÄÕÅÊý,1-2ÕÅ + BYTE byRes1[18]; + WORD wStopLineDis; //µç¾¯µÚ2ÕÅÎ¥¹æͼƬÓëÍ£Ö¹ÏßµÄ×î¶Ì¾àÀ룬[0,300]µ¥Î»(ÏñËØ) + BYTE byRes[14]; +}NET_ITC_VIOLATION_DETECT_PARAM, *LPNET_ITC_VIOLATION_DETECT_PARAM; + +//¹ØÁª³µµÀ·½ÏòÀàÐͶ¨Òå +typedef enum _ITC_RELA_LANE_DIRECTION_TYPE_ +{ + ITC_RELA_LANE_DIRECTION_UNKNOW = 0, //ÆäËü + ITC_RELA_LANE_EAST_WEST = 1, //´Ó¶«ÏòÎ÷ + ITC_RELA_LANE_WEST_EAST = 2, //´ÓÎ÷Ïò¶« + ITC_RELA_LANE_SOUTH_NORTH = 3, //´ÓÄÏÏò±± + ITC_RELA_LANE_NORTH_SOUTH = 4, //´Ó±±ÏòÄÏ + ITC_RELA_LANE_EASTSOUTH_WESTNORTH = 5, //´Ó¶«ÄÏÏòÎ÷±± + ITC_RELA_LANE_WESTNORTH_EASTSOUTH = 6, //´ÓÎ÷±±Ïò¶«ÄÏ + ITC_RELA_LANE_EASTNORTH_WESTSOUTH = 7, //´Ó¶«±±ÏòÎ÷ÄÏ + ITC_RELA_LANE_WESTSOUTH_EASTNORTH = 8 //´ÓÎ÷ÄÏÏò¶«±± +} ITC_RELA_LANE_DIRECTION_TYPE; + + +//³µµÀÓÃ;ÀàÐͶ¨Òå +typedef enum _ITC_LANE_USEAGE_TYPE_ +{ + ITC_LANE_USEAGE_UNKNOW = 0, //δ֪ + ITC_LANE_CARRIAGEWAY = 1, //Õý³£³µµÀ + ITC_LANE_BUS = 2, //¹«½»³µ×¨ÓõÀ + ITC_LANE_FAST = 3, //¿ì³µµÀ + ITC_LANE_SLOW = 4, //Âý³µµÀ + ITC_LANE_MOTOR = 5, //ĦÍгµµÀ + ITC_LANE_NONMOTOR = 6, //·Ç»ú¶¯³µµÀ + ITC_LANE_REVERSE_LANE = 7, //·´Ïò³µµÀ + ITC_LANE_BAN_TRUCKS = 8, // ½ûÖ¹»õ³µ³µµÀ + ITC_LANE_MIX = 9, //»ìºÏ³µµÀ + ITC_LANE_EMERGENCY = 10, //Ó¦¼±³µµÀ + ITC_LANE_BAN_LEFT = 11, // ½û×ó³µµÀ + ITC_LANE_BAN_RIGHT = 12 // ½ûÓÒ³µµÀ +}ITC_LANE_USEAGE_TYPE; + +//³µµÀ·½ÏòÀàÐͶ¨Òå +typedef enum _ITC_LANE_DIRECTION_TYPE_ +{ + ITC_LANE_DIRECTION_UNKNOW = 0, //δ֪ + ITC_LANE_LEFT = 1, //×óת + ITC_LANE_STRAIGHT = 2, //Ö±ÐÐ + ITC_LANE_LEFT_STRAIGHT = 3, //×óת+Ö±ÐÐ + ITC_LANE_RIGHT = 4, //ÓÒת + ITC_LANE_LEFT_RIGHT = 5, //×óת+ÓÒת + ITC_LANE_RIGHT_STRAIGHT = 6, //ÓÒת+Ö±ÐÐ + ITC_LANE_LEFT_RIGHT_STRAIGHT = 7, //×óת+ÓÒת+Ö±ÐÐ + ITC_LANE_LEFT_WAIT = 9, //×óת´ýÐÐ + ITC_LANE_STRAIGHT_WAIT = 10, //Ö±ÐдýÐÐ + ITC_LANE_FORWARD = 11, //ÕýÏòÐÐÊ» + ITC_LANE_BACKWARD = 12, //±³ÏòÐÐÊ» + ITC_LANE_BOTHWAY = 13, //Ë«ÏòÐÐÊ» + ITC_LANE_STRAIGHT_WAIT_RIGHT = 14 //Ö±ÐдýÐÐ + ÓÒת +}ITC_LANE_DIRECTION_TYPE; + +//³µÁ¾ÐÐÊ»·½ÏòÀàÐͶ¨Òå +typedef enum _ITC_LANE_CAR_DRIVE_DIRECT_ +{ + ITC_LANE_DRIVE_UNKNOW = 0, //δ֪ + ITC_LANE_DRIVE_UP_TO_DOWN = 1, //´ÓÉÏÍùÏÂÐÐÊ»(ÏÂÐÐ) + ITC_LANE_DRIVE_DOWN_TO_UP = 2 //´ÓÏÂÍùÉÏÐÐÊ»(ÉÏÐÐ) +}ITC_LANE_CAR_DRIVE_DIRECT; + +//ÏßÀàÐͶ¨Òå +typedef enum _ITC_LINE_TYPE_ +{ + ITC_LINT_UNKNOW = 0, //δ֪ + ITC_LINE_WHITE = 1, //³µµÀ¼äµÄ°×ʵÏß + ITC_LINE_STOP = 2, //³µµÀÍ£Ö¹Ïß + ITC_LINE_SINGLE_YELLOW = 3, //µ¥»ÆÏß + ITC_LINE_DOUBLE_YELLOW = 4, //Ë«»ÆÏß + ITC_LINE_GUARD_RAIL = 5, //³µµÀÏßÉÏÓл¤À¸ + ITC_LINE_NO_CROSS = 6, //³µÁ¾ÎÞ·¨¿çÔ½µÄ³µµÀÏß + ITC_LINE_DOTTED = 7 //ÐéÏß +}ITC_LINE_TYPE; + + +//µ¥¸ö³µµÀÊÓƵµç¾¯´¥·¢²ÎÊý½á¹¹ +typedef struct tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM +{ + BYTE byLaneNO; //¹ØÁªµÄ³µµÀºÅ + BYTE bySensitivity; //ÏßȦÁéÃô¶È£¬[1,100] + BYTE byEnableRadar;//ÆôÓÃÀ×´ï²âÊÔ0-²»ÆôÓã¬1-ÆôÓà + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + NET_ITC_LANE_LOGIC_PARAM struLane; //³µµÀ²ÎÊý + NET_ITC_VIOLATION_DETECT_PARAM struVioDetect; //Î¥¹æ¼ì²â²ÎÊý + NET_ITC_VIOLATION_DETECT_LINE struLine; //Î¥¹æ¼ì²âÏß + NET_ITC_POLYGON struPlateRecog; //ÅÆʶÇøÓò²ÎÊý + BYTE byRecordEnable;//´³ºìµÆÖÜÆÚ¼Ïñ±êÖ¾£¬0-²»Â¼Ïñ£¬1-¼Ïñ + BYTE byRecordType;//´³ºìµÆ¼ÏñÀàÐÍ£¬0-Ԥ¼£¬1-ÑÓʱ¼Ïñ + BYTE byPreRecordTime;//´³ºìµÆ¼ÏñƬ¶ÎԤ¼ʱ¼ä£¨Ä¬ÈÏ0£©£¬µ¥Î»£ºÃë + BYTE byRecordDelayTime;//´³ºìµÆ¼ÏñƬ¶ÎÑÓʱʱ¼ä£¨Ä¬ÈÏ0£©£¬µ¥Î»£ºÃë + BYTE byRecordTimeOut;//´³ºìµÆÖÜÆÚ¼Ïñ³¬Ê±Ê±¼ä£¨Ã룩 + BYTE byCarSpeedLimit; //³µËÙÏÞÖÆÖµ£¬µ¥Î»km/h + BYTE byCarSignSpeed;//±êÖ¾ÏÞËÙ£¬µ¥Î»km/h + BYTE bySnapPicPreRecord; //×¥ÅÄͼƬԤ¼ʱ¼äµã£»0-ĬÈÏÖµ£¨µÚ¶þÕÅͼƬ£©£¬1-µÚÒ»ÕÅͼƬ£¬2-µÚ¶þÕÅͼƬ£¬3-µÚÈýÕÅͼƬ + NET_ITC_INTERVAL_PARAM struInterval;//×¥Åļä¸ô²ÎÊý£¨20byte£© + BYTE byRes[36]; +}NET_ITC_LANE_VIDEO_EPOLICE_PARAM, *LPNET_ITC_LANE_VIDEO_EPOLICE_PARAM; + +//ÊÓƵµç¾¯´¥·¢²ÎÊý½á¹¹ +typedef struct tagNET_ITC_VIDEO_EPOLICE_PARAM +{ + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byLaneNum; //ʶ±ðµÄ³µµÀ¸öÊý + BYTE byLogicJudge;//´³ºìµÆÎ¥¹æÅжÏÂß¼­£¬ÉèÖÃֵΪ£º0-°´·½Ïò£¬1-°´³µµÀ + BYTE byRes1; + NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //ÅÆʶ²ÎÊý + NET_ITC_TRAFFIC_LIGHT_PARAM struTrafficLight; //½»Í¨ÐźŵƲÎÊý + NET_ITC_LANE_VIDEO_EPOLICE_PARAM struLaneParam[MAX_ITC_LANE_NUM]; //µ¥³µµÀ²ÎÊý + NET_ITC_LINE struLaneBoundaryLine; //³µµÀ±ß½çÏߣ¨×îÓұ߳µµÀµÄ±ß½çÏߣ© + NET_ITC_LINE struLeftLine; //×óתÍä·Ö½çÏß + NET_ITC_LINE struRightLine; //ÓÒתÍä·Ö½çÏß + NET_ITC_LINE struTopZebraLine; //Éϲ¿°ßÂíÏß + NET_ITC_LINE struBotZebraLine; //ϲ¿°ßÂíÏß + BYTE byRes[32]; +}NET_ITC_VIDEO_EPOLICE_PARAM, *LPNET_ITC_VIDEO_EPOLICE_PARAM; + +typedef union tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION +{ + DWORD uLen[1150]; + NET_ITC_VIDEO_EPOLICE_PARAM struVideoEP; //ÊÓƵµç¾¯²ÎÊý +}NET_ITC_VIDEO_TRIGGER_PARAM_UNION, *LPNET_ITC_VIDEO_TRIGGER_PARAM_UNION; + +typedef struct tagNET_ITC_VIDEO_TRIGGER_PARAM +{ + DWORD dwSize; + DWORD dwMode; //´¥·¢Ä£Ê½£¬Ïê¼ûITC_TRIGGERMODE_TYPE + NET_ITC_VIDEO_TRIGGER_PARAM_UNION uVideoTrigger; //´¥·¢Ä£Ê½²ÎÊý + BYTE byRes[32]; +}NET_ITC_VIDEO_TRIGGER_PARAM, *LPNET_ITC_VIDEO_TRIGGER_PARAM; + +typedef struct tagNET_DVR_STATUS_DETECTCFG +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnableTrigIODetect; //¿ªÆô´¥·¢IO״̬¼ì²â£¬1-ÊÇ£¬0-·ñ + BYTE byEnableFlashOutDetect; //¿ªÆôͬ²½Êä³ö״̬¼ì²â£¬1-ÊÇ£¬0-·ñ + BYTE byEnableRS485Detect; //¿ªÆôRS485½ÓÊÕ״̬¼ì²â£¬1-ÊÇ£¬0-·ñ + BYTE byEnableTrafficLightDetect;//¿ªÆô½»Í¨µÆ״̬¼ì²â£¬1-ÊÇ£¬0-·ñ + BYTE byRes[28]; +}NET_DVR_STATUS_DETECTCFG, *LPNET_DVR_STATUS_DETECTCFG; + +typedef enum _ITC_STATUS_DETECT_TYPE_ +{ + ITC_STATUS_DETECT_NULL = 0, //δ֪ + ITC_STATUS_DETECT_TRIGGERIO, //´¥·¢IO + ITC_STATUS_DETECT_FLASHOUT, //ͬ²½Êä³ö + ITC_STATUS_DETECT_RS485, //RS485 + ITC_STATUS_DETECT_TRIGGERTYPE, //´¥·¢ÀàÐÍ£¨±£Áô£© + ITC_STATUS_DETECT_TRAFFICLIGHT_COLOR, //½»Í¨µÆ£¨Çø·ÖÑÕÉ«£© + ITC_STATUS_DETECT_TRAFFICLIGHT_TURN //½»Í¨µÆ£¨Çø·ÖתÏò£© +}ITC_STATUS_DETECT_TYPE; + +typedef struct tagNET_ITC_TRIGGERIO_INFO +{ + BYTE byTriggerIOIndex[MAX_IOIN_NUM]; //´¥·¢IOºÅ + BYTE byRes[40]; +}NET_ITC_TRIGGERIO_INFO, *LPNET_ITC_TRIGGERIO_INFO; + +typedef struct tagNET_ITC_FLASHOUT_INFO +{ + BYTE byFlashOutIndex[MAX_IOOUT_K_NUM]; //ͬ²½Êä³öºÅ + BYTE byRes[40]; +}NET_ITC_FLASHOUT_INFO, *LPNET_ITC_FLASHOUT_INFO; + +typedef struct tagNET_ITC_SERIAL_CHECKINFO +{ + BYTE bySerialIndex[MAX_ITC_SERIALCHECK_NUM]; //485´®¿ÚУÑé½á¹û£¬0-ÎÞЧ,1-ÓÐЧ, bySerialIndex[0]±íʾÕýÈ·µÄÍ·, bySerialIndex[1]±íʾÕýÈ·µÄβ + BYTE byRes[40]; +}NET_ITC_SERIAL_CHECKINFO, *LPNET_ITC_SERIAL_CHECKINFO; + +typedef struct tagNET_ITC_TRIGGERTYPE_INFO +{ + BYTE byTrigTypeIndex; //´¥·¢ÀàÐÍÖµ + BYTE byRes[47]; +}NET_ITC_TRIGGERTYPE_INFO, *LPNET_ITC_TRIGGERTYPE_INFO; + +//ÊÓƵµç¾¯ +typedef struct tagNET_ITC_TRAFFIC_LIGHT_COLOR +{ + BYTE byLeftLight;//×óתµÆ£¬0 ±íʾÎÞЧ£¬1ΪºìµÆ 2ΪÂÌµÆ 3 »ÆµÆ 4µÆ¶¼²»ÁÁ + BYTE byRightLight; //ÓÒתµÆ£¬0 ±íʾÎÞЧ£¬1ΪºìµÆ 2ΪÂÌµÆ 3 »ÆµÆ 4µÆ¶¼²»ÁÁ + BYTE byStraightLight; //Ö±Ðеƣ¬0 ±íʾÎÞЧ£¬1ΪºìµÆ 2ΪÂÌµÆ 3 »ÆµÆ 4µÆ¶¼²»ÁÁ + BYTE byRes[45]; +}NET_ITC_TRAFFIC_LIGHT_COLOR, *LPNET_ITC_TRAFFIC_LIGHT_COLOR; + +//·ÇÊÓƵµç¾¯ +typedef struct tagNET_ITC_TRAFFIC_LIGHT_TURN +{ + BYTE byLightType[MAX_ITC_LANE_NUM];// 0 ±íʾÎÞЧ£¬1ΪºìµÆ 2ΪÂÌµÆ 3 »ÆµÆ 4µÆ¶¼²»ÁÁ + BYTE byRes[42]; +} NET_ITC_TRAFFIC_LIGHT_TURN, *LPNET_ITC_TRAFFIC_LIGHT_TURN; + +typedef union tagNET_ITC_STATUS_UNION +{ + BYTE uLen[48]; //²ÎÊý + NET_ITC_TRIGGERIO_INFO struTrigIO; //´¥·¢IO¿ÚºÅ + NET_ITC_FLASHOUT_INFO struFlashOut; //ͬ²½Êä³ö + NET_ITC_SERIAL_CHECKINFO struSerial; //´®¿Ú + NET_ITC_TRIGGERTYPE_INFO struTrigType; //´¥·¢ÀàÐÍ£¨±£Áô£© + NET_ITC_TRAFFIC_LIGHT_COLOR struTrafficLightColor; //½»Í¨µÆ£¨Çø·ÖÑÕÉ«£©¶ÔÓ¦ÀàÐÍITC_STATUS_DETECT_TRAFFICLIGHT_COLOR + NET_ITC_TRAFFIC_LIGHT_TURN struTrafficLightTurn;//½»Í¨µÆ£¨Çø·ÖתÏò£©¶ÔÓ¦ÀàÐÍITC_STATUS_DETECT_TRAFFICLIGHT_TURN +}NET_ITC_STATUS_UNION, *LPNET_ITC_STATUS_UNION; + +typedef struct tagNET_ITC_STATUS_DETECT_RESULT +{ + ITC_STATUS_DETECT_TYPE dwStatusType;//״̬¼ì²âÀàÐÍ£¬Ïê¼ûITC_STATUS_DETECT_TYPE + NET_ITC_STATUS_UNION uStatusParam; //״̬¼ì²â½á¹û + DWORD dwHoldTime; //µÆÁÁ³ÖÐøʱ¼ä£¨±£Áô£©£¬µ¥Î»£ºms + BYTE byRes[32]; +}NET_ITC_STATUS_DETECT_RESULT, *LPNET_ITC_STATUS_DETECT_RESULT; + +typedef struct tagNET_DVR_SETUPALARM_PARAM +{ + DWORD dwSize; + BYTE byLevel; //²¼·ÀÓÅÏȼ¶£¬0-Ò»µÈ¼¶£¨¸ß£©£¬1-¶þµÈ¼¶£¨ÖУ©£¬2-ÈýµÈ¼¶£¨µÍ£© + BYTE byAlarmInfoType; //ÉÏ´«±¨¾¯ÐÅÏ¢ÀàÐÍ£¨×¥ÅÄ»úÖ§³Ö£©£¬0-Àϱ¨¾¯ÐÅÏ¢£¨NET_DVR_PLATE_RESULT£©£¬1-б¨¾¯ÐÅÏ¢(NET_ITS_PLATE_RESULT)2012-9-28 + BYTE byRetAlarmTypeV40; //0--·µ»ØNET_DVR_ALARMINFO_V30»òNET_DVR_ALARMINFO, 1--É豸֧³ÖNET_DVR_ALARMINFO_V40Ôò·µ»ØNET_DVR_ALARMINFO_V40£¬²»Ö§³ÖÔò·µ»ØNET_DVR_ALARMINFO_V30»òNET_DVR_ALARMINFO + BYTE byRetDevInfoVersion; //CVRÉÏ´«±¨¾¯ÐÅÏ¢»Øµ÷½á¹¹Ìå°æ±¾ºÅ 0-COMM_ALARM_DEVICE£¬ 1-COMM_ALARM_DEVICE_V40 + BYTE byRetVQDAlarmType; //VQD±¨¾¯ÉÏ´«ÀàÐÍ£¬0-ÉÏ´«±¨±¨¾¯NET_DVR_VQD_DIAGNOSE_INFO£¬1-ÉÏ´«±¨¾¯NET_DVR_VQD_ALARM + //1-±íʾÈËÁ³Õì²â±¨¾¯À©Õ¹(INTER_FACE_DETECTION),0-±íʾԭÏÈÖ§³Ö½á¹¹(INTER_FACESNAP_RESULT) + BYTE byFaceAlarmDetection; + //Bit0- ±íʾ¶þ¼¶²¼·ÀÊÇ·ñÉÏ´«Í¼Æ¬: 0-ÉÏ´«£¬1-²»ÉÏ´« + //Bit1- ±íʾ¿ªÆôÊý¾ÝÉÏ´«È·ÈÏ»úÖÆ£»0-²»¿ªÆô£¬1-¿ªÆô + //Bit6- ±íʾÀ×´ï¼ì²â±¨¾¯(eventType:radarDetection)ÊÇ·ñ¿ªÆôʵʱÉÏ´«£»0-²»¿ªÆô£¬1-¿ªÆô£¨ÓÃÓÚweb²å¼þʵʱÏÔʾÀ×´ïÄ¿±ê¹ì¼££© + BYTE bySupport; + //¶ÏÍøÐø´«ÀàÐÍ + //bit0-³µÅƼì²â£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit1-¿ÍÁ÷ͳ¼Æ£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit2-ÈȶÈͼͳ¼Æ£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit3-ÈËÁ³×¥ÅÄ£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit4-ÈËÁ³¶Ô±È£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + BYTE byBrokenNetHttp; + WORD wTaskNo; //ÈÎÎñ´¦ÀíºÅ ºÍ (ÉÏ´«Êý¾ÝNET_DVR_VEHICLE_RECOG_RESULTÖеÄ×Ö¶ÎdwTaskNo¶ÔÓ¦ ͬʱ Ï·¢ÈÎÎñ½á¹¹ NET_DVR_VEHICLE_RECOG_CONDÖеÄ×Ö¶ÎdwTaskNo¶ÔÓ¦) + BYTE byDeployType; //²¼·ÀÀàÐÍ£º0-¿Í»§¶Ë²¼·À£¬1-ʵʱ²¼·À + BYTE bySubScription; //¶©ÔÄ£¬°´Î»±íʾ£¬Î´¿ªÆô¶©ÔIJ»Éϱ¨ //ռλ + //Bit7-Òƶ¯Õì²âÈ˳µ·ÖÀàÊÇ·ñ´«Í¼£»0-²»´«Í¼(V30Éϱ¨)£¬1-´«Í¼(V40Éϱ¨) + BYTE byRes1[2]; + BYTE byAlarmTypeURL;//bit0-±íʾÈËÁ³×¥Åı¨¾¯ÉÏ´«£¨INTER_FACESNAP_RESULT£©£»0-±íʾ¶þ½øÖÆ´«Ê䣬1-±íʾURL´«Ê䣨É豸֧³ÖµÄÇé¿öÏ£¬É豸֧³ÖÄÜÁ¦¸ù¾Ý¾ßÌ屨¾¯ÄÜÁ¦¼¯ÅжÏ,ͬʱÉ豸ÐèÒªÖ§³ÖURLµÄÏà¹Ø·þÎñ£¬µ±Ç°ÊÇ¡±ÔÆ´æ´¢¡°£© + //bit1-±íʾEVENT_JSONÖÐͼƬÊý¾Ý³¤´«ÀàÐÍ£»0-±íʾ¶þ½øÖÆ´«Ê䣬1-±íʾURL´«Ê䣨É豸֧³ÖµÄÇé¿öÏ£¬É豸֧³ÖÄÜÁ¦¸ù¾Ý¾ßÌ屨¾¯ÄÜÁ¦¼¯Åжϣ© + //bit2 - ÈËÁ³±È¶Ô(±¨¾¯ÀàÐÍΪCOMM_SNAP_MATCH_ALARM)ÖÐͼƬÊý¾ÝÉÏ´«ÀàÐÍ£º0 - ¶þ½øÖÆ´«Ê䣬1 - URL´«Êä + //bit3 - ÐÐΪ·ÖÎö(±¨¾¯ÀàÐÍΪCOMM_ALARM_RULE)ÖÐͼƬÊý¾ÝÉÏ´«ÀàÐÍ£º0 - ¶þ½øÖÆ´«Ê䣬1 - URL´«Ê䣬±¾×Ö¶ÎÉ豸ÊÇ·ñÖ§³Ö£¬¶ÔÓ¦ÈíÓ²¼þÄÜÁ¦¼¯ÖнڵãÊÇ·ñ·µ»ØÇÒΪtrue + BYTE byCustomCtrl;//Bit0- ±íʾ֧³Ö¸±¼ÝÊ»ÈËÁ³×ÓͼÉÏ´«: 0-²»ÉÏ´«,1-ÉÏ´« +}NET_DVR_SETUPALARM_PARAM, *LPNET_DVR_SETUPALARM_PARAM; + +typedef struct tagNET_DVR_SETUPALARM_PARAM_V50 +{ + DWORD dwSize; + BYTE byLevel; //²¼·ÀÓÅÏȼ¶£¬0-Ò»µÈ¼¶£¨¸ß£©£¬1-¶þµÈ¼¶£¨ÖУ©£¬2-ÈýµÈ¼¶£¨µÍ£© + BYTE byAlarmInfoType; //ÉÏ´«±¨¾¯ÐÅÏ¢ÀàÐÍ£¨×¥ÅÄ»úÖ§³Ö£©£¬0-Àϱ¨¾¯ÐÅÏ¢£¨NET_DVR_PLATE_RESULT£©£¬1-б¨¾¯ÐÅÏ¢(NET_ITS_PLATE_RESULT)2012-9-28 + BYTE byRetAlarmTypeV40; //0--·µ»ØNET_DVR_ALARMINFO_V30»òNET_DVR_ALARMINFO, 1--É豸֧³ÖNET_DVR_ALARMINFO_V40Ôò·µ»ØNET_DVR_ALARMINFO_V40£¬²»Ö§³ÖÔò·µ»ØNET_DVR_ALARMINFO_V30»òNET_DVR_ALARMINFO + BYTE byRetDevInfoVersion; //CVRÉÏ´«±¨¾¯ÐÅÏ¢»Øµ÷½á¹¹Ìå°æ±¾ºÅ 0-COMM_ALARM_DEVICE£¬ 1-COMM_ALARM_DEVICE_V40 + BYTE byRetVQDAlarmType; //VQD±¨¾¯ÉÏ´«ÀàÐÍ£¬0-ÉÏ´«±¨±¨¾¯NET_DVR_VQD_DIAGNOSE_INFO£¬1-ÉÏ´«±¨¾¯NET_DVR_VQD_ALARM + //1-±íʾÈËÁ³Õì²â±¨¾¯À©Õ¹(INTER_FACE_DETECTION),0-±íʾԭÏÈÖ§³Ö½á¹¹(INTER_FACESNAP_RESULT) + BYTE byFaceAlarmDetection; + //Bit0- ±íʾ¶þ¼¶²¼·ÀÊÇ·ñÉÏ´«Í¼Æ¬: 0-ÉÏ´«£¬1-²»ÉÏ´« + //Bit1- ±íʾ¿ªÆôÊý¾ÝÉÏ´«È·ÈÏ»úÖÆ£»0-²»¿ªÆô£¬1-¿ªÆô + //Bit6- ±íʾÀ×´ï¼ì²â±¨¾¯(eventType:radarDetection)ÊÇ·ñ¿ªÆôʵʱÉÏ´«£»0-²»¿ªÆô£¬1-¿ªÆô£¨ÓÃÓÚweb²å¼þʵʱÏÔʾÀ×´ïÄ¿±ê¹ì¼££© + BYTE bySupport; + //¶ÏÍøÐø´«ÀàÐÍ + //bit0-³µÅƼì²â£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit1-¿ÍÁ÷ͳ¼Æ£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit2-ÈȶÈͼͳ¼Æ£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit3-ÈËÁ³×¥ÅÄ£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit4-ÈËÁ³¶Ô±È£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit5-JSON±¨¾¯Í¸´«£¨IPC£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit6-ÈȶÈͼ°´ÈËԱͣÁôʱ¼äͳ¼ÆÊý¾ÝÉÏ´«Ê¼þ£¨0-²»Ðø´«£¬1-Ðø´«£© + //bit7-ÈȶÈͼ°´ÈËÊýͳ¼ÆÊý¾ÝÉÏ´«Ê¼þµÄÈ·ÈÏ»úÖÆ£¨0-²»Ðø´«£¬1-Ðø´«£© + BYTE byBrokenNetHttp; + WORD wTaskNo; //ÈÎÎñ´¦ÀíºÅ ºÍ (ÉÏ´«Êý¾ÝNET_DVR_VEHICLE_RECOG_RESULTÖеÄ×Ö¶ÎdwTaskNo¶ÔÓ¦ ͬʱ Ï·¢ÈÎÎñ½á¹¹ NET_DVR_VEHICLE_RECOG_CONDÖеÄ×Ö¶ÎdwTaskNo¶ÔÓ¦) + BYTE byDeployType; //²¼·ÀÀàÐÍ£º0-¿Í»§¶Ë²¼·À£¬1-ʵʱ²¼·À + BYTE bySubScription; //¶©ÔÄ£¬°´Î»±íʾ£¬Î´¿ªÆô¶©ÔIJ»Éϱ¨ //ռλBit7-Òƶ¯Õì²âÈ˳µ·ÖÀàÊÇ·ñ´«Í¼£»0-²»´«Í¼(V30Éϱ¨)£¬1-´«Í¼(V40Éϱ¨) + //¶ÏÍøÐø´«ÏìÓ¦ÀàÐÍV60°æ±¾ + //bit0-AIDʼþ(COMM_ALARM_AID_V41) £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit1-TFSʼþ£¨COMM_ALARM_TFS£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit2-TPSͳ¼Æ¹ý³µÊ¼þ£¨COMM_ALARM_TPS_STATISTICS£© £¨0-²»Ðø´«£¬1-Ðø´«£© + //bit3-ÐÐΪ·ÖÎö(COMM_ALARM_RULE) £¨0-²»Ðø´«£¬1-Ðø´«£© + BYTE byBrokenNetHttpV60; + BYTE byRes1; + BYTE byAlarmTypeURL;//bit0-±íʾÈËÁ³×¥Åı¨¾¯ÉÏ´«£¨INTER_FACESNAP_RESULT£©£»0-±íʾ¶þ½øÖÆ´«Ê䣬1-±íʾURL´«Ê䣨É豸֧³ÖµÄÇé¿öÏ£¬É豸֧³ÖÄÜÁ¦¸ù¾Ý¾ßÌ屨¾¯ÄÜÁ¦¼¯ÅжÏ,ͬʱÉ豸ÐèÒªÖ§³ÖURLµÄÏà¹Ø·þÎñ£¬µ±Ç°ÊÇ¡±ÔÆ´æ´¢¡°£© + //bit1-±íʾEVENT_JSONÖÐͼƬÊý¾Ý³¤´«ÀàÐÍ£»0-±íʾ¶þ½øÖÆ´«Ê䣬1-±íʾURL´«Ê䣨É豸֧³ÖµÄÇé¿öÏ£¬É豸֧³ÖÄÜÁ¦¸ù¾Ý¾ßÌ屨¾¯ÄÜÁ¦¼¯Åжϣ© + //bit2 - ÈËÁ³±È¶Ô(±¨¾¯ÀàÐÍΪCOMM_SNAP_MATCH_ALARM)ÖÐͼƬÊý¾ÝÉÏ´«ÀàÐÍ£º0 - ¶þ½øÖÆ´«Ê䣬1 - URL´«Êä + //bit3 - ÐÐΪ·ÖÎö(±¨¾¯ÀàÐÍΪCOMM_ALARM_RULE)ÖÐͼƬÊý¾ÝÉÏ´«ÀàÐÍ£º0 - ¶þ½øÖÆ´«Ê䣬1 - URL´«Ê䣬±¾×Ö¶ÎÉ豸ÊÇ·ñÖ§³Ö£¬¶ÔÓ¦ÈíÓ²¼þÄÜÁ¦¼¯ÖнڵãÊÇ·ñ·µ»ØÇÒΪtrue + BYTE byCustomCtrl;//Bit0- ±íʾ֧³Ö¸±¼ÝÊ»ÈËÁ³×ÓͼÉÏ´«: 0-²»ÉÏ´«,1-ÉÏ´« + BYTE byRes4[128]; +}NET_DVR_SETUPALARM_PARAM_V50, *LPNET_DVR_SETUPALARM_PARAM_V50; + +typedef struct tagNET_ITC_VIDEO_TRIGGER_COND +{ + DWORD dwSize; + DWORD dwChannel; + DWORD dwTriggerMode; //ÊÓƵ´¥·¢Ä£Ê½ÀàÐÍ£¬Ïê¼ûITC_TRIGGERMODE_TYPE + BYTE byRes[16]; +}NET_ITC_VIDEO_TRIGGER_COND, *LPNET_ITC_VIDEO_TRIGGER_COND; + +//Ìõ¼þ½á¹¹ +typedef struct tagNET_ITC_FTP_TYPE_COND +{ + DWORD dwChannel;//ͨµÀºÅ + BYTE byWorkMode; // 0-FTP1(Ö÷FTP)£¬1-FTP2(±¸FTP) + BYTE byRes[7]; +}NET_ITC_FTP_TYPE_COND, *LPNET_ITC_FTP_TYPE_COND; + +//ÅäÖýṹ +typedef struct tagNET_ITC_FTP_CFG +{ + DWORD dwSize; + BYTE byEnable; /*ÊÇ·ñÆô¶¯ftpÉÏ´«¹¦ÄÜ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byAddressType; //0-ʵ¼Êipv4 ipv6µØÖ· 1-ÓòÃû + // ¿ØÖÆunionServerÊÇʹÓÃʵ¼ÊµØÖ·»¹ÊÇÓòÃû + WORD wFTPPort; /*¶Ë¿Ú*/ + union + { + struct + { + BYTE szDomain[MAX_DOMAIN_NAME];//·þÎñÆ÷µØÖ·£¬ÓòÃû + BYTE byRes1[80]; + }struDomain; + struct + { + NET_DVR_IPADDR struIp;/*IPµØÖ·*/ //IPv4 IPv6µØÖ·, 144×Ö½Ú + } struAddrIP; + }unionServer; //ʹÓÃÁªºÏÌå½á¹¹£¬Í¨¹ýbyAddressType×ֶαíʾÊÇIPµØÖ·»¹ÊÇÓòÃû 64 + BYTE szUserName[NAME_LEN]; /*Óû§Ãû*/ + BYTE szPassWORD[PASSWD_LEN]; /*ÃÜÂë*/ + BYTE byRes4; // 0-FTP1(Ö÷FTP)£¬1-FTP2(±¸FTP) + BYTE byDirLevel; /*0 = ²»Ê¹ÓÃĿ¼½á¹¹£¬Ö±½Ó±£´æÔÚ¸ùĿ¼, + 1 = ʹÓÃ1¼¶Ä¿Â¼,2=ʹÓÃ2¼¶Ä¿Â¼, + 3 = ʹÓÃ3¼¶Ä¿Â¼,4=ʹÓÃ4¼¶Ä¿Â¼*/ + BYTE byIsFilterCarPic;/*³µÅÆСͼÊÇ·ñÉÏ´«£¬0-ÉÏ´«,1-²»ÉÏ´«*/ + BYTE byUploadDataType;//0-È«²¿£¬1-¿¨¿Ú£¬2-Î¥Õ (µ¥FTPʱĬÈÏÑ¡ÔñÈ«²¿£¬Ë«FTPʱ֧³Ö¿¨¿Ú£¬Î¥ÕµÄÑ¡Ôñ) + NET_DVR_PICTURE_NAME struPicNameRule;/* ͼƬÃüÃû¹æÔò */ + BYTE byTopDirMode; /*Ò»¼¶Ä¿Â¼, 0x1 = ʹÓÃÉ豸Ãû, + 0x2 = ʹÓÃÉ豸ºÅ,0x3 =ʹÓÃÉ豸ipµØÖ·£¬ + 0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ), + 0x6=ʹÓÃʱ¼ä(ÄêÔÂÈÕ),0x7=Î¥¹æÀàÐÍ,0x8=·½Ïò,0x9=µØµã, + 0xa=ͨµÀÃû,0xb=ͨµÀºÅ,0xc=³µµÀºÅ0xff=×Ô¶¨Òå*/ + BYTE bySubDirMode; /*¶þ¼¶Ä¿Â¼, 0x1 =ʹÓÃÉ豸Ãû, + 0x2 = ʹÓÃÉ豸ºÅ,0x3 =ʹÓÃÉ豸ipµØÖ·£¬ + 0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ), + 0x6=ʹÓÃʱ¼ä(ÄêÔÂÈÕ),0x7=Î¥¹æÀàÐÍ,0x8=·½Ïò,0x9=µØµã, + 0xa=ͨµÀÃû,0xb=ͨµÀºÅ,0xc=³µµÀºÅ0xff=×Ô¶¨Òå*/ + BYTE byThreeDirMode; /*Èý¼¶Ä¿Â¼, 0x1 = ʹÓÃÉ豸Ãû, + 0x2 = ʹÓÃÉ豸ºÅ,0x3 =ʹÓÃÉ豸ipµØÖ·£¬ + 0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ), + 0x6=ʹÓÃʱ¼ä(ÄêÔÂÈÕ),0x7=Î¥¹æÀàÐÍ,0x8=·½Ïò,0x9=µØµã, + 0xa=ͨµÀÃû,0xb=ͨµÀºÅ,0xc=³µµÀºÅ0xff=×Ô¶¨Òå*/ + BYTE byFourDirMode; /*Ëļ¶Ä¿Â¼, 0x1 =ʹÓÃÉ豸Ãû, + 0x2 = ʹÓÃÉ豸ºÅ,0x3 =ʹÓÃÉ豸ipµØÖ·£¬ + 0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ), + 0x6=ʹÓÃʱ¼ä(ÄêÔÂÈÕ),0x7=Î¥¹æÀàÐÍ,0x8=·½Ïò,0x9=µØµã, + 0xa=ͨµÀÃû,0xb=ͨµÀºÅ,0xc=³µµÀºÅ0xff=×Ô¶¨Òå*/ + /*ͼƬÃüÃû×Ô¶¨Òå µ±PICNAME_ITEM_CUSTOM ʱ ÉúЧ*/ + BYTE szPicNameCustom[MAX_CUSTOMDIR_LEN];// (3.7Ver ÉúЧ) + BYTE szTopCustomDir[MAX_CUSTOMDIR_LEN]; /*×Ô¶¨ÒåÒ»¼¶Ä¿Â¼*/ + BYTE szSubCustomDir[MAX_CUSTOMDIR_LEN];/*×Ô¶¨Òå¶þ¼¶Ä¿Â¼*/ + BYTE szThreeCustomDir[MAX_CUSTOMDIR_LEN]; /*×Ô¶¨ÒåÈý¼¶Ä¿Â¼*/ + BYTE szFourCustomDir[MAX_CUSTOMDIR_LEN]; /*×Ô¶¨ÒåËļ¶Ä¿Â¼*/ + BYTE byRes3[900]; //Âú×ã12¼¶À©Õ¹Ô¤Áô Ö§³Ö͸´« +}NET_ITC_FTP_CFG, *LPNET_ITC_FTP_CFG; + +typedef struct tagNET_DVR_LATITUDE_PARAM +{ + BYTE byDegree;//¶È[0,179] + BYTE byMinute;//·Ö[0,59] + BYTE bySec;//Ãë[0,59] + BYTE byRes; +}NET_DVR_LATITUDE_PARAM, *LPNET_DVR_LATITUDE_PARAM; + +typedef struct tagNET_DVR_LONGITUDE_PARAM +{ + BYTE byDegree;//¶È[0,179] + BYTE byMinute;//·Ö[0,59] + BYTE bySec;//Ãë[0,59] + BYTE byRes; +}NET_DVR_LONGITUDE_PARAM, *LPNET_DVR_LONGITUDE_PARAM; + +typedef struct tagNET_DVR_GPS_DATACFG +{ + DWORD dwSize; + BYTE byGpsDataMode;//GPSÊý¾Ý»ñÈ¡ 0-×Ô¶¯£¬1-ÊÖ¶¯ + BYTE byLongitudeType;//¾­¶È 0-¶«¾­£¬1-Î÷¾­ + BYTE byLatitudeType;//γ¶È 0-ÄÏ㣬1-±±Î³ + BYTE byRes; + NET_DVR_LATITUDE_PARAM struLatitude; /*γ¶È*/ + NET_DVR_LONGITUDE_PARAM struLongitude; /*¾­¶È*/ + BYTE byRes1[128]; +}NET_DVR_GPS_DATACFG,*LPNET_DVR_GPS_DATACFG; + +typedef enum _VCA_DATABASE_TYPE_ +{ + DATABASE_NULL = 0, //δ֪ + DATABASE_SNAP, //×¥ÅÄÊý¾Ý¿â + DATABASE_FACE //ÈËÁ³Êý¾Ý¿â +}VCA_DATABASE_TYPE; + +typedef struct tagNET_VCA_DATABASE_PARAM +{ + DWORD dwSize; + DWORD dwDataBaseID; //Êý¾Ý¿âID£¨É豸Éú³É£¬Ìí¼ÓʱÎÞЧ£¬Ð޸ĺÍɾ³ýʱÓÐЧ£© + DWORD dwDataBaseType; //Êý¾Ý¿âÀàÐÍ£¬¼ûVCA_DATABASE_TYPE + BYTE byDataBaseName[NAME_LEN]; //Êý¾Ý¿âÃû³Æ + BYTE byAttribute[64]; //Êý¾Ý¿âÊôÐÔ + BYTE byRes[20]; +}NET_VCA_DATABASE_PARAM, *LPNET_VCA_DATABASE_PARAM; + +typedef struct tagNET_VCA_FIND_DATABASE_COND +{ + DWORD dwDataBaseType; //Êý¾Ý¿âÀàÐÍ£¬Ïê¼ûVCA_DATABASE_TYPE + BYTE byRes[12]; //±£Áô +}NET_VCA_FIND_DATABASE_COND, *LPNET_VCA_FIND_DATABASE_COND; + +typedef struct tagNET_VCA_DELETE_DATABASE_COND +{ + DWORD dwSize; + DWORD dwDataBaseType; //Êý¾Ý¿âÀàÐÍ£¬¼ûVCA_DATABASE_TYPE + DWORD dwDataBaseID; //Êý¾Ý¿âID + BYTE byRes[64]; //±£Áô +}NET_VCA_DELETE_DATABASE_COND, *LPNET_VCA_DELETE_DATABASE_COND; + +typedef struct tagNET_VCA_INQUIRE_SNAPDB_COND +{ + DWORD dwChannel;//ͨµÀºÅ + NET_DVR_TIME struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//½áÊøʱ¼ä + BYTE bySex; //ÐÔ±ð£º0-²»ÆôÓã¬1-ÄУ¬2-Å® + BYTE byRes1[3]; //±£Áô + BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //Æðʼ³öÉúÄêÔ£¬È磺201106 + BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //½ØÖ¹³öÉúÄêÔ£¬Èç201106 + BYTE byAttribute1[NAME_LEN]; //ÊôÐÔ1 + BYTE byAttribute2[NAME_LEN]; //ÊôÐÔ2 + BYTE byRes[12]; //±£Áô +}NET_VCA_INQUIRE_SNAPDB_COND, *LPNET_VCA_INQUIRE_SNAPDB_COND; + +typedef struct tagNET_VCA_INQUIRE_SNAPRECORD_RESULT +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwRecordID; //¼Ç¼ID + NET_DVR_TIME struSnapTime; //×¥ÅÄʱ¼ä + BYTE bySex; //ÐÔ±ð£º0-²»ÆôÓã¬1-ÄУ¬2-Å® + BYTE byRes1[3]; //±£Áô + BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //Æðʼ³öÉúÄêÔ£¬È磺201106 + BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //½ØÖ¹³öÉúÄêÔ£¬Èç201106 + BYTE byAttribute1[NAME_LEN]; //ÊôÐÔ1 + BYTE byAttribute2[NAME_LEN]; //ÊôÐÔ2 + DWORD dwFacePicID; //ÈËÁ³Í¼ID + DWORD dwFacePicLen; //ÈËÁ³Í¼Êý¾Ý³¤¶È + BYTE byRes[80]; //±£Áô + BYTE *pFacePic; //ÈËÁ³Í¼Êý¾Ý +}NET_VCA_INQUIRE_SNAPRECORD_RESULT, *LPNET_VCA_INQUIRE_SNAPRECORD_RESULT; + +typedef union tagNET_VCA_DELETE_SNAPRECORD_COND_UNION +{ + NET_VCA_INQUIRE_SNAPDB_COND struAttribute; //ÈËÔ±ÐÅÏ¢£¨ÅúÁ¿É¾³ý£© + DWORD dwRecordID; //¼Ç¼ID£¨µ¥Ìõɾ³ý£© +}NET_VCA_DELETE_SNAPRECORD_COND_UNION, *LPNET_VCA_DELETE_SNAPRECORD_COND_UNION; + +typedef enum _VCA_DELETE_RECORD_TYPE_ +{ + DELETE_RECORD_SINGLE = 0, //µ¥Ìõɾ³ý + DELETE_RECORD_BATCH //ÅúÁ¿É¾³ý +}VCA_DELETE_RECORD_TYPE; + +typedef struct tagNET_VCA_DELETE_SNAPRECORD_COND +{ + VCA_DELETE_RECORD_TYPE dwDeleteType; //ɾ³ý¼Ç¼ÀàÐÍ + NET_VCA_DELETE_SNAPRECORD_COND_UNION uDeleteCond; //ɾ³ý²ÎÊý + BYTE byRes[40]; //±£Áô +}NET_VCA_DELETE_SNAPRECORD_COND, *LPNET_VCA_DELETE_SNAPRECORD_COND; + +typedef enum _VCA_SEARCH_DATABASE_TYPE_ +{ + VCA_NORMAL_SEARCH_DATABASE = 0x00000000, //ÆÕͨ¼ìË÷ + VCA_ADVANCE_SEARCH_DATABASE = 0x00000001 //¸ß¼¶¼ìË÷ +}VCA_SEARCH_DATABASE_TYPE; + +typedef struct tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND +{ + DWORD dwDataBaseType; //Êý¾Ý¿âÀàÐÍ£¬Ïê¼ûVCA_DATABASE_TYPE + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwFacePicID; //ÈËÁ³Í¼Æ¬ID + BYTE byRes[36]; +}NET_VCA_ADVANCE_SEARCH_DATABASE_COND, *LPNET_VCA_ADVANCE_SEARCH_DATABASE_COND; + +typedef union tagNET_VCA_SEARCH_DATABASE_COND_UNION +{ + DWORD uLen[25]; + NET_VCA_REGISTER_PIC struNormalFind; //ÆÕͨ¼ìË÷ + NET_VCA_ADVANCE_SEARCH_DATABASE_COND struAdvanceFind; //¸ß¼¶¼ìË÷ +}NET_VCA_SEARCH_DATABASE_COND_UNION, *LPNET_VCA_SEARCH_DATABASE_COND_UNION; + +typedef struct tagNET_VCA_SEARCH_DATABASE_PARAM +{ + DWORD dwSearchType; //¼ìË÷ÀàÐÍ£¬Ïê¼ûVCA_SEARCH_DATABASE_TYPE + NET_VCA_SEARCH_DATABASE_COND_UNION uSearchCond; //¼ìË÷²ÎÊý + BYTE byRes[16]; +}NET_VCA_SEARCH_DATABASE_PARAM, *LPNET_VCA_SEARCH_DATABASE_PARAM; + +typedef struct tagNET_VCA_SEARCH_SNAPDB_COND +{ + DWORD dwChannel; //ͨµÀ + DWORD dwDataBaseID; //Êý¾Ý¿âID + NET_DVR_TIME struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//½áÊøʱ¼ä + BYTE bySex; //ÐÔ±ð£º0-²»ÆôÓã¬1-ÄУ¬2-Å® + BYTE byRes1[3]; //±£Áô + BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //Æðʼ³öÉúÄêÔ£¬È磺201106 + BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //½ØÖ¹³öÉúÄêÔ£¬Èç201106 + BYTE byAttribute1[NAME_LEN]; //ÊôÐÔ1 + BYTE byAttribute2[NAME_LEN]; //ÊôÐÔ2 + NET_VCA_SEARCH_DATABASE_PARAM struSearchParam; //¼ìË÷²ÎÊý + DWORD dwMaxSearchNum; //×î´ó¼ìË÷ÌõÊý + WORD wThreshold; //ãÐÖµ£¬0-100 + BYTE byRes[78]; //±£Áô +}NET_VCA_SEARCH_SNAPDB_COND, *LPNET_VCA_SEARCH_SNAPDB_COND; + +typedef struct tagNET_VCA_SEARCH_SNAPRECORD_RESULT +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwRecordID; //¼Ç¼ID + NET_DVR_TIME struSnapTime;//×¥ÅÄʱ¼ä + BYTE bySex; //ÐÔ±ð£º0-²»ÆôÓã¬1-ÄУ¬2-Å® + BYTE byRes1[3]; //±£Áô + BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //Æðʼ³öÉúÄêÔ£¬È磺201106 + BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; //½ØÖ¹³öÉúÄêÔ£¬Èç201106 + BYTE byAttribute1[NAME_LEN]; //ÊôÐÔ1 + BYTE byAttribute2[NAME_LEN]; //ÊôÐÔ2 + float fSimilarity; //ÏàËƶȣ¬[0.001,1] + DWORD dwFacePicID; //ÈËÁ³Í¼ID + DWORD dwFacePicLen; //ÈËÁ³Í¼Êý¾Ý³¤¶È + BYTE byRes[80]; //±£Áô + BYTE *pFacePic; //ÈËÁ³Í¼Êý¾Ý +}NET_VCA_SEARCH_SNAPRECORD_RESULT, *LPNET_VCA_SEARCH_SNAPRECORD_RESULT; + +typedef struct tagNET_VCA_DATARECORD_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwRecordID; //¼Ç¼ID£¬Ìí¼ÓʱÎÞЧ£¬ÐÞ¸ÄʱÓÐЧ + NET_VCA_HUMAN_ATTRIBUTE struAttribute; //ÈËÔ±ÐÅÏ¢ + NET_VCA_REGISTER_PIC struRegisterPic; //ÈËԱͼƬÐÅÏ¢ + BYTE byRemark1[NAME_LEN]; //±¸×¢ÐÅÏ¢1 + BYTE byRemark2[64]; //±¸×¢ÐÅÏ¢2 + BYTE byRes[32]; //±£Áô +}NET_VCA_DATARECORD_INFO, *LPNET_VCA_DATARECORD_INFO; + +typedef struct tagNET_VCA_FAST_DATARECORD_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_VCA_HUMAN_ATTRIBUTE struAttribute; //ÈËÔ±ÐÅÏ¢ + BYTE byRemark1[NAME_LEN]; //±¸×¢ÐÅÏ¢1 + BYTE byRemark2[64]; //±¸×¢ÐÅÏ¢2 + DWORD dwImageLen; //ͼÏñÊý¾Ý³¤¶È + BYTE byRes[80]; //±£Áô + BYTE *pImage; //ͼÏñÊý¾Ý +}NET_VCA_FAST_DATARECORD_INFO, *LPNET_VCA_FAST_DATARECORD_INFO; + +typedef struct tagNET_VCA_INQUIRE_DATARECORD_RESULT +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwRecordID; //¼Ç¼ID + NET_VCA_HUMAN_ATTRIBUTE struAttribute; //ÈËÔ±ÐÅÏ¢ + BYTE byRemark1[NAME_LEN]; //±¸×¢ÐÅÏ¢1 + BYTE byRemark2[64]; //±¸×¢ÐÅÏ¢2 + DWORD dwFacePicID; //ÈËÁ³Í¼ID + DWORD dwFacePicLen; //ÈËÁ³Í¼Êý¾Ý³¤¶È + BYTE byRes[80]; //±£Áô + BYTE *pFacePic; //ÈËÁ³Í¼Êý¾Ý +}NET_VCA_INQUIRE_DATARECORD_RESULT, *LPNET_VCA_INQUIRE_DATARECORD_RESULT; + +typedef struct tagNET_VCA_SEARCH_DATARECORD_RESULT +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwRecordID; //¼Ç¼ID + NET_VCA_HUMAN_ATTRIBUTE struAttribute; //ÈËÔ±ÐÅÏ¢ + BYTE byRemark1[NAME_LEN]; //±¸×¢ÐÅÏ¢1 + BYTE byRemark2[64]; //±¸×¢ÐÅÏ¢2 + float fSimilarity; //ÏàËƶȣ¬[0.001,1] + DWORD dwFacePicID; //ÈËÁ³Í¼ID + DWORD dwFacePicLen; //ÈËÁ³Í¼Êý¾Ý³¤¶È + BYTE byRes[80]; //±£Áô + BYTE *pFacePic; //ÈËÁ³Í¼Êý¾Ý +}NET_VCA_SEARCH_DATARECORD_RESULT, *LPNET_VCA_SEARCH_DATARECORD_RESULT; + +typedef struct tagNET_VCA_DATARECORD_COND +{ + DWORD dwDataBaseID; //Êý¾Ý¿âID + NET_VCA_HUMANATTRIBUTE_COND struAttribute; //ÈËÔ±ÐÅÏ¢ + BYTE byRes[80]; //±£Áô +}NET_VCA_DATARECORD_COND, *LPNET_VCA_DATARECORD_COND; + +typedef union tagNET_VCA_DELETE_RECORD_COND_UNION +{ + NET_VCA_HUMANATTRIBUTE_COND struAttribute; //ÈËÔ±ÐÅÏ¢£¨ÅúÁ¿É¾³ý£© + DWORD dwRecordID; //¼Ç¼ID£¨µ¥Ìõɾ³ý£© +}NET_VCA_DELETE_RECORD_COND_UNION, *LPNET_VCA_DELETE_RECORD_COND_UNION; + +typedef struct tagNET_VCA_DELETE_RECORD_COND +{ + VCA_DELETE_RECORD_TYPE dwDeleteType; //ɾ³ý¼Ç¼ÀàÐÍ + NET_VCA_DELETE_RECORD_COND_UNION uDeleteCond; //ɾ³ý²ÎÊý + BYTE byRes[40]; //±£Áô +}NET_VCA_DELETE_RECORD_COND, *LPNET_VCA_DELETE_RECORD_COND; + +typedef struct tagNET_VCA_SEARCH_FACEDB_COND +{ + DWORD dwDataBaseID; //Êý¾Ý¿âID + NET_VCA_HUMANATTRIBUTE_COND struAttribute; //ÈËÔ±ÐÅÏ¢ + NET_VCA_SEARCH_DATABASE_PARAM struSearchParam; //¼ìË÷²ÎÊý + DWORD dwMaxSearchNum; //×î´ó¼ìË÷ÌõÊý + WORD wThreshold; //ãÐÖµ£¬0-100 + BYTE byRes[78]; //±£Áô +}NET_VCA_SEARCH_FACEDB_COND, *LPNET_VCA_SEARCH_FACEDB_COND; + +typedef struct tagNET_VCA_FIND_MATCHPIC_COND +{ + DWORD dwSize; + DWORD dwDataBaseType; //Êý¾Ý¿âÀàÐÍ£¬¼ûVCA_DATABASE_TYPE + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwRecordID; //¼Ç¼ID + BYTE byRes[64]; //±£Áô +}NET_VCA_FIND_MATCHPIC_COND, *LPNET_VCA_FIND_MATCHPIC_COND; + +typedef struct tagNET_VCA_FIND_MATCHPIC_RESULT +{ + DWORD dwSize; + DWORD dwDataBaseType; //Êý¾Ý¿âÀàÐÍ£¬¼ûVCA_DATABASE_TYPE + DWORD dwDataBaseID; //Êý¾Ý¿âID + DWORD dwRecordID; //¼Ç¼ID + DWORD dwPicLen; //ͼƬ³¤¶È + BYTE byRes[64]; //±£Áô + BYTE *pPicBuffer; //ͼƬÊý¾ÝÖ¸Õë +}NET_VCA_FIND_MATCHPIC_RESULT, *LPNET_VCA_FIND_MATCHPIC_RESULT; + +typedef struct tagNET_DVR_REMOTECONTROL_ALARM_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + WORD wDealyTime; //ÑÓ³Ùʱ¼ä£¬µ¥Î»s + BYTE byRes[30]; +}NET_DVR_REMOTECONTROL_ALARM_PARAM, *LPNET_DVR_REMOTECONTROL_ALARM_PARAM; + +typedef struct tagNET_DVR_REMOTECONTROL_STUDY_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[16]; +}NET_DVR_REMOTECONTROL_STUDY_PARAM, *LPNET_DVR_REMOTECONTROL_STUDY_PARAM; + +typedef struct tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byIndex; //ÎÞÏß±¨¾¯ÐòºÅ£¬1-8 + BYTE byRes[15]; +}NET_DVR_WIRELESS_ALARM_STUDY_PARAM, *LPNET_DVR_WIRELESS_ALARM_STUDY_PARAM; + +#define MAX_AUX_ALARM_NUM 8 //×î´ó¸¨Öú±¨¾¯¸öÊý +#define MAX_WIRELESS_ALARM_NUM 8 //×î´óÎÞÏß±¨¾¯¸öÊý +typedef enum _IPC_AUX_ALARM_TYPE_ +{ + IPC_AUXALARM_UNKNOW = 0, //δ֪ + IPC_AUXALARM_PIR = 1, //PIR±¨¾¯ + IPC_AUXALARM_WIRELESS = 2, //ÎÞÏß±¨¾¯ + IPC_AUXALARM_CALLHELP = 3 //ºô¾È±¨¾¯ +}IPC_AUX_ALARM_TYPE; + +typedef struct tagNET_DVR_AUDIO_LIMIT_ALARM_CFG +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byRes1[3]; + DWORD dwDecibelLimit; //·Ö±´¸æ¾¯·§Öµ + NET_DVR_HANDLEEXCEPTION_V30 struHandleException; //Òì³£´¦Àí·½Ê½ + BYTE byRes2[24]; +}NET_IPC_AUDIO_LIMIT_ALARM_CFG,*LPNET_IPC_AUDIO_LIMIT_ALARM_CFG; + +typedef struct tagNET_DVR_BUTTON_DOWN_ALARM_CFG +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byRes1[3]; + NET_DVR_HANDLEEXCEPTION_V30 struHandleException; //Òì³£´¦Àí·½Ê½ + BYTE byRes2[24]; +}NET_IPC_BUTTON_DOWN_ALARM_CFG,*LPNET_IPC_BUTTON_DOWN_ALARM_CFG; + +typedef struct tagNET_IPC_PIR_ALARMCFG +{ + BYTE byAlarmName[NAME_LEN]; /* ±¨¾¯Ãû³Æ */ + BYTE byAlarmHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byRes1[3]; + NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* ´¦Àí·½Ê½ */ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byRes[64]; +}NET_IPC_PIR_ALARMCFG, *LPNET_IPC_PIR_ALARMCFG; + +typedef struct tagNET_IPC_PIR_ALARMCFG_EX +{ + BYTE byAlarmName[NAME_LEN]; /* ±¨¾¯Ãû³Æ */ + BYTE byAlarmHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byRes1[3]; + NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* ´¦Àí·½Ê½ */ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; + BYTE byRes[1464]; +}NET_IPC_PIR_ALARMCFG_EX, *LPNET_IPC_PIR_ALARMCFG_EX; + +//ºô¾È±¨¾¯ +typedef struct tagNET_IPC_CALLHELP_ALARMCFG +{ + BYTE byAlarmHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byRes1[3]; + NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* ´¦Àí·½Ê½ */ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byRes[64]; +}NET_IPC_CALLHELP_ALARMCFG, *LPNET_IPC_CALLHELP_ALARMCFG; + +typedef struct tagNET_IPC_SINGLE_WIRELESS_ALARMCFG +{ + BYTE byAlarmName[NAME_LEN]; /* ±¨¾¯Ãû³Æ */ + BYTE byAlarmHandle; /* ÊÇ·ñ´¦Àí 0-²»´¦Àí 1-´¦Àí*/ + BYTE byID; //ÎÞÏß±¨¾¯ID£¬1-8 + BYTE byRes1[2]; + NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* ´¦Àí·½Ê½ */ + BYTE byRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ,Ϊ1±íʾ´¥·¢¸ÃͨµÀ + BYTE byRes[32]; +}NET_IPC_SINGLE_WIRELESS_ALARMCFG, *LPNET_IPC_SINGLE_WIRELESS_ALARMCFG; + +typedef struct tagNET_IPC_WIRELESS_ALARMCFG +{ + NET_IPC_SINGLE_WIRELESS_ALARMCFG struWirelessAlarm[MAX_WIRELESS_ALARM_NUM]; //µ¥¸öÎÞÏß±¨¾¯²ÎÊý + BYTE byRes[32]; +}NET_IPC_WIRELESS_ALARMCFG, *LPNET_IPC_WIRELESS_ALARMCFG; + +typedef union tagNET_IPC_AUX_ALARMCFG_UNION +{ + DWORD uLen[472]; + NET_IPC_PIR_ALARMCFG_EX struPIRAlarm; //PIR±¨¾¯²ÎÊý + NET_IPC_WIRELESS_ALARMCFG struWirelessAlarm; //ÎÞÏß±¨¾¯²ÎÊý + NET_IPC_CALLHELP_ALARMCFG struCallHelpAlarm; //ºô¾È±¨¾¯²ÎÊý +}NET_IPC_AUX_ALARMCFG_UNION, *LPNET_IPC_AUX_ALARMCFG_UNION; + +typedef struct tagNET_IPC_SINGLE_AUX_ALARMCFG +{ + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ£¬Ïê¼ûIPC_AUX_ALARM_TYPE + BYTE byRes1[3]; + NET_IPC_AUX_ALARMCFG_UNION uAlarm; //±¨¾¯²ÎÊý + BYTE byRes[16]; +}NET_IPC_SINGLE_AUX_ALARMCFG, *LPNET_IPC_SINGLE_AUX_ALARMCFG; + +typedef struct tagNET_IPC_AUX_ALARMCFG +{ + DWORD dwSize; + NET_IPC_SINGLE_AUX_ALARMCFG struAlarm[MAX_AUX_ALARM_NUM]; //±¨¾¯²ÎÊý + BYTE byRes[64]; +}NET_IPC_AUX_ALARMCFG, *LPNET_IPC_AUX_ALARMCFG; + +typedef union tagNET_IPC_AUXALARM_UPLOAD_UNION +{ + DWORD uLen[66]; + NET_IPC_PIR_ALARMCFG struPIRAlarm; //PIR±¨¾¯²ÎÊý + NET_IPC_SINGLE_WIRELESS_ALARMCFG struWirelessAlarm; //ÎÞÏß±¨¾¯²ÎÊý + NET_IPC_CALLHELP_ALARMCFG struCallHelpAlarm; //ºô¾È±¨¾¯²ÎÊý +}NET_IPC_AUXALARM_UPLOAD_UNION, *LPNET_IPC_AUXALARM_UPLOAD_UNION; + +typedef struct tagNET_IPC_AUXALARM_RESULT +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byAlarmType; //±¨¾¯Æ÷ÀàÐÍ£¬Ïê¼ûIPC_AUX_ALARM_TYPE + BYTE byRes1[3]; + NET_IPC_AUXALARM_UPLOAD_UNION struAuxAlarm; //±¨¾¯½á¹û²ÎÊý + BYTE byDeviceID[NAME_LEN];/*É豸µÄID´®*/ + BYTE byRes[32]; +}NET_IPC_AUXALARM_RESULT, *LPNET_IPC_AUXALARM_RESULT; + +typedef struct tagNET_DVR_PREVIEW_DISPLAYCFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byCorrectMode; //УÕýģʽ£¬0-Èí¼þУÕý£¬1-оƬУÕý + BYTE byMountType; //°²×°ÀàÐÍ£¬0-Îü¶¥£¬1-×ÀÃ棬2-ǽÃæ + /* + 0-ģʽ1£ºÓãÑÛ+È«¾°+3PTZ (ÓëÔ­ÓзÇʵʱģʽһÖÂ)£» + 1-ģʽ2£ºÓãÑÛ+4PTZ(ÓëÔ­ÓÐʵʱģʽһÖÂ)£» + 2-ģʽ3£ºÓãÑÛ(Ö÷)+ÓãÑÛ(×Ó)+3PTZ£» + 3-ģʽ4£ºÈ«¾°Õ¹¿ª(Ö÷ÂëÁ÷+×ÓÂëÁ÷)£» + 4-ģʽ5£º4PTZ£» + 5-ģʽ6£ºÓãÑÛ£» + 6-ģʽ7: ¾­Î³¶ÈÈ«¾°Õ¹¿ªÄ£Ê½£» + 7-ģʽ8: 4PTZÈÚºÏģʽ£» + */ + BYTE byRealTimeOutput; //ʵʱÊä³ö£¬0 -²»ÆôÓã¬1- ÆôÓà + BYTE byRes[61]; +}NET_DVR_PREVIEW_DISPLAYCFG, *LPNET_DVR_PREVIEW_DISPLAYCFG; + +typedef struct tagNET_DVR_REMOTECONTROL_PTZ_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + DWORD dwPTZCommand; //PTZ¿ØÖÆÃüÁî + NET_VCA_POINT struVcaPoint; //Ô¤ÀÀ½çÃæµã×ø±ê + DWORD dwSpeed; //¿ØÖƵÄËٶȣ¬È¡Öµ·¶Î§[0,7] + DWORD dwStop; //Í£Ö¹¶¯×÷»ò¿ªÊ¼¶¯×÷£º0-¿ªÊ¼£»1-Í£Ö¹ + BYTE byRes[32]; +}NET_DVR_REMOTECONTROL_PTZ_PARAM, *LPNET_DVR_REMOTECONTROL_PTZ_PARAM; + +typedef struct tagNET_DVR_PRESET_POINT_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + DWORD dwPTZPresetCmd; //Ô¤Öõã¿ØÖÆÃüÁî + NET_VCA_POINT struVcaPoint; //Ô¤ÀÀ½çÃæµã×ø±ê + DWORD dwPresetIndex; //Ô¤ÖõãµÄÐòºÅ£¨´Ó1¿ªÊ¼£©£¬×î¶àÖ§³Ö255¸öÔ¤Öõã + WORD wZoomCoordinate;///<Ô¤Öõ㴰¿ÚZoomÖµ + BYTE byRes[30]; +}NET_DVR_PRESET_POINT_PARAM, *LPNET_DVR_PRESET_POINT_PARAM; + +typedef struct tagNET_DVR_PTZ_CRUISE_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + DWORD dwPTZCruiseCmd; //Ѳº½¿ØÖÆÃüÁî + NET_VCA_POINT struVcaPoint; //Ô¤ÀÀ½çÃæµã×ø±ê + WORD wCruiseRoute; //Ѳº½Â·¾¶£¬×î¶àÖ§³Ö32Ìõ·¾¶£¨ÐòºÅ´Ó1¿ªÊ¼£© + WORD wCruisePoint; //Ѳº½µã£¬×î¶àÖ§³Ö32¸öµã£¨ÐòºÅ´Ó1¿ªÊ¼£© + WORD wInput; //²»Í¬Ñ²º½ÃüÁîʱµÄÖµ²»Í¬£¬Ô¤Öõã(×î´ó255)¡¢Ê±¼ä(×î´ó255)¡¢ËÙ¶È(×î´ó40) + WORD wZoomCoordinate;///<Ô¤Öõ㴰¿ÚZoomÖµ + BYTE byRes[32]; +}NET_DVR_PTZ_CRUISE_PARAM, *LPNET_DVR_PTZ_CRUISE_PARAM; + +typedef struct tagNET_DVR_WPS_PARAM +{ + DWORD dwSize; + BYTE byEnableWps; //ÆôÓÃWPS£¬0-·ñ£¬1-ÊÇ + BYTE byRes[31]; +}NET_DVR_WPS_PARAM, *LPNET_DVR_WPS_PARAM; + +typedef struct tagNET_DVR_PIN_PARAM +{ + DWORD dwSize; + BYTE byPIN[8]; //PINÂë + BYTE byRes[32]; +}NET_DVR_PIN_PARAM, *LPNET_DVR_PIN_PARAM; + +typedef struct tagNET_DVR_WPS_CONNECT_PARAM_ +{ + DWORD dwSize; + BYTE byConnectType; //WPSÁ¬½Ó·½Ê½£¬0-PBC,1-AP PIN + BYTE byRes1[3]; + BYTE byPIN[8]; //PINÂë(WPSÁ¬½Ó·½Ê½ÎªAP PINʱÓÐЧ) + BYTE byEssid[IW_ESSID_MAX_SIZE]; //essid(WPSÁ¬½Ó·½Ê½ÎªAP PINʱÓÐЧ) + BYTE byRes[32]; +}NET_DVR_WPS_CONNECT_PARAM, *LPNET_DVR_WPS_CONNECT_PARAM; + +typedef struct tagNET_DVR_DECODER_JOINT_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byJointed; // 0 ûÓйØÁª 1 ÒѾ­¹ØÁª + BYTE byRes1[3]; // ±£Áô×Ö½Ú + NET_DVR_IPADDR struIP; // ±»¹ØÁª½âÂëÆ÷µÄIPµØÖ· + WORD wPort; // ±»¹ØÁª½âÂëÆ÷µÄ¶Ë¿ÚºÅ + WORD wChannel; // ±»¹ØÁª½âÂëÆ÷µÄ½âÂëͨµÀºÅ + BYTE sDeviceName[NAME_LEN]; //±»¹ØÁª½âÂëÆ÷µÄÉ豸Ãû³Æ + BYTE sChanName[NAME_LEN]; //±»¹ØÁª½âÂëÆ÷µÄ½âÂëͨµÀÃû³Æ + BYTE byRes2[32]; // ±£Áô×Ö½Ú +}NET_DVR_DECODER_JOINT_PARAM, *LPNET_DVR_DECODER_JOINT_PARAM; + +typedef struct tagNET_DVR_PIC_VIEW_PARAM +{ + DWORD dwSize; + NET_DVR_IPADDR struCuIp; //CU¶ËIPµØÖ· + WORD wPort;/*CU¶Ë¿Ú*/ + BYTE bySourceIndex; //ÐźÅԴͨµÀºÅ + BYTE byRes[29]; +}NET_DVR_PIC_VIEW_PARAM, *LPNET_DVR_PIC_VIEW_PARAM; + +#define DVCS_DEVICEID_LEN 16 +//2012-03-13ͼƬ»ØÏÔ×¢²áÏûÏ¢»Øµ÷ +typedef struct tagNET_DVR_PICVIEW_CALLBACKPARAM +{ + DWORD dwUserID; + BYTE sDeviceID[DVCS_DEVICEID_LEN]; + LONG nPicViewHandle; //»ØÏÔ¾ä±ú + WORD wSignalIndex; //ÐźÅÔ´Ë÷Òý + WORD wHeadLen; //ÎļþÍ·³¤¶È ˽ÓеÄÂëÁ÷ÎļþÍ·¶¼ÊÇ40 + BYTE byHeadBuf[100]; //ÎļþÍ· + BYTE byRes2[32]; +}NET_DVR_PICVIEW_CALLBACKPARAM, *LPNET_DVR_PICVIEW_CALLBACKPARAM; + +#define DEVICEID_LEN 32 + +typedef struct tagNET_DVR_DEVICEID_INFO +{ + DWORD dwSize; + DWORD dwDeviceIndex; //É豸ÐòºÅ + BYTE byWallNo; //ǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes1[27]; + DWORD dwChan; //ͨµÀºÅ + DWORD dwInputSignalIndex; //ÐźÅÔ´Ë÷Òý£¬¼¯ÖÐʽ´óÆÁ¿ØÖÆÆ÷ʹÓà + BYTE byRes2[60]; +}NET_DVR_DEVICEID_INFO, *LPNET_DVR_DEVICEID_INFO; + + +typedef struct tagNET_DVR_SINGLE_NETPARAM +{ + DWORD dwSize; + BYTE byUseDhcp; //ÊÇ·ñÆôÓÃDHCP 0xff-ÎÞЧ 0-²»ÆôÓà 1-ÆôÓà + BYTE byRes1[3]; + NET_DVR_IPADDR struDevIP; // É豸IPµØÖ· + NET_DVR_IPADDR struSubnetMask; // É豸×ÓÍøÑÚÂë + NET_DVR_IPADDR struGateway; // É豸Íø¹Ø + WORD wDevPort; // É豸¶Ë¿ÚºÅ + BYTE byMACAddr[MACADDR_LEN]; // MAC µØÖ·(Ö»ÄÜ»ñÈ¡) + BYTE byRes2[16]; +} NET_DVR_SINGLE_NETPARAM, *LPNET_DVR_SINGLE_NETPARAM; + +typedef struct tagNET_DVR_CHAN_INFO +{ + DWORD dwSize; + BYTE byValid; //0-ÎÞЧ 1-ÓÐЧ + BYTE byRes1[3]; + BYTE sChanName[NAME_LEN]; //ͨµÀÃû³Æ + NET_DVR_COLOR struVideoColor; //ÐźÅÔ´ÑÕÉ« + WORD wResolutionX; //µ±Ç°·Ö±æÂÊ---¿í + WORD wResolutionY; //µ±Ç°·Ö±æÂÊ---¸ß + BYTE byRes2[40]; +} NET_DVR_CHAN_INFO, *LPNET_DVR_CHAN_INFO; + +//±àÂë×ÓÉ豸ÐÅÏ¢ +typedef struct tagNET_DVR_CODEDEV_INFO +{ + NET_DVR_CHAN_INFO struChanInfo[MAX_CHANNUM/*16*/];/*É豸ͨµÀÐÅÏ¢*/ +} NET_DVR_CODEDEV_INFO, *LPNET_DVR_CODEDEV_INFO; + +//½âÂë×ÓÉ豸ÐÅÏ¢ +typedef struct tagNET_DVR_DECODEDEV_INFO +{ + BYTE byRes[1408]; +} NET_DVR_DECODEDEV_INFO, *LPNET_DVR_DECODEDEV_INFO; + +//ÍøÂçÐźÅÔ´ÐÅÏ¢ +typedef struct tagNET_DVR_NETSIGNAL_INFO +{ + DWORD dwSize; + BYTE byDevName[NAME_LEN/*32*/];//ÍøÂçÐźÅÔ´Ãû³Æ + NET_DVR_PU_STREAM_CFG struPuStream; + BYTE byValid; //ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬É¾³ýʱÉèΪ0 1-ÓÐЧ£¬Ìí¼ÓºÍÐÞ¸ÄʱÉèΪ1/ + BYTE byRes1[3]; //±£Áô + BYTE sGroupName[NAME_LEN/*32*/];//ÍøÂçÐźÅÔ´ËùÔÚ×éµÄ×éÃû£¬ÍøÂçÐźÅÔ´¸ù¾ÝÕâ¸ö×éÃûÀ´·ÖÀà + WORD wResolutionX; //µ±Ç°·Ö±æÂÊ---¿í + WORD wResolutionY; //µ±Ç°·Ö±æÂÊ---¸ß + BYTE byRes2[24]; +}NET_DVR_NETSIGNAL_INFO, *LPNET_DVR_NETSIGNAL_INFO; + +typedef struct tagNET_DVR_NETSIGNALDEV_INFO +{ + NET_DVR_NETSIGNAL_INFO struDevInfo; + BYTE byRes1[816]; +}NET_DVR_NETSIGNALDEV_INFO, *LPNET_DVR_NETSIGNALDEV_INFO; + +typedef union tagNET_DVR_DIFFDEV_INFO +{ + NET_DVR_CODEDEV_INFO struCodeDevInfo; //±àÂëÉ豸ÐÅÏ¢ + NET_DVR_DECODEDEV_INFO struDecodeDevInfo; //½âÂëÉ豸ÐÅÏ¢ + NET_DVR_NETSIGNALDEV_INFO struNetSignalInfo; //ÍøÂçÐźÅÔ´ÐÅÏ¢ +} NET_DVR_DIFFDEV_INFO, *LPNET_DVR_DIFFDEV_INFO; + +/*×¢²áÉ豸ÐÅÏ¢*/ +typedef enum tagNET_DVCS_DEVICE_TYPE +{ + NET_DVR_BNC_PROC = 1, /* BNC´¦ÀíÆ÷ */ + NET_DVR_RGB_PROC, /* RGB´¦ÀíÆ÷ */ + NET_DVR_STP_PROC, /* תÂë´¦ÀíÆ÷ */ + NET_DVR_DISP_PROC, /* ÏÔʾ´¦ÀíÆ÷ */ + NET_DVR_NETSIGNAL, //ÍøÂçÐźÅÔ´ + NET_DVR_SDI_PROC, //SDI´¦ÀíÆ÷ + NET_DVR_BIW_PROC, //8·BNC´¦ÀíÆ÷ + NET_DVR_DON_PROC, //ÏÔʾ´¦ÀíÆ÷ + NET_DVR_TVI_PROC, //TVI´¦ÀíÆ÷ + NET_DVR_DI2_PROC, //2·DVIÊäÈë´¦ÀíÆ÷ + NET_DVR_DO2_PROC, //2·DVIÊä³öÉ豸 + NET_DVR_UHDI_PROC, //DP/HDMI 1·4K³¬¸ßÇåÊäÈëÉ豸 + NET_DVR_YI2_PROC, //Á½Â·YPbPrÊäÈë°å + NET_DVR_HI2_PROC, // HDMIÊäÈë½Úµã(2·) + NET_DVR_VI2_PROC, // VGAÊäÈë½Úµã(2·) + NET_DVR_SI2_PROC, // SDIÊäÈë½Úµã(2·) + NET_DVR_HO2_PROC, // HDMIÊä³ö½Úµã(2·) + NET_DVR_S24G_PROC, // C20NרÓÃǧÕ×½»»»»ú(24·) + NET_DVR_S24X_PROC // C20NרÓÃÍòÕ×½»»»»ú(24·) +}NET_DVCS_DEVICE_TYPE; + +typedef struct tagNET_DVR_SINGLE_DEV_INFO +{ + DWORD dwSize; + DWORD dwSoftVersion; /*É豸Èí¼þ°æ±¾ºÅ(Ö»ÄÜ»ñÈ¡) ×î¸ß8λΪÖ÷°æ±¾ºÅ£¬´Î¸ß8λΪ´Î°æ±¾ºÅ£¬µÍ16λΪÐÞ¸´°æ±¾ºÅ*/ + DWORD dwSoftwareBuildDate; //°æ±¾±àÒëÈÕÆÚBuild, 0xYYYYMMDD + BYTE byUseInSys; /*ÊÇ·ñÔÚϵͳÖÐʹÓÃ*/ + BYTE byDevStatus; /*É豸µ±Ç°×´Ì¬£¬0-ÏÂÏߣ¬1-ÉÏÏß(Ö»ÄÜ»ñÈ¡)*/ + BYTE byDeviceType; /*É豸ÀàÐÍ(Ö»ÄÜ»ñÈ¡) ¼ûDEVICE_TYPE*/ + BYTE byRes1[17]; + BYTE sDevName[NAME_LEN]; /*É豸Ãû³Æ*/ + NET_DVR_SINGLE_NETPARAM struEtherNet[MAX_ETHERNET]; /*É豸ÍøÂç²ÎÊý*/ + BYTE sSerialNumber[SERIALNO_LEN]; /*É豸ÐòÁкÅ*/ + NET_DVR_DIFFDEV_INFO struSubDevInfo; /*É豸ÐÅÏ¢*/ + DWORD dwDeviceIndex; //É豸ÐòºÅ£¬Ïà¶ÔÓÚC20N»òY10µÈÉ豸µÄÈ«¾Ö±àºÅ + DWORD dwSubBoardNo; //·Ö²¼Ê½É豸ËùÊôµÄ×Ó°å±àºÅ£¬Ïà¶ÔÓÚC20N»òY10µÈÉ豸µÄÈ«¾Ö±àºÅ£¬´Ó1¿ªÊ¼£¬Îª0ʱ¸Ã×Ö¶ÎÎÞЧ£¬×Ó°å±àºÅĬÈÏΪ1 + BYTE bySubSysNo; //·Ö²¼Ê½É豸ËùÊôµÄ×Ó°åÉϵÄ×Óϵͳ±àºÅ£¬Ïà¶ÔÓÚ×Ó°åÈ«¾Ö£¬´Ó1¿ªÊ¼£¬Îª0ʱ¸Ã×Ö¶ÎÎÞЧ£¬×ÓϵͳºÅĬÈÏΪ1 + BYTE byRes3[3]; + WORD wStartAudioTalkChanNo; //·Ö²¼Ê½É豸ÉÏÓïÒô¶Ô½²µÄÆðʼͨµÀºÅ + WORD wAudioTalkChanNum; //·Ö²¼Ê½É豸ÉÏÓïÒô¶Ô½²Í¨µÀºÅµÄÊýÁ¿ + BYTE byRes2[36]; +} NET_DVR_SINGLE_DEV_INFO, *LPNET_DVR_SINGLE_DEV_INFO; + +typedef struct tagNET_DVR_DEVLIST +{ + DWORD dwSize; + DWORD dwDevNums;//É豸·µ»ØµÄ·Ö²¼Ê½×ÓÉ豸ÊýÁ¿ + BYTE *pBuffer; + BYTE byRes1[3]; + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý + BYTE byRes2[64]; +} NET_DVR_DEVLIST,*LPNET_DVR_DEVLIST; + +typedef struct tagNET_DVR_DEV_BASE_INFO +{ + DWORD dwSize; + BYTE byEnable; /*ÊÇ·ñÔÚϵͳÖÐʹÓÃ*/ + BYTE byDeviceType; /*É豸ÀàÐÍ(Ö»ÄÜ»ñÈ¡)*/ + BYTE byRes1[2]; + BYTE sDevName[NAME_LEN]; /*É豸Ãû³Æ*/ + BYTE byRes2[24]; +} NET_DVR_DEV_BASE_INFO,*LPNET_DVR_DEV_BASE_INFO; + +/*ÍøÂçÅäÖÃÐÅÏ¢*/ +typedef struct tagNET_DVR_NETPARAM +{ + DWORD dwSize; + NET_DVR_SINGLE_NETPARAM struEtherNet[MAX_ETHERNET];//ÒÔÌ«Íø¿Ú + BYTE byRes[64]; +} NET_DVR_NETPARAM, *LPNET_DVR_NETPARAM; + +// °ó¶¨ÆÁÄ»ºÍÉ豸¹Øϵ(16¸ö×Ö½Ú) +typedef struct tagNET_DVR_DISP_SCREEN +{ + DWORD dwSize; + WORD wScreenID; // ÆÁÄ»IDºÅ, IDºÅ´Ó1¿ªÊ¼ + BYTE byWallNo; // µçÊÓǽºÅ + BYTE byRes1; // ±£Áô1 + DWORD dwDeviceIndex; // Êä³öÉ豸ÐòºÅ + BYTE byRes2[16]; // ±£Áô2 +}NET_DVR_DISP_SCREEN, *LPNET_DVR_DISP_SCREEN; + +// ÆÁÄ»¿ØÖÆ +typedef struct tagNET_DVR_TEXTSHOW +{ + DWORD dwSize; + BYTE byShowText;//ÊÇ·ñÏÔʾÎÄ×Ö£¬1-ÏÔʾÎÄ×Ö£¬0-²»ÏÔʾÎÄ×Ö + BYTE byRes[35]; +}NET_DVR_TEXTSHOW, *LPNET_DVR_TEXTSHOW; + +typedef struct tagNET_DVR_SCREENLIST +{ + DWORD dwSize; + BYTE byWallNo; //µçÊÓǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes[11]; + DWORD dwScreenNums;//É豸·µ»ØµÄÓ³ÉäÏÔʾÆÁÊýÁ¿ + BYTE *pBuffer; + DWORD dwBufLen;//Ëù·ÖÅäÖ¸Õ볤¶È£¬ÊäÈë²ÎÊý +} NET_DVR_SCREENLIST,*LPNET_DVR_SCREENLIST; + +typedef struct tagNET_DVR_OPERATE_DEVICE +{ + DWORD dwSize; + DWORD dwSubCommand; //ÉèÖÃÉ豸µÄÃüÁ1-É豸¿ªÊ¼Éý¼¶£¬2-Í£Ö¹Éý¼¶ + DWORD dwDeviceIndex;//É豸ÐòºÅ + BYTE byRes[44]; +}NET_DVR_OPERATE_DEVICE, *LPNET_DVR_OPERATE_DEVICE; + +//É豸Éý¼¶ +typedef struct tagNET_DVR_UPGRADE_STATE +{ + DWORD dwProgress; // 0-100 + BYTE byState; //Éý¼¶½ø¶È£º1-Éý¼¶Íê³É 2-ÕýÔÚÉý¼¶ 3-Éý¼¶Ê§°Ü + BYTE byRes2[31]; +}NET_DVR_UPGRADE_STATE, *LPNET_DVR_UPGRADE_STATE; +typedef void (CALLBACK *DVCS_UPGRADESTATE_CB)(LONG nUpgradeHandle, BYTE *pBuffer, DWORD dwBufSize, void* pUser); + +typedef enum +{ + NET_DVR_DATA_BMP = 0, + NET_DVR_START_CALLBACK, + NET_DVR_STREAM_SYSHEAD, + NET_DVR_STREAM_DATA +}PIC_PREVIEW_DATATYPE; + +typedef struct tagNET_DVR_START_PIC_VIEW_INFO +{ + DWORD dwSize; + DWORD dwSignalIndex; //ÐźÅÔ´ÐòºÅ£¬¸Ã²ÎÊýÓÃÓÚ´óÆÁ¿ØÖÆÆ÷£¬ÆäËûÉ豸¸ÃÖµÉèΪ0 + DWORD dwDeviceIndex;//É豸ÐòºÅ + BYTE byRes1[12]; + BYTE byChanIndex; //ͨµÀºÅ + BYTE byRes2[3]; + //ÊÓƵ×ÛºÏƽ̨»ØÏÔ²ÎÊý + DWORD dwScreenNum; //´óÆÁÐòºÅ£º´ÓÁ㿪ʼ + DWORD dwLayer; //ͼ²ãºÅ£º´ÓÁ㿪ʼ + DWORD dwResolution;//»ØÏÔ·Ö±æÂÊ,1-QCIF,2-CIF,3-D1 + BYTE byFrame;//Ö¡ÂÊ£¬µ¥Î»£ºÖ¡/Ãë + BYTE bySupportStreamView; //¿Í»§¶ËÊÇ·ñÖ§³ÖÂëÁ÷»ØÏÔ£¬0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byRes3[14]; +}NET_DVR_START_PIC_VIEW_INFO, *LPNET_DVR_START_PIC_VIEW_INFO; + +typedef struct tagNET_DVR_DVCS_STATE_ALARM +{ + DWORD dwSize; + BYTE byAlarmType; // ±¨¾¯ÀàÐÍ,1-É豸ÉÏÏߣ¬2-É豸ÀëÏß 3-·þÎñÆ÷ÉÏÏß 4-·þÎñÆ÷ÀëÏß 5-¹ÜÀíÔ±µÇ½ 6-Ô¤°¸¿ªÊ¼,7-Ô¤°¸½áÊø£¬8-·Ö±æÂʱ仯£¬9-ͼÏñÇиîʧ°Ü£¬10-É豸×ÊÔ´²»×㣬11-ζÈÒì³£ 12-´°¿Ú´óСÓëÐźÅÔ´·Ö±æÂʲ»·ûºÏ*/ + BYTE byDeviceType; // É豸ÀàÐÍ ¼û¶¨ÒåNET_DVCS_DEVICE_TYPE */ + BYTE byWallNo; // ǽºÅ£¬´Ó1¿ªÊ¼£¬ 0±íʾÎÞЧ + BYTE byDeviceChanIndex; // É豸ͨµÀºÅ£¬0±íʾÎÞЧ£¬ÆäËûÖµ±íʾͨµÀºÅ + DWORD dwDeviceIndex; // É豸ÐòºÅ£¬ 0±íʾÎÞЧ + WORD wResolutionX; // ·Ö±æÂÊ-¿í 0±íʾÎÞЧ + WORD wResolutionY; // ·Ö±æÂÊ-¸ß 0±íʾÎÞЧ + WORD wTemperature; // É豸ÎÂ¶È µ¥Î»£ºÉãÊ϶È, 0±íʾÎÞЧ + BYTE byRes[86]; +}NET_DVR_DVCS_STATE_ALARM, *LPNET_DVR_DVCS_STATE_ALARM; + +typedef struct tagNET_DVR_PIC_ADJUST +{ + DWORD dwSize; + BYTE bySubCommand; //¼ûºê¶¨ÒåDECODEPIC_LEFTADJUSTµÈ + BYTE byScale; //µ÷ÕûµÄÁ¿Öµ + BYTE byPictureProportion; //ͼÏñËõ·Å±ÈÀý 0-ÎÞЧ 1-4:3, 2-16:9 + BYTE byRes[29]; +}NET_DVR_PIC_ADJUST, *LPNET_DVR_PIC_ADJUST; + +typedef struct tagNET_DVR_PICTURE_PARAM +{ + DWORD dwSize; + BYTE byControlCommand; //Çл»ÃüÁ1-ÏÔʾ£¬2-Òþ²Ø£¬3-È«²¿É¾³ý£¨Õë¶ÔGIFͼƬ £© + BYTE byUseType; //ͼƬÀàÐÍ£¬1-OSD 2-µ×ͼ£¬3-GIF + BYTE byWallNo; //µçÊÓǽǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byPictureNo; //ͼƬÐòºÅ + BYTE byRes[64]; +}NET_DVR_PICTURE_PARAM, *LPNET_DVR_PICTURE_PARAM; + +// 76SPÉ豸POEͨµÀÌí¼Ó·½Ê½ÅäÖà +typedef struct tagNET_DVR_POE_CHANNEL_ADD_MODE +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byAddMode; //Ìí¼Ó·½Ê½ 0: ¼´²å¼´Óà 1: ÊÖ¶¯Ìí¼Ó + BYTE byRes1[127]; //±£Áô +}NET_DVR_POE_CHANNEL_ADD_MODE, *LPNET_DVR_POE_CHANNEL_ADD_MODE; + +#define MAX_ESATA_NUM 16 +#define MAX_MINISAS_NUM 96 + +typedef struct tagNET_DVR_ESATA_MINISAS_USAGE +{ + DWORD dwSize; + BYTE byESATAUsage[MAX_ESATA_NUM]; // Êý×éË÷Òý±íʾµÚ¼¸¸öeSATA£¬0£ºÄ¬Èϱ¸·Ý 1£ºÄ¬ÈϼÏñ + BYTE byMiniSASUsage[MAX_MINISAS_NUM]; // Êý×éË÷Òý±íʾµÚ¼¸¸öminiSAS£¬0£ºÄ¬Èϱ¸·Ý 1£ºÄ¬ÈϼÏñ + BYTE byRes[32]; +}NET_DVR_ESATA_MINISAS_USAGE, *LPNET_DVR_ESATA_MINISAS_USAGE; + +#define MAX_DISK_NUM 128 + +typedef struct tagNET_DVR_BACKUP_LOG_PARAM +{ + DWORD dwSize; + BYTE byDiskDesc[DESC_LEN_32]; //±¸·Ý´ÅÅÌÃèÊö + BYTE byHardDisk[MAX_DISK_NUM]; //Ð豸·ÝµÄÓ²Å̺ţ¬±¸·Ý¼¸¸öÈ¡Ç°¼¸¸ö + BYTE byBackupHardDiskNum; //Ð豸·ÝµÄÓ²Å̸öÊý + BYTE byContinue; //ÊÇ·ñ¼ÌÐø±¸·Ý£¬0-²»¼ÌÐø£¬1-¼ÌÐø + BYTE byAllLogBackUp ; /*ÊÇ·ñÈ«²¿±¸·Ý£¬0-°´´ÅÅ̺ű¸·Ý£¬1-±¸·ÝËùÓÐÈÕÖ¾£¬µ±Îª1ʱ£¬Ð豸·ÝµÄ´ÅÅ̺źÍÓ²Å̸öÊýÎÞЧ*/ + BYTE byRes[29]; +}NET_DVR_BACKUP_LOG_PARAM, *LPNET_DVR_BACKUP_LOG_PARAM; + +typedef struct tagNET_DVR_DIGITAL_CHANNEL_STATE +{ + DWORD dwSize; + BYTE byDigitalAudioChanTalkState[MAX_CHANNUM_V30]; //±íʾÊý×ÖÓïÒôͨµÀµÄ¶Ô½²×´Ì¬ 0-δʹÓã¬1-ʹÓÃÖÐ, 0xffÎÞЧ + BYTE byDigitalChanState[MAX_CHANNUM_V30]; /*Êý×ÖͨµÀµÄÁ¬½Ó״̬ byDigitalChanErrState[0] + ±íʾµÚÒ»¸öÊý×ÖͨµÀ£¬¾ßÌåÖµ±íʾ״̬Â룬Ïé¼ûNET_SDK_DIGITAL_CHANNEL_STATUS£¬ÒÔ´ËÀàÍÆ£¬0±íʾÎÞЧ*/ + BYTE byDigitalAudioChanTalkStateEx[MAX_CHANNUM_V30*3]; //±íʾÊý×ÖÓïÒôͨµÀµÄ¶Ô½²×´Ì¬£¬´ÓµÚMAX_CHANNUM_V30+1 µ½µÚMAX_CHANNUM_V30*4¸ö£¬ 0-δʹÓã¬1-ʹÓÃÖÐ, 0xffÎÞЧ + BYTE byDigitalChanStateEx[MAX_CHANNUM_V30*3]; /*Êý×ÖͨµÀµÄÁ¬½Ó״̬ byDigitalChanErrStateEx[0]±íʾµÚ´ÓµÚMAX_CHANNUM_V30+1¸ö¸öÊý×ÖͨµÀ£¬¾ßÌåÖµ±íʾ״̬Â룬Ïé¼ûNET_SDK_DIGITAL_CHANNEL_STATUS£¬ÒÔ´ËÀàÍÆ£¬0±íʾÎÞЧ*/ + BYTE byAnalogChanState[MAX_ANALOG_CHANNUM];//±íʾģÄâͨµÀÊÇ·ñÆôÓÃ,0-½ûÓÃ,1-ÆôÓà + BYTE byRes[32]; +}NET_DVR_DIGITAL_CHANNEL_STATE, *LPNET_DVR_DIGITAL_CHANNEL_STATE; + +//Êý×ÖͨµÀ״̬ +typedef enum +{ + NET_SDK_DC_STATUS_CONNECTED = 1, //ÒÑÁ¬½Ó + NET_SDK_DC_STATUS_CONNECTING, //ÕýÔÚÁ¬½Ó + NET_SDK_DC_STATUS_BAND_WIDTH_EXCEED, //³¬¹ýϵͳ´ø¿í + NET_SDK_DC_STATUS_DOMAIN_ERROR, //ÓòÃû´íÎó + NET_SDK_DC_STATUS_CHANNEL_ERROR, //ͨµÀºÅ´íÎó + NET_SDK_DC_STATUS_ACCOUNT_ERROR, //Óû§Ãû»òÃÜÂë´íÎó + NET_SDK_DC_STATUS_STREAM_TYPE_NOT_SUPPORT, //Á÷ÀàÐͲ»Ö§³Ö + NET_SDK_DC_STATUS_CONFLICT_WITH_DVR, //ºÍÉ豸IPµØÖ·³åÍ» + NET_SDK_DC_STATUS_CONFLICT_WITH_IPC, //ºÍIPC IPµØÖ·³åÍ» + NET_SDK_DC_STATUS_NETWORK_UNREACHBALE, //ÍøÂç²»¿É´ï + NET_SDK_DC_STATUS_IPC_NOT_EXIST, //IPͨµÀδ½ÓÈë + NET_SDK_DC_STATUS_IPC_EXCEPTION, //IPͨµÀÒì³£ + NET_SDK_DC_STATUS_OTHER_ERROR, //ÆäËû´íÎó + NET_SDK_DC_STATUS_RESOLUTION_NOT_SUPPORT, //IPC·Ö±æÂʲ»Ö§³Ö + NET_SDK_DC_STATUS_IPC_LAN_ERR = 15, //IPCÓïÑÔÓëNVRÓïÑÔ²»Æ¥Åä + NET_SDK_DC_STATUS_USER_LOCKED = 16, //Óû§±»Ëø¶¨ + NET_SDK_DC_STATUS_NOT_ACTIVATED = 17, //É豸δ¼¤»î + NET_SDK_DC_STATUS_USER_NOT_EXIST = 18, //Óû§²»´æÔÚ + NET_SDK_DC_STATUS_IPC_UNREGISTERED = 19, //IPͨµÀ¶ÔÓ¦É豸δע²á(GB28181ЭÒé½ÓÈë) + NET_SDK_DC_STATUS_POE_PORT_DETECTING = 20, //POEͨµÀ¼ì²âÖÐ + NET_SDK_DC_STATUS_RESOURCE_EXCEED = 21, /* IPC·Ö±æÂÊ£¬ÂëÂʳ¬¹ýÏÞÖÆ*/ + NET_SDK_DC_STATUS_NEED_TO_REPAIR = 22, /* ×ÓÂëÁ÷¶ÏÁ¬£¬ÐèÒªÖØÁ¬*/ + NET_SDK_DC_STATUS_ACTIVATING = 23, /* IPCÕýÔÚ¼¤»î */ + NET_SDK_DC_STATUS_TOKEN_AUTHENTCATE_FAILED = 24 /* tokenÈÏ֤ʧ°Ü */ +}NET_SDK_DIGITAL_CHANNEL_STATUS; + +/*************************************ITS****************************/ +#define VERSION_LEN 32 //°æ±¾³¤¶È +#define MAX_OVERLAP_ITEM_NUM 50 //×î´ó×Ö·ûµþ¼ÓÖÖÊý +#define ITS_MAX_DEVICE_NUM 32 //×î´óÉ豸¸öÊý + +//Öն˻ù±¾ÐÅÏ¢ +typedef struct tagNET_ITS_BASEINFO +{ + DWORD dwSize; + BYTE byMainVer[VERSION_LEN]; // Ëã·¨Ö÷Á÷³Ì°æ±¾ + BYTE byMprVer[VERSION_LEN]; // ¶à֡ʶ±ð¿â°æ±¾ + BYTE byBvtVer[VERSION_LEN]; // ±³ÏòÊÓƵ¿â°æ±¾ + BYTE byLptVer[VERSION_LEN]; // ÊÓƵ¸ú×Ù¿â°æ±¾ + BYTE byTvdVer[VERSION_LEN]; // Î¥Õ¼ì²â¿â°æ±¾ + BYTE byTldVer[VERSION_LEN]; // ÐźŵƼì²â¿â°æ±¾ + BYTE byRes[252]; // Ô¤Áô×ֶΠ+}NET_ITS_BASEINFO,*LPNET_ITS_BASEINFO; + +//ͼƬºÏ³É²ÎÊý +typedef struct tagNET_ITS_IMGMERGE_CFG +{ + DWORD dwSize; + BYTE byIsMerge; //ÊÇ·ñÐèÒªºÏ³É£¨0£º²»ºÏ³É£»1£ººÏ³É£© + BYTE byCloseupProportion;//ÌØдͼ±ÈÀý 1-ԭʼ·Ö±æÂÊ´óС£¬2-¿í¸ßΪԭʼ·Ö±æÂÊÁ½±¶£¬ÒÔ´ËÀàÍÆ(1¡«8) + BYTE byRes1[2]; + DWORD dwOneMergeType; //×¥Åĵ¥ÕÅͼºÏ³É·½Ê½£¨¿ÉÄÜ»á½ØÈ¡ÌØдͼ£© + /************************************************************************/ + /* 201 Á½ÕÅͼƬÉÏÏÂÅÅÁкϳÉ,ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ1±¶,¸ßΪ2±¶ */ + /* 202 Á½ÕÅͼƬ×óÓÒÅÅÁкϳÉ,ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ2±¶,¸ßΪ1±¶ */ + /* 203 ÉÏϺϳɣ¬ÌØдÔÚ×îÉϱß. */ + /* 204 ÉÏϺϳɣ¬ÌØдÔÚ×îϱß. */ + /* 205 ×óÓҺϳɣ¬ÌØдÔÚ×îÓұߡ£ */ + /* 206 ×óÓҺϳɣ¬ÌØдÔÚ×î×ó±ß */ + /* 207 Æ·×ֺϳɣ¬ÌØдͼÔÚÉ챧 */ + /* 208 µ¹Æ·×ֺϳɣ¬ÌØдͼÔÚÏ屧 */ + /* 209 ³ª×ÖÐΣ¬×ó±ß1ÕÅΪÌØд */ + /* 210 ·´³ª×ÖÐΣ¬ÓÒ±ß1ÕÅΪÌØд */ + /* 301 ÈýÕÅͼƬÉÏÏÂÅÅÁкϳÉ,ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ1±¶,¸ßΪ3±¶ */ + /* 302 ÈýÕÅͼƬ×óÓÒÅÅÁкϳÉ,ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ3±¶,¸ßΪ1±¶ */ + /* 303 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚÓÒÏÂ;ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ2±¶,¸ßΪ2±¶ */ + /* 304 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚÓÒÏÂ;ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ1±¶,¸ßΪ1±¶ */ + /* 305 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚ×óÉÏ;ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ2±¶,¸ßΪ2±¶ */ + /* 306 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚ×óÉÏ;ѹËõͼƬ·Ö±æÂÊ,ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ1±¶,¸ßΪ1±¶ */ + /* 307 ÈýÕÅͼƬ"Æ·"×ÖÐÍÅÅÁÐºÏ³É */ + /* 308 ÈýÕÅͼƬµ¹"Æ·"×ÖÐÍÅÅÁÐºÏ³É */ + /* 309 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚ×óÏÂ;ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ2±¶,¸ßΪ2±¶ */ + /* 310 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚ×óÏÂ;ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ1±¶,¸ßΪ1±¶ */ + /* 311 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚÓÒÉÏ;ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ2±¶,¸ßΪ2±¶ */ + /* 312 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò,×é³ÉËÄÕÅͼƬ;ËÄÕÅͼƬ"Ìï"×ÖÐͺϳÉ, + ÌØдÔÚÓÒÉÏ;ѹËõͼƬ·Ö±æÂÊ,ºÏ³ÉºóͼƬ¿íΪµ¥ÕÅͼµÄ1±¶,¸ßΪ1±¶ */ + + /* 313 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬºá"Ò»"×ÖÐͺϳɣ¬ + ˳ÐòΪ£ºÌØдͼ¡¢³¡¾°Í¼¡¢³¡¾°Í¼¡¢³¡¾°Í¼ */ + /* 314 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬºá"Ò»"×ÖÐͺϳɣ¬ + ˳ÐòΪ£º³¡¾°Í¼¡¢ÌØдͼ¡¢³¡¾°Í¼¡¢³¡¾°Í¼ */ + /* 315 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬºá"Ò»"×ÖÐͺϳɣ¬ + ˳ÐòΪ£º³¡¾°Í¼¡¢³¡¾°Í¼¡¢ÌØдͼ¡¢³¡¾°Í¼ */ + /* 316 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬºá"Ò»"×ÖÐͺϳɣ¬ + ˳ÐòΪ£º³¡¾°Í¼¡¢³¡¾°Í¼¡¢³¡¾°Í¼¡¢ÌØдͼ */ + /* 317 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬÊú"1"×ÖÐͺϳɣ¬ + ˳ÐòΪ£ºÌØдͼ¡¢³¡¾°Í¼¡¢³¡¾°Í¼¡¢³¡¾°Í¼ */ + /* 318 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬÊú"1"×ÖÐͺϳɣ¬ + ˳ÐòΪ£º³¡¾°Í¼¡¢ÌØдͼ¡¢³¡¾°Í¼¡¢³¡¾°Í¼ */ + /* 319 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬÊú"1"×ÖÐͺϳɣ¬ + ˳ÐòΪ£º³¡¾°Í¼¡¢³¡¾°Í¼¡¢ÌØдͼ¡¢³¡¾°Í¼ */ + /* 320 ´ÓÈýÕÅͼƬÖÐÈ¡Ò»·ù³µÅÆÌØдÇøÓò£¬×é³ÉËÄÕÅͼƬ£» + ËÄÕÅͼƬÊú"1"×ÖÐͺϳɣ¬ + ˳ÐòΪ£º³¡¾°Í¼¡¢³¡¾°Í¼¡¢³¡¾°Í¼¡¢ÌØдͼ */ + /************************************************************************/ + DWORD dwTwoMergeType; //×¥ÅÄÁ½ÕÅͼºÏ³É·½Ê½ + DWORD dwThreeMergeType; //×¥ÅÄÈýÕÅͼºÏ³É·½Ê½ + DWORD dwJpegQuality; //ѹËõÖÊÁ¿£¨0~100£© + DWORD dwCloseupIndex; //ÌØдͼץÅĵڼ¸ÕÅ + DWORD dwMerageMaxSize; //ºÏ³ÉͼƬ´óСµÄÉÏÏÞ,300-10240(µ¥Î»KB) + WORD wCloseupDeviation; // ÌØдͼƫÒÆÁ¿(50~ͼƬ¸ß¶È)£¬µ¥Î»:ÏñËØ + BYTE byRes[30]; +}NET_ITS_IMGMERGE_CFG,*LPNET_ITS_IMGMERGE_CFG; + +//½»Í¨Êý¾ÝÖ÷»ú +typedef struct tagNET_ITS_TRAFFIC_DATA_HOST +{ + NET_DVR_IPADDR struHostAddr; // Ô¶³ÌÖ÷»úIP + WORD wHostPort; // Ô¶³ÌÖ÷»úPort + BYTE byRes1[2]; + DWORD dwDataType; // ÉÏ´«Ô¶³ÌÖ÷»úµÄÊý¾ÝÀàÐÍ£¨¶¨Òå¼ûÏ£©£¬°´Î»±íʾ + BYTE bySuspendUpload; // ÊÇ·ñÔÝÍ£Êý¾ÝÉÏ´«£º0-Õý³£ÉÏ´«£»1-ÔÝÍ£ÉÏ´« + BYTE byUploadStrategy; // ÉÏ´«²ßÂÔ£º0-×îÐÂÊý¾ÝÓÅÏÈÉÏ´«£»1-°´ÕÕͨÐÐʱ¼äÉÏ´« + WORD wUploadInterval; // ÉÏ´«¼ä¸ôʱ¼ä£¨ms£¬1~2000£©£¬¸Ã²ÎÊýÖ»¶ÔÀúÊ·Êý¾ÝÓÐЧ + DWORD dwUploadTimeOut; //ÉÏ´«³¬Ê±Ê±¼ä + BYTE byRes[24]; +}NET_ITS_TRAFFIC_DATA_HOST,*LPNET_ITS_TRAFFIC_DATA_HOST; + +//Êý¾ÝÉÏ´«²ÎÊý +typedef struct tagNET_ITS_UPLOAD_CFG +{ + DWORD dwSize; + NET_ITS_TRAFFIC_DATA_HOST struRemoteDataHost1; //½ÓÊÕ½»Í¨Êý¾ÝÖ÷»ú1 + NET_ITS_TRAFFIC_DATA_HOST struRemoteDataHost2; //½ÓÊÕ½»Í¨Êý¾ÝÖ÷»ú2 +}NET_ITS_UPLOAD_CFG,*LPNET_ITS_UPLOAD_CFG; + +typedef struct tagNET_DVR_SYSTEM_TIME +{ + WORD wYear; //Äê + WORD wMonth; //Ô + WORD wDay; //ÈÕ + WORD wHour; //ʱ + WORD wMinute; //·Ö + WORD wSecond; //Ãë + WORD wMilliSec; //ºÁÃë + BYTE byRes[2]; +}NET_DVR_SYSTEM_TIME, *LPNET_DVR_SYSTEM_TIME; + +//½»Í¨Êý¾ÝÖ÷»ú״̬ÐÅÏ¢ +typedef struct tagNET_ITS_TRAFFIC_DATA_INFO +{ + DWORD dwDataQuantity; //Êý¾Ý×ÜÁ¿ + DWORD dwDataRsendQuantity; //δ·¢ËÍÊýÁ¿£¨ÐèÒªÉÏ´«½»Í¨Êý¾ÝÖ÷»úµÄ£© + NET_DVR_SYSTEM_TIME struStartTime; //δ·¢ËÍÊý¾ÝµÄ×îÔçʱ¼ä + NET_DVR_SYSTEM_TIME struEndTime; //δ·¢ËÍÊý¾ÝµÄ×îÍíʱ¼ä + NET_DVR_IPADDR struDataHost; //½ÓÊÕ½»Í¨Êý¾ÝÖ÷»ú +}NET_ITS_TRAFFIC_DATA_INFO, *LPNET_ITS_TRAFFIC_DATA_INFO; + +//Öն˹¤×÷״̬ +typedef struct tagNET_ITS_WORKSTATE +{ + DWORD dwSize ; + BYTE byDevName[NAME_LEN]; // É豸Ãû³Æ + DWORD dwRunTime; // ϵͳÔËÐÐʱ¼ä£¬µ¥Î»s + NET_ITS_TRAFFIC_DATA_INFO struTrafficDataInfo[2]; //Ö§³ÖÁ½Ì¨Ö÷»ú£¨Êý¾ÝÉÏ´«ÅäÖõÄÖ÷»ú£© + DWORD dwMemoryUsage; // ÄÚ´æÕ¼ÓÃÂÊ£¨Èç¹ûÄÚ´æÕ¼ÓÃÂÊΪ30%£¬´Ë´¦Ìî30£© + DWORD dwCpuUsage; // cpuÕ¼ÓÃÂÊ£¨Èç¹ûcpuÕ¼ÓÃÂÊΪ30%£¬´Ë´¦Ìî30£© + DWORD dwDevTemperature; // ±¾»úÎÂ¶È + DWORD dwDeviceStatic; // É豸µÄ״̬,0-Õý³£,1-CPUÕ¼ÓÃÂÊÌ«¸ß,³¬¹ý85%,2-Ó²¼þ´íÎó,ÀýÈç´®¿ÚËÀµô + NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; //Ó²ÅÌ״̬ + NET_DVR_CHANNELSTATE_V30 struChanStatic[MAX_CHANNUM_V30]; //ͨµÀµÄ״̬ + BYTE byAlarmInStatic[MAX_ALARMIN_V30]; //±¨¾¯ÊäÈë¿ÚµÄ״̬,0-ûÓб¨¾¯,1-Óб¨¾¯ + BYTE byAlarmOutStatic[MAX_ALARMOUT_V30]; //±¨¾¯Êä³ö¶Ë¿ÚµÄ״̬,0-ûÓÐÊä³ö,1-Óб¨¾¯Êä³ö + DWORD dwLocalDisplay; //±¾µØÏÔʾ״̬,0-Õý³£,1-²»Õý³£ + BYTE byAudioInChanStatus[8]; //±íʾÓïÒôͨµÀµÄ״̬ 0-δʹÓã¬1-ʹÓÃÖУ¬Êý×é0±íʾµÚ1¸öÓïÒôͨµÀ + BYTE byRes[36]; //±£Áô +}NET_ITS_WORKSTATE, *LPNET_ITS_WORKSTATE; + +//³öÈë¿Ú½»Í¨ÅäÖûñÈ¡²ÎÊý +typedef struct tagNET_ITS_ECT_WORKSTATE_COMMAND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byRes[256]; //±£Áô +}NET_ITS_ECT_WORKSTATE_COMMAND, *LPNET_ITS_ECT_WORKSTATE_COMMAND; + +typedef struct tagNET_ITS_ECTWORKSTATE +{ + DWORD dwSize ; + BYTE byDevName[NAME_LEN]; // É豸Ãû³Æ + DWORD dwRunTime; // ϵͳÔËÐÐʱ¼ä£¬µ¥Î»s + NET_ITS_TRAFFIC_DATA_INFO struTrafficDataInfo[2]; //Ö§³ÖÁ½Ì¨Ö÷»ú£¨Êý¾ÝÉÏ´«ÅäÖõÄÖ÷»ú£© + DWORD dwMemoryUsage; // ÄÚ´æÕ¼ÓÃÂÊ£¨Èç¹ûÄÚ´æÕ¼ÓÃÂÊΪ30%£¬´Ë´¦Ìî30£© + DWORD dwCpuUsage; // cpuÕ¼ÓÃÂÊ£¨Èç¹ûcpuÕ¼ÓÃÂÊΪ30%£¬´Ë´¦Ìî30£© + DWORD dwDevTemperature; // ±¾»úÎÂ¶È + DWORD dwDeviceStatic; // É豸µÄ״̬,0-Õý³£,1-CPUÕ¼ÓÃÂÊÌ«¸ß,³¬¹ý85%,2-Ó²¼þ´íÎó,ÀýÈç´®¿ÚËÀµô + NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; //Ó²ÅÌ״̬ + BYTE byAlarmInStatic[MAX_ALARMIN_V30]; //±¨¾¯ÊäÈë¿ÚµÄ״̬,0-ûÓб¨¾¯,1-Óб¨¾¯ + BYTE byAlarmOutStatic[MAX_ALARMOUT_V30]; //±¨¾¯Êä³ö¶Ë¿ÚµÄ״̬,0-ûÓÐÊä³ö,1-Óб¨¾¯Êä³ö + DWORD dwLocalDisplay; //±¾µØÏÔʾ״̬,0-Õý³£,1-²»Õý³£ + BYTE byRes[256]; //±£Áô +}NET_ITS_ECTWORKSTATE, *LPNET_ITS_ECTWORKSTATE; + +// ͼƬÐÅÏ¢£¨ºóÐø»á¼ÓÈëÂëÁ÷£© +typedef struct tagNET_ITS_PICTURE_INFO +{ + DWORD dwDataLen; //ýÌåÊý¾Ý³¤¶È + // 0:³µÅÆͼ;1:³µÁ¾Í¼;2:ºÏ³Éͼ; 3:ÌØдͼ;4:¶þֱͼ;5:ÂëÁ÷;6:ÈËÁ³×Óͼ(Ö÷¼ÝÊ»);7:ÈËÁ³×Óͼ(¸±¼ÝÊ»)³Éͼ;8-·Ç»ú¶¯³µ;9-ÐÐÈË;10-³ÆÖØԭʼÂãÊý¾Ý;11-Ä¿±êͼ;12-Ö÷¼ÝÊ»ÊÒͼ ;13-¸±¼ÝÊ»ÊÒͼ;14-ÈËÁ³Í¼¿ÙСͼ + //15 - ×Ô¶¨ÒåͼƬ(Óû§×Ô¼ºÉÏ´«½øÐÐÎ¥·¨¼ì²âµÄͼƬ) + BYTE byType; + // 0-Êý¾ÝÖ±½ÓÉÏ´«; 1-ÔÆ´æ´¢·þÎñÆ÷URL(3.7Ver)Ô­ÏȵÄͼƬÊý¾Ý±ä³ÉURLÊý¾Ý£¬Í¼Æ¬³¤¶È±ä³ÉURL³¤¶È + BYTE byDataType; + BYTE byCloseUpType;//ÌØдͼÀàÐÍ£¬0-±£Áô,1-·Ç»ú¶¯³µ,2-ÐÐÈË + BYTE byPicRecogMode; //ͼƬ±³Ïòʶ±ð£º0-ÕýÏò³µÅÆʶ±ð£¬1-±³Ïòʶ±ð(βÅÆʶ±ð) £» + DWORD dwRedLightTime; //¾­¹ýµÄºìµÆʱ¼ä £¨s£© + BYTE byAbsTime[32]; //¾ø¶Ôʱ¼äµã,yyyymmddhhmmssxxx,e.g.20090810235959999 ×îºóÈýλΪºÁÃëÊý + NET_VCA_RECT struPlateRect; //³µÅÆλÖÃ,µ±byTypeΪ8-·Ç»ú¶¯³µ;9-ÐÐÈËʱ£¬±íʾÈËÌå×ø±ê + NET_VCA_RECT struPlateRecgRect; //ÅÆʶÇøÓò×ø±ê£¬µ±Í¼Æ¬ÀàÐÍΪ12-Ö÷¼ÝÊ»ÊÒͼ13-¸±¼ÝÊ»ÊÒͼÊÇ£¬¸Ã×ø±êΪ¼ÝʻԱ×ø±ê + BYTE *pBuffer; //Êý¾ÝÖ¸Õë + DWORD dwUTCTime;//UTCʱ¼ä¶¨Òå + BYTE byCompatibleAblity; //¼æÈÝÄÜÁ¦×ֶΠ0±íʾÎÞЧ£¬1±íʾÓÐЧ; bit0-±íʾdwUTCTime×Ö¶ÎÓÐЧ + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byRes2[4]; //±£Áô +}NET_ITS_PICTURE_INFO, *LPNET_ITS_PICTURE_INFO; + + +typedef struct tagNET_ITS_ILLEGAL_INFO +{ + BYTE byIllegalInfo[MAX_ILLEGAL_LEN/*64*/];// Î¥ÕÂÀàÐÍÐÅÏ¢£¨×Ö·û¸ñʽ£© + BYTE byRes[256]; +}NET_ITS_ILLEGAL_INFO,*LPNET_ITS_ILLEGAL_INFO; + + +// ¼ì²â½á¹û +typedef struct tagNET_ITS_PLATE_RESULT +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwMatchNo; //Æ¥ÅäÐòºÅ,ÓÉ(³µÁ¾ÐòºÅ,Êý¾ÝÀàÐÍ,³µµÀºÅ)×é³ÉÆ¥ÅäÂë + BYTE byGroupNum; //ͼƬ×éÊýÁ¿£¨Ò»Á¾¹ý³µÏà»ú¶à´Î×¥ÅĵÄÊýÁ¿£¬´ú±íÒ»×éͼƬµÄ×ÜÊý£¬ÓÃÓÚÑÓʱƥÅäÊý¾Ý£© + BYTE byPicNo; //Á¬ÅĵÄͼƬÐòºÅ£¨½ÓÊÕµ½Í¼Æ¬×éÊýÁ¿ºó£¬±íʾ½ÓÊÕÍê³É;½ÓÊÕ³¬Ê±²»×ãͼƬ×éÊýÁ¿Ê±£¬¸ù¾ÝÐèÒª±£Áô»òɾ³ý£© + BYTE bySecondCam; //ÊÇ·ñµÚ¶þÏà»ú×¥ÅÄ£¨ÈçÔ¶½ü¾°×¥ÅĵÄÔ¶¾°Ïà»ú£¬»òÇ°ºó×¥ÅĵĺóÏà»ú£¬ÌØÊâÏîÄ¿ÖлáÓõ½£© + BYTE byFeaturePicNo; //´³ºìµÆµç¾¯£¬È¡µÚ¼¸ÕÅͼ×÷ΪÌØдͼ,0xff-±íʾ²»È¡ + BYTE byDriveChan; //´¥·¢³µµÀºÅ + BYTE byVehicleType; //³µÁ¾ÀàÐÍ£¬²Î¿¼VTR_RESULT + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1,4], IPCĬÈÏÊÇ0 + //³µÁ¾ÊôÐÔ£¬°´Î»±íʾ£¬0- ÎÞ¸½¼ÓÊôÐÔ(ÆÕͨ³µ)£¬bit1- »Æ±ê³µ(ÀàËÆÄê¼ìµÄ±êÖ¾)£¬bit2- ΣÏÕÆ·³µÁ¾£¬Öµ£º0- ·ñ£¬1- ÊÇ + //¸Ã½ÚµãÒѲ»ÔÙʹÓÃ,ʹÓÃÏÂÃæµÄbyYellowLabelCarºÍbyDangerousVehiclesÅжÏÊÇ·ñ»Æ±ê³µºÍΣÏÕÆ·³µ + BYTE byVehicleAttribute; + WORD wIllegalType; //Î¥ÕÂÀàÐͲÉÓùú±ê¶¨Òå + BYTE byIllegalSubType[8]; //Î¥ÕÂ×ÓÀàÐÍ + BYTE byPostPicNo; //Î¥ÕÂʱȡµÚ¼¸ÕÅͼƬ×÷Ϊ¿¨¿Úͼ,0xff-±íʾ²»È¡ + //ͨµÀºÅ(ÓÐЧ£¬±¨¾¯Í¨µÀºÅºÍËùÔÚÉ豸ÉÏ´«±¨¾¯Í¨µÀºÅÒ»Ö£¬ÔÚºó¶ËºÍËù½ÓÈëµÄ ͨµÀºÅÒ»ÖÂ) + BYTE byChanIndex; + WORD wSpeedLimit; //ÏÞËÙÉÏÏÞ£¨³¬ËÙʱÓÐЧ£© + BYTE byChanIndexEx; //byChanIndexEx*256+byChanIndex±íʾÕæʵͨµÀºÅ¡£ + /*³µÁ¾·½Î»²¼¿Ø±êÖ¾,0~ΪÆÕͨ³µÅÆʶ±ð±¨¾¯, + 1~Ϊ³µÁ¾Î»Öò¼¿Ø´¥·¢±¨¾¯(¼´Í¨¹ýPUT /ISAPI/Traffic/channels//vehiclePositionControl?format=json´¥·¢)¡£ + 2~Ϊ³µÁ¾ÖÇÄܲ¼¿Ø´¥·¢±¨¾¯(°üº¬¶àÔ¤Öõ㼰GPS³µÁ¾²¼¿Ø)(¼´Í¨¹ýPUT /ISAPI/Traffic/channels//vehicleMonitor//startTask´¥·¢, + µ«ÔÚunarmedVehicleDetectionEnable£¨·ÇÄ¿±ê³µÁ¾¼ì²âʹÄÜ£©Îªtrueʱ£¬Ö»Éϱ¨³µÁ¾¼ì²â±¨¾¯£¬ÎÞ³µÁ¾ÖÇÄܲ¼¿Ø±¨¾¯£¬Òò´Ë¸Ã×Ö¶ÎȡֵΪ0£¬¶ø²»ÊÇ2)¡£ + 3~ΪÊÖ¶¯³µÁ¾²¼¿Ø´¥·¢±¨¾¯(/ISAPI/Traffic/channels//manualVehicleMonitor?format=json) + 4~ΪÈÕ³£²¼¿Ø(¸´ÓóµÁ¾¼ì²âÅäÖÃ)¿Éͨ¹ý³µÁ¾¼ì²âÄÜÁ¦ÖÐÇø·ÖÊÇ·ñÖ§³ÖÈÕ³£³µÁ¾²¼¿Ø, + (¼´Í¨¹ý/ISAPI/Traffic/channels//vehicleDetect/capabilitiesÖÐisSupportDailyVehicleMonitorÅжÏ,ÈÕ³£³µÁ¾²¼¿Øʱ,É豸²»½ö»áÉϱ¨ANPR±¨¾¯»¹»áʵʱÉϱ¨vehicleMonitor³µÁ¾²¼¿Ø±¨¾¯) + Èô²»·µ»Ø¸Ã×Ö¶ÎÔò´ú±íΪÆÕͨ³µÁ¾¼ì²â + */ + BYTE byVehiclePositionControl; + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ + BYTE byMonitoringSiteID[48]; //¼à²âµã±àºÅ + BYTE byDeviceID[48]; //É豸±àºÅ + BYTE byDir; //¼à²â·½Ïò£¬1-ÉÏÐУ¨·´Ïò£©£¬2-ÏÂÐÐ(ÕýÏò)£¬3-Ë«Ïò£¬4-Óɶ«ÏòÎ÷£¬5-ÓÉÄÏÏò±±,6-ÓÉÎ÷Ïò¶«£¬7-Óɱ±ÏòÄÏ£¬8-ÆäËü + BYTE byDetectType; //¼ì²â·½Ê½,1-µØ¸Ð´¥·¢£¬2-ÊÓƵ´¥·¢£¬3-¶à֡ʶ±ð£¬4-À×´ï´¥·¢ + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byCarDirectionType; //³µÁ¾¾ßÌåÐÐÊ»µÄ·½Ïò£¬0±íʾ´ÓÉÏÍùÏ£¬1±íʾ´ÓÏÂÍùÉÏ£¨¸ù¾Ýʵ¼Ê³µÁ¾µÄÐÐÊ»·½ÏòÀ´µÄÇø·Ö£©,2±íʾδ֪ + //µ±wIllegalType²ÎÊýΪ¿Õʱ£¬Ê¹ÓøòÎÊý¡£ÈôwIllegalType²ÎÊýΪÓÐֵʱ£¬ÒÔwIllegalType²ÎÊýΪ׼£¬¸Ã²ÎÊýÎÞЧ¡£ + DWORD dwCustomIllegalType; //Î¥ÕÂÀàÐͶ¨Òå(Óû§×Ô¶¨Òå) + /*Ϊ0~Êý×Ö¸ñʽʱ£¬ÎªÀϵÄÎ¥ÕÂÀàÐÍ£¬wIllegalType¡¢dwCustomIllegalType²ÎÊýÉúЧ£¬¸³Öµ¹ú±êÎ¥·¨´úÂë¡£ + Ϊ1~×Ö·û¸ñʽʱ£¬pIllegalInfoBuf²ÎÊýÉúЧ¡£ÀϵÄÎ¥ÕÂÀàÐÍ£¬wIllegalType¡¢dwCustomIllegalType²ÎÊýÒÀÈ»¸³Öµ¹ú±êÎ¥·¨´úÂë*/ + BYTE* pIllegalInfoBuf; //Î¥·¨´úÂë×Ö·ûÐÅÏ¢½á¹¹ÌåÖ¸Õ룻ָÏòNET_ITS_ILLEGAL_INFO + BYTE byIllegalFromatType; //Î¥ÕÂÐÅÏ¢¸ñʽÀàÐÍ£» 0~Êý×Ö¸ñʽ£¬ 1~×Ö·û¸ñʽ + BYTE byPendant;// 0-±íʾδ֪,1-³µ´°ÓÐÐü¹ÒÎ2-³µ´°ÎÞÐü¹ÒÎï + BYTE byDataAnalysis; //0-Êý¾Ýδ·ÖÎö, 1-Êý¾ÝÒÑ·ÖÎö + BYTE byYellowLabelCar; //0-±íʾδ֪, 1-·Ç»Æ±ê³µ,2-»Æ±ê³µ + BYTE byDangerousVehicles; //0-±íʾδ֪, 1-·ÇΣÏÕÆ·³µ,2-ΣÏÕÆ·³µ + //ÒÔÏÂ×ֶΰüº¬Pilot×Ö·û¾ùΪÖ÷¼ÝÊ»£¬º¬Copilot×Ö·û¾ùΪ¸±¼ÝÊ» + BYTE byPilotSafebelt;//0-±íʾδ֪,1-ϵ°²È«´ø,2-²»Ïµ°²È«´ø + BYTE byCopilotSafebelt;//0-±íʾδ֪,1-ϵ°²È«´ø,2-²»Ïµ°²È«´ø + BYTE byPilotSunVisor;//0-±íʾδ֪,1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byCopilotSunVisor;//0-±íʾδ֪, 1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byPilotCall;// 0-±íʾδ֪, 1-²»´òµç»°,2-´òµç»° + //0-¿ªÕ¢£¬1-δ¿ªÕ¢ (רÓÃÓÚÀúÊ·Êý¾ÝÖÐÏà»ú¸ù¾ÝÃûµ¥Æ¥Åäºó£¬ÊÇ·ñ¿ªÕ¢³É¹¦µÄ±êÖ¾)£»µ±byAlarmDataTypeΪ0-ʵʱÊý¾Ýʱ 0-δ¿ªÕ¢ 1-¿ªÕ¢ + BYTE byBarrierGateCtrlType; + BYTE byAlarmDataType;//0-ʵʱÊý¾Ý£¬1-ÀúÊ·Êý¾Ý + NET_DVR_TIME_V30 struSnapFirstPicTime;//¶Ëµãʱ¼ä(ms)£¨×¥ÅĵÚÒ»ÕÅͼƬµÄʱ¼ä£© + DWORD dwIllegalTime;//Î¥·¨³ÖÐøʱ¼ä£¨ms£© = ×¥ÅÄ×îºóÒ»ÕÅͼƬµÄʱ¼ä - ×¥ÅĵÚÒ»ÕÅͼƬµÄʱ¼ä + DWORD dwPicNum; //ͼƬÊýÁ¿£¨ÓëpicGroupNum²»Í¬£¬´ú±í±¾ÌõÐÅÏ¢¸½´øµÄͼƬÊýÁ¿£¬Í¼Æ¬ÐÅÏ¢ÓÉstruVehicleInfoEx¶¨Òå + NET_ITS_PICTURE_INFO struPicInfo[6]; //ͼƬÐÅÏ¢,µ¥ÕŻص÷£¬×î¶à6ÕÅͼ£¬ÓÉÐòºÅÇø·Ö +}NET_ITS_PLATE_RESULT, *LPNET_ITS_PLATE_RESULT; + +//³öÈë¿Ú³µÁ¾×¥ÅÄÊý¾ÝÉÏ´« +typedef struct tagNET_ITS_GATE_VEHICLE +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwMatchNo; //Æ¥ÅäÐòºÅ,ÓÉ(³µÁ¾ÐòºÅ,Êý¾ÝÀàÐÍ,³µµÀºÅ)×é³ÉÆ¥ÅäÂë ĬÈÏ0 + BYTE byGroupNum; //ͼƬ×éÊýÁ¿£¨Ò»Á¾¹ý³µÏà»ú¶à´Î×¥ÅĵÄÊýÁ¿£¬´ú±íÒ»×éͼƬµÄ×ÜÊý£¬ÓÃÓÚÑÓʱƥÅäÊý¾Ý£©Ä¬ÈÏ 1 ×¥ÅÄÀàÐÍÏÂͼƬÊý¾Ý ¿ØÖƺóÐø½ÓÊÕÑÓʱ²Ù×÷ + BYTE byPicNo; //Á¬ÅĵÄͼƬ×éÉÏ´«Í¼Æ¬ÐòºÅ£¨½ÓÊÕµ½Í¼Æ¬×éÊýÁ¿ºó£¬±íʾ½ÓÊÕÍê³É¡£ + //½ÓÊÕ³¬Ê±²»×ãͼƬ×éÊýÁ¿Ê±£¬¸ù¾ÝÐèÒª±£Áô»òɾ³ý£© + BYTE bySecondCam; //ÊÇ·ñµÚ¶þÏà»ú×¥ÅÄ£¨ÈçÔ¶½ü¾°×¥ÅĵÄÔ¶¾°Ïà»ú£¬»òÇ°ºó×¥ÅĵĺóÏà»ú£¬ÌØÊâÏîÄ¿ÖлáÓõ½£©±êʾǰºóÏà»ú×¥ÅÄͼƬ + BYTE byRes; //±ê¼ÇΪԤÁô + WORD wLaneid; //³µµÀºÅ1¡«32£¨Ë÷Òý³µµÀºÅ£¬¿ÉÒÔÌøÔ¾£© + BYTE byCamLaneId; //¶ÔÓ¦Ïà»ú³µµÀºÅ1¡«16£¨Ïà»úÅäÖõijµµÀºÅ£¬¿ÉÒÔÌøÔ¾£¬¿ÉÒÔÏàͬ£© + BYTE byRes1; //±£Áô + BYTE byAlarmReason[MAX_ALARMREASON_LEN]; //×Ô¶¨Ò屨¾¯ÀàÐÍ Ä¬ÈÏΪÖÐÎÄ + WORD wBackList; //±ê¼ÇΪÊÇ·ñ±¨¾¯Êý¾Ý 0 ±íʾΪÕý³£¹ý³µÊý¾Ý 1 ±íʾ½ûÖ¹Ãûµ¥ + WORD wSpeedLimit; //ÏÞËÙÉÏÏÞ£¨³¬ËÙʱÓÐЧ£©km/h + DWORD dwChanIndex; //ͨµÀºÅ + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ º¬ËÙ¶È + BYTE byMonitoringSiteID[MAX_ID_LEN]; //¼à²âµã±àºÅ + BYTE byDeviceID[MAX_ID_LEN]; //É豸±àºÅ + BYTE byDir; //¼à²â·½Ïò£¬0-ÆäËü 1 È볡£¬2 ³ö³¡ + BYTE byDetectType; //¼ì²â·½Ê½, 0-ÆäËû 1-µØ¸Ð´¥·¢£¬2-ÊÓƵ´¥·¢£¬3-¶à֡ʶ±ð£¬4-À×´ï´¥·¢ + BYTE byRes2[2]; + BYTE byCardNo[MAX_ID_LEN]; // ¿¨ºÅ + DWORD dwPicNum; //ͼƬÊýÁ¿£¨ÓëpicGroupNum²»Í¬£¬´ú±í±¾ÌõÐÅÏ¢¸½´øµÄͼƬÊýÁ¿£¬Í¼Æ¬ÐÅÏ¢ÓÉstruVehicleInfoEx¶¨Òå + NET_ITS_PICTURE_INFO struPicInfo[4]; //ͼƬÐÅÏ¢,µ¥ÕŻص÷£¬×î¶à4ÕÅͼ£¬ÓÉÐòºÅÇø·Ö + //2013-11-19 ³öÈë¿Ú³µÁ¾×¥ÅÄÊý¾ÝÉÏ´«£¨¼àÌý·½Ê½£©ÐÂÔö²ÎÊý + BYTE bySwipeTime[MAX_TIME_LEN];//Ôö¼ÓË¢¿¨Ê±¼ä ʱ¼ä¸ñʽΪyyyymmddhh24missfff + BYTE byRes3[224]; +}NET_ITS_GATE_VEHICLE, *LPNET_ITS_GATE_VEHICLE; + +//³öÈë¿ÚÈËÁ³Ê¶±ð +typedef struct tagNET_ITS_GATE_FACE +{ + DWORD dwSize; //½á¹¹Ì峤¶È + BYTE byGroupNum; //ͼƬ×éÊýÁ¿£¨Ò»¸öÐÐÈËÏà»ú¶à´Î×¥ÅĵÄÊýÁ¿£¬´ú±íÒ»×éͼƬµÄ×ÜÊý£¬ÓÃÓÚÑÓʱƥÅäÊý¾Ý£© + BYTE byPicNo; //Á¬ÅĵÄͼƬÐòºÅ£¨½ÓÊÕµ½Í¼Æ¬×éÊýÁ¿ºó£¬±íʾ½ÓÊÕÍê³É¡£ + //½ÓÊÕ³¬Ê±²»×ãͼƬ×éÊýÁ¿Ê±£¬¸ù¾ÝÐèÒª±£Áô»òɾ³ý£© + BYTE byFeaturePicNo; //Á¬×¥Ê±È¡µÚ¼¸ÕÅͼ×÷ΪÌØдͼ,0xff-±íʾ²»È¡ + BYTE byRes; //±£Áô + WORD wLaneid; //³µµÀºÅ1¡«32£¨Ë÷Òý³µµÀºÅ£¬¿ÉÒÔÌøÔ¾£© + BYTE byCamLaneId; //¶ÔÓ¦Ïà»ú³µµÀºÅ1¡«16£¨Ïà»úÅäÖõijµµÀºÅ£¬¿ÉÒÔÌøÔ¾£¬¿ÉÒÔÏàͬ£© + BYTE byDir; //¼à²â·½Ïò£¬0-ÆäËû 1 È볡£¬ 2 ³ö³¡ + DWORD dwChanIndex; //ͨµÀºÅ + BYTE byMonitoringSiteID[MAX_ID_LEN]; //¼à²âµã±àºÅ + BYTE byDeviceID[MAX_ID_LEN]; //É豸±àºÅ + NET_VCA_FACESNAP_RESULT struFaceInfo; //ÈËÁ³×¥ÅÄÊý¾Ý + BYTE byRes2[256]; //Ô¤Áô +}NET_ITS_GATE_FACE, *LPNET_ITS_GATE_FACE; + +//Í£³µ³¡Êý¾ÝÉÏ´« +typedef struct _tagNET_ITS_PARK_VEHICLE_ +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byGroupNum; //ͼƬ×éÊýÁ¿£¨µ¥´ÎÂÖѯץÅĵÄͼƬÊýÁ¿£© + BYTE byPicNo; //Á¬ÅĵÄͼƬ×éÉÏ´«Í¼Æ¬ÐòºÅ£¨½ÓÊÕµ½Í¼Æ¬×éÊýÁ¿ºó£¬±íʾ½ÓÊÕÍê³É + //½ÓÊÕ³¬Ê±²»×ãͼƬ×éÊýÁ¿Ê±£¬¸ù¾ÝÐèÒª±£Áô»òɾ³ý£© + BYTE byLocationNum; //µ¥ÕÅͼƬËù¹ÜÀíµÄ³µÎ»Êý + BYTE byParkError; //Í£³µÒì³££¬0-Õý³£ 1 Òì³£ + BYTE byParkingNo[MAX_PARKNO_LEN];//³µÎ»±àºÅ + BYTE byLocationStatus; //³µÎ»³µÁ¾×´Ì¬£¬0-ÎÞ³µ£¬1Óгµ + BYTE bylogicalLaneNum;//Âß¼­³µÎ»ºÅ£¬0-3£¬Ò»¸öÏà»ú×î´óÄܹÜ4¸ö³µÎ» £¨0´ú±í×î×ó±ß£¬3´ú±í×îÓұߣ© + WORD wUpLoadType;//µÚÁãλ±íʾ£º0~ÂÖѲÉÏ´«¡¢1~±ä»¯ÉÏ´« + BYTE byRes1[4]; //±£Áô×Ö½Ú + DWORD dwChanIndex; //ͨµÀºÅÊý×ÖͨµÀ + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ + BYTE byMonitoringSiteID[MAX_ID_LEN]; //¼à²âµã±àºÅ + BYTE byDeviceID[MAX_ID_LEN]; //É豸±àºÅ + DWORD dwPicNum; //ͼƬÊýÁ¿£¨ÓëpicGroupNum²»Í¬£¬´ú±í±¾ÌõÐÅÏ¢¸½´øµÄͼƬÊýÁ¿ + //£¬Í¼Æ¬ÐÅÏ¢ÓÉstruVehicleInfoEx¶¨Òå + NET_ITS_PICTURE_INFO struPicInfo[2]; //ͼƬÐÅÏ¢,µ¥ÕŻص÷£¬×î¶à2ÕÅͼ£¬ÓÉÐòºÅÇø·Ö + BYTE byRes2[256]; +}NET_ITS_PARK_VEHICLE, *LPNET_ITS_PARK_VEHICLE; + +//½»Í¨È¡Ö¤±¨¾¯ +typedef struct tagNET_DVR_TFS_ALARM +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + DWORD dwIllegalType; //Î¥ÕÂÀàÐÍ£¬²ÉÓùú±ê¶¨Ò壬µ±dwIllegalTypeֵΪ0xffffffffʱʹÓÃbyIllegalCode + DWORD dwIllegalDuration; //Î¥·¨³ÖÐøʱ¼ä£¨µ¥Î»£ºÃ룩 = ×¥ÅÄ×îºóÒ»ÕÅͼƬµÄʱ¼ä - ×¥ÅĵÚÒ»ÕÅͼƬµÄʱ¼ä + BYTE byMonitoringSiteID[MONITORSITE_ID_LEN];//¼à²âµã±àºÅ£¨Â·¿Ú±àºÅ¡¢ÄÚ²¿±àºÅ£© + BYTE byDeviceID[DEVICE_ID_LEN]; //É豸±àºÅ + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_SCENE_INFO struSceneInfo; //³¡¾°ÐÅÏ¢ + NET_DVR_TIME_EX struBeginRecTime; //¼Ïñ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndRecTime; //¼Ïñ½áÊøʱ¼ä + NET_DVR_AID_INFO struAIDInfo; //½»Í¨Ê¼þÐÅÏ¢ + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ + DWORD dwPicNum; //ͼƬÊýÁ¿ + NET_ITS_PICTURE_INFO struPicInfo[8]; //ͼƬÐÅÏ¢£¬×î¶à8ÕÅ + BYTE bySpecificVehicleType; //¾ßÌå³µÁ¾ÖÖÀà ²Î¿¼Ê¶±ð½á¹ûÀàÐÍVTR_RESULT + BYTE byLaneNo; //¹ØÁª³µµÀºÅ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + NET_DVR_TIME_V30 struTime;//ÊÖ¶¯¸ú×Ù¶¨Î»£¬µ±Ç°Ê±¼ä¡£ + DWORD dwSerialNo;//ÐòºÅ£» + BYTE byVehicleAttribute;//³µÁ¾ÊôÐÔ£¬°´Î»±íʾ£¬0- ÎÞ¸½¼ÓÊôÐÔ(ÆÕͨ³µ)£¬bit1- »Æ±ê³µ(ÀàËÆÄê¼ìµÄ±êÖ¾)£¬bit2- ΣÏÕÆ·³µÁ¾£¬Öµ£º0- ·ñ£¬1- ÊÇ + BYTE byPilotSafebelt;//0-±íʾδ֪,1-ϵ°²È«´ø,2-²»Ïµ°²È«´ø + BYTE byCopilotSafebelt;//0-±íʾδ֪,1-ϵ°²È«´ø,2-²»Ïµ°²È«´ø + BYTE byPilotSunVisor;//0-±íʾδ֪,1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byCopilotSunVisor;//0-±íʾδ֪, 1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byPilotCall;// 0-±íʾδ֪, 1-²»´òµç»°,2-´òµç»° + BYTE byRes2[2]; //±£Áô + BYTE byIllegalCode[ILLEGAL_LEN/*32*/];//Î¥·¨´úÂëÀ©Õ¹£¬µ±dwIllegalTypeֵΪ0xffffffff£»Ê¹ÓÃÕâ¸öÖµ + WORD wCountry; // ¹ú¼ÒË÷ÒýÖµ,²ÎÕÕö¾ÙCOUNTRY_INDEX + BYTE byRegion; //ÇøÓòË÷ÒýÖµ,0-±£Áô£¬1-Å·ÖÞ(Europe Region)£¬2-¶íÓïÇøÓò(Russian Region)£¬3-Å·ÖÞ&¶íÂÞ˹(EU&CIS) , 4-Öж«£¨Middle East£©£¬0xff-ËùÓÐ + BYTE byCrossLine;//ÊÇ·ñѹÏßÍ£³µ£¨²à·½Í£³µ£©£¬0-±íʾδ֪£¬1-²»Ñ¹Ïߣ¬2-ѹÏß + BYTE byParkingSerialNO[SERIAL_NO_LEN/*16*/];//²´³µÎ»±àºÅ + BYTE byCrossSpaces;//ÊÇ·ñ¿ç²´³µÎ»Í£³µ£¨²à·½Í£³µ£©£¬0-±íʾδ֪£¬1-δ¿ç²´³µÎ»Í£³µ£¬2-¿ç²´³µÎ»Í£³µ + BYTE byAngledParking;//ÊÇ·ñÇãбͣ³µ£¨²à·½Í£³µ£©, 0-±íʾδ֪£¬1-δÇãбͣ³µ£¬2-Çãбͣ³µ + BYTE byAlarmValidity;//±¨¾¯ÖÃÐŶȣ¬¿ÉÒÔÊä³öÊ»ÈëÊ»³öµÄÖÃÐŶȣ¬·¶Î§0-100£»ÖÃÐŶÈÔ½¸ß£¬Ê¼þÕæʵÐÔÔ½¸ß + BYTE byDoorsStatus;//³µÃÅ״̬ 0-³µÃÅ¹Ø±Õ 1-³µÃÅ¿ªÆô + DWORD dwXmlLen;//XML±¨¾¯ÐÅÏ¢³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block +#else + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block + BYTE byRes3[4]; +#endif + BYTE byVehicleHeadTailStatus;//³µÍ·³µÎ²×´Ì¬ 0-±£Áô 1-³µÍ· 2-³µÎ² + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE byRes[30]; //±£Áô +}NET_DVR_TFS_ALARM,*LPNET_DVR_TFS_ALARM; + +typedef struct tagNET_DVR_SOFTWARE_SERVICE_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byThirdStreamEnabled; //ÊÇ·ñ¿ªÆôÈýÂëÁ÷ÅäÖãº0-·ñ£¬1-ÊÇ + BYTE bySubStreamEnabled; //ÊÇ·ñ¿ªÆô×ÓÂëÁ÷ÅäÖãº0-·ñ£¬1-ÊÇ + BYTE byRes[254]; +}NET_DVR_SOFTWARE_SERVICE_CFG, *LPNET_DVR_SOFTWARE_SERVICE_CFG; + +typedef struct tagNET_ITS_ECT_BLOCKLIST +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE bylogicalLaneNo;//Âß¼­³µµÀºÅ + BYTE byRes1[3]; + BYTE byLaneName[NAME_LEN];//³µµÀÃû³Æ 32 + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + BYTE byRes2[256]; // ±£Áô×Ö½Ú +}NET_ITS_ECT_BLOCKLIST, *LPNET_ITS_ECT_BLOCKLIST; + +//IPCͨµÀ²ÎÊýÅäÖà +typedef struct tagNET_ITS_IPC_CHAN_CFG +{ + DWORD dwSize; + BYTE byCameraType; //Ïà»úÖÖÀ࣬0-¼à¿ØÓÃÏà»ú£»1-ÏßȦ´¥·¢Ïà»ú£»2-ÊÓƵ·ÖÎöÓÃÏà»ú,3-Ò»Ìå»ú + BYTE byRes1[3]; //±£Áô + BYTE byMonitoringSiteID[48]; //¼à²âµã±àºÅ + BYTE byDeviceID[48]; //É豸±àºÅ + BYTE byDirectionNo; //¼à²â·½Ïò±àºÅ,0-ÎÞ,1-ÉÏÐÐ,2-ÏÂÐÐ,3-Ë«Ïò,4-Óɶ«ÏòÎ÷,5-ÓÉÄÏÏò±±,6-ÓÉÎ÷Ïò¶«,7-Óɱ±ÏòÄÏ,8-ÆäËû + BYTE byMonitorInfo[48]; //¼à²âµãÐÅÏ¢ÃèÊö + BYTE byRes2[15]; //±£Áô +}NET_ITS_IPC_CHAN_CFG, *LPNET_ITS_IPC_CHAN_CFG; + +//µ¥¸öÉ豸ÐÅÏ¢ +typedef struct tagNET_ITS_SINGLE_DEVICE_INFO +{ + DWORD dwDeviceType; //É豸ÀàÐÍ£º0-Öնˣ¬1-Ïà»ú£¬2-²¹¹âµÆ£¬3-³µ¼ìÆ÷£¬4-ÏßȦ1£¬5-ÏßȦ2£¬6-ÏßȦ3£¬7-ºìÂ̵Ƽì²âÆ÷£¬8-»ú¹ñ£¬ + //9-À״10-µÀÕ¢£¬11-³öÈë¿Ú¿ØÖÆ»ú(ƱÏä)£¬12-LEDÏÔʾÆÁ£¬13-Ô¶¾àÀë¶Á¿¨Æ÷£¬14-½ü¾àÀë¶Á¿¨Æ÷£¬15-ºìÍâɨÃèǹ£¬ + //16-Ʊ¾Ý´òÓ¡»ú£¬17-½Úµã¹ÜÀíÆ÷(ÓÕµ¼·þÎñÆ÷Ïà¹Ø) , 18-»ú¹ñ¼ì²âÒÇ + DWORD dwDirID; //·½Ïò±àºÅ + DWORD dwLaneID; //³µµÀ±àºÅ + DWORD dwDeviceState; //É豸״̬ 0Õý³£ ·Ç0 Òì³££¨²Î¿¼É豸Òì³£´úÂë±í£© + BYTE byDeviceName[32]; //É豸Ãû³Æ + BYTE byDeviceID[48]; //É豸±àºÅ£¬Ò»°ãÓÃÐòÁкţ¬³µ¼ìÆ÷ÓõØÖ· + NET_DVR_TIME_V30 struTriggerTime;//´¥·¢Ê±¼ä + BYTE byRelateChan; //¹ØÁªÍ¨µÀºÅ£¨´«¸ÐÆ÷ÊÇ1~8 AC¶Ë×Ó1~4 AC²å×ù1~2£© + BYTE byRes[3]; +}NET_ITS_SINGLE_DEVICE_INFO,*LPNET_ITS_SINGLE_DEVICE_INFO; + +//·¿ÚÐÅÏ¢ +typedef struct tagNET_ITS_ROADINFO +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ,0xffffffff±íʾÖնˣ¬ÆäËü±íʾ¶ÔÓ¦µÄÏà»ú + BYTE byTriggerMode; // 0:ÏßȦ´¥·¢; 1:ÊÓƵ´¥·¢ + BYTE byRes1[3]; + DWORD dwDeviceNum; //ʵ¼ÊÉ豸¸öÊý + BYTE byMonitoringSiteID[48]; //¼à²âµã±àºÅ + BYTE byRoadInfo[48]; //¼à²âµãÐÅÏ¢ + NET_ITS_SINGLE_DEVICE_INFO struSingleDevice[ITS_MAX_DEVICE_NUM]; + BYTE byRes[16]; +}NET_ITS_ROADINFO,*LPNET_ITS_ROADINFO; + +//µ¥¸ö³µµÀ·¿öÐÅÏ¢ +typedef struct tagNET_ITS_TRAFFIC_DRIVE_CHAN +{ + BYTE byDriveChan; //³µµÀºÅ + BYTE byRes1[3]; // Ô¤Áô + WORD wCarFlux; //Æû³µÁ÷Á¿Êý + WORD wPasserbyFlux; //ÐÐÈËÁ÷Á¿Êý + WORD wShayFlux; //¶þÂÖ³µÁ÷Á¿Êý + float fAverOccpancy; //ƽ¾ù³µµÀÕ¼ÓÐÂÊ°Ù·Ö±È + WORD wAverSpeed; //ƽ¾ù³µËÙ(km/h) + WORD wAverCarDis; //ƽ¾ù³µ¾à(µ¥Î»´ý¶¨) + BYTE byRes2[16]; // Ô¤Áô +}NET_ITS_TRAFFIC_DRIVE_CHAN,*LPNET_ITS_TRAFFIC_DRIVE_CHAN; + +typedef struct tagNET_ITS_TRAFFIC_COLLECT +{ + DWORD dwSize; //½á¹¹´óС + BYTE byMonitoringSiteID[48]; //¼à²âµã±àºÅ + BYTE byDeviceID[48]; //É豸±àºÅ + BYTE byLaneNum; //³µµÀ×ÜÊý + BYTE byDir; //¼à²â·½Ïò + BYTE byDetectType; //¼ì²â·½Ê½1-µØ¸ÐÏßȦ¡¢2-ÊÓƵ´¥·¢¡¢3¡¢¶à֡ʶ±ð¡¢4À×´ï´¥·¢ + BYTE byRes1; //Ô¤Áô + DWORD dwChannel; //ͨµÀºÅ + NET_DVR_SYSTEM_TIME struStartTime; //ͳ¼Æ¿ªÊ¼Ê±¼ä + DWORD dwSamplePeriod; //ͳ¼Æʱ¼ä,µ¥Î»Ãë + NET_ITS_TRAFFIC_DRIVE_CHAN struDriveChan[6]; //½»Í¨Á÷Á¿Êý¾Ý,ÿ¸öÏà»úÖ§³Ö6¸ö³µµÀ + BYTE byRes2[24]; //Ô¤Áô +}NET_ITS_TRAFFIC_COLLECT,*LPNET_ITS_TRAFFIC_COLLECT; + +typedef struct tagNET_ITS_OVERLAPCFG_COND +{ + DWORD dwSize; + DWORD dwChannel; + DWORD dwConfigMode; //ÅäÖÃģʽ£¬0-Öնˣ¬1-Ç°¶Ë(Ö±Á¬Ç°¶Ë»òÖն˽ÓÇ°¶Ë) + BYTE byPicModeType;//0-±íʾСͼ(¶ÀÁ¢Í¼)£¬1-±íʾ´óͼ(ºÏ³Éͼ) + /* + 0±íʾ¹ØÁª ×¥ÅÄMPRģʽ£¨¶àÖ¡´¥·¢×¥ÅÄ IPCʹÓã© + 1 ±íʾ¹ØÁª ×¥ÅÄ HVT ģʽ£¨»ì¿¨IPCʹÓã© + */ + BYTE byRelateType; + BYTE byRes[14]; +}NET_ITS_OVERLAPCFG_COND, *LPNET_ITS_OVERLAPCFG_COND; + +typedef enum ITS_OVERLAP_ITEM_TYPE +{ + OVERLAP_ITEM_NULL = 0, //0-δ֪ + OVERLAP_ITEM_SITE, //1-µØµã + OVERLAP_ITEM_ROADNUM, //2-·¿Ú±àºÅ + OVERLAP_ITEM_INSTRUMENTNUM, //3-É豸±àºÅ + OVERLAP_ITEM_DIRECTION, //4-·½Ïò±àºÅ + OVERLAP_ITEM_DIRECTIONDESC, //5-·½Ïò + OVERLAP_ITEM_LANENUM, //6-³µµÀºÅ + OVERLAP_ITEM_LANEDES, //7-³µµÀ + OVERLAP_ITEM_CAPTIME, //8-×¥ÅÄʱ¼ä(²»´øºÁÃë) + OVERLAP_ITEM_CAPTIME_MILLSECOND, //9-×¥ÅÄʱ¼ä(´øºÁÃë) + OVERLAP_ITEM_PLATENUM, //10-³µÅƺŠ+ OVERLAP_ITEM_CARCOLOR, //11-³µÉíÑÕÉ« + OVERLAP_ITEM_CARTYPE, //12-³µÁ¾ÀàÐÍ + OVERLAP_ITEM_CARBRAND, //13-³µÁ¾Æ·ÅÆ + OVERLAP_ITEM_CARSPEED, //14-³µÁ¾ËÙ¶È + OVERLAP_ITEM_SPEEDLIMIT, //15-ÏÞËÙ±êÖ¾ + OVERLAP_ITEM_CARLENGTH, //16-³µÁ¾³¤¶È1~99m + OVERLAP_ITEM_ILLEGALNUM, //17-Î¥·¨´úÂë(Î¥·¨´úÂëµþ¼ÓÓ¦¸ÃûÓõģ¬Ó¦¸ÃÖ±½Óµþ¼ÓÎ¥·¨ÐÅÏ¢£¬±ÈÈçÕý³£¡¢µÍËÙ¡¢³¬ËÙ¡¢ÄæÐС¢´³ºìµÆ¡¢Õ¼µÀ¡¢Ñ¹»ÆÏßµÈ) + OVERLAP_ITEM_MONITOR_INFO, //18-¼à²âµãÐÅÏ¢ + OVERLAP_ITEM_ILLEGALDES, //19-Î¥·¨ÐÐΪ + OVERLAP_ITEM_OVERSPEED_PERCENT, //20-³¬ËÙ±È + OVERLAP_ITEM_RED_STARTTIME, //21-ºìµÆ¿ªÊ¼Ê±¼ä + OVERLAP_ITEM_RED_STOPTIME, //22-ºìµÆ½áÊøʱ¼ä + OVERLAP_ITEM_RED_DURATION, //23-ºìµÆÒÑÁÁʱ¼ä + OVERLAP_ITEM_SECUNITY_CODE, //24-·ÀαÂë + OVERLAP_ITEM_CAP_CODE, //25-×¥ÅıàºÅ + OVERLAP_ITEM_SEATBELT, //26-°²È«´ø + OVERLAP_ITEM_MONITOR_ID, //27-¼à²âµã±àºÅ + OVERLAP_ITEM_SUN_VISOR, //28-ÕÚÑô°å + OVERLAP_ITEM_LANE_DIRECTION, //29-³µµÀÐÐÊ»·½Ïò + OVERLAP_ITEM_LICENSE_PLATE_COLOR, // 30-³µÅÆÑÕÉ« + OVERLAP_ITEM_SCENE_NUMBER, //31-³¡¾°±àºÅ + OVERLAP_ITEM_SCENE_NAME, //32-³¡¾°Ãû³Æ + OVERLAP_ITEM_YELLOW_SIGN_CAR, //33-»Æ±ê³µ + OVERLAP_ITEM_DANGEROUS_CAR, //34-ΣÏÕÆ·³µ + OVERLAP_ITEM_CAR_SUBBRAND, //35-³µÁ¾×ÓÆ·ÅÆ + OVERLAP_ITEM_CAR_DIRECTION, //36-³µÁ¾·½Ïò + OVERLAP_ITEM_PENDANT, //37-³µ´°Ðü¹ÒÎï + OVERLAP_ITEM_CALL, //38-´òµç»° + OVERLAP_ITEM_CAR_VALIDITY, //39-ÖÃÐÅ¶È + OVERLAP_ITEM_CAR_COUNTRY, //40-¹ú¼Ò + OVERLAP_ITEM_CAR_PLATE_TYPE, //41-³µÅÆÀàÐÍ£¬²Î¿¼³µÅÆÀàÐÍö¾Ù + OVERLAP_ITEM_CAR_PLATE_SIZE, //42-³µÅƳߴç + OVERLAP_ITEM_CAR_PLATE_COLOR, //43-³µÅÆÑÕÉ« + OVERLAP_ITEM_CAR_PLATE_CATEGORY, //44-³µÅƸ½¼ÓÐÅÏ¢ + OVERLAP_ITEM_ACCIDENT, //45-½»Í¨ÊÂ¹Ê + OVERLAP_ITEM_SMOKING, //46-ÎüÑÌ + OVERLAP_ITEM_HELMET, //47-´÷Í·¿ø + OVERLAP_ITEM_MANNED, //48-ÔØÈË + OVERLAP_ITEM_HUMAN, //49-ÈËÌåÊôÐÔ + OVERLAP_ITEM_PLAYMOBILEPHONE, //50-ÍæÊÖ»ú + OVERLAP_ITEM_ADR //51- ADR³µÅÆ£º Å·ÖÞ¹ú¼Ò³µÁ¾ÓеĻá¹ÒË«ÅÆ£¬ÐèÒªÏÔʾµÚ¶þ¸ö³µÅƺţ¬ÓÃADR³µÅƵþ¼ÓÏî±íʾ +}ITS_OVERLAP_ITEM_TYPE; + +//×Ö·ûµþ¼ÓÿһÌõÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM +{ + BYTE byRes1[2]; // ±£Áô + BYTE byItemType; //ÀàÐÍ£¬Ïê¼ûOVERLAP_ITEM_TYPE + BYTE byChangeLineNum; //µþ¼ÓÏîºóµÄ»»ÐÐÊý[0-10](ĬÈÏ0) + BYTE bySpaceNum; //µþ¼ÓÏîºóµÄ¿Õ¸ñÊý[0-255](ĬÈÏ0) + BYTE byRes2[2]; + BYTE byEnablePos; //ÊÇ·ñÆôÓÃ×ø±êÏÔʾ + WORD wStartPosTop; //ÆðʼÉÏ×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wStartPosLeft; //Æðʼ×ó×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + BYTE byRes[8]; +}NET_ITS_OVERLAP_SINGLE_ITEM_PARAM, *LPNET_ITS_OVERLAP_SINGLE_ITEM_PARAM; + +typedef struct tagNET_ITS_OVERLAP_ITEM_PARAM +{ + NET_ITS_OVERLAP_SINGLE_ITEM_PARAM struSingleItem[MAX_OVERLAP_ITEM_NUM]; //µ¥Ìõ×Ö·û²ÎÊý + DWORD dwLinePercent; //µþ¼ÓÐаٷֱÈ(0-100),(ĬÈÏ100) + DWORD dwItemsStlye; //µþ¼Ó·½Ê½£º0-ºáÅÅ,1-ÊúÅÅ(ĬÈϺáÅÅ) + WORD wStartPosTop; //ÆðʼÉÏ×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wStartPosLeft; //Æðʼ×ó×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wCharStyle; //×ÖÌåÀàÐÍ,0-ËÎÌå1-κÌå(ĬÈÏ) + WORD wCharSize; //×Ö·û´óС,0--16x16,1--32x32,2-48x48,3--64x64 (ĬÈÏ),8x128(Ver3.7) + WORD wCharInterval; //×Ö·û¼ä¾à£¬[0¡«16]£¬¿ÉÉ赥λ£ºÏñËØ(ĬÈÏ) + BYTE byRes1[2]; + DWORD dwForeClorRGB; //Ç°¾°É«µÄRGBÖµbit0-1:(B) bit2-3:(G) bit4-5:(G) (ĬÈÏx00FFFFFF-°×) + DWORD dwBackClorRGB; //±³¾°É«µÄRGBÖµ,Ö»¶ÔͼƬÍâµþ¼ÓÓÐЧbit0-1:(B) bit2-3:(G) bit4-5:(G) (ĬÈÏx00000000-ºÚ) + BYTE byColorAdapt; //ÑÕÉ«ÊÇ·ñ×ÔÊÊÓ¦0-·ñ1-ÊÇ + //(Ver3.7 ÐÂÔö) + // ²ÎÊý²¹ÁãʹÄÜ 0-²¹Áã, 1-²»²¹Á㣨ÏêϸעÊÍ£©ËÙ¶È,ÏÞËÙÖµ ²»×ã3λ²¹0 + BYTE byParamFillZeroEnble; + BYTE byPlateLeftCornerEnable;// ³µÅÆСͼµþ¼Ó×óÉϽÇʹÄÜ 0-²»µþ¼Ó, 1-µþ¼Ó + BYTE byRes2; + WORD wStartSPicPosTop; //ÆðʼÉÏ×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wStartSPicPosLeft; //Æðʼ×ó×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + //OSDµþ¼ÓλÖà 0-ͼƬÄÚ,1-ͼƬÉϱßÔµ,2-ͼƬϱßÔµ£¨ºÏ³ÉͼרÓõÄÊÇÉϱßÔµÍ⣩£¨V3.7£© + BYTE byOsdLocate; + BYTE byRes[23]; +}NET_ITS_OVERLAP_ITEM_PARAM, *LPNET_ITS_OVERLAP_ITEM_PARAM; + +//µþ¼ÓÏî¾ßÌåÐÅÏ¢ +typedef struct tagNET_ITS_OVERLAP_INFO_PARAM +{ + BYTE bySite[128]; //µØµãÃèÊö + BYTE byRoadNum[32]; //·¿Ú±àºÅ + BYTE byInstrumentNum[32]; //É豸±àºÅ + BYTE byDirection[32]; //·½Ïò±àºÅ + BYTE byDirectionDesc[32]; //·½ÏòÃèÊö + BYTE byLaneDes[32]; //³µµÀÃèÊö + BYTE byRes1[32]; //±£Áô + BYTE byMonitoringSite1[44]; //¼à²âµã1ÐÅÏ¢ + BYTE byMonitoringSite2[32]; //¼à²âµã2ÐÅÏ¢ + BYTE byRes[64]; //±£Áô +}NET_ITS_OVERLAP_INFO_PARAM, *LPNET_ITS_OVERLAP_INFO_PARAM; + +typedef struct tagNET_ITS_OVERLAP_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; + NET_ITS_OVERLAP_ITEM_PARAM struOverLapItem; //×Ö·û´®²ÎÊý + NET_ITS_OVERLAP_INFO_PARAM struOverLapInfo; //×Ö·û´®ÄÚÈÝÐÅÏ¢ + BYTE byRes[32]; +}NET_ITS_OVERLAP_CFG, *LPNET_ITS_OVERLAP_CFG; + +//×Ö·ûµþ¼ÓÿһÌõÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 +{ + BYTE byRes1[2]; // ±£Áô + BYTE byItemType; //ÀàÐÍ£¬Ïê¼ûOVERLAP_ITEM_TYPE + BYTE byChangeLineNum; //µþ¼ÓÏîºóµÄ»»ÐÐÊý[0-10](ĬÈÏ0) + BYTE bySpaceNum; //µþ¼ÓÏîºóµÄ¿Õ¸ñÊý[0-255](ĬÈÏ0) + BYTE byRes2[2]; + BYTE byEnablePos; //ÊÇ·ñÆôÓÃ×ø±êÏÔʾ + WORD wStartPosTop; //ÆðʼÉÏ×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wStartPosLeft; //Æðʼ×ó×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + //×Ô¶¨ÒåÀàÐÍ£»ÓëbyItemType²ÎÊý¶ÔÓ¦¡£¿É½«byItemType²ÎÊýÀàÐÍ×Ô¶¨ÒåÃû³Æ¡£Èô×Ô¶¨ÒåÄÚÈÝΪ¿Õ£¬±ãĬÈÏÒÔbyItemType²ÎÊýÖеÄÀàÐÍÃüÃû¡£ + BYTE byItemTypeCustom[32]; + BYTE byRes[8]; +}NET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50, *LPNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50; + +typedef struct tagNET_ITS_OVERLAP_ITEM_PARAM_V50 +{ + NET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 struSingleItem[MAX_OVERLAP_ITEM_NUM]; //µ¥Ìõ×Ö·û²ÎÊý + DWORD dwLinePercent; //µþ¼ÓÐаٷֱÈ(0-100),(ĬÈÏ100) + DWORD dwItemsStlye; //µþ¼Ó·½Ê½£º0-ºáÅÅ,1-ÊúÅÅ(ĬÈϺáÅÅ) + WORD wStartPosTop; //ÆðʼÉÏ×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wStartPosLeft; //Æðʼ×ó×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wCharStyle; //×ÖÌåÀàÐÍ,0-ËÎÌå1-κÌå(ĬÈÏ) + WORD wCharSize; //×Ö·û´óС,0--16x16,1--32x32,2-48x48,3--64x64 (ĬÈÏ),8x128(Ver3.7) + WORD wCharInterval; //×Ö·û¼ä¾à£¬[0¡«16]£¬¿ÉÉ赥λ£ºÏñËØ(ĬÈÏ) + BYTE byRes1[2]; + DWORD dwForeClorRGB; //Ç°¾°É«µÄRGBÖµbit0-1:(B) bit2-3:(G) bit4-5:(G) (ĬÈÏx00FFFFFF-°×) + DWORD dwBackClorRGB; //±³¾°É«µÄRGBÖµ,Ö»¶ÔͼƬÍâµþ¼ÓÓÐЧbit0-1:(B) bit2-3:(G) bit4-5:(G) (ĬÈÏx00000000-ºÚ) + BYTE byColorAdapt; //ÑÕÉ«ÊÇ·ñ×ÔÊÊÓ¦0-·ñ1-ÊÇ + //(Ver3.7 ÐÂÔö) + // ²ÎÊý²¹ÁãʹÄÜ 0-²¹Áã, 1-²»²¹Á㣨ÏêϸעÊÍ£©ËÙ¶È,ÏÞËÙÖµ ²»×ã3λ²¹0 + BYTE byParamFillZeroEnble; + BYTE byPlateLeftCornerEnable;// ³µÅÆСͼµþ¼Ó×óÉϽÇʹÄÜ 0-²»µþ¼Ó, 1-µþ¼Ó + BYTE byRes2; + WORD wStartSPicPosTop; //ÆðʼÉÏ×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + WORD wStartSPicPosLeft; //Æðʼ×ó×ø±ê,Ö»¶ÔͼƬÄÚ²¿µþ¼ÓÓÐЧ[0~2448](ĬÈÏ0) + //OSDµþ¼ÓλÖà 0-ͼƬÄÚ,1-ͼƬÉϱßÔµ,2-ͼƬϱßÔµ£¨ºÏ³ÉͼרÓõÄÊÇÉϱßÔµÍ⣩£¨V3.7£© + BYTE byOsdLocate; + BYTE byRes[63]; +}NET_ITS_OVERLAP_ITEM_PARAM_V50, *LPNET_ITS_OVERLAP_ITEM_PARAM_V50; + +typedef struct tagNET_ITS_OVERLAP_CFG_V50 +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; + NET_ITS_OVERLAP_ITEM_PARAM_V50 struOverLapItemV50; //×Ö·û´®²ÎÊý + NET_ITS_OVERLAP_INFO_PARAM struOverLapInfo; //×Ö·û´®ÄÚÈÝÐÅÏ¢ + BYTE byRes[120]; +}NET_ITS_OVERLAP_CFG_V50, *LPNET_ITS_OVERLAP_CFG_V50; + +#define MAX_PTZCRUISE_POINT_NUM 32 //×î´óÖ§³Ö32¸öѲº½µã + + +//Ô¤ÖõãÐÅÏ¢ +typedef struct tagNET_DVR_PRESET_INFO +{ + DWORD dwSize; + DWORD dwPresetNum; //Ô¤Öõã¸öÊý + DWORD dwGroupNum; //×éÊý + BYTE byRes[8]; +}NET_DVR_PRESET_INFO, *LPNET_DVR_PRESET_INFO; + +//ÊäÈë²ÎÊý +typedef struct tagNET_DVR_PRESET_COND +{ + DWORD dwSize; + DWORD dwChannel; + DWORD dwGroupNO; //×éºÅ + BYTE byRes[8]; +}NET_DVR_PRESET_COND, *LPNET_DVR_PRESET_COND; + +//Êä³ö²ÎÊý +typedef struct tagNET_DVR_PRESETCFG +{ + DWORD dwSize; + DWORD dwPresetIndex; //Ô¤ÖõãÐòºÅ + NET_VCA_POINT struVcaPoint; //Ô¤Öõã×ø±ê + WORD wZoomCoordinate; ///<Ô¤Öõ㴰¿ÚZoomÖµ + BYTE byRes[30]; +}NET_DVR_PRESETCFG, *LPNET_DVR_PRESETCFG; + +//»ñȡѲº½Â·¾¶µÄÊýÄ¿ +typedef struct tagNET_DVR_PTZCRUISE_INFO +{ + DWORD dwSize; + DWORD dwPtzCruiseNum; //·¾¶¸öÊý + DWORD dwGroupNum; //×éÊý + BYTE byRes[8]; +}NET_DVR_PTZCRUISE_INFO, *LPNET_DVR_PTZCRUISE_INFO; + +//ÊäÈë²ÎÊý£º +typedef struct tagNET_DVR_PTZCRUISE_COND +{ + DWORD dwSize; + DWORD dwChannel; + DWORD dwGroupNO; //×éºÅ + BYTE byRes[8]; +}NET_DVR_PTZCRUISE_COND, *LPNET_DVR_PTZCRUISE_COND; + +//Êä³ö²ÎÊý +typedef struct tagNET_DVR_PTZCRUISE_POINTCFG +{ + DWORD dwSize; + DWORD dwPresetIndex; //Ô¤ÖõãÐòºÅ + NET_VCA_POINT struVcaPoint; //Ô¤Öõã×ø±ê + BYTE byDwell; //Í£Áôʱ¼ä + BYTE bySpeed; //ËÙ¶È + WORD wZoomCoordinate;///<Ô¤Öõ㴰¿ÚZoomÖµ + BYTE byRes[28]; +}NET_DVR_PTZCRUISE_POINTCFG, *LPNET_DVR_PTZCRUISE_POINTCFG; + +typedef struct tagNET_DVR_PTZCRUISECFG +{ + DWORD dwSize; + DWORD dwCruiseRoute; //Ѳº½Â·¾¶ÐòºÅ + NET_DVR_PTZCRUISE_POINTCFG struCruisePoint[MAX_PTZCRUISE_POINT_NUM]; //×î´óÖ§³Ö32¸öѲº½µã + BYTE byRes[32]; +}NET_DVR_PTZCRUISECFG, *LPNET_DVR_PTZCRUISECFG; + +//¸ú×Ùģʽ½á¹¹ +typedef struct tagNET_DVR_MOTION_TRACK_CFG +{ + DWORD dwSize; + BYTE byEnableTrack; //ÆôÓøú×Ù£¬0-·ñ£¬1-ÊÇ + BYTE byRes[63]; +}NET_DVR_MOTION_TRACK_CFG, *LPNET_DVR_MOTION_TRACK_CFG; + +//Ò»ÌìµÄ¶¨Ê±¼Æ»® +typedef struct tagNET_DVR_DAY_SCHEDULE +{ + BYTE byWorkMode ; //0-È«Ì쿪£¬1-È«Ìì¹Ø£¬2-¶¨Ê± + BYTE byRes1[3] ; + NET_DVR_SCHEDTIME struTime[MAX_TIMESEGMENT_V30/*8*/]; //ʱ¼ä¶Î + BYTE byRes2[8]; //±£Áô +}NET_DVR_DAY_SCHEDULE ,*LPNET_DVR_DAY_SCHEDULE; + +//¶¨Ê±ÖÇÄܸú×Ù²ÎÊý½á¹¹ +typedef struct tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byEnableTrack; //ÆôÓøú×Ù£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3] ; + NET_DVR_DAY_SCHEDULE struSchedule[MAX_DAYS/*7*/]; //¶¨Ê±ÖÇÄܸú×Ùʱ¼ä¶Î£¬²»ÔÚÕâ8¸öʱ¼ä¶ÎÄÚµÄʱ¼ä£¬Ä¬È϶¨Ê±ÖÇÄܸú×Ù¹Ø±Õ + BYTE byRes2[128]; +}NET_DVR_SCHEDULE_AUTO_TRACK_CFG,*LPNET_DVR_SCHEDULE_AUTO_TRACK_CFG; + +typedef struct tagNET_DVR_I_FRAME +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE sStreamID[STREAM_ID_LEN/*32*/] ; //Á÷ID + DWORD dwChan; //±»¿ØͨµÀºÅ + BYTE byStreamType; //0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ÂëÁ÷3£¬3-ÂëÁ÷4£¬4-ÂëÁ÷5 + BYTE byRes[63]; +} NET_DVR_I_FRAME, *LPNET_DVR_I_FRAME; + +typedef struct tagNET_DVR_REBOOT_TIME +{ + BYTE byDate; //ÐÇÆÚ¼¸£¬1-7´ú±íÐÇÆÚÒ»µ½ÐÇÆÚÈÕ + BYTE byHour; //ʱ + BYTE byMinute; //·Ö + BYTE byRes1; + BYTE byRebootMode; //0-°´ÖÜÖØÆô£¬1-°´ÔÂÖØÆô£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£¬²»ÄÜÉèÖã© + BYTE byDisabled; // 0-ÆôÓà 1-½ûÓà + BYTE byRes[10]; //±£Áô +}NET_DVR_REBOOT_TIME,*LPNET_DVR_REBOOT_TIME; + +typedef struct tagNET_DVR_AUTO_REBOOT_CFG +{ + DWORD dwSize; + NET_DVR_REBOOT_TIME struRebootTime; +}NET_DVR_AUTO_REBOOT_CFG,*LPNET_DVR_AUTO_REBOOT_CFG; + +#define NET_DVR_GPS_FINDING 0 //ÕýÔÚ²éÕÒ +#define NET_DVR_GPS_RECV 1 //½ÓÊÕÊý¾Ý +#define NET_DVR_GPS_OVER 2 //²éÕÒ½áÊø +#define NET_DVR_GPS_EXCEPTION 3 //½ÓÊÕÒì³£ +typedef struct tagNET_DVR_MENU_OUTPUT_MODE +{ + DWORD dwSize; + BYTE byMenuOutputMode; //·ÇͬԴÉ豸£º0-Auto 1-Ö÷CVBS 2-HDMI 3-VGA ͬԴÉ豸£º0-Auto 1-Ö÷CVBS 2-HDMI/VGA + BYTE byRes[63]; +}NET_DVR_MENU_OUTPUT_MODE, *LPNET_DVR_MENU_OUTPUT_MODE; + +typedef struct tagNET_DVR_MB_IPADDR +{ + NET_DVR_IPADDR struIP; //IPµØÖ· + WORD wPort; //¶Ë¿ÚºÅ + BYTE byRes[2]; +}NET_DVR_MB_IPADDR,*LPNET_DVR_MB_IPADDR; + +typedef struct tagNET_DVR_MB_WVSPARA +{ + NET_DVR_MB_IPADDR struWVSAddr; + BYTE byPuid[NAME_LEN]; //É豸id + BYTE byPassword[PASSWD_LEN]; //ÃÜÂë + BYTE byRes[8]; +}NET_DVR_MB_WVSPARA, *LPNET_DVR_MB_WVSPARA; + +typedef struct tagNET_DVR_MB_EHOMEPARA +{ + NET_DVR_MB_IPADDR struEHomeAddr; + BYTE byPuid[NAME_LEN]; //É豸id +}NET_DVR_MB_EHOMEPARA, *LPNET_DVR_MB_EHOMEPARA; + +typedef struct tagNET_DVR_MB_PLATFORMPARA +{ + DWORD dwSize; + BYTE byNetEnvironment;/*ÍøÂç»·¾³,0-wireless,1-3G,2-wLan,3-lan*/ + BYTE byCurPlatForm; /*< µ±Ç°Æ½Ì¨0 - WVS, 1 - E¼Ò, 2 - ÍÆģʽ */ + BYTE byRes1[2]; + NET_DVR_MB_WVSPARA struWVSPara; /*³µÔØƽ̨(ƽ̨µÇÈë)*/ + NET_DVR_MB_EHOMEPARA struMbEHpara;/*E¼Òƽ̨³µÔØƽ̨²»ÉèÖÃÉ豸µÇÈëÃÜÂë */ + BYTE byRes2[64]; +}NET_DVR_MB_PLATFORMPARA, *LPNET_DVR_MB_PLATFORMPARA; + +typedef struct tagNET_DVR_MB_GPS_STATUS +{ + BYTE byGPSModule; /*gpsÄ£¿é, 0: ²»´æÔÚ, 1: Õý³£*/ + BYTE byPositionStatus; /*gps¶¨Î»×´Ì¬, 0: ¶¨Î»Ê§°Ü, 1: ¶¨Î»³É¹¦*/ + BYTE bySignalStrength; /*ÐźÅÇ¿¶È, 0: Èõ, 1: Õý³£, 2: Ç¿*/ + BYTE byres[5]; +}NET_DVR_MB_GPS_STATUS, *LPNET_DVR_MB_GPS_STATUS; + +typedef struct tagNET_DVR_MB_GSENSOR_STATUS +{ + BYTE byGsensorModule; /*g-sensorÄ£¿é, 0: not exist, 1: ÄÚÖÃ, 2: ÍâÖÃ*/ + BYTE byCurAccX[10]; /*µ±Ç°XÖá¼ÓËÙ¶È*/ + BYTE byCurAccY[10]; /*µ±Ç°YÖá¼ÓËÙ¶È*/ + BYTE byCurAccZ[10]; /*µ±Ç°ZÖá¼ÓËÙ¶È*/ + BYTE byRefAccX[10]; /* XÖá¼ÓËٶȱ궨ֵ*/ + BYTE byRefAccY[10]; /* YÖá¼ÓËٶȱ궨ֵ*/ + BYTE byRefAccZ[10]; /* ZÖá¼ÓËٶȱ궨ֵ*/ + BYTE byres[3]; +}NET_DVR_MB_GSENSOR_STATUS, *LPNET_DVR_MB_GSENSOR_STATUS; + +#define IP_ADDR_LEN 16 +#define IW_ESSID_MAX_SIZE 32 + +typedef struct tagNET_DVR_MB_WIFI_STATUS +{ + BYTE byEnableWiFi; /* ÎÞÏß, 0 ¹Ø, 1 ¿ª */ + BYTE byWiFiConnectStatus; /* WIFI״̬, 0: Á¬½Óʧ°Ü, 1: Á¬½Ó³É¹¦ 2: ÎÞÄ£¿é*/ + BYTE bySignalStrength; /* ÐźÅÇ¿¶È, 0 Èõ, 1 Õý³£, 2 Ç¿ */ + BYTE byIPaddress[IP_ADDR_LEN]; /*WIFI É豸 ip*/ + BYTE byEssid[IW_ESSID_MAX_SIZE]; /*ÎÞÏß½ÓÈëµãessid*/ + BYTE byres[5]; +}NET_DVR_MB_WIFI_STATUS,*LPNET_DVR_MB_WIFI_STATUS; + +typedef struct tagNET_DVR_MB_PLATFORM_STATUS +{ + BYTE byCurPlat; /*µ±Ç°Æ½Ì¨, 0: wvs, 1: ivms, 2: ÍÆģʽ(net_3g_sdk)*/ + BYTE byLoginStatus; /*login ״̬, 0: login failed, 1: login success*/ + BYTE byExceptionInfo; /*Òì³£ÐÅÏ¢*/ + /* + WVS :exception info: + 0: Á¬½Ó·þÎñÆ÷ʧ°Ü + 1: ×¢²áÖÐ + 2: Óû§ÃûÃÜÂë´íÎó + 3: ×¢²á³¬Ê± + 4: ÐÄÌø³¬Ê± + 5: ×¢²á³É¹¦ + iVMS :exception info: + 0δע²á + 1×¢²áÖÐ + 2×¢²áÁ¬½Ó³ö´í + 3×¢²á³¬Ê± + 4³¤Ê±¼äûÓÐÐÄÌø£¬Á¬½ÓÖÐ¶Ï + 5ÖØÐÂ×¢²á + 6 CMSÖÐ×¢²áÉ豸ÊýÁ¿ÒѾ­³¬¹ýÏÞ¶¨µĄ̈Êý + 7 CMSÖÐ×¢²áͨµÀÊýÁ¿ÒѾ­³¬¹ýÏÞ¶¨Í¨µÀÊý + 8É豸ÔÚWEB¹ÜÀíÖÐÐÄÖÐûÓÐÅäÖà + 9CMSºÍWEB¹ÜÀíÖÐÐÄͨÐÅʧ°Ü + 10µÇ¼δ֪´íÎó + 11×¢²á³É¹¦ + ÍÆģʽ :exception info: + 0δע²á + 1: ×¢²áÖÐ + 2: Öظ´×¢²á + 3: ×¢²áÁ¬½Óʧ°Ü + 4: ·þÎñÆ÷IP±ä»¯ + 5: ×¢²á³É¹¦ + 6: Óû§×¢Ïú + 7: ÐÄÌø³¬Ê± + */ + BYTE byres[5]; +}NET_DVR_MB_PLATFORM_STATUS, *LPNET_DVR_MB_PLATFORM_STATUS; + + +typedef struct tagNET_DVR_MB_MOBILEDEV_STATUS +{ + DWORD dwSize; /*½á¹¹´óС*/ + union + { + NET_DVR_MB_GPS_STATUS struGPSStatus; + NET_DVR_MB_GSENSOR_STATUS struGSensorStatus; + NET_DVR_MB_WIFI_STATUS struWiFiStatus; + NET_DVR_MB_PLATFORM_STATUS struPlatformStatus; + }mobileStatus; +}NET_DVR_MB_MOBILEDEV_STATUS, *LPNET_DVR_MB_MOBILEDEV_STATUS; + +#define NET_DVR_GPS_STATUS 0 +#define NET_DVR_GSENSOR_STATUS 1 +#define NET_DVR_WIFI_STATUS 2 +#define NET_DVR_PLATFORM_STATUS 3 + +//GPSµãÐÅÏ¢½á¹¹ +typedef struct tagNET_DVR_GPS_INFO +{ + /* ¾­Î³¶ÈΪS*100 */ + BYTE byDirection[2]; /*direction[0]0or1(¶«¾­/Î÷¾­), direction[1]:0or1(±±Î³/ÄÏγ) */ + BYTE bySvs; /* satellite vehicles(³õÖµ0)£ºÓÐЧ¶¨Î»ÐÇÊý */ + BYTE byLocateMode; /* ¶¨Î»Ä£Ê½(³õÖµ0)£º½öNMEA0183 3.00°æ±¾Êä³ö£¬0=×ÔÖ÷¶¨Î»£¬1=²î·Ö£¬2=¹ÀË㣬3=Êý¾ÝÎÞЧ */ + WORD wHDOP; /* ˮƽ¾«¶ÈÒò×Ó£¬¶ÈÁ¿GPS¾«È·¶È£¬0.5-99.9£¬6ÒÔÄÚ¶¨Î»¾«¶È¸ß£¬20ÒÔÉÏÐ趪Æú£¬ÕâÀï´æ´¢µÄÊdzËÒÔ10ÒÔºóµÄÕûÊý */ + WORD wHeight; /* ¸ß¶È */ + DWORD dwLatitude; /*γ¶Èlatitude = ʵ¼Ê¶È*3600*100+ʵ¼Ê·Ö*60*100+ʵ¼ÊÃë*100 */ + DWORD dwLongitude; /*¾­¶Èlongitude =ʵ¼Ê¶È*3600*100+ʵ¼Ê·Ö*60*100+ʵ¼ÊÃë*100 */ + DWORD dwVehicleSpeed; /* mobile speed =ʵ¼ÊËÙ¶È*100000 ʵ¼Êµ¥Î»kph*/ + DWORD dwVehicleDirection; /* mobile direction= ʵ¼Ê·½Ïò*100£¬Êµ¼ÊÊýÖµÊÇ·½Ïò½Ç£¬Õý±±Îª0¶È£¬Ë³Ê±Õë */ + BYTE byRes[8]; // ±£Áô +}NET_DVR_GPS_INFO,*LPNET_DVR_GPS_INFO; //32×Ö½Ú + +//GPS״̬ÉÏ´« +typedef struct _NET_DVR_GPS_STATUS_ALARM_ +{ + DWORD dwSize; + NET_DVR_TIME_V30 struGPSTime; //GPS ²ÉÑùʱ¼ä£¬²ÉÓñ¾µØʱ¼ä + NET_DVR_GPS_INFO struGPSInfo; //GPS×ø±êµã + BYTE byRetransFlag; //0-±¾Ìõ GPS Ϊʵʱ°ü£»1-±¾Ìõ GPS ΪÖØ´«°ü + BYTE byNeedsResponse; //»ØÓ¦±ê¼Ç£¬0£º²»Ðè»ØÓ¦°ü£¬1£ºÐè»ØÓ¦°ü + BYTE byType;//Éϱ¨ÀàÐÍ 0-ÎÞÈË»ú + BYTE byBatteryRemaining;//Ê£ÓàµçÁ¿£º-1--100; -1±íʾ³ö´í + int iRollAngle;//¸©Ñö½Ç¶È,·¶Î§-pi - +pi,ʵ¼ÊÖµ*100 + int iPitchAngle;//»úÍ·³¯Ïò½Ç¶È,·¶Î§-pi - +pi,ʵ¼ÊÖµ*100 + WORD wRelativeHeight;//Ïà¶Ô¸ß¶È£¬µ¥Î»£ºÀåÃ× + WORD wVerticalSpeed;//´¹Ö±Ëٶȣ¬µ¥Î»£ºÀåÃ×/Сʱ + BYTE byRes2[160]; //±£Áô +}NET_DVR_GPS_STATUS_ALARM, *LPNET_DVR_GPS_STATUS_ALARM; + +//GPS¹ØÁªÊ±¼ä +typedef struct tagNTE_DVR_GPS_DATA +{ + NET_DVR_GPS_INFO struGPSInfo; //GPS×ø±êµã + NET_DVR_TIME struTime; //GPS×ø±ê¶ÔÓ¦µÄʱ¼äµã£¬UTCʱ¼ä + BYTE byRes[12]; // ±£Áô +}NET_DVR_GPS_DATA,*LPNET_DVR_GPS_DATA; + +//GPS²éÕÒÌõ¼þ½á¹¹ +typedef struct tagNET_DVR_GET_GPS_DATA_PAPAM +{ + DWORD dwCmdType; //0-°´Ê±¼ä¶Î²éÕÒGPSÊý¾Ý,1-°´Ê±¼äµã²éÕÒGPSÊý¾Ý + union + { + struct + { + NET_DVR_TIME struBeginTime; //GPSÊý¾Ý²éÕÒÆðʼʱ¼ä + NET_DVR_TIME struEndTime; //GPSÊý¾Ý²éÕÒ½áÊøʱ¼ä + DWORD dwInterval; //GPSµãʱ¼ä¼ä¸ô£¬µ¥Î»Ãë + BYTE byRes[76]; // ±£Áô + }TimeSeg; + struct + { + NET_DVR_TIME struTimePoint; //GPSÊý¾Ý²éÕÒÆðʼʱ¼äµ¥Î»Ãë + BYTE byRes[104]; // ±£Áô + }TimePoint; + }GpsDataParam; +}NET_DVR_GET_GPS_DATA_PARAM,*LPNET_DVR_GET_GPS_DATA_PARAM; + +#define NET_SDK_MAX_CARD_LEN 32 //×î´ó¿¨ºÅ³¤¶È + +//±êÇ©ÐÅÏ¢ÉÏ´« +typedef struct _NET_DVR_TAG_INFO_ALARM_ +{ + DWORD dwSize; + BYTE byCardNo[NET_SDK_MAX_CARD_LEN/*32*/]; //¿¨ºÅ + int iRssi;//½ÓÊÕÐźÅÇ¿¶È,·¶Î§-100 - +100 + BYTE byIndexCode[64];//ƽ̨index code,Ï൱ÓÚÉ豸±àºÅ + NET_DVR_TIME_V30 struAcquisitionTime;//»ñȡʱ¼ä + BYTE byRFIDInfo[32]; //¿¨Æ¬ID + BYTE byRFIDInfoLen; //¿¨Æ¬ID³¤¶È + BYTE byVoltageLow; //1±íʾµÍµçѹ£¬0±íʾÕý³£ + BYTE byAlarmFlag; //(֪ͨƽ̨·þÎñÆ÷)ÊÇ·ñÐèÒª±¨¾¯£¬1ÐèÒª£¬0²»ÐèÒª + BYTE byDirection; //0±íʾºöÂÔ,1±íʾÈë,2±íʾ³ö,3-255±£Áô + BYTE byRes[48]; //±£Áô +}NET_DVR_TAG_INFO_ALARM, *LPNET_DVR_TAG_INFO_ALARM; + + +typedef struct tagNET_DVR_SDKLOCAL_CFG +{ + BYTE byEnableAbilityParse; //ʹÓÃÄÜÁ¦¼¯½âÎö¿â,0-²»Ê¹ÓÃ,1-ʹÓÃ,ĬÈϲ»Ê¹Óà + BYTE byVoiceComMode; //¶Ô½²Ä£Ê½£¬0-ʹÓöԽ²¿â£¨Ä¬ÈÏ£©£¬1-ʹÓÃwindows apiģʽ + BYTE byLoginWithSimXml; //µÇ¼ʱʹÓÃÄ£ÄâÄÜÁ¦,0-²»Ê¹ÓÃ,1-ʹÓÃ,ĬÈϲ»Ê¹Óà + BYTE byCompatibleType; + BYTE byRes[380]; + BYTE byProtectKey[128]; //ĬÈÏÉèÖÃΪ0 +}NET_DVR_SDKLOCAL_CFG, *LPNET_DVR_SDKLOCAL_CFG; + +typedef struct tagNET_DVR_LOCAL_ABILITY_PARSE_CFG +{ + BYTE byEnableAbilityParse; //ʹÓÃÄÜÁ¦¼¯½âÎö¿â,0-²»Ê¹ÓÃ,1-ʹÓÃ,ĬÈϲ»Ê¹Óà + BYTE byRes[127]; +}NET_DVR_LOCAL_ABILITY_PARSE_CFG, *LPNET_DVR_LOCAL_ABILITY_PARSE_CFG; + +typedef struct tagNET_DVR_LOCAL_TALK_MODE_CFG +{ + BYTE byTalkMode; //¶Ô½²Ä£Ê½£¬0-ʹÓöԽ²¿â£¨Ä¬ÈÏ£©£¬1-ʹÓÃwindows apiģʽ + BYTE byRes[127]; +}NET_DVR_LOCAL_TALK_MODE_CFG, *LPNET_DVR_LOCAL_TALK_MODE_CFG; + + +typedef struct tagNET_DVR_LOCAL_PROTECT_KEY_CFG +{ + BYTE byProtectKey[128]; //ĬÈÏÉèÖÃΪ0 + BYTE byRes[128]; +}NET_DVR_LOCAL_PROTECT_KEY_CFG, *LPNET_DVR_LOCAL_PROTECT_KEY_CFG; + +typedef struct tagNET_DVR_SIMXML_LOGIN +{ + BYTE byLoginWithSimXml; //µÇ¼ʱʹÓÃÄ£ÄâÄÜÁ¦Ð£Õý½á¹¹ÌåÄÜÁ¦×Ö¶Î,0-²»Ê¹ÓÃ,1-ʹÓà + BYTE byRes[127]; +}NET_DVR_SIMXML_LOGIN, *LPNET_DVR_SIMXML_LOGIN; + +//±¨¾¯»Øµ÷ÅäÖòÎÊý +typedef struct +{ /*¿ØÖÆJSON͸´«±¨¾¯£¨¼´COMM_VCA_ALARM£©µÄJSON¸ñʽ¡£ + 0~ÐÂJSON¸ñʽ£¬²Î¿¼4.1.4; + 1~¾ÉJSON¸ñʽ£¬²Î¿¼4.1.5 + */ + BYTE byVcaAlarmJsonType; + BYTE byRes[63]; +}NET_DVR_MESSAGE_CALLBACK_PARAM_V51,*LPNET_DVR_MESSAGE_CALLBACK_PARAM_V51; + +typedef enum tagNET_SDK_LOCAL_CFG_TYPE +{ + NET_SDK_LOCAL_CFG_TYPE_TCP_PORT_BIND = 0, //±¾µØTCP¶Ë¿Ú°ó¶¨ÅäÖ㬶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_TCP_PORT_BIND_CFG + NET_SDK_LOCAL_CFG_TYPE_UDP_PORT_BIND, //±¾µØUDP¶Ë¿Ú°ó¶¨ÅäÖ㬶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_UDP_PORT_BIND_CFG + NET_SDK_LOCAL_CFG_TYPE_MEM_POOL, //ÄÚ´æ³Ø±¾µØÅäÖ㬶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_MEM_POOL_CFG + NET_SDK_LOCAL_CFG_TYPE_MODULE_RECV_TIMEOUT, //°´Ä£¿éÅäÖó¬Ê±Ê±¼ä£¬¶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG + NET_SDK_LOCAL_CFG_TYPE_ABILITY_PARSE, //ÊÇ·ñʹÓÃÄÜÁ¦¼¯½âÎö¿â£¬¶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_ABILITY_PARSE_CFG + NET_SDK_LOCAL_CFG_TYPE_TALK_MODE, //¶Ô½²Ä£Ê½£¬¶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_TALK_MODE_CFG + NET_SDK_LOCAL_CFG_TYPE_PROTECT_KEY, //ÃÜÔ¿ÉèÖ㬶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_PROTECT_KEY_CFG + NET_SDK_LOCAL_CFG_TYPE_CFG_VERSION, //ÓÃÓÚ²âÊ԰汾ͷµÄÉ豸¶Ë¼æÈÝÇéNET_DVR_LOCAL_MEM_POOL_CFG¿ö, Ö»ÓÐÔÚÉèÖòÎÊýʱ²ÅÆð×÷Óᣠ+ NET_SDK_LOCAL_CFG_TYPE_RTSP_PARAMS, //rtsp²ÎÊýÅäÖ㬶ÔÓڽṹÌåNET_DVR_RTSP_PARAMS_CFG + NET_SDK_LOCAL_CFG_TYPE_SIMXML_LOGIN, //ÔڵǼʱʹÓÃÄ£ÄâÄÜÁ¦²¹³äsupport×Ö¶Î, ¶ÔÓ¦½á¹¹NET_DVR_SIMXML_LOGIN + NET_SDK_LOCAL_CFG_TYPE_CHECK_DEV, //ÐÄÌø½»»¥¼ä¸ôʱ¼ä + NET_SDK_LOCAL_CFG_TYPE_SECURITY, //SDK±¾´Î°²È«ÅäÖ㬠+ NET_SDK_LOCAL_CFG_TYPE_EZVIZLIB_PATH, //ÅäÖÃөʯÔÆͨÐÅ¿âµØÖ·£¬ + NET_SDK_LOCAL_CFG_TYPE_CHAR_ENCODE, //13.ÅäÖÃ×Ö·û±àÂëÏà¹Ø´¦Àí»Øµ÷ + NET_SDK_LOCAL_CFG_TYPE_PROXYS, //ÉèÖûñÈ¡´ú + NET_DVR_LOCAL_CFG_TYPE_LOG, //ÈÕÖ¾²ÎÊýÅäÖà NET_DVR_LOCAL_LOG_CFG + NET_DVR_LOCAL_CFG_TYPE_STREAM_CALLBACK, //ÂëÁ÷»Øµ÷²ÎÊýÅäÖà NET_DVR_LOCAL_STREAM_CALLBACK_CFG + NET_DVR_LOCAL_CFG_TYPE_GENERAL, //ͨÓòÎÊýÅäÖà NET_DVR_LOCAL_GENERAL_CFG + NET_DVR_LOCAL_CFG_TYPE_PTZ, //PTZÊÇ·ñ½ÓÊÕÉ豸·µ»ØÅäÖà + NET_DVR_LOCAL_CFG_MESSAGE_CALLBACK_V51, //±¨¾¯V51»Øµ÷Ïà¹Ø±¾µØÅäÖÃ,¶ÔÓ¦½á¹¹ÌåΪNET_DVR_MESSAGE_CALLBACK_PARAM_V51 ¡£(½ö¶ÔNET_DVR_SetDVRMessageCallBack_V51ÒÔÉÏ°æ±¾ÓÐЧ) + NET_SDK_LOCAL_CFG_CERTIFICATION, //ÅäÖúÍÖ¤ÊéÏà¹ØµÄ²ÎÊý£¬¶ÔÓ¦½á¹¹Ìå½á¹¹ÌåNET_DVR_LOCAL_CERTIFICATION + NET_SDK_LOCAL_CFG_PORT_MULTIPLEX, //¶Ë¿Ú¸´Ó㬶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_PORT_MULTI_CFG + NET_SDK_LOCAL_CFG_ASYNC, //Òì²½ÅäÖ㬶ÔÓ¦½á¹¹ÌåNET_DVR_LOCAL_ASYNC_CFG + NET_SDK_P2P_LOGIN_2C, + NET_SDK_P2P_LOGIN_2B, + NET_SDK_P2P_LOGOUT, + NET_SDK_AUDIOCAST_CFG //ÅäÖù㲥²ÉÑùÂÊ ,¶ÔÓ¦½á¹¹ÌåNET_LOCAL_AUDIOCAST_CFG +}NET_SDK_LOCAL_CFG_TYPE; + +typedef enum tagNET_SDK_EXCEPTION_CALLBACK_TYPE +{ + NET_SDK_EXCEPTION_CALLBACK_BY_POOL = 0, //ͨ¹ýÏ̳߳ØÒì³£»Øµ÷ + NET_SDK_EXCEPTION_CALLBACK_DIRECTLY = 1, //Ö±½ÓÒì³£»Øµ÷¸øÉϲã +}NET_SDK_EXCEPTION_CALLBACK_TYPE; + +typedef struct tagNET_DVR_LOCAL_GENERAL_CFG +{ + BYTE byExceptionCbDirectly; //0-ͨ¹ýÏ̳߳ØÒì³£»Øµ÷£¬1-Ö±½ÓÒì³£»Øµ÷¸øÉϲã + BYTE byNotSplitRecordFile; //»Ø·ÅºÍÔ¤ÀÀÖб£´æµ½±¾µØ¼ÏñÎļþ²»ÇÐƬ 0-ĬÈÏÇÐƬ£¬1-²»ÇÐƬ + BYTE byResumeUpgradeEnable; //¶ÏÍøÐø´«Éý¼¶Ê¹ÄÜ£¬0-¹Ø±Õ£¨Ä¬ÈÏ£©£¬1-¿ªÆô + BYTE byAlarmJsonPictureSeparate; //¿ØÖÆJSON͸´«±¨¾¯Êý¾ÝºÍͼƬÊÇ·ñ·ÖÀ룬0-²»·ÖÀ룬1-·ÖÀ루·ÖÀëºó×ßCOMM_ISAPI_ALARM»Øµ÷·µ»Ø£© + BYTE byRes[4]; //±£Áô + UINT64 i64FileSize; //µ¥Î»£ºByte + DWORD dwResumeUpgradeTimeout; //¶ÏÍøÐø´«ÖØÁ¬³¬Ê±Ê±¼ä£¬µ¥Î»ºÁÃë + BYTE byAlarmReconnectMode; //0-¶ÀÁ¢Ïß³ÌÖØÁ¬£¨Ä¬ÈÏ£© 1-Ï̳߳ØÖØÁ¬ + BYTE byStdXmlBufferSize; //ÉèÖÃISAPI͸´«½ÓÊÕ»º³åÇø´óС£¬1-1M ÆäËû-ĬÈÏ + BYTE byMultiplexing; //0-ÆÕͨÁ´½Ó£¨·ÇTLSÁ´½Ó£©¹Ø±Õ¶à·¸´Óã¬1-ÆÕͨÁ´½Ó£¨·ÇTLSÁ´½Ó£©¿ªÆô¶à·¸´Óà + BYTE byFastUpgrade; //0-Õý³£Éý¼¶£¬1-¿ìËÙÉý¼¶ + BYTE byRes1[232]; //Ô¤Áô +}NET_DVR_LOCAL_GENERAL_CFG, *LPNET_DVR_LOCAL_GENERAL_CFG; + +typedef struct tagNET_SDK_P2P_SERVER_2C +{ + BYTE byPlatformType; //0-¹úÄÚ 1-¹úÍâ 2-test2 + BYTE byRes1[3]; + char *pAppID; //APP ID + char *pAuthAddr; //ÈÏÖ¤·þÎñÆ÷IPµØÖ· + char *pPlatformAddr; //ƽ̨·þÎñIPµØÖ· + char *pUserName; //Õ˺Š+ char *pPassword; //ÃÜÂë + BYTE byRes[40]; +} NET_SDK_P2P_SERVER_2C, *LPNET_DVR_P2P_SERVER_2C; + +typedef struct tagNET_SDK_P2P_SERVER_2B +{ + BYTE byPlatformType; //0-¹úÄÚ 1-¹úÍâ 2-test2 + BYTE byRes1[3]; + char *pAppID; //APP ID + char *pAuthAddr; //ÈÏÖ¤·þÎñÆ÷IPµØÖ· + char *pPlatformAddr; //ƽ̨·þÎñIPµØÖ· + char *pToken; //Token + BYTE byRes[44]; +} NET_SDK_P2P_SERVER_2B, *LPNET_DVR_P2P_SERVER_2B; + +typedef struct tagNET_DVR_LOCAL_ASYNC_CFG +{ + BOOL bEnable; //Òì²½ÅäÖÃʹÄÜ£¬true-¿ªÆô + BYTE byRes[60]; +}NET_DVR_LOCAL_ASYNC_CFG, *LPNET_DVR_LOCAL_ASYNC_CFG; + +typedef struct tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG +{ + BYTE byPlayBackEndFlag; //0-²»»Øµ÷»Ø·Å½áÊø±ê¼Ç£¬1-»Øµ÷»Ø·Å½áÊø±ê¼Ç + BYTE byRes[255]; //±£Áô +}NET_DVR_LOCAL_STREAM_CALLBACK_CFG, *LPNET_DVR_LOCAL_STREAM_CALLBACK_CFG; + +typedef void(CALLBACK *LOGCALLBACK)(char *pContent, unsigned int dwInputLen, int wLogLevel, void *pData); + +typedef struct tagNET_DVR_LOCAL_LOG_CFG +{ + WORD wSDKLogNum; + LOGCALLBACK fnCB; //ÈÕÖ¾»Øµ÷ + void *pUserData; //Óû§Ö¸Õë +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE byRes[238]; //±£Áô +#else + BYTE byRes[246]; //±£Áô +#endif +}NET_DVR_LOCAL_LOG_CFG, *LPNET_DVR_LOCAL_LOG_CFG; + +typedef int(CALLBACK * CHAR_ENCODE_CONVERT)(char * pInput, DWORD dwInputLen, DWORD dwInEncodeType, char *pOutput, DWORD dwOutputLen, DWORD dwOutEncodeType); + +typedef struct tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT +{ + CHAR_ENCODE_CONVERT fnCharConvertCallBack; + BYTE byRes[256]; +}NET_DVR_LOCAL_BYTE_ENCODE_CONVERT, *LPNET_DVR_LOCAL_BYTE_ENCODE_CONVERT; + +typedef struct tagNET_DVR_LOCAL_SECURITY +{ + BYTE bySecurityLevel;//˽ÓÐЭÒéͨÐÅģʽ£¬ //0-¼æÈÝģʽ£¨Ä¬ÈÏ£©£¬ÔÊÐíËùÓеÄSDKµÇ¼ЭÒéͨ¹ý£¬1-°²È«Ä£Ê½£¨MD5£©, ÔÊÐíRSAºÍMD5µÇ¼£¬¿ªÆôУÑé2-°²È«Ä£Ê½£¨RSA£©RSAµÇ¼£¬¿ªÆôУÑé + BYTE byRes[255]; +}NET_DVR_LOCAL_SECURITY, *LPNET_DVR_LOCAL_SECURITY; + +typedef struct tagNET_DVR_LOCAL_CHECK_DEV +{ + DWORD dwCheckOnlineTimeout; //Ѳ¼ìʱ¼ä¼ä¸ô£¬µ¥Î»ms ×îСֵΪ30s£¬×î´óÖµ120s¡£Îª0ʱ£¬±íʾÓÃĬÈÏÖµ(120s) + DWORD dwCheckOnlineNetFailMax; //ÓÉÓÚÍøÂçÔ­Òòʧ°ÜµÄ×î´óÀÛ¼Ó´ÎÊý£»³¬¹ý¸ÃÖµSDK²Å»Øµ÷Óû§Òì³££¬Îª0ʱ£¬±íʾʹÓÃĬÈÏÖµ1 + BYTE byRes[256]; +}NET_DVR_LOCAL_CHECK_DEV,*LPNET_DVR_LOCAL_CHECK_DEV; + +typedef struct tagNET_DVR_LOCAL_PTZ_CFG +{ + BYTE byWithoutRecv; //0-½ÓÊÕÉ豸·µ»Ø£¬1-²»½ÓÊÕÉ豸·µ»Ø + BYTE byRes[63]; +}NET_DVR_LOCAL_PTZ_CFG, *LPNET_DVR_LOCAL_PTZ_CFG; + +typedef struct tagNET_DVR_LOCAL_CFG_VERSION +{ + BYTE byVersion; //°æ±¾ÐÅÏ¢ + BYTE byRes[63]; //±£Áô +}NET_DVR_LOCAL_CFG_VERSION, *LPNET_DVR_LOCAL_CFG_VERSION; + +typedef struct tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG +{ + WORD wLocalBindTcpMinPort; //±¾µØ°ó¶¨Tcp×îС¶Ë¿Ú + WORD wLocalBindTcpMaxPort; //±¾µØ°ó¶¨Tcp×î´ó¶Ë¿Ú + BYTE byRes[60]; //±£Áô +}NET_DVR_LOCAL_TCP_PORT_BIND_CFG, *LPNET_DVR_LOCAL_TCP_PORT_BIND_CFG; + + +typedef struct tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG +{ + WORD wLocalBindUdpMinPort; //±¾µØ°ó¶¨Udp×îС¶Ë¿Ú + WORD wLocalBindUdpMaxPort; //±¾µØ°ó¶¨Udp×î´ó¶Ë¿Ú + BYTE byRes[60]; //±£Áô +}NET_DVR_LOCAL_UDP_PORT_BIND_CFG, *LPNET_DVR_LOCAL_UDP_PORT_BIND_CFG; + + +typedef struct tagNET_DVR_LOCAL_MEM_POOL_CFG +{ + DWORD dwAlarmMaxBlockNum; //±¨¾¯Ä£¿éÄÚ´æ³Ø×î¶àÏòϵͳÉêÇëµÄÄÚ´æ¿é£¨block£©¸öÊý£¬Ã¿¸öblockΪ64MB, ³¬¹ýÕâ¸öÉÏÏÞÔò²»ÏòϵͳÉêÇ룬0±íʾÎÞÉÏÏÞ + DWORD dwAlarmReleaseInterval; //±¨¾¯Ä£¿é¿ÕÏÐÄÚ´æÊͷŵļä¸ô£¬µ¥Î»Ã룬Ϊ0±íʾ²»ÊÍ·Å + DWORD dwObjectReleaseInterval; //¶ÔÏóÉêÇëÄ£¿é¿ÕÏÐÄÚ´æÊͷŵļä¸ô£¬µ¥Î»Ã룬Ϊ0±íʾ²»ÊÍ·Å + BYTE byRes[508]; //±£Áô +}NET_DVR_LOCAL_MEM_POOL_CFG, *LPNET_DVR_LOCAL_MEM_POOL_CFG; + +typedef struct tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG +{ + DWORD dwPreviewTime; //Ô¤ÀÀÄ£¿é³¬Ê±Ê±¼ä + DWORD dwAlarmTime; //±¨¾¯Ä£¿é³¬Ê±Ê±¼ä + DWORD dwVodTime; //»Ø·ÅÄ£¿é³¬Ê±Ê±¼ä + DWORD dwElse; //ÆäËûÄ£¿é + BYTE byRes[512]; //±£Áô +}NET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG, *LPNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG; + +#define MAX_CERTIFICATE_ISSUER_LEN 64 //Ö¤Êé°ä·¢Õß³¤¶È +#define MAX_CERTIFICATE_VALIDITY_LEN 128 //Ö¤ÊéÓÐЧʱ¼ä³¤¶È +#define MAX_CERTIFICATE_SUBJECT_LEN 64 //Ö¤Êé³ÖÓÐÕß³¤¶È +typedef struct tagNET_DVR_CETTIFICATE_INFO +{ + DWORD dwSize; + char szIssuer[MAX_CERTIFICATE_ISSUER_LEN]; //Ö¤Êé°ä·¢Õß + char szSubject[MAX_CERTIFICATE_SUBJECT_LEN]; //Ö¤Êé³ÖÓÐÕß + NET_DVR_TIME struStartTime; + NET_DVR_TIME struEndTime; + BYTE byRes1[1024]; +}NET_DVR_CETTIFICATE_INFO, *LPNET_DVR_CETTIFICATE_INFO; + +typedef BOOL(CALLBACK *fnCertVerifyResultCallBack) (DWORD uiResult, LPNET_DVR_CETTIFICATE_INFO lpCertificateInfo, char *pUserData); + +#define MAX_FILE_PATH_LEN 256 //Îļþ·¾¶³¤¶È +typedef struct tagNET_DVR_LOCAL_CERTIFICATION +{ + char szLoadPath[MAX_FILE_PATH_LEN]; + fnCertVerifyResultCallBack fnCB; + void* pUserData; + BYTE byRes[64]; +}NET_DVR_LOCAL_CERTIFICATION, *LPNET_DVR_LOCAL_CERTIFICATION; + +typedef struct tagNET_DVR_LOCAL_PORT_MULTI_CFG +{ + BOOL bEnable; //¶Ë¿Ú¸´ÓÃʹÄÜ£¬true-¿ªÆô + BYTE byRes[60]; +}NET_DVR_LOCAL_PORT_MULTI_CFG, *LPNET_DVR_LOCAL_PORT_MULTI_CFG; + +typedef struct tagNET_DVR_RTSP_PARAMS_CFG +{ + DWORD dwMaxBuffRoomNum; //rtp over udpÅÅÐò¿ª±ÙµÄ×î´ó»º³åÇø¸öÊý£¬0ΪÎÞЧ£¬Ê¹ÓÃĬÈÏÖµ20 + //Ò»¸ö»º³åÇø¿ª±ÙÄÚ´æΪ10K¶àÒ»µã£¬»º³åÇø¸öÊýÔ½¶à£¬´¦ÀíÂÒÐòµÄÄÜÁ¦ÔòԽǿ£¬Á÷³©ÐÔÔ½ºÃ£¬ÑÓʱҲԽ´ó + BYTE byUseSort; //ÊÇ·ñ¿ªÆôrtp over udpÅÅÐò£¬ 0-²»¿ªÆô 1-¿ªÆô + BYTE byRes[123]; +}NET_DVR_RTSP_PARAMS_CFG, *LPNET_DVR_RTSP_PARAMS_CFG; + +typedef struct tagNET_DVR_OPTICAL_CHANNEL_BIND +{ + WORD wChannelIndex; //¹â¿ÚºÅ(0-7) + WORD wSubChannel; //¹â¿Ú×ÓͨµÀºÅ£¬È¡Öµ·¶Î§´ÓÄÜÁ¦¼¯»ñÈ¡ + BYTE byBind; //0-²»°ó¶¨»òÇå³ý°ó¶¨£¬1-°ó¶¨ + BYTE byRes[3]; +}NET_DVR_OPTICAL_CHANNEL_BIND,*LPNET_DVR_OPTICAL_CHANNEL_BIND; + +typedef struct tagNET_DVR_OPTICAL_CHANNEL_CFG +{ + DWORD dwSize; + NET_DVR_OPTICAL_CHANNEL_BIND struBindVideo;//ÊÓƵ°ó¶¨ + NET_DVR_OPTICAL_CHANNEL_BIND struBindAudio;//ÒôƵ°ó¶¨ + BYTE byRes[16]; //±£Áô +}NET_DVR_OPTICAL_CHANNEL_CFG,*LPNET_DVR_OPTICAL_CHANNEL_CFG; + +typedef struct tagNET_DVR_OPTICAL_INFO +{ + DWORD dwSize; + BYTE bySlotNum;//±àÂë×Óϵͳ²ÛλºÅ + BYTE byChannel; //±àÂëͨµÀºÅ + BYTE byRes[18]; +}NET_DVR_OPTICAL_INFO,*LPNET_DVR_OPTICAL_INFO; + +//ÒôƵÇл» +typedef struct tagNET_DVR_AUDIO_SURCHAN_CFG +{ + DWORD dwSize; + BYTE byStatus; //ÒôƵÊÇ·ñ¿ªÆô£¬1-¿ª£¬0-¹Ø + BYTE byRes1[3]; + //ÒÔϲÎÊýµ±byStatus == 1ʱÓÐЧ + DWORD dwSubWinNum; //¹ØÁªµÄ×Ó´°¿ÚºÅ + DWORD dwSurChanNum; /*¼à¿ØͨµÀºÅ */ + NET_DVR_IPADDR struIpaddr; /*¼à¿ØͨµÀµØÖ· */ + WORD wPort; /*¼à¿ØͨµÀ¶Ë¿Ú */ + BYTE byRes2[14]; +}NET_DVR_AUDIO_SURCHAN_CFG, *LPNET_DVR_AUDIO_SURCHAN_CFG; + +//¶Ë¿Ú¾ÛºÏ +#define MAX_ETHERNET_PORT_NUM 8//ÿÌõÁ´Â·×î´ó¶Ë¿ÚÊý +typedef struct tagNET_DVR_ETHERNET_CHANNEL_INFO +{ + DWORD dwSize; + BYTE byConverge[MAX_ETHERNET_PORT_NUM]; + //byConverge[i] = j±íʾ½«µÚi¸ö¶Ë¿Ú¼ÓÈëµ½µÚjÌõÁ´Â·£¬jµÄȡֵΪ1-8,j=0±íʾÒƳý + BYTE byRes[32]; +}NET_DVR_ETHERNET_CHANNEL_INFO,*LPNET_DVR_ETHERNET_CHANNEL_INFO; + +//³©ÏÔ +typedef struct tagNET_DVR_SPARTAN_INFO +{ + DWORD dwSize; + BYTE bySpartanStatus; //0-³©ÏԹأ¬1-³©ÏÔ¿ª + BYTE byRes[31]; +}NET_DVR_SPARTAN_INFO,*LPNET_DVR_SPARTAN_INFO; + +typedef struct tagNET_DVR_IPADDR_FILTERCFG +{ + DWORD dwSize; + BYTE byEnable; //ÆôÓÃIPµØÖ·¹ýÂË£¬0-·ñ£¬1-ÊÇ + BYTE byFilterType; //¹ýÂËÀàÐÍ£¬0-½ûÓã¬1-ÔÊÐí + BYTE byRes[18]; + BYTE byIPAddr[1024]; //IPµØÖ·ÐÅÏ¢£¬¸ñʽ192.168.1.2;192.168.1.3 +}NET_DVR_IPADDR_FILTERCFG, *LPNET_DVR_IPADDR_FILTERCFG; + +typedef struct tagNET_DVR_LOGO_OVERLAYCFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + DWORD dwCoordinateX; //ͼƬÏÔʾÇøÓòX×ø±ê + DWORD dwCoordinateY; //ͼƬÏÔʾÇøÓòY×ø±ê + WORD wPicWidth; //ͼƬ¿í + WORD wPicHeight; //ͼƬ¸ß + BYTE byLogoName[16];//LogoÃû³Æ +}NET_DVR_LOGO_OVERLAYCFG,*LPNET_DVR_LOGO_OVERLAYCFG; + + +typedef struct tagNET_DVR_INVALID_DISK_PARAM +{ + NET_DVR_STRUCTHEAD struStructHead; + DWORD dwDiskNo; // ´ÅÅ̺Š+ BYTE byDelAll; // 0-ɾ³ýdwDiskNo 1-ɾ³ýÈ«²¿ÎÞЧ´ÅÅÌ + BYTE byres[31]; +}NET_DVR_INVALID_DISK_PARAM, *LPNET_DVR_INVALID_DISK_PARAM; + + +typedef struct tagNET_DVR_INVALID_MOUNT_DISK_PARAM +{ + NET_DVR_STRUCTHEAD struStructHead; + DWORD dwDiskNo; // ´ÅÅ̺Š+ BYTE byres[32]; +}NET_DVR_MOUNT_DISK_PARAM, *LPNET_DVR_MOUNT_DISK_PARAM; + +// ³¤Á¬½Ó»Øµ÷ÀàÐÍ +typedef enum +{ + NET_SDK_CALLBACK_TYPE_STATUS = 0, // »Øµ÷״ֵ̬ + NET_SDK_CALLBACK_TYPE_PROGRESS, // »Øµ÷½ø¶ÈÖµ + NET_SDK_CALLBACK_TYPE_DATA // »Øµ÷Êý¾ÝÄÚÈÝ +}NET_SDK_CALLBACK_TYPE; + + +// »Øµ÷ÀàÐÍΪNET_SDK_CALLBACK_TYPE_STATUSʱµÄ״ֵ̬ +typedef enum +{ + NET_SDK_CALLBACK_STATUS_SUCCESS = 1000, // ³É¹¦ + NET_SDK_CALLBACK_STATUS_PROCESSING, // ´¦ÀíÖÐ + NET_SDK_CALLBACK_STATUS_FAILED, // ʧ°Ü + NET_SDK_CALLBACK_STATUS_EXCEPTION, // Òì³£ + NET_SDK_CALLBACK_STATUS_LANGUAGE_MISMATCH, //£¨IPCÅäÖÃÎļþµ¼È룩ÓïÑÔ²»Æ¥Åä + NET_SDK_CALLBACK_STATUS_DEV_TYPE_MISMATCH, //£¨IPCÅäÖÃÎļþµ¼È룩É豸ÀàÐͲ»Æ¥Åä + NET_DVR_CALLBACK_STATUS_SEND_WAIT, // ·¢Ë͵ȴý +}NET_SDK_CALLBACK_STATUS_NORMAL; + + +//Ò»¼üÅäÖÃͨÓÃ״̬ +#define NET_SDK_OKC_STATUS_SUCCESS 1000 //Ò»¼üÅäÖóɹ¦ +#define NET_SDK_OKC_STATUS_FAILED 1002 //Ò»¼üÅäÖÃʧ°Ü + +//Ò»¼üÅäÖÃCVR״̬ +#define NET_SDK_OKC_STATUS_START_CONFIG 1003 //¿ªÊ¼ÅäÖà +#define NET_SDK_OKC_CHECK_HD 1004 //¼ì²â´ÅÅÌ +#define NET_SDK_OKC_INIT_HD 1005 //³õʼ»¯´ÅÅÌ +#define NET_SDK_OKC_CREATE_RAID_OR_SINGLE_DISK 1006 //´´½¨ÕóÁлòÕßµ¥ÅÌģʽ +#define NET_SDK_OKC_INIT_CVR_SERVICE 1007 //³õʼ»¯CVR·þÎñ +#define NET_SDK_OKC_CREATE_RECORD_VOLUME 1008 //´´½¨Â¼Ïñ¾í + +//ÒÔÏÂΪһ¼üÅäÖÃʧ°ÜµÄ״̬Â롪¡ªpart1 +#define NET_SDK_OKC_ERR_LOAD_CONF_FAILED 1009 //¼ÓÔØÅäÖÃÎļþʧ°Ü +#define NET_SDK_OKC_ERR_NOT_SUPPORT_RAID_LEVLE 1010 //²»Ö§³Ö´ËÖÖÀàÐ͵Äraid +#define NET_SDK_OKC_ERR_CONFIGURATION_CONFLICT 1011 //ϵͳÒѾ­´æÔÚraid»ò´æ´¢³Ø +#define NET_SDK_OKC_ERR_GET_DISK_INFO_FAILED 1012 //»ñÈ¡´ÅÅÌÐÅϢʧ°Ü +#define NET_SDK_OKC_ERR_CHECK_DISK_FAILED 1013 //¼ì²â´ÅÅÌʧ°Ü +#define NET_SDK_OKC_ERR_INIT_DISK_FAILED 1014 //³õʼ»¯´ÅÅÌʧ°Ü +#define NET_SDK_OKC_ERR_DISK_CAPACITY_SMALL 1015 //´ÅÅÌ×ÜÈÝÁ¿²»×ã +#define NET_SDK_OKC_ERR_BOTH_SV_NS 1016 //ͬʱ´æÔÚSVÅ̺ÍNSÅÌ +#define NET_SDK_OKC_ERR_CREATE_RAID_FAILED 1017 //´´½¨raidʧ°Ü +#define NET_SDK_OKC_ERR_GET_RAID_FAILED 1018 //»ñÈ¡raidʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_SPARE_FAILED 1019 //´´½¨Èȱ¸ÅÌʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_STORAGE_POOL_FAILED 1020 //´´½¨´æ´¢³Øʧ°Ü +#define NET_SDK_OKC_ERR_GET_POOL_INFO_FAILED 1021 //»ñÈ¡´æ´¢³ØÐÅϢʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_LUN_FAILED 1022 //´´½¨lun¾íʧ°Ü +#define NET_SDK_OKC_ERR_GET_LUN_INFO_FAILED 1023 //»ñÈ¡lunÐÅϢʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_BACKUP_FAILED 1024 //´´½¨Ô¤Áô¾íʧ°Ü +#define NET_SDK_OKC_ERR_GET_BACKUP_FAILED 1025 //»ñÈ¡Ô¤Áô¾íʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_PRIVATE_LUN_FAILED 1026 //´´½¨Ë½Óоíʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_RV_FAILED 1027 //´´½¨Â¼Ïñ¾íʧ°Ü +#define NET_SDK_OKC_ERR_CREATE_ARCH_RV_FAILED 1028 //´´½¨´æµµ¾íʧ°Ü +#define NET_SDK_OKC_ERR_START_CVR_SERVICE_FAILED 1029 //¿ªÆôCVR·þÎñʧ°Ü + +//Ò»¼üÅäÖÃSAN״̬ +#define NET_SDK_OKC_CREATING_ARRAY 1030 //´´½¨ÕóÁн׶Π+#define NET_SDK_OKC_CREATING_STORAGE_POOL 1031 //´´½¨´æ´¢³Ø½×¶Î +#define NET_SDK_OKC_CREATING_LUN_VOL 1032 //´´½¨Âß¼­¾í½×¶Î +#define NET_SDK_OKC_CREATING_ISCSI 1033 //´´½¨ISCSI½×¶Î +#define NET_SDK_OKC_ERR_HOT_SPARE_CONFICT 1034 //ÒÑ´æÔÚÈȱ¸ÅÌ +#define NET_SDK_OKC_ERR_STORAGE_POOL_CONFICT 1035 //ÒÑ´æÔÚ´æ´¢³Ø +#define NET_SDK_OKC_ERR_RAID_CONFLICT 1036 //ϵͳÒѾ­´æÔÚÕóÁÐ +#define NET_SDK_OKC_ERR_OPEN_ISCSI_FAILED 1037 //¿ªÆôISCSIʧ°Ü +#define NET_SDK_OKC_ERR_DEVICE_NOSUPPORT_SAN 1038 //É豸²»Ö§³Ösan + +//ÒÔÏÂΪһ¼üÅäÖÃʧ°ÜµÄ״̬Â롪¡ªpart2 +#define NET_SDK_OKC_ERR_SAPRE_NUM_EXCEED 1101 //Èȱ¸Å̸öÊý¹ý¶à +#define NET_SDK_OKC_ERR_CREATE_PIC_VOLUME_FAILED 1102 //´´½¨Í¼Æ¬¾íʧ°Ü + +typedef enum +{ + NET_SDK_GET_NEXT_STATUS_SUCCESS = 1000, // ³É¹¦¶ÁÈ¡µ½Êý¾Ý£¬¿Í»§¶Ë´¦ÀíÍê±¾´ÎÊý¾ÝºóÐèÒªÔٴε÷ÓÃNET_DVR_RemoteConfigGetNext»ñÈ¡ÏÂÒ»ÌõÊý¾Ý + NET_SDK_GET_NETX_STATUS_NEED_WAIT, // ÐèµÈ´ýÉ豸·¢ËÍÊý¾Ý£¬¼ÌÐøµ÷ÓÃNET_DVR_RemoteConfigGetNextº¯Êý + NET_SDK_GET_NEXT_STATUS_FINISH, // Êý¾ÝÈ«²¿È¡Í꣬´Ëʱ¿Í»§¶Ë¿Éµ÷ÓÃNET_DVR_StopRemoteConfig½áÊø³¤Á¬½Ó + NET_SDK_GET_NEXT_STATUS_FAILED, // ³öÏÖÒì³££¬¿Í»§¶Ë¿Éµ÷ÓÃNET_DVR_StopRemoteConfig½áÊø³¤Á¬½Ó +}NET_SDK_GET_NEXT_STATUS; + +// Óû§µ÷ÓÃSendwithRecv½Ó¿Úʱ£¬½Ó¿Ú·µ»ØµÄ״̬ +typedef enum +{ + NET_SDK_CONFIG_STATUS_SUCCESS = 1000, // ³É¹¦¶ÁÈ¡µ½Êý¾Ý£¬¿Í»§¶Ë´¦ÀíÍê±¾´ÎÊý¾ÝºóÐèÒªÔٴε÷ÓÃNET_DVR_SendWithRecvRemoteConfig»ñÈ¡ÏÂÒ»ÌõÊý¾Ý + NET_SDK_CONFIG_STATUS_NEEDWAIT, // ÅäÖõȴý£¬¿Í»§¶Ë¿ÉÖØÐÂNET_DVR_SendWithRecvRemoteConfig + NET_SDK_CONFIG_STATUS_FINISH, // Êý¾ÝÈ«²¿È¡Í꣬´Ëʱ¿Í»§¶Ë¿Éµ÷ÓÃNET_DVR_StopRemoteConfig½áÊø + NET_SDK_CONFIG_STATUS_FAILED, // ÅäÖÃʧ°Ü£¬¿Í»§¶Ë¿ÉÖØÐÂNET_DVR_SendWithRecvRemoteConfigÏ·¢ÏÂÒ»Ìõ + NET_SDK_CONFIG_STATUS_EXCEPTION, // ÅäÖÃÒì³££¬´Ëʱ¿Í»§¶Ë¿Éµ÷ÓÃNET_DVR_StopRemoteConfig½áÊø +}NET_SDK_SENDWITHRECV_STATUS; + +//µ¼ÈëÅäÖÃÎļþ´íÎóÂë +typedef enum tagNET_SDK_IPC_CFG_FILE_ERR_CODE +{ + NET_SDK_IPC_CFG_FILE_NO_ERR = 0, /* û³ö´í */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_CHANNEL_INVALID = 1, /* ͨµÀID·Ç·¨ */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_CHANNEL_DUPLICATE, /* ͨµÀIDÖظ´ */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_INVALID, /* ͨµÀIP»òÓòÃû·Ç·¨ */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_DUPLICATE, /* ͨµÀIP»òÓòÃûÖظ´ */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_CONFLICT_WITH_LOCAL, /* ͨµÀIPÓë±¾µØIP³åÍ» */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_PROTOCOL_INVALID, /* ЭÒé´íÎó */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_PORT_INVALID, /* ¹ÜÀí¶Ë¿Ú´íÎó */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_DEVICE_CHANNEL_ERR, /* É豸ͨµÀºÅ´íÎó */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_USER_NAME_ERR, /* Óû§Ãûº¬·Ç·¨×Ö·û */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_PASSWD_ERR, /* ÃÜÂ뺬·Ç·¨×Ö·û */ + NET_SDK_IPC_CFG_FILE_ERR_CODE_TRANSPORT_PROTOCOL_INVALID /*´«ÊäЭÒé´íÎó*/ +}NET_SDK_IPC_CFG_FILE_ERR_CODE; + +//IPCÉý¼¶´íÎóÂë +typedef enum +{ + NET_SDK_UPGRADE_IPC_INVALID = 0, //ÎÞЧͨµÀ»òδѡÔñ¸ÃͨµÀÉý¼¶ + NET_SDK_UPGRADE_IPC_SUCCESS, //Éý¼¶³É¹¦ + NET_SDK_UPGRADE_IPC_OFFLINE, //IPC²»ÔÚÏß + NET_SDK_UPGRADE_IPC_NOT_SUPPORT, //IPC²»Ö§³ÖÉý¼¶ÃüÁî + NET_SDK_UPGRADE_IPC_LANGUAGE_MISMATCH, //ÓïÑÔ²»Æ¥Åä + NET_SDK_UPGRADE_IPC_WRITE_FLASH_FAILED, //дflshʧ°Ü + NET_SDK_UPGRADE_IPC_OTHER_ERROR //ÆäËû´íÎó +}NET_SDK_UPGRADE_IPC_ERR_CODE; + +typedef enum +{ + NET_SDK_REMOTE_CONFIG_STATUS_SUCCESS = 1001,//¼²¥Ö÷»úÒ»¼ü·¢²¼³É¹¦ + NET_SDK_REMOTE_CONFIG_STATUS_FAILED, //¼²¥Ö÷»úÒ»¼ü·¢²¼Ê§°Ü + NET_SDK_REMOTE_CONFIG_STATUS_PROCESSING //¼²¥Ö÷»úÒ»¼ü·¢²¼ÕýÔÚ»ñÈ¡ +}NET_SDK_REMOTE_CONFIG_STATUS; + +#define MAX_CODE_CARD_SUPPORTDISPNUMS 8//ÿ¸ö±àÂ뿨×î¶àÖ§³ÖµÄÏÔʾͨµÀÊý +#define MAX_SUPPORT_RES 32 + +typedef enum _BOARD_TYPE +{ + DS4004HC_BOARD =2, //4004HC + DS4008HC_BOARD =3, //4008HC + DS4016HC_BOARD =4, //4016HC + DS4001HF_BOARD =5, //4001HF + DS4004HF_BOARD =6, //4004HF + DS4002MD_BOARD =7, //4002MD + DS4004MD_BOARD =8, //4004MD + DS4016HCS_BOARD =9, //4016HCS + DS4004HC_PLUS_BOARD =13, //4004HC+ + DS4008HC_PLUS_BOARD =14, //4008HC+ + DS4016HC_PLUS_BOARD =15, //4016HC+ + DS4008HF_BOARD =16, //4008HF + DS4008MD_BOARD =17, //4008MD + DS4008HS_BOARD =18, //4008HS + DS4016HS_BOARD =19, //4016HS + + DS4108HCV_BOARD =20, //4108HCV + DS4116HCV_BOARD =21, //4116HCV + DS5016HC_BOARD =22, //5016HC + + DS4208HFV_BOARD =23, //4208HFV + DS4216HC_BOARD =24, //4216HC + DS4216HFV_BOARD =25, //4216HFV + + DS5008HF_BOARD =26, //5008HF + DS5116HF_BOARD =27, //5116HF + + DS5216HC_BOARD =28, //5216HC + DS5208HF_BOARD =29, //5208HF + DS5216HF_BOARD =30, //5216HF + + DS4101HD_BOARD =31, //4101HD + DS4102HD_BOARD =32, //4102HD + DS4104HD_BOARD =33, //4104HD + + DS4002MD_PLUS_BOARD =34, //4002MD+ + DS4004MD_PLUS_BOARD =35, //4004MD+ + + DS4204HFV_BOARD =36, //4204HFV + DS4308HCV_BOARD =37, //4308HCV + DS4308HFV_BOARD =38, //4308HFV + DS4316HCV_BOARD =39, //4316HCV + DS4316HFV_BOARD =40, //4316HFV + DS4304HD_BOARD =41, //4304HD + DS4304HFH_BOARD =42, //4304HFH + DS4304HFV_BOARD =43, //4304HFV + DS4302HFH_BOARD =44, //4302HFH + DS5316HF_BOARD =45, //5316HF + DS4308HW_BOARD =46, //4308HW + DS4316HW_BOARD =47, //4316HW + DS4308MD_BOARD =48, //4308MD + UNKNOWN_BOARD_TYPE =0xffffffff, +}BOARD_TYPE; + +typedef struct tagNET_DVR_CODECARD_ABILITY /*¸ßÇå±àÂ뿨ÄÜÁ¦¼¯*/ +{ + BYTE byCardType; //±àÂ뿨ÀàÐÍ(°´BOARD_TYPEÖеÄö¾Ù) + BYTE byCodeNums; //±àÂëͨµÀÊý + BYTE byDispNums; //ÏÔʾͨµÀÊý + BYTE byCodeStartIdx; //Ê׸ö±àÂëͨµÀÔÚËùÓбàÂëͨµÀÖеÄË÷Òý + BYTE byDispStartIdx; //Ê׸öÏÔʾͨµÀÔÚËùÓÐÏÔʾͨµÀÖеÄË÷Òý + BYTE byRes1[3]; + DWORD dwVgaSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + DWORD dwHdmiSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + DWORD dwDviSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + DWORD dwYpbprSupportResolution[MAX_SUPPORT_RES/*32*/];//Ö§³ÖµÄ·Ö±æÂÊ + BYTE byDispFormat[MAX_CODE_CARD_SUPPORTDISPNUMS]; //Ö§³ÖµÄÊä³öģʽ(°´HD_DISPLAY_FORMATÖеÄö¾Ù) + BYTE byWindowMode[MAX_CODE_CARD_SUPPORTDISPNUMS][12]; //Ö§³ÖµÄ´°¿Úģʽ(±ÈÈç1,2,4,9,16)) + BYTE byRes2[36]; +}NET_DVR_CODECARD_ABILITY,*LPNET_DVR_CODECARD_ABILITY; + +#define MAX_CODE_CARD_NUM 8 //×î¶à¸ßÇå±àÂ뿨Êý +typedef struct tagNET_DVR_CODESVR_ABILITY +{ + DWORD dwSize; /* ½á¹¹Ìå´óС */ + BYTE byCardNums; /* ±àÂ뿨Êý */ + BYTE byStartChan; /* ÆðʼͨµÀºÅ */ + BYTE byRes1[2]; + NET_DVR_CODECARD_ABILITY struCodeCardAbility[MAX_CODE_CARD_NUM]; + BYTE byRes2[64]; +}NET_DVR_CODESVR_ABILITY, *LPNET_DVR_CODESVR_ABILITY; + +typedef struct tagNET_DVR_CODER_SERVER_OUTPUT_CFG +{ + DWORD dwSize; + BYTE byDispChanType; /*ÏÔʾͨµÀÀàÐÍ£º0-BNC£¬1-VGA£¬2-HDMI£¬3-DVI*/ //´Ë²ÎÊýÖ»ÄÜ»ñÈ¡ + BYTE byVedioFormat; /*1:NTSC,2:PAL£¬0-NULL*/ + BYTE byRes1[2]; + DWORD dwResolution; //·Ö±æÂÊ + DWORD dwWindowMode; /*»­Ãæģʽ£¬Ö§³Öģʽ´ÓÄÜÁ¦¼¯»ñÈ¡*/ + BYTE byRes2[64]; +}NET_DVR_CODER_SERVER_OUTPUT_CFG,*LPNET_DVR_CODER_SERVER_OUTPUT_CFG; + +typedef struct tagNET_DVR_DISPLAY_START_INFO +{ + DWORD dwSize; + DWORD dwDisplayChan; //ÏÔʾͨµÀºÅ + DWORD dwCodeChan; //±àÂëͨµÀºÅ + DWORD dwWinNum; //´°¿ÚºÅ£¬´Ó1Æð + BYTE byEnableAudio; //¿ªÆôÒôƵ£¬0-¹Ø£¬1-¿ª + BYTE byRes[31]; +}NET_DVR_DISPLAY_START_INFO,*LPNET_DVR_DISPLAY_START_INFO; + +typedef struct tagNET_DVR_CODER_WINDOW_INFO +{ + DWORD dwSize; + DWORD dwDisplayChan;//ÏÔʾͨµÀºÅ + DWORD dwWinNum; //´°¿ÚºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes[16]; +}NET_DVR_CODER_WINDOW_INFO,*LPNET_DVR_CODER_WINDOW_INFO; + +typedef struct tagNET_DVR_WINDOW_STATUS +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwCodeChan; /*±àÂëͨµÀºÅ*/ + BYTE byDisplay; /*ÊÇ·ñÊä³ö£¬0-·ñ£¬1-ÊÇ*/ + BYTE byAudio; /*ÒôƵÊÇ·ñ¿ªÆô,0-·ñ£¬1-ÊÇ*/ + BYTE byRes[30]; +}NET_DVR_WINDOW_STATUS,*LPNET_DVR_WINDOW_STATUS; + +typedef struct tagNET_DVR_RECORD_LOCK_PERCENTAGE +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byPercentage; //°Ù·Ö±È£¬È¡Öµ·¶Î§[0,100] + BYTE byRes[31]; //±£Áô +}NET_DVR_RECORD_LOCK_PERCENTAGE, *LPNET_DVR_RECORD_LOCK_PERCENTAGE; + +typedef struct tagNET_DVR_UPDATE_RECORD_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_STREAM_INFO struStreasmInfo; //Á÷ID + DWORD dwBeginTime; //¼Ïñ×ܵĿªÊ¼Ê±¼ä + DWORD dwEndTime; //¼Ïñ×ܵĽáÊøʱ¼ä + BYTE byRes[32]; //±£Áô +}NET_DVR_UPDATE_RECORD_INFO, *LPNET_DVR_UPDATE_RECORD_INFO; + +typedef struct tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA +{ + NET_DVR_STREAM_INFO struStreamInfo; + DWORD dwCmdType; //Íⲿ´¥·¢ÀàÐÍ + DWORD dwRecordTimeLen; //¼Ïñ³ÖÐøʱ¼ä£¬µ¥Î»£ºÃë + BYTE byEventID[MAX_EVENTID_LEN]; //ʼþID£¬×÷Ϊ¸½¼ÓÐÅÏ¢ + DWORD dwLockDuration; //Ëø¶¨³ÖÐøʱ¼ä£¬µ¥Î»£ºÃ룬0xffffffff- ÓÀ¾ÃËø¶¨£¬0- ²»Ëø + BYTE byBackUp; //ÊÇ·ñ´æµµ£¬0-²»´æµµ£¬1-´æµµ + BYTE byPreRecord; //ÊÇ·ñԤ¼£¬0-²»Ô¤Â¼£¬1-Ԥ¼ + BYTE byRes[122]; +}NET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA, *LPNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA; + +typedef struct tagNET_DVR_LOCK_FILE_BY_NAME_PARA +{ + BYTE byFileName[NAME_LEN]; // ¼ÏñÎļþÃû£¬ÀÏЭÒéÖ»´«32¸öÎļþÃû + DWORD dwLockDuration; // Ëø¶¨³ÖÐøʱ¼ä,µ¥Î»Ã룬0xffffffff±íʾÓÀ¾ÃËø¶¨ + BYTE byRes[512]; +}NET_DVR_LOCK_FILE_BY_NAME_PARA, *LPNET_DVR_LOCK_FILE_BY_NAME_PARA; + + +typedef struct tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; + DWORD dwStreamType; //ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ʼþÀàÐÍ£¬3-ÂëÁ÷3£¬¡­¡­£¨×Ô¶¨ÒåÂëÁ÷ÀàÐÍÐèͨ¹ýGET /ISAPI/Streaming/channels//customStream»ñÈ¡µ±Ç°Í¨µÀÒѾ­Ìí¼ÓµÄËùÓÐ×Ô¶¨ÒåÂëÁ÷ID¡£×Ô¶¨ÒåÂëÁ÷Ϊ6~10£¬ÆäË÷ÒýÖµ¾ÍÊÇ6~10£© + BYTE byRes[32]; +}NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND, *LPNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND; + + +typedef struct tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG +{ + DWORD dwSize; + DWORD dwStreamType; //ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ʼþÀàÐÍ£¬3-ÂëÁ÷3£¬¡­¡­ + NET_DVR_COMPRESSION_INFO_V30 struStreamPara; //ÂëÁ÷ѹËõ²ÎÊý + DWORD dwResolution; //µ±·Ö±æÂÊË÷ÒýСÓÚ255ʱºÍbyResolution±£³ÖÒ»Ö£¬´óÓÚ255ʱÒÔ¸Ã×ֶηµ»ØË÷ÒýÖµÅжϡ£ + BYTE byRes[76]; +}NET_DVR_MULTI_STREAM_COMPRESSIONCFG, *LPNET_DVR_MULTI_STREAM_COMPRESSIONCFG; + +typedef struct tagNET_DVR_PUSHALARMINFO_V40 +{ + DWORD dwAlarmType; /*0-ÐźÅÁ¿±¨¾¯,1-Ó²ÅÌÂú,2-ÐźŶªÊ§,3£­Òƶ¯Õì²â,4£­Ó²ÅÌδ¸ñʽ»¯,5-¶ÁдӲÅ̳ö´í,6-ÕÚµ²±¨¾¯,7-ÖÆʽ²»Æ¥Åä, 8-·Ç·¨·ÃÎÊ, 9-ÊÓƵÐźÅÒì³££¬10-¼ÏñÒì³£ 11- ÖÇÄܳ¡¾°±ä»¯ 12-ÕóÁÐÒì³£ */ + union + { + BYTE byRes[300]; + struct + { + DWORD dwAlarmInputNumber; /*°´Î»,µÚ0λ¶ÔÓ¦µÚ0¸öÊäÈë¶Ë¿Ú,dwAlarmTypeΪ0ʱÐèÒªÉèÖÃ*/ + BYTE byAlarmOutputNumber[MAX_ALARMOUT_V30]; /*°´Î»,µÚ0λ¶ÔÓ¦µÚ0¸öÊä³ö¶Ë¿Ú, */ + BYTE byAlarmRelateChannel[MAX_CHANNUM_V30]; /*°´Î»,µÚ0λ¶ÔÓ¦µÚ0¸öͨµÀ*/ + BYTE byRes1[97]; + BYTE byDeviceID[NAME_LEN]; /*É豸µÄID´®*/ + BYTE byRes2[7]; + }struIOAlarm; + struct + { + BYTE byStreamID[STREAM_ID_LEN]; // IDÐÅÏ¢ + BYTE byRes1[132]; + BYTE byChannel[MAX_CHANNUM_V30]; /*°´Î»,0x2±íʾµÚ1ͨµÀ£¬µÚ1λ¶ÔÓ¦µÚ1¸öͨµÀ(´ÓͨµÀ1¿ªÊ¼)£¬dwAlarmTypeΪ2»ò3, 6£¬9£¬10ʱÐèÒªÉèÖÃ, */ + BYTE byRes2[33]; + BYTE byDeviceID[NAME_LEN]; /*É豸µÄID´®*/ + BYTE byRes3[7]; + }struStreamIDorChannel; + struct + { + BYTE byRes1[228]; + BYTE byDiskNumber[MAX_DISKNUM_V30]; /*°´Î»,µÚ0λ¶ÔÓ¦µÚ0¸öÓ²ÅÌ,dwAlarmTypeΪ1,4,5ʱÐèÒªÉèÖÃ*/ + BYTE byDeviceID[NAME_LEN]; /*É豸µÄID´®*/ + BYTE byRes2[7]; + }struDiskAlarm; + }uAlarmInfo; +}NET_DVR_PUSHALARMINFO_V40, *LPNET_DVR_PUSHALARMINFO_V40; + +typedef struct tagNET_DVR_RECORD_PACK +{ + NET_DVR_STRUCTHEAD struStruceHead; + DWORD dwPackageInterval; // ´ò°üʱ¼ä¼ä¸ô £¬Ê±¼äµ¥Î»£º·ÖÖÓ + BYTE byRes[32]; // ±£Áô +}NET_DVR_RECORD_PACK,*LPNET_DVR_RECORD_PACK; + +#define NET_DVR_FIND_NAS_DIRECTORY 6161 //²éÕÒNASĿ¼ +#define NET_DVR_NAS_FINDING 0 //ÕýÔÚ²éÕÒ +#define NET_DVR_NAS_RECV 1 //½ÓÊÕÊý¾Ý +#define NET_DVR_NAS_OVER 2 //²éÕÒ½áÊø +#define NET_DVR_NAS_EXCEPTION 3 //½ÓÊÕÒì³£ +typedef struct tagNET_DVR_NET_DISK_SERACH_PARAM +{ + NET_DVR_IPADDR struIP; // IPµØÖ· + WORD wPort; // IP¶Ë¿Ú + BYTE byRes[10]; // ±£Áô×Ö½Ú +}NET_DVR_NET_DISK_SERACH_PARAM, *LPNET_DVR_NET_DISK_SERACH_PARAM; + + +typedef struct tagNET_DVR_NET_DISK_SERACH_RET +{ + BYTE byDirectory[128]; // ·µ»ØµÄÎļþĿ¼ + BYTE byRes[20]; +}NET_DVR_NET_DISK_SERACH_RET, *LPNET_DVR_NET_DISK_SERACH_RET; + +typedef struct tagNET_DVR_WD1_CFG +{ + NET_DVR_STRUCTHEAD struStruceHead; + BYTE byWD1Enable; //WD1ʹÄÜ¿ª¹Ø 0 ¹Ø±Õ 1 ¿ªÆô + BYTE byRes[31]; //±£Áô +}NET_DVR_WD1_CFG, *LPNET_DVR_WD1_CFG; + +typedef struct tagNET_DVR_FTPCFG_V40 +{ + NET_DVR_STRUCTHEAD struStruceHead; + BYTE byEnableFTP; /*ÊÇ·ñÆô¶¯ftpÉÏ´«¹¦ÄÜ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byProtocolType; /*ЭÒéÀàÐÍ 0-FTP£¬1-SFTP*/ + WORD wFTPPort; /*¶Ë¿Ú*/ + union + { + struct + { + BYTE szDomain[64]; //·þÎñÆ÷µØÖ·£¬¿ÉÒÔʹIPv4 IPv6»òÊÇÓòÃû + BYTE byRes1[80]; + }struDomain; + struct + { + NET_DVR_IPADDR struIp; /*IPµØÖ·:IPv4 IPv6µØÖ·, 144×Ö½Ú*/ + }struAddrIP; + }unionServer; //ʹÓÃÁªºÏÌå½á¹¹£¬·ÀÖ¹¼ÈÊÇIPµØÖ·ÓÖÊÇÓòÃûµÄÇé¿ö + BYTE szUserName[32]; /*Óû§Ãû*/ + BYTE szPassWORD[16]; /*ÃÜÂë*/ + BYTE szTopCustomDir[64]; /*×Ô¶¨ÒåÒ»¼¶Ä¿Â¼*/ + BYTE szSubCustomDir[64]; /*×Ô¶¨Òå¶þ¼¶Ä¿Â¼*/ + BYTE byDirLevel; /*0 = ²»Ê¹ÓÃĿ¼½á¹¹£¬Ö±½Ó±£´æÔÚ¸ùĿ¼, 1 = ʹÓÃ1¼¶Ä¿Â¼,2=ʹÓÃ2¼¶Ä¿Â¼*/ + BYTE byTopDirMode; /* Ò»¼¶Ä¿Â¼£¬0x1 = ʹÓÃÉ豸Ãû,0x2 = ʹÓÃÉ豸ºÅ,0x3 = ʹÓÃÉ豸ipµØÖ·£¬ + 0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ),0x6-ʹÓÃ×Ô¶¨Òå ,0x7=Î¥¹æÀàÐÍ,0x8=·½Ïò,0x9=µØµã*/ + BYTE bySubDirMode; /*¶þ¼¶Ä¿Â¼£¬0x1=ʹÓÃͨµÀÃû,0x2=ʹÓÃͨµÀºÅ 0x3=ʹÓÃʱ¼ä(ÄêÔÂÈÕ), + 0x4=ʹÓóµµÀºÅ,0x5-ʹÓÃ×Ô¶¨Òå, 0x6=Î¥¹æÀàÐÍ,0x7=·½Ïò,0x8=µØµã,0x9 = ³µÎ»±àºÅ*/ + BYTE byType; /* 0-Ö÷·þÎñÆ÷£¬1-±¸·þÎñÆ÷*/ + BYTE byEnableAnony; /*ÆôÓÃÄäÃû 0-·ñ 1ÊÇ*/ + BYTE byAddresType; /*0 ʹÓÃIPV4¡¢IPV6 1- ʹÓÃÓòÃû*/ + BYTE byFTPPicType; //0-±£Áô£¬1-Í£³µ³¡×¥ÅÄͼƬÃüÃû¹æÔò + BYTE byPicArchivingInterval; //ͼƬ¹éµµ¼ä¸ô[1~30],0±íʾ¹Ø±Õ + NET_DVR_PICTURE_NAME_EX struPicNameRule; /* ͼƬÃüÃû¹æÔò: + byFTPPicType ==1µÄʱºò,×ÔÊý×éÄÚµÄÃüÃû¹æÔòÊÇÍ£³µ³¡×¥ÅÄͼƬÃüÃû¹æÔò*/ + BYTE byPicNameRuleType; //ͼƬÃüÁî¹æÔòÀàÐÍ£»0~ĬÈÏÀàÐÍ£¬1~ͼƬǰ׺Ãû¶¨Òå(ÆôÓÃstruPicNameRuleÖеÄbyPicNamePrefix×Ö¶Î) + BYTE byRes[203]; /*±£Áô*/ +}NET_DVR_FTPCFG_V40, *LPNET_DVR_FTPCFG_V40; + +typedef struct tagNET_DVR_FTP_TYPE +{ + BYTE byType; // 0-Ö÷·þÎñÆ÷£¬1-±¸·þÎñÆ÷ + BYTE byRes[3]; +}NET_DVR_FTP_TYPE, *LPNET_DVR_FTP_TYPE; + +//FTP·þÎñÆ÷²âÊÔ²ÎÊý½á¹¹Ìå +typedef struct +{ + DWORD dwSize; + BYTE byEnableFTP; /*ÊÇ·ñÆô¶¯ftpÉÏ´«¹¦ÄÜ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byProtocolType; /*ЭÒéÀàÐÍ 0-FTP£¬1-SFTP*/ + WORD wFTPPort; /*¶Ë¿Ú*/ + union + { + BYTE byRes[144]; + struct + { + BYTE szDomain[MAX_DOMAIN_NAME]; //·þÎñÆ÷µØÖ·£¬¿ÉÒÔʹIPv4 IPv6»òÊÇÓòÃû + BYTE byRes1[80]; + }struDomain; + struct + { + NET_DVR_IPADDR struIp; /*IPµØÖ·:IPv4 IPv6µØÖ·, 144×Ö½Ú*/ + }struAddrIP; + }unionServer; //ʹÓÃÁªºÏÌå½á¹¹£¬·ÀÖ¹¼ÈÊÇIPµØÖ·ÓÖÊÇÓòÃûµÄÇé¿ö + + BYTE szUserName[NAME_LEN]; /*Óû§Ãû*/ + BYTE szPassWORD[PASSWD_LEN]; /*ÃÜÂë*/ + BYTE szTopCustomDir[MAX_CUSTOM_DIR]; /*×Ô¶¨ÒåÒ»¼¶Ä¿Â¼*/ + BYTE szSubCustomDir[MAX_CUSTOM_DIR]; /*×Ô¶¨Òå¶þ¼¶Ä¿Â¼*/ + BYTE byDirLevel; /*0 = ²»Ê¹ÓÃĿ¼½á¹¹£¬Ö±½Ó±£´æÔÚ¸ùĿ¼, 1 = ʹÓÃ1¼¶Ä¿Â¼,2=ʹÓÃ2¼¶Ä¿Â¼*/ + BYTE byTopDirMode; /* Ò»¼¶Ä¿Â¼£¬0x1 = ʹÓÃÉ豸Ãû,0x2 = ʹÓÃÉ豸ºÅ,0x3 = ʹÓÃÉ豸ipµØÖ·£¬ + 0x4=ʹÓüà²âµã,0x5=ʹÓÃʱ¼ä(ÄêÔÂ),0x6-ʹÓÃ×Ô¶¨Òå ,0x7=Î¥¹æÀàÐÍ, + 0x8=·½Ïò,0x9=µØµã*/ + BYTE bySubDirMode; /*¶þ¼¶Ä¿Â¼£¬0x1=ʹÓÃͨµÀÃû,0x2=ʹÓÃͨµÀºÅ 0x3=ʹÓÃʱ¼ä(ÄêÔÂÈÕ), + 0x4=ʹÓóµµÀºÅ,0x5-ʹÓÃ×Ô¶¨Òå, 0x6=Î¥¹æÀàÐÍ,0x7=·½Ïò,0x8=µØµã, + 0x9 = ³µÎ»±àºÅ*/ + BYTE byType; /* 0-Ö÷·þÎñÆ÷£¬1-±¸·þÎñÆ÷*/ + BYTE byEnableAnony; /*ÆôÓÃÄäÃû 0-·ñ 1ÊÇ*/ + BYTE byAddresType; /*0 ʹÓÃIPV4¡¢IPV6 1- ʹÓÃÓòÃû*/ + + BYTE byRes2[198]; +}NET_DVR_FTP_SERVER_TEST_PARA, *LPNET_DVR_FTP_SERVER_TEST_PARA; + +#define NET_SDK_ACCESS_KEY_LEN 64 //·ÃÎÊÃÜÂ볤¶È +#define NET_SDK_SECRET_KEY_LEN 64 //¼ÓÃÜÃÜÂ볤¶È + +//·þÎñÆ÷²âÊԽṹÌå +typedef struct tagNET_DVR_SERVER_TEST_PARA +{ + DWORD dwSize; + union + { + BYTE byRes[740]; + struct + { + NET_DVR_NTPPARA struNtpPara; /*NTP·þÎñÆ÷²âÊÔ²ÎÊý80×Ö½Ú*/ + BYTE byRes1[660]; + }struNtpPara; + struct + { + NET_DVR_SINGLE_NET_DISK_INFO_V40 struNasPara; /*NAS·þÎñÆ÷²âÊÔ²ÎÊý480×Ö½Ú*/ + BYTE byRes1[260]; + }struNasPara; + struct + { + NET_DVR_FTP_SERVER_TEST_PARA struFtpPara; /*FTP·þÎñÆ÷²âÊÔ²ÎÊý528×Ö½Ú*/ + BYTE byRes1[212]; + }struFtpPara; + struct + { + NET_DVR_EMAILCFG_V30 struEmailPara; /*Email·þÎñÆ÷²âÊÔ²ÎÊý660×Ö½Ú*/ + BYTE byRes1[80]; + }struEmailPara; + struct + { + NET_DVR_IPADDR struIp; /*IP³åÍ»²âÊÔ²ÎÊý24×Ö½Ú*/ + BYTE byRes1[716]; + }struIpPara; + struct + { + NET_DVR_IPADDR struIPAdder; + WORD wPort; //¶Ë¿ÚºÅ + BYTE byRes2[2]; + char szUser[CLOUD_NAME_LEN/*48*/]; //Óû§Ãû + char szPassword[CLOUD_PASSWD_LEN/*48*/]; // ÃÜÂë + NET_DVR_POOLPARAM struPoolInfo[16];// Êý×é0±íʾ¿¨¿ÚͼƬÊý¾Ý³Ø£¬Êý×é1±íʾΥÕÂͼƬÊý¾Ý³Ø£¬Êý×é2±íʾ³µÁ¾Õì²âÊý¾Ý³Ø£¨IPC/D£© + BYTE byProtocolType;//Ôƴ洢ЭÒé°æ±¾£¬0- 1.0°æ±¾£¬1- 2.0°æ±¾ + BYTE byRes3[3]; + char szAccessKey[NET_SDK_ACCESS_KEY_LEN/*64*/]; //·ÃÎÊÃÜÂë + char szSecretKey[NET_SDK_SECRET_KEY_LEN/*64*/]; //¼ÓÃÜÃÜÂë + BYTE byRes1[354]; + }struCloudStoragePara; + struct + { + BYTE byPhoneNum[MAX_PHONE_NUM/*32*/]; + BYTE byRes1[708]; + }struPhoneNumPara;//¶ÌÐŲâÊÔ + }unionServerPara; + BYTE byRes2[800]; +}NET_DVR_SERVER_TEST_PARA, *LPNET_DVR_SERVER_TEST_PARA; + +typedef struct tagNET_DVR_GOP_INFO //»ñÈ¡GOPË÷ÒýÐÅÏ¢½á¹¹Ìå,½¨Á¢Á¬½ÓʱʹÓà +{ + DWORD dwSize; //½á¹¹Ìå´óС + LONG lChannel; //ͨµÀºÅ + NET_DVR_TIME_EX struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndTime; //½áÊøʱ¼ä + BYTE byRes[256]; // ±£Áô×Ö½Ú +}NET_DVR_GOP_INFO, *LPNET_DVR_GOP_INFO; + +typedef struct tagNET_DVR_GOP_INFO_RET +{ + NET_DVR_TIME_V30 struGopTime; //GopÐÅϢʱ¼äµã + DWORD dwDuration; //ÐÅÏ¢³ÖÐøʱ¼ä + DWORD dwDataSize; //Ö¸ÕëpBuf´óС + BYTE byRes[128]; + char* pBuf;//GopÐÅÏ¢¿é +}NET_DVR_GOP_INFO_RET, *LPNET_DVR_GOP_INFO_RET; + +typedef struct tagNET_DVR_GOP_INFO_PASSBACK //ÖÇÄÜÊý¾ÝÐÅÏ¢»ØÌî +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME_V30 struTime; //¿ªÊ¼Ê±¼ä,µ±Êý¾ÝÀàÐÍΪÖÇÄÜÔªÊý¾Ýʱ£¬±íʾµÄ¿ªÊ¼Ê±¼ä£¬µ±ÎªËõÂÔͼʱ£¬±íʾµÄÊÇͼƬʱ¼ä + DWORD dwDuration; //ÐÅÏ¢³ÖÐøʱ¼ä£¬½öµ±Êý¾ÝÀàÐÍΪÖÇÄÜÔªÊý¾ÝʱÓÐЧ + DWORD dwMetaDataSize; //Êý¾ÝÔ´µÄ´óС + DWORD dwPicDataSize; //ͼƬÊý¾Ý´óС + char* pMetaDataBuffer; //ÖÇÄÜÔªÊý¾Ý»º³åÇø + char* pPicDataBuf; //ͼƬ»º³åÇø + BYTE byRes[32]; +}NET_DVR_GOP_INFO_PASSBACK, *LPNET_DVR_GOP_INFO_PASSBACK; + +typedef struct tagNET_DVR_SINGLEWALLPARAM +{ + DWORD dwSize; + BYTE byEnable; + BYTE byRes1[3]; + DWORD dwWallNum;//µçÊÓǽÊä³öºÅ + //×ø±êÐëΪ»ù×¼×ø±êµÄÕûÊý±¶£¨128¡Á128£©£¬¿í¶ÈºÍ¸ß¶ÈÖµ²»ÓÃÉèÖ㬼´Îª»ù×¼Öµ + NET_DVR_RECTCFG struRectCfg; + BYTE byRes2[36]; +}NET_DVR_SINGLEWALLPARAM, *LPNET_DVR_SINGLEWALLPARAM; + +/*´°¿ÚÐÅÏ¢*/ +typedef struct tagNET_DVR_WALLWINCFG +{ + DWORD dwSize; + BYTE byEnable; + BYTE byRes1[7]; + DWORD dwWinNum;//´°¿ÚºÅ + DWORD dwLayerIndex;//´°¿ÚÏà¶ÔÓ¦µÄͼ²ãºÅ + NET_DVR_RECTCFG struWinPosition;//Ä¿µÄ´°¿Ú(Ïà¶ÔÏÔʾǽ) + DWORD dwDeviceIndex;//·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷É豸ÐòºÅ + WORD wInputIndex;//ÊäÈëÐźÅÔ´ + BYTE byRes2[14]; +}NET_DVR_WALLWINCFG, *LPNET_DVR_WALLWINCFG; + +typedef struct tagNET_DVR_WALL_INDEX +{ + DWORD dwSize; + BYTE byWallNo; //µçÊÓǽÐòºÅ£¬´Ó1¿ªÊ¼ + BYTE bySceneNo; //³¡¾°ÐòºÅ + BYTE byRes1[2]; + DWORD dwDeviceID; //·Ö²¼Ê½×ÓÉ豸ID + DWORD dwWindowNo; //´°¿ÚÐòºÅ/ÐźÅÔ´ÐòºÅ + BYTE byRes2[32]; +}NET_DVR_WALL_INDEX, *LPNET_DVR_WALL_INDEX; + +typedef struct tagNET_DVR_WALLWINPARAM +{ + DWORD dwSize; + BYTE byTransparency; //ʹÄÜ͸Ã÷¶È£¬0-¹Ø£¬·Ç0-¿ª + BYTE byWinMode;//´°¿Ú·ÖÆÁģʽ£¬ÄÜÁ¦¼¯»ñÈ¡ + BYTE byEnableSpartan;//³©ÏÔʹÄÜ£¬0-¹Ø£¬1-¿ª + BYTE byDecResource; //Ϊ´°¿Ú·ÖÅäµÄ½âÂë×ÊÔ´£¬1-D1,2-720P,3-1080P + BYTE byWndShowMode; //´°¿ÚÏÔʾģʽ£¬0-´Ë×ֶβ»Óã¬1-×Ó´°¿Úģʽ£¬2-×Ó´°¿ÚÈ«ÆÁģʽ + BYTE byEnabledFeature; //ÊÇ·ñÆôÓó¡¾°ÌØд£¬0-²»ÆôÓã¬!0-ÆôÓà + BYTE byFeatureMode; //ÌØдģʽ£¬ÆôÓó¡¾°ÌØдʱÓÐЧ£¬0-ÎÞЧ£¬1-¡°1+5¡±Ä£Ê½ + BYTE byRes1; + DWORD dwAmplifyingSubWndNo; //È«ÆÁ×Ó´°¿ÚºÅ£¨1×Ö½ÚǽºÅ+1×Ö½Ú×Ó´°¿ÚºÅ+2×Ö½Ú´°¿ÚºÅ£© + //µ±byWndShowModeΪ2ʱÓÐЧ£¬±íʾµ±Ç°È«ÆÁÏÔʾµÄ×Ó´°¿Ú + BYTE byWndTopKeep; //´°¿ÚÖö¥±£³Ö£¬0-²»±£³Ö£¬1-±£³Ö + BYTE byWndOpenKeep; //´°¿Ú´ò¿ª±£³Ö£¬0-²»±£³Ö£¬1-±£³Ö + BYTE byRes[22]; +}NET_DVR_WALLWINPARAM, *LPNET_DVR_WALLWINPARAM; + +typedef struct tagNET_DVR_WALLSCENECFG +{ + DWORD dwSize; + BYTE sSceneName[NAME_LEN]; //³¡¾°Ãû³Æ + BYTE byEnable; //³¡¾°ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE bySceneIndex; //³¡¾°ºÅ£¬Ö»ÄÜ»ñÈ¡¡£»ñÈ¡ËùÓг¡¾°Ê±Ê¹ÓøòÎÊý + BYTE byRes [78]; +}NET_DVR_WALLSCENECFG, *LPNET_DVR_WALLSCENECFG; + +typedef struct tagNET_DVR_WALLWIN_INFO +{ + DWORD dwSize; + DWORD dwWinNum; //´°¿ÚºÅ + DWORD dwSubWinNum;//×Ó´°¿ÚºÅ + DWORD dwWallNo; //ǽºÅ + BYTE byRes[12]; +}NET_DVR_WALLWIN_INFO,*LPNET_DVR_WALLWIN_INFO; + +typedef struct tagNET_DVR_WALL_WIN_STATUS +{ + DWORD dwSize ; + BYTE byDecodeStatus; /*µ±Ç°½âÂë״̬:0:δÆô¶¯,1 :ÒÑÆô¶¯*/ + BYTE byStreamType; /*ÂëÁ÷ÀàÐÍ*/ + BYTE byPacketType; /*´ò°ü·½Ê½*/ + BYTE byFpsDecV; /*ÊÓƵ½âÂëÖ¡ÂÊ*/ + BYTE byFpsDecA; /*ÒôƵ½âÂëÖ¡ÂÊ*/ + BYTE byRes1[7]; + DWORD dwDecodedV; /*½âÂëµÄÊÓƵ֡*/ + DWORD dwDecodedA; /*½âÂëµÄÒôƵ֡*/ + WORD wImgW; /*µ±Ç°ÂëÁ÷Ô´µÄͼÏñ´óС*/ + WORD wImgH; + BYTE byStreamMode ; //ÂëÁ÷Ô´(´Ë²ÎÊý¶ÔÊÓƵ×ÛºÏƽ̨ÓÐЧ)£º1-ÍøÂ磬2-×ÛºÏƽ̨ÄÚ²¿±àÂë×Óϵͳ£¬3-ÆÁÄ»·þÎñÆ÷£¬0xff-ÎÞЧ + BYTE byRes2[31]; +}NET_DVR_WALL_WIN_STATUS, *LPNET_DVR_WALL_WIN_STATUS; + +typedef struct tagNET_DVR_WININDEX_INFO +{ + DWORD dwWinIndex; //´°¿ÚºÅ + DWORD dwSubWinIndex;//×Ó´°¿ÚºÅ + BYTE byType ;//×ÊÔ´ÀàÐÍ£¬1-½âÂ룬2-»ØÏÔ + BYTE byWallNo ; //ǽºÅ + BYTE byRes[6]; +}NET_DVR_WININDEX_INFO, *LPNET_DVR_WININDEX_INFO; + +typedef struct tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO +{ + DWORD dwSize ; + BYTE sAddress[MAX_DOMAIN_NAME];//ipµØÖ·£¬»òÊÇÓòÃû + WORD wDVRPort; /* ¶Ë¿ÚºÅ */ + WORD wChannel; /* ͨµÀºÅ */ + BYTE sUserName[NAME_LEN]; /* ¼à¿ØÖ÷»úµÇ½ÕʺŠ*/ + BYTE sPassword[PASSWD_LEN]; /* ¼à¿ØÖ÷»úÃÜÂë */ + BYTE byRes[24]; +}NET_DVR_ASSOCIATEDDEV_CHAN_INFO,*LPNET_DVR_ASSOCIATEDDEV_CHAN_INFO; + +typedef struct tagNET_DVR_WALLOUTPUTPARAM +{ + DWORD dwSize; + DWORD dwResolution; //·Ö±æÂÊ + NET_DVR_VIDEOEFFECT struRes; + BYTE byVideoFormat; //ÊÓƵÖÆʽ£¬¼ûVIDEO_STANDARD + BYTE byDisplayMode;/*Êä³öÁ¬½Óģʽ,1-BNC£¬2-VGA£¬3-HDMI£¬4-DVI£¬5-SDI, 6-FIBER, 7-RGB, 8-YPrPb, 9-VGA/HDMI/DVI×ÔÊÊÓ¦£¬0xff-ÎÞЧ*/ + BYTE byBackgroundColor; //±³¾°É«£¬0-ÎÞЧ£¬²»Ö§³Ö±³¾°É«£¬1-ºì£¬2-ÂÌ£¬3-À¶£¬4-»Æ£¬5-×Ï£¬6-Ç࣬7-ºÚ£¬8-°×£¬0xff-×Ô¶¨Òå + BYTE byUseEDIDResolution; //ÊÇ·ñʹÓÃEDID·Ö±æÂÊ£¬0-²»Ê¹Óã¬1-ʹÓà + WORD wLEDWidth; //LEDÆÁÊä³ö·Ö±æÂÊ¿í + WORD wLEDHeight; //LEDÆÁÊä³ö·Ö±æÂÊ¸ß + NET_DVR_RGB_COLOR struBackColor;//±³¾°É«£¬byBackgroundColorΪ0xffʱÓÐЧ + BYTE byLinkStatus;//Êä³ö¿ÚÁ¬½Ó״̬£¬0-ÎÞЧ,1-½ÓÈëÏÔʾÆ÷,2-δ½ÓÈëÏÔʾÆ÷ + BYTE byRes2[51]; +}NET_DVR_WALLOUTPUTPARAM, *LPNET_DVR_WALLOUTPUTPARAM; + +#define MAX_UNITEDMATRIX_NUM 8 //¼¶ÁªÖÐ×î¶àÊÓƵ×ÛºÏƽ̨ÊýÁ¿ + +typedef struct NET_DVR_SUBMATRIXSYSTEMINFO +{ + //ƽ̨ºÅ£¬0±íʾÎÞ´Ëƽ̨ + DWORD dwSequence; + BYTE sAddress[MAX_DOMAIN_NAME];//ipµØÖ·£¬»òÊÇÓòÃû + WORD wSubMatrixPort; /*×Óϵͳ¶Ë¿ÚºÅ*/ + BYTE byRes1[6]; + BYTE sUserName[NAME_LEN]; /*Óû§Ãû*/ + BYTE sPassword[PASSWD_LEN]; /*ÃÜÂë */ + BYTE byRes2[36]; +}NET_DVR_SUBMATRIXSYSTEMINFO,*LPNET_DVR_SUBMATRIXSYSTEMINFO; + +typedef struct tagNET_DVR_UNITEDMATRIXSYSTEMINFO +{ + DWORD dwSize; + //ÊÓƵ×ÛºÏƽ̨ÐÅÏ¢ + NET_DVR_SUBMATRIXSYSTEMINFO struMatrixInfo[MAX_UNITEDMATRIX_NUM]; + BYTE byRes[32]; +}NET_DVR_UNITEDMATRIXSYSTEMINFO,*LPNET_DVR_UNITEDMATRIXSYSTEMINFO; + +typedef struct tagNET_DVR_SUBSTREAM_SWITCH_CFG +{ + BYTE byAutoSwitchEnable; //×ÓÂëÁ÷×Ô¶¯Çл»£¬0 - ²»ÆôÓã¬1 - ÆôÓà + BYTE byRes1[3]; + WORD wSubWndWidth; //×Ó´°¿Ú¿í¶ÈÉ趨ֵ£¬byAutoSwitchEnableΪ1ʱÓÐЧ + WORD wSubWndHeight; //×Ó´°¿Ú¸ß¶ÈÉ趨ֵ£¬byAutoSwitchEnableΪ1ʱÓÐЧ +}NET_DVR_SUBSTREAM_SWITCH_CFG, *LPNET_DVR_SUBSTREAM_SWITCH_CFG; + +typedef struct tagNET_DVR_WALL_CFG +{ + DWORD dwSize; + BYTE byTransparency;//͸Ã÷¶È,0-100,0Ϊ²»Í¸Ã÷ + BYTE byWinStaticMode; //´°¿Ú½âÂëÍ£Ö¹ÏÔʾģʽ£¬1-ÇåÆÁ(֮ǰµÄÇåÆÁºóÊǺÚÉ«)£¬2-ÏÔʾ×îºóһ֡ͼÏñ + BYTE byStreamFailedMode; //È¡Á÷ʧ°ÜÏÔʾģʽ£¬1-¡°ÎÞÍøÂçÊÓƵÐźš±£¬2-ÏÔʾ×îºóһ֡ͼÏñ£¬3-Á¬½ÓÒì³££¬4-ÇåÆÁ + BYTE byEnabledOverlayLogo; //½âÂëÄÜÁ¦²»×ãʱÊÇ·ñµþ¼ÓLOGOÒÔÌáʾÓû§£¬0-²»µþ¼Ó£¬!0-µþ¼Ó + NET_DVR_SUBSTREAM_SWITCH_CFG struSubStreamSwitch; //×ÓÂëÁ÷Çл» + BYTE byLEDShowMode; //LED´°¿ÚÏÔʾģʽ£¬0-ÆÕͨģʽ£¬1-ƽÆÌģʽ + BYTE byLowLatencyMode; //µÍÑÓʱģʽ£¬0-ÆÕͨģʽ£¬1-µÍÑÓʱģʽ + BYTE byRes[50]; +}NET_DVR_WALL_CFG, *LPNET_DVR_WALL_CFG; + +typedef struct tagNET_DVR_LEDDISPLAYINFO +{ + DWORD dwSize; + BYTE byAddressType; //0-ʵ¼Êipv4 ipv6µØÖ· 1-ÓòÃû + BYTE byRes1[3]; + // ¿ØÖÆunionServerÊÇʹÓÃʵ¼ÊµØÖ·»¹ÊÇÓòÃû + union + { + struct + { + BYTE szDomain[MAX_DOMAIN_NAME/*64*/];//·þÎñÆ÷µØÖ·£¬ÓòÃû + BYTE byRes1[80]; + }struDomain; + struct + { + NET_DVR_IPADDR struIp;/*IPµØÖ·*/ //IPv4 IPv6µØÖ·, 144×Ö½Ú + } struAddrIP; + }unionServer; //ʹÓÃÁªºÏÌå½á¹¹£¬Í¨¹ýbyAddressType×ֶαíʾÊÇIPµØÖ·»¹ÊÇÓòÃû 64 + char szDisplayInfo[MAX_LEDDISPLAYINFO_LEN/*1024*/]; + BYTE byRes[128]; +}NET_DVR_LEDDISPLAYINFO,*LPNET_DVR_LEDDISPLAYINFO; + + +typedef struct tagNET_DVR_LOW_LIGHT_CFG +{ + DWORD dwSize; + BYTE byLowLightLimt; /* µÍÕնȵç×Ó¿ìÃÅ: 0-¹Ø£¬1-¿ª */ + BYTE byLowLightLimtLevel; + /*Çò»ú0-¹Ø£¬1-Âý¿ìÃÅ*2£¬2-Âý¿ìÃÅ*3£¬3-Âý¿ìÃÅ*4£¬4-Âý¿ìÃÅ*6£¬5-Âý¿ìÃÅ*8£¬6-Âý¿ìÃÅ*12£¬7-Âý¿ìÃÅ*16£¬ + 8-Âý¿ìÃÅ*24£¬9-Âý¿ìÃÅ*32£¬10-Âý¿ìÃÅ*48£¬11-Âý¿ìÃÅ*64£¬12-Âý¿ìÃÅ*96£¬13-Âý¿ìÃÅ*128£¬14-Âý¿ìÃÅ*256£¬ + 15-Âý¿ìÃÅ*512, 16-Âý¿ìÃÅ*1.25, 17-Âý¿ìÃÅ*1.5 */ + BYTE byRes[66]; +}NET_DVR_LOW_LIGHT_CFG, *LPNET_DVR_LOW_LIGHT_CFG; + +typedef struct tagNET_DVR_FOCUSMODE_CFG +{ + DWORD dwSize; + BYTE byFocusMode; /* ¾Û½¹Ä£Ê½£¬0-×Ô¶¯£¬1-ÊÖ¶¯£¬2-°ë×Ô¶¯ */ + BYTE byAutoFocusMode; /* ×Ô¶¯¾Û½¹Ä£Ê½£¬0-¹Ø£¬1-ģʽA£¬2-ģʽB£¬3-ģʽAB£¬4-ģʽC ×Ô¶¯¾Û½¹Ä£Ê½£¬ÐèÒªÔÚ¾Û½¹Ä£Ê½Îª×Ô¶¯Ê±²ÅÏÔʾ*/ + WORD wMinFocusDistance; /* ×îС¾Û½¹¾àÀ룬µ¥Î»CM, 0-×Ô¶¯£¬0xffff-ÎÞÇîÔ¶ */ + BYTE byZoomSpeedLevel; /* ±ä±¶Ëٶȣ¬ÎªÊµ¼ÊÈ¡Öµ£¬1-3 */ + BYTE byFocusSpeedLevel; /* ¾Û½¹Ëٶȣ¬ÎªÊµ¼ÊÈ¡Öµ£¬1-3 */ + BYTE byOpticalZoom; /* ¹âѧ±ä±¶£¬0-255 */ + BYTE byDigtitalZoom; /* Êý×ֱ䱶£¬0-255 */ + float fOpticalZoomLevel; /* ¹âѧ±ä±¶(±¶ÂÊÖµ) [1,32], ×îС¼ä¸ô0.5 £¬ÄÚ²¿É豸½»»¥µÄʱºò*1000 */ + DWORD dwFocusPos;/* dwFocusPos ÊÇfocusÖµ£¨¾Û½¹Öµ£©£¬·¶Î§Îª[0x1000,0xC000]£¬Õâ¸öÖµÊÇsony×ø±êÖµ£¬Ê¹ÓÃÕâ¸öÖµÊÇΪÁ˶ÔÍâͳһ£¬±£Ö¤²»Í¬µÄ¾µÍ·¶ÔÍâfocusÖµ¶¼×ª»»ÔÚÕâ¸ö·¶Î§ÄÚ (ÊÖ¶¯¾Û½¹Ä£Ê½ÏÂÏÂÓ¦ÓÃ)*/ + BYTE byFocusDefinitionDisplay;// ¾Û½¹ÇåÎú¶ÈÏÔʾ£¬0~²»ÏÔʾ£¬1~ÏÔʾ, ¿ªÆô»áÔÚÂëÁ÷ÉÏÏÔʾµ±Ç°¾µÍ·Ä¿±êµÄÇåÎú¶ÈÖµ£¬ÓÃÓÚ°ïÖú¿Í»§µ÷½¹Ê¹Ïà»ú×¥ÅÄÄܹ»´ïµ½×îÇåÎúµÄЧ¹û£¬¸ÃÇåÎú¶ÈÔ½´ó´ú±í×ÅÔ½ÇåÎú£¬ÇåÎú¶È·¶Î§Îª£º0~100.0000 + BYTE byFocusSensitivity; //¾Û½¹ÁéÃô¶È£¬·¶Î§[0,2]£¬¾Û½¹Ä£Ê½Îª×Ô¶¯¡¢°ë×Ô¶¯Ê±ÉúЧ + BYTE byRes1[2]; + DWORD dwRelativeFocusPos;//Ïà¶ÔfocusÖµ£¬ÆäµÍ16λ±íʾ¾Û½¹Öµ£¬0~4000£»¸ß16λ´ú±íµ±Ç°¾Û½¹Öµ»ñȡʱµÄζÈÖµ + BYTE byRes[48]; +}NET_DVR_FOCUSMODE_CFG, *LPNET_DVR_FOCUSMODE_CFG; + +typedef struct tagNET_DVR_INFRARE_CFG +{ + DWORD dwSize; + BYTE byIrControlMode; /* ºìÍâÇò»úÅäÖÃ-¿ØÖÆģʽ£º0-×Ô¶¯£¬1-ÊÖ¶¯ */ + BYTE byIrBrightness; /* ºìÍâÇò»úÅäÖÃ-ºìÍâÁÁ¶È£º0-100 */ + BYTE byIrSensitivity; /* ºìÍâÇò»úÅäÖÃ-ºìÍâµÆÁéÃô¶È£º0-100 */ + BYTE byIrTrigMode; /* ´¥·¢Ä£Ê½ 0-»úо´¥·¢£¬1-¹âÃô´¥·¢ ×Ô¶¯Ä£Ê½ÏÂÉúЧ*/ + BYTE byIrBrightnessLimit;/* ÁÁ¶ÈÏÞÖÆ Èç¹û´ËֵΪ80£¬±íʾµÄÒâÒåÊǵ±Ç°ºìÍâµÆµÄÁÁ¶ÈΪԭÏȸù¾Ý×Ô¶¯²ßÂÔ¼ÆËã³öµÄÁÁ¶ÈÖµ¡Á80% ×Ô¶¯Ä£Ê½ÏÂÉúЧ*/ + BYTE byRes[63]; +}NET_DVR_INFRARE_CFG, *LPNET_DVR_INFRARE_CFG; + +typedef struct tagNET_DVR_AEMODECFG +{ + DWORD dwSize; + int iIrisSet; /* ¹âȦ£¬ÎªÊµ¼ÊÈ¡Öµ*100µÄÖµ£¬0-¹Ø */ + int iGainSet; /* ¿ìÇòÔöÒ棬Æعⲹ³¥£¬ÎªÊµ¼ÊÈ¡Öµ*100µÄÖµ£¬ÓпÉÄÜÊǸºÖµ */ + int iGainLimit;/* ÔöÒæÏÞÖÆ£¬Æعⲹ³¥£¬ÎªÊµ¼ÊÈ¡Öµ*100µÄÖµ£¬ÓпÉÄÜÊǸºÖµ */ + int iExposureCompensate; /* Æعⲹ³¥£¬ÎªÊµ¼ÊÈ¡Öµ*100µÄÖµ£¬±ÈÈç1050´ú±í10.5dB, -750´ú±í-7.5dB */ + BYTE byExposureModeSet; /* Çò»úµÄÆعâģʽ,0-ÊÖ¶¯Ä£Ê½£¬1-×Ô¶¯Æع⣬2-¹âȦÓÅÏÈ£¬3-¿ìÃÅÓÅÏÈ£¬4-ÔöÒæÓÅÏÈ */ + BYTE byShutterSet; /* ¿ìÃÅ£¬0-¹Ø£¬1-×Ô¶¯x1£¬2-×Ô¶¯x2£¬3-×Ô¶¯x4£¬4-×Ô¶¯x8£¬5-×Ô¶¯x16£¬6-×Ô¶¯x32£¬7-×Ô¶¯x64£¬8-×Ô¶¯x128£¬9-1/1£¬10-1/2£¬ + 11-1/3£¬12-1/4£¬13-1/6£¬14-1/8£¬15-1/12£¬16-1/15£¬17-1/25£¬18-1/30£¬19-1/50£¬20-1/60£¬21-1/75£¬ + 22-1/90£¬23-1/100£¬24-1/120£¬25-1/125£¬26-1/150£¬27-1/180£¬28-1/200£¬29-1/215£¬30-1/250£¬31-1/300£¬ + 32-1/350£¬33-1/425£¬34-1/500£¬35-1/600£¬36-1/725£¬37-1/1000£¬38-1/1250£¬39-1500,40-1/1750£¬41-1/2000£¬ + 42-1/2500£¬43-3000,44-1/3500£¬45-1/4000£¬46-1/6000£¬47-1/10000£¬48-1/30000£¬49-1/100000,50-1/175£¬ + 51-1/195£¬52-1/225£¬53-1/230 */ + BYTE byImageStabilizeLevel; /* ·À¶¶¶¯µÈ¼¶: 0-3 */ + BYTE byCameraIrCorrect; /* ºìÍâУÕý: 0-×Ô¶¯£¬1-¿ª£¬2,¹Ø */ + BYTE byHighSensitivity; /* ¸ßÁéÃô¶ÈÉèÖÃ: 0-¹Ø£¬1-¿ª */ + BYTE byInitializeLens; /* ³õʼ»¯¾µÍ·: 0-¹Ø£¬1-¿ª */ + BYTE byChromaSuppress; /* É«²ÊÒÖÖÆ :0-255*/ + BYTE byMaxShutterSet; //×î´ó¿ìÃÅÖµ;Ë÷ÒýÖµÓëbyShutterSetÏàͬ(ÔÚ×Ô¶¯Æع⡢¹âȦÓÅÏÈģʽÏÂÉúЧ) + BYTE byMinShutterSet; //×îС¿ìÃÅÖµ;Ë÷ÒýÖµÓëbyShutterSetÏàͬ(ÔÚ×Ô¶¯Æع⡢¹âȦÓÅÏÈģʽÏÂÉúЧ) + BYTE byMaxIrisSet; //×î´ó¹âȦÏÞÖÆÖµ(×Ô¶¯Æع⡢¿ìÃÅÓÅÏÈģʽ) [0,100] ; + BYTE byMinIrisSet; //×îС¹âȦÏÞÖÆÖµ(×Ô¶¯Æع⡢¿ìÃÅÓÅÏÈģʽ) [0,100] ; + BYTE byExposureLevel;//ÆعâµÈ¼¶£¨ÆعâģʽΪ×Ô¶¯¡¢¹âȦÓÅÏÈ¡¢¿ìÃÅÓÅÏÈÇé¿öÓÐЧ£©£¬µÈ¼¶1-5 ĬÈÏ4£¬¼æÈÝÀÏ°æ±¾SDKÅäÖÃÐÂÉ豸ʱ£¬±£Áô×Ö½ÚΪ0µÄÇé¿ö£¬ËùÒÔÕâ¸ö×Ö½ÚΪ0ʱ£¬Ò²Ä¬ÈÏΪÆعâµÈ¼¶Îª1 + BYTE byRes[60]; +}NET_DVR_AEMODECFG, *LPNET_DVR_AEMODECFG; + +typedef struct tagNET_DVR_FLASH_CFG +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ + DWORD dwInNumbers;//½øÈëÈËÊý + DWORD dwOutNumbers;//À뿪ÈËÊý + DWORD dwStartTime;//¿ªÊ¼Ê±¼äÃëÊý + DWORD dwEndTime;//½áÊøʱ¼äÃëÊý + DWORD dwEhomeFlag;// + DWORD dwAlarmFlag;// + BYTE byRes[1024]; +}NET_DVR_FLASH_CFG, *LPNET_DVR_FLASH_CFG; + +typedef struct tagNET_DVR_EXTERNAL_MATRIX_CFG +{ + DWORD dwSize; + BYTE byValid; // ÓÐЧʱΪÉèÖã¬ÎÞЧʱΪɾ³ý + BYTE byRes1[3]; + BYTE sMatrixName[NAME_LEN/*32*/]; // ¾ØÕóµÄÃû³Æ + DWORD dwMatrixID; // ¾ØÕóµÄIDºÅ£¬Ö»ÄÜ»ñÈ¡ + WORD wMatrixInputChanNum; // ¾ØÕóµÄÊäÈëͨµÀÊýÄ¿ + WORD wMatrixOutputChanNum; // ¾ØÕóµÄÊä³öͨµÀÊýÄ¿ + WORD wMatrixOutputChanRef[MAX_CAM_COUNT]; //// É豸ÊäÈëºÍ¾ØÕóÊä³öµÄ°ó¶¨¹Øϵ£¬Êý×éϱê±íʾ¿ØÖÆÆ÷É豸ÊäÈëͨµÀºÅ£¬ÔªËصÄÖµ±íʾ¾ØÕóµÄÊä³öͨµÀºÅ£¬ + //ÔªËØÖµ´óÓÚ0 ±íʾ°ó¶¨¾ØÕóÊä³öͨµÀ£¬ÔªËØֵΪ0ʱ±íʾ²»°ó¶¨£¬ÆÁÄ»·þÎñÆ÷ΪÆÁÄ»Ë÷ÒýºÅºÍ¾ØÕóÊä³öµÄ°ó¶¨¹Øϵ + BYTE byMatrixChanType;// ¾ØÕóµÄͨµÀÀàÐÍ1-BNC¡¢2-VGA¡¢3-RGB¡¢4-DVI + BYTE byMatrixProtocol; // ¾ØÕóËùÓÃЭÒé1¡¢ZT1.0¡¢2.ZT2.0¡¢3.Extron¡¢4.Creator + BYTE byMatrixType; //1-Ä£Äâ¾ØÕó£¬2-Êý×Ö¾ØÕó + BYTE byRes2; + NET_MATRIX_UNION struMatrixUnion; + BYTE byRes3[128]; +}NET_DVR_EXTERNAL_MATRIX_CFG, *LPNET_DVR_EXTERNAL_MATRIX_CFG; + +typedef struct tagNET_DVR_EXTERNAL_MATRIX_CFG_V50 +{ + DWORD dwSize; + BYTE byValid; // ÓÐЧʱΪÉèÖã¬ÎÞЧʱΪɾ³ý + BYTE byRes1[3]; + BYTE sMatrixName[NAME_LEN/*32*/]; // ¾ØÕóµÄÃû³Æ + DWORD dwMatrixID; // ¾ØÕóµÄIDºÅ£¬Ö»ÄÜ»ñÈ¡ + WORD wMatrixInputChanNum; // ¾ØÕóµÄÊäÈëͨµÀÊýÄ¿ + WORD wMatrixOutputChanNum; // ¾ØÕóµÄÊä³öͨµÀÊýÄ¿ + WORD wMatrixOutputChanRef[MAX_CAM_COUNT_V50]; //// É豸ÊäÈëºÍ¾ØÕóÊä³öµÄ°ó¶¨¹Øϵ£¬Êý×éϱê±íʾ¿ØÖÆÆ÷É豸ÊäÈëͨµÀºÅ£¬ÔªËصÄÖµ±íʾ¾ØÕóµÄÊä³öͨµÀºÅ£¬ + //ÔªËØÖµ´óÓÚ0 ±íʾ°ó¶¨¾ØÕóÊä³öͨµÀ£¬ÔªËØֵΪ0ʱ±íʾ²»°ó¶¨£¬ÆÁÄ»·þÎñÆ÷ΪÆÁÄ»Ë÷ÒýºÅºÍ¾ØÕóÊä³öµÄ°ó¶¨¹Øϵ + BYTE byMatrixChanType;// ¾ØÕóµÄͨµÀÀàÐÍ1-BNC¡¢2-VGA¡¢3-RGB¡¢4-DVI + BYTE byMatrixProtocol; // ¾ØÕóËùÓÃЭÒé1¡¢ZT1.0¡¢2.ZT2.0¡¢3.Extron¡¢4.Creator + BYTE byMatrixType; //1-Ä£Äâ¾ØÕó£¬2-Êý×Ö¾ØÕó + BYTE byRes2; + NET_MATRIX_UNION struMatrixUnion; + BYTE byRes3[128]; +}NET_DVR_EXTERNAL_MATRIX_CFG_V50, *LPNET_DVR_EXTERNAL_MATRIX_CFG_V50; + + +#define MAX_INPUTNUMS 1024 +#define MAX_OUTPUTNUMS 256 +typedef struct tagNET_DVR_ASSOCIATE_INPUT_PARAM +{ + BYTE byEnable; + BYTE byRes1[3]; + DWORD dwDeviceIndex;//·Ö²¼Ê½´óÆÁ¿ØÖÆÆ÷É豸ÐòºÅ + WORD wInputIndex;//ÊäÈëÐźÅÔ´ + BYTE byRes2[18]; +}NET_DVR_ASSOCIATE_INPUT_PARAM, *LPNET_DVR_ASSOCIATE_INPUT_PARAM; + +typedef struct tagNET_DVR_ASSOCIATE_OUTPUT_PARAM +{ + BYTE byEnable; + BYTE byWallNo; //ǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes1[2]; + DWORD dwOutputIndex; //Êä³öÏÔʾÆÁµÄÐòºÅ + BYTE byRes2[20]; +}NET_DVR_ASSOCIATE_OUTPUT_PARAM,*LPNET_DVR_ASSOCIATE_OUTPUT_PARAM; + +typedef struct tagNET_DVR_VCS_USER_INFO +{ + DWORD dwSize; + BYTE sUserName[NAME_LEN]; // Óû§Ãû£¬×î´ó16×Ö½Ú + BYTE sPassWord[PASSWD_LEN]; // ÃÜÂë + NET_DVR_IPADDR struUserIP; // Óû§IPµØÖ·(Ϊ0ʱ±íʾÔÊÐíÈκεØÖ·) + BYTE byMacAddr[MACADDR_LEN]; // ÎïÀíµØÖ· + BYTE byPriority; // ÓÅÏȼ¶£¬1-¹ÜÀíÔ±£¬2-²Ù×÷Ô± £¬¹ÜÀíÔ±¾ßÓÐÈκÎȨÏÞ£¬²Ù×÷ԱûÓÐ"¹ÜÀíÓû§"µÄȨÏÞ + BYTE byRes1; + DWORD dwRight;/*Ô¶³Ì²Ù×÷ȨÏÞ£¬°´Î»±íʾ£¬0-²»Ö§³Ö£¬1-Ö§³Ö£¬¸÷32λ´ú±íµÄȨÏÞÀàÐÍ*/ + //bit0-»ñÈ¡ÉèÖûù±¾²ÎÊý + //bit1-ÏÔʾÆÁ¹ÜÀí + //bit2-´°¿Ú¹ÜÀí + //bit3-ÐźÅÔ´¹ÜÀí + //bit4-²¼¾Ö¹ÜÀí + //bit5-Ô¤°¸¹ÜÀí + //bit6-µ×ͼ¹ÜÀí + //bit7-OSD¹ÜÀí + //bit8-»ØÏÔȨÏÞ + //bit9-±¨¾¯²¼·À + //bit10-Ô¶³ÌÉý¼¶ + //bit11-»Ö¸´Ä¬ÈÏÉèÖà + //bit12-µ¼Èëµ¼³öÅäÖÃÅäÖÃÎļþ + //bit13-ÈÕÖ¾²éѯ + //bit14-Ô¶³ÌÖØÆô + //bit15-ÆÁÄ»ÇøÓò¹ÜÀí + NET_DVR_ASSOCIATE_INPUT_PARAM struInputParam[MAX_INPUTNUMS/*1024*/]; + NET_DVR_ASSOCIATE_OUTPUT_PARAM struOutputParam[MAX_OUTPUTNUMS/*256*/]; + NET_DVR_RECTCFG_EX struManageRegion; //ÆÁÄ»¹ÜÀíÇøÓò + BYTE byWallNo; //¿ªÆôÆÁÄ»¹ÜÀíÇøÓòµÄǽºÅ£¬¶ÔÖ»Ö§³Öµ¥Ç½µÄÉ豸£¬´Ë×Ö¶ÎÎÞЧ + BYTE byRes2[3]; + BYTE sLoginPassword[PASSWD_LEN/*16*/]; /* µÇ½ÃÜÂë*/ + BYTE byRes[88];} NET_DVR_VCS_USER_INFO, *LPNET_DVR_VCS_USER_INFO; + +typedef struct tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41 +{ + BYTE byValid; //ÊÇ·ñÆôÓã¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + BYTE byAddress[MAX_DOMAIN_NAME]; //IP»òÕßÓòÃû + WORD wDevPort; /*Á÷ýÌå·þÎñÆ÷¶Ë¿Ú*/ + BYTE byTransmitType; /*´«ÊäЭÒéÀàÐÍ 0-TCP£¬1-UDP*/ + BYTE byRes2[69]; +}NET_DVR_STREAM_MEDIA_SERVER_CFG_V41,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG_V41; + +//É豸ͨµÀÐÅÏ¢ +typedef struct tagNET_DVR_DEV_CHAN_INFO_V41 +{ + BYTE byAddress[MAX_DOMAIN_NAME]; //É豸ÓòÃû + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byChannel; //ͨµÀºÅ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byFactoryType; /*Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡*/ + BYTE byDeviceType; //É豸ÀàÐÍ(ÊÓƵ×ÛºÏƽ̨ÖÇÄÜ°åʹÓÃ)£¬1-½âÂëÆ÷£¨´Ëʱ¸ù¾ÝÊÓƵ×ÛºÏƽ̨ÄÜÁ¦¼¯ÖÐbyVcaSupportChanMode×Ö¶ÎÀ´¾ö¶¨ÊÇʹÓýâÂëͨµÀ»¹ÊÇÏÔʾͨµÀ£©£¬2-±àÂëÆ÷ + BYTE byDispChan;//ÏÔʾͨµÀºÅ,ÖÇÄÜÅäÖÃʹÓà + BYTE bySubDispChan;//ÏÔʾͨµÀ×ÓͨµÀºÅ£¬ÖÇÄÜÅäÖÃʱʹÓà + BYTE byResolution; //; 1-CIF 2-4CIF 3-720P 4-1080P 5-500w´óÆÁ¿ØÖÆÆ÷ʹÓ㬴óÆÁ¿ØÖÆÆ÷»á¸ù¾Ý¸Ã²ÎÊý·ÖÅä½âÂë×ÊÔ´ + BYTE byUseZeroChan; //ÊÇ·ñʹÓÃÁãͨµÀ£¬0-·ñ£¬1-ÊÇ + BYTE byRes; + BYTE sUserName[NAME_LEN]; //¼à¿ØÖ÷»úµÇ½ÕʺŠ+ BYTE sPassword[PASSWD_LEN]; //¼à¿ØÖ÷»úÃÜÂë +}NET_DVR_DEV_CHAN_INFO_V41,*LPNET_DVR_DEV_CHAN_INFO_V41; + +typedef struct tagNET_DVR_DEV_CHAN_INFO_EX +{ + BYTE byChanType; //ͨµÀÀàÐÍ£¬0-ÆÕͨͨµÀ,1-ÁãͨµÀ,2-Á÷ID£¬3-±¾µØÊäÈëÔ´£¬4-ÐéÄâÆÁ·þÎñÆ÷ͨµÀ£¬5-Æ´½ÓͨµÀ£¬6-ÆÁÄ»·þÎñÆ÷£¬7-·Ö²¼Ê½ÍøÂçÔ´£¬8-¶àÏà»úÈÚºÏͨµÀ£¬9-ÍøÂçÊäÈëÔ´ + BYTE byStreamId[STREAM_ID_LEN]; //Á÷ID£¬µ±byChanType=2¡¢9ʱ£¬¸Ã×Ö¶ÎÓÃÓÚÖ¸¶¨Á÷»òÕßÍøÂçipcµÄIDºÅ + BYTE byRes1[3]; + DWORD dwChannel; //ͨµÀºÅ£¬Í¨µÀÀàÐÍΪÆÕͨͨµÀ£¬ÁãͨµÀ£¬±¾µØÊäÈëÔ´£¬ÐéÄâÆÁ·þÎñÆ÷ͨµÀ£¬Æ´½ÓͨµÀ£¬ÆÁÄ»·þÎñÆ÷£¬·Ö²¼Ê½ÍøÂçԴʱÌî´Ë×ֶΠ+ BYTE byRes2[24]; + BYTE byAddress[MAX_DOMAIN_NAME]; //É豸ÓòÃû + WORD wDVRPort; //¶Ë¿ÚºÅ + BYTE byChannel; //ͨµÀºÅ,dwChannel²»Îª0ʱ´Ë×Ö¶ÎÎÞЧ + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byFactoryType; /*Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡*/ + BYTE byDeviceType; //É豸ÀàÐÍ(ÊÓƵ×ÛºÏƽ̨ÖÇÄÜ°åʹÓÃ)£¬1-½âÂëÆ÷£¨´Ëʱ¸ù¾ÝÊÓƵ×ÛºÏƽ̨ÄÜÁ¦¼¯ÖÐbyVcaSupportChanMode×Ö¶ÎÀ´¾ö¶¨ÊÇʹÓýâÂëͨµÀ»¹ÊÇÏÔʾͨµÀ£©£¬2-±àÂëÆ÷ + BYTE byDispChan;//ÏÔʾͨµÀºÅ,ÖÇÄÜÅäÖÃʹÓà + BYTE bySubDispChan;//ÏÔʾͨµÀ×ÓͨµÀºÅ£¬ÖÇÄÜÅäÖÃʱʹÓà + BYTE byResolution; //; 1-CIF 2-4CIF 3-720P 4-1080P 5-500w´óÆÁ¿ØÖÆÆ÷ʹÓ㬴óÆÁ¿ØÖÆÆ÷»á¸ù¾Ý¸Ã²ÎÊý·ÖÅä½âÂë×ÊÔ´ + BYTE byRes[2]; + BYTE sUserName[NAME_LEN]; //¼à¿ØÖ÷»úµÇ½ÕʺŠ+ BYTE sPassword[PASSWD_LEN]; //¼à¿ØÖ÷»úÃÜÂë +}NET_DVR_DEV_CHAN_INFO_EX,*LPNET_DVR_DEV_CHAN_INFO_EX; + +typedef struct tagNET_DVR_STREAM_MEDIA_SERVER +{ + BYTE byValid; //ÊÇ·ñÆôÓã¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + BYTE byAddress[MAX_DOMAIN_NAME]; //IP»òÕßÓòÃû + WORD wDevPort; /*Á÷ýÌå·þÎñÆ÷¶Ë¿Ú*/ + BYTE byTransmitType; /*´«ÊäЭÒéÀàÐÍ 0-TCP£¬1-UDP*/ + BYTE byRes2[5]; +}NET_DVR_STREAM_MEDIA_SERVER,*LPNET_DVR_STREAM_MEDIA_SERVER; + +typedef struct tagNET_DVR_DEV_DDNS_INFO +{ + BYTE byDevAddress[MAX_DOMAIN_NAME]; //ÓòÃû(IPServer»òhiDDNSʱ¿ÉÌîÐòÁкŻòÕß±ðÃû) + BYTE byTransProtocol; //´«ÊäЭÒéÀàÐÍ0-TCP£¬1-UDP, 2-MCAST + BYTE byTransMode; //´«ÊäÂëÁ÷ģʽ 0£­Ö÷ÂëÁ÷ 1£­×ÓÂëÁ÷ + BYTE byDdnsType; //ÓòÃû·þÎñÆ÷ÀàÐÍ£¬0-IPServer 1£­Dyndns 2£­PeanutHull(»¨Éú¿Ç)£¬3- NO-IP, 4- hiDDNS + BYTE byRes1; + BYTE byDdnsAddress[MAX_DOMAIN_NAME]; //DDNS·þÎñÆ÷µØÖ· + WORD wDdnsPort; //DDNS·þÎñÆ÷¶Ë¿ÚºÅ + BYTE byChanType; //0-ÆÕͨͨµÀ,1-ÁãͨµÀ,2-Á÷ID + BYTE byFactoryType; //Ç°¶ËÉ豸³§¼ÒÀàÐÍ,ͨ¹ý½Ó¿Ú»ñÈ¡ + DWORD dwChannel; //ͨµÀºÅ + BYTE byStreamId[STREAM_ID_LEN]; //Á÷ID + BYTE sUserName[NAME_LEN]; //¼à¿ØÖ÷»úµÇ½ÕʺŠ+ BYTE sPassword[PASSWD_LEN]; //¼à¿ØÖ÷»úÃÜÂë + WORD wDevPort; //Ç°¶ËÉ豸ͨÐÅ¶Ë¿Ú + BYTE byRes2[2]; +}NET_DVR_DEV_DDNS_INFO,*LPNET_DVR_DEV_DDNS_INFO; + +typedef struct tagNET_DVR_DEC_STREAM_DEV_EX +{ + NET_DVR_STREAM_MEDIA_SERVER struStreamMediaSvrCfg; + NET_DVR_DEV_CHAN_INFO_EX struDevChanInfo; +}NET_DVR_DEC_STREAM_DEV_EX,*LPNET_DVR_DEC_STREAM_DEV_EX; + + +//DDNS·½Ê½È¡Á÷ +typedef struct tagNET_DVR_DEC_DDNS_DEV +{ + NET_DVR_DEV_DDNS_INFO struDdnsInfo; + NET_DVR_STREAM_MEDIA_SERVER struMediaServer; +}NET_DVR_DEC_DDNS_DEV,*LPNET_DVR_DEC_DDNS_DEV; + +typedef union tagNET_DVR_DEC_STREAM_MODE +{ + NET_DVR_DEC_STREAM_DEV_EX struDecStreamDev; + NET_DVR_PU_STREAM_URL struUrlInfo; + NET_DVR_DEC_DDNS_DEV struDdnsDecInfo; + BYTE byRes[300]; +}NET_DVR_DEC_STREAM_MODE,*LPNET_DVR_DEC_STREAM_MODE; + +typedef struct tagNET_DVR_PU_STREAM_CFG_V41 +{ + DWORD dwSize; + BYTE byStreamMode;/*È¡Á÷ģʽ£¬0-ÎÞЧ£¬1-ͨ¹ýIP»òÓòÃûÈ¡Á÷£¬2-ͨ¹ýURLÈ¡Á÷,3-ͨ¹ý¶¯Ì¬ÓòÃû½âÎöÏòÉ豸ȡÁ÷*/ + BYTE byStreamEncrypt; //ÊÇ·ñ½øÐÐÂëÁ÷¼ÓÃÜ´¦Àí,0-²»Ö§³Ö,1-Ö§³Ö + BYTE byRes1[2]; + NET_DVR_DEC_STREAM_MODE uDecStreamMode;//È¡Á÷ÐÅÏ¢ + DWORD dwDecDelayTime;//½âÂëÑÓʱʱ¼ä£¬µ¥Î»£ººÁÃë + BYTE sStreamPassword[STREAM_PASSWD_LEN]; //ÂëÁ÷¼ÓÃÜÃÜÂë,ÐèÃô¸ÐÐÅÏ¢¼ÓÃÜ + BYTE byRes2[48]; +}NET_DVR_PU_STREAM_CFG_V41,*LPNET_DVR_PU_STREAM_CFG_V41; + +typedef struct tagNET_DVR_MATRIX_CHAN_INFO_V41 +{ + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-·ñ£¬1-ÊÇ + BYTE byStreamMode;/*È¡Á÷ģʽ£¬0-ÎÞЧ£¬1-ͨ¹ýIP»òÓòÃûÈ¡Á÷£¬2-ͨ¹ýURLÈ¡Á÷,3-ͨ¹ý¶¯Ì¬ÓòÃû½âÎöÏòÉ豸ȡÁ÷*/ + BYTE byRes[2]; + NET_DVR_DEC_STREAM_MODE uDecStreamMode;//È¡Á÷ÐÅÏ¢ +}NET_DVR_MATRIX_CHAN_INFO_V41,*LPNET_DVR_MATRIX_CHAN_INFO_V41; + +typedef struct tagNET_DVR_MATRIX_LOOP_DECINFO_V41 +{ + DWORD dwSize; + DWORD dwPoolTime; /*ÂÖѲ¼ä¸ô*/ + NET_DVR_MATRIX_CHAN_INFO_V41 struchanConInfo[MAX_CYCLE_CHAN_V30]; + BYTE byStreamEncrypt; //ÊÇ·ñ½øÐÐÂëÁ÷¼ÓÃÜ´¦Àí,0-²»Ö§³Ö,1-Ö§³Ö + BYTE byRes[3]; + BYTE sStreamPassword[STREAM_PASSWD_LEN]; //ÂëÁ÷¼ÓÃÜÃÜÂë,ÐèÃô¸ÐÐÅÏ¢¼ÓÃÜ +}NET_DVR_MATRIX_LOOP_DECINFO_V41, *LPNET_DVR_MATRIX_LOOP_DECINFO_V41; + +typedef struct tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41 +{ + DWORD dwSize; + BYTE byStreamMode;/*È¡Á÷ģʽ£¬0-ÎÞЧ£¬1-ͨ¹ýIP»òÓòÃûÈ¡Á÷£¬2-ͨ¹ýURLÈ¡Á÷,3-ͨ¹ý¶¯Ì¬ÓòÃû½âÎöÏòÉ豸ȡÁ÷*/ + BYTE byRes1[3]; + NET_DVR_DEC_STREAM_MODE uDecStreamMode;//È¡Á÷ÐÅÏ¢ + DWORD dwPlayMode; /* 0-¶¯Ì¬½âÂë 1£­Ñ­»·½âÂë 2£­°´Ê±¼ä»Ø·Å 3£­°´Îļþ»Ø·Å */ + NET_DVR_TIME StartTime; /* °´Ê±¼ä»Ø·Å¿ªÊ¼Ê±¼ä */ + NET_DVR_TIME StopTime; /* °´Ê±¼ä»Ø·Åֹͣʱ¼ä */ + BYTE sFileName[128]; /* °´Îļþ»Ø·ÅÎļþÃû */ + DWORD dwGetStreamMode; /*È¡Á÷ģʽ:1-Ö÷¶¯£¬2-±»¶¯*/ + NET_DVR_MATRIX_PASSIVEMODE struPassiveMode; + BYTE byRes2[32]; +}NET_DVR_MATRIX_DEC_CHAN_INFO_V41,*LPNET_DVR_MATRIX_DEC_CHAN_INFO_V41; + +typedef struct tagNet_DVR_IP_ADDRESS +{ + BYTE byDevAddress[MAX_DOMAIN_NAME]; /*É豸IPµØÖ·*/ + WORD wDevPort; //É豸¶Ë¿Ú + BYTE byres[134]; +}NET_DVR_IP_ADDRESS, *LPNET_DVR_IP_ADDRESS; + +typedef struct tagNet_DVR_DDNS_ADDRESS +{ + BYTE byDevAddress[MAX_DOMAIN_NAME]; /*DDNSÓòÃû*/ + BYTE byDevDdns[MAX_DOMAIN_NAME]; /*É豸µØÖ·*/ + BYTE byDdnsType; //ÓòÃû·þÎñÆ÷ÀàÐÍ£¬0-IPServer 1£­Dyndns 2£­PeanutHull(»¨Éú¿Ç)£¬//3- NO-IP, 4- hiDDNS + BYTE byRes1[3]; + WORD wDevPort; //É豸¶Ë¿Ú + WORD wDdnsPort; //ÓòÃû·þÎñÆ÷¶Ë¿Ú + BYTE byres[64]; +}NET_DVR_DDNS_ADDRESS, *LPNET_DVR_DDNS_ADDRESS; + +typedef struct tagNet_DVR_PLAY_BACK_BY_TIME +{ + NET_DVR_TIME StartTime; + NET_DVR_TIME StopTime; +}NET_DVR_PLAY_BACK_BY_TIME, *LPNET_DVR_PLAY_BACK_BY_TIME; + +typedef struct tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX +{ + DWORD dwSize; + DWORD dwDecChannel; //½âÂëͨµÀºÅ + BYTE byAddressType; //É豸µØÖ·ÀàÐÍ£¬0-IP£¬1-DDNS + BYTE byChannelType; //ͨµÀÀàÐÍ£¬0-ÆÕͨͨµÀ£¬1-ÁãͨµÀ£¬2-Á÷ID + BYTE byres[2]; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + DWORD dwChannel; /* É豸ͨµÀºÅ */ + BYTE byStreamId[STREAM_ID_LEN]; //Á÷ID,´Ë²ÎÊýÔÚͨµÀÀàÐÍΪÁ÷IDʱÓÐЧ + DWORD dwPlayMode; /* 0£­°´Îļþ 1£­°´Ê±¼ä*/ + union + { + BYTE byRes[200]; + NET_DVR_IP_ADDRESS struIpAddr; + NET_DVR_DDNS_ADDRESS struDdnsAddr; + }unionAddr; + + union + { + BYTE byRes[128]; + NET_DVR_PLAY_BACK_BY_TIME struPlayBackByTime; //°´Ê±¼ä»Ø·ÅʱÎļþÐÅÏ¢ + char sFileName[128]; //°´ÎļþÃû»Ø·ÅʱÎļþÐÅÏ¢ + }unionPlayBackInfo; +}NET_DVR_MATRIX_DEC_REMOTE_PLAY_EX, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_EX; + +typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50 +{ + DWORD dwSize; + DWORD dwDecChannel; //½âÂëͨµÀºÅ + BYTE byAddressType; //É豸µØÖ·ÀàÐÍ£¬0-IP£¬1-DDNS£¬2-URL + BYTE byChannelType; //ͨµÀÀàÐÍ£¬0-ÆÕͨͨµÀ£¬1-ÁãͨµÀ£¬2-Á÷ID + BYTE byStreamEncrypt; //ÊÇ·ñ½øÐÐÂëÁ÷¼ÓÃÜ´¦Àí,0-²»Ö§³Ö,1-Ö§³Ö + BYTE byRes1[1]; + BYTE sUserName[NAME_LEN]; /* Óû§Ãû */ + BYTE sPassword[PASSWD_LEN]; /* ÃÜÂë */ + DWORD dwChannel; /* É豸ͨµÀºÅ */ + BYTE byStreamId[STREAM_ID_LEN]; //Á÷ID,´Ë²ÎÊýÔÚͨµÀÀàÐÍΪÁ÷IDʱÓÐЧ + DWORD dwPlayMode; /* 0£­°´Îļþ 1£­°´Ê±¼ä*/ + union + { + BYTE byRes[200]; + NET_DVR_IP_ADDRESS struIpAddr; //IPµØÖ·£¬byAddressTypeΪ0ʱÓÐЧ + NET_DVR_DDNS_ADDRESS struDdnsAddr; //DDNSµØÖ·£¬byAddressTypeΪ1ʱÓÐЧ + }unionAddr; + union + { + BYTE byRes[128]; + NET_DVR_PLAY_BACK_BY_TIME struPlayBackByTime; //°´Ê±¼ä»Ø·ÅʱÎļþÐÅÏ¢ + BYTE sFileName[128]; //°´ÎļþÃû»Ø·ÅʱÎļþÐÅÏ¢ + }unionPlayBackInfo; + NET_DVR_PU_STREAM_URL struURL; //È¡Á÷URL£¬byAddressTypeΪ2ʱÓÐЧ + BYTE sStreamPassword[STREAM_PASSWD_LEN]; //ÂëÁ÷¼ÓÃÜÃÜÂë,ÐèÃô¸ÐÐÅÏ¢¼ÓÃÜ + BYTE byRes2[116]; +}NET_DVR_MATRIX_DEC_REMOTE_PLAY_V50, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50; + +typedef struct tagNET_DVR_DISPLAY_EFFECT_CFG +{ + DWORD dwSize; + NET_DVR_COLOR struColor; //ÏÔʾÏà¹Ø²ÎÊý/ + BYTE byRes[32]; +}NET_DVR_DISPLAY_EFFECT_CFG,*LPNET_DVR_DISPLAY_EFFECT_CFG; + +//»ñÈ¡¸ÉÏß״̬ +typedef struct tagNET_DVR_TRUNK_USE_STATE +{ + DWORD dwSize; + DWORD dwTrunkID; //¸ÉÏßID + WORD wReserveUserID; //Ô¤ÁôµÄÓû§ID£º 1~256 £¬0±íʾÊÍ·ÅÔ¤Áô + BYTE byStatus; //1-¿ÕÏУ¬2-Õ¼Óã¬3-¸´Óà */ + BYTE byRes1; + BYTE byUserId[256]; //Êý×éϱê±íʾÓû§IDºÅ£¬Êý×éÔªËصÄÖµ±íʾÊÇ·ñʹÓøÉÏß¡£È磺byUserID[0] µÄֵΪ1£¬±íʾÓû§IDΪ0µÄÓû§ÕýÔÚʹÓã¬byUserID[0] µÄֵΪ0±íʾÓû§IDΪ0µÄÓû§Ã»ÓÐʹÓÃÕâÌõ¸ÉÏß + BYTE byRes2[64]; +}NET_DVR_TRUNK_USE_STATE, *LPNET_DVR_TRUNK_USE_STATE; + + +//PTZ¿ØÖƲÎÊý +typedef struct tagNET_DVR_PTZ_CTRL_INFO +{ + DWORD dwSize; + DWORD dwCtrlDelayTime; //PTZ¿ØÖƳÖÐøʱ¼ä£¬Ö¸PTZ¿ØÖƺóÔÚdwCtrlDelayTimeʱ¼äÄÚ£¬ÆäËûͬ¼¶±ð»òµÍ¼¶±ðÓû§¶ÔÆä²Ù×÷ÎÞЧ¡£µ¥Î»£ºÃë + BYTE byRes[64]; +}NET_DVR_PTZ_CTRL_INFO, *LPNET_DVR_PTZ_CTRL_INFO; + +//ÏÔʾ·¾¶ +#define MAX_MATRIX_CASCADE 32 +typedef struct tagNET_DVR_MATRIX_ROUTE_INFO +{ + DWORD dwSize; + DWORD dwCamNo; + DWORD dwMonNo; + DWORD dwSubWin; + DWORD dwUserId; + DWORD dwTrunkId[MAX_MATRIX_CASCADE/*32*/];//trunkId³ÉÔ±¶ÔÓ¦¼¶Áª¼¶Êý´Ó1µ½32£¬´ÓCAM¶Ë¿ªÊ¼£¬trunkId[0]±íʾµÚÒ»¼¶¼¶Áª£¬trunkId[1]±íʾµÚ¶þ¼¶¼¶Áª, trunkId[i] = 0 ±íʾÎÞ¸ÉÏß + BYTE byRes[64]; /* Ô¤Áô */ +}NET_DVR_MATRIX_ROUTE_INFO, *LPNET_DVR_MATRIX_ROUTE_INFO; + + +//»ñÈ¡PTZ״̬ +typedef struct tagNET_DVR_PTZ_STATUS +{ + DWORD dwSize; + DWORD dwUserID; //1~256£¬0 ±íʾÎÞÓû§ + DWORD dwStatus; // PTZ¿ØÖÆ״̬0-Í£Ö¹¡¢1-ÔËÐÐ + DWORD dwRestTime; //Ê£Óàʱ¼ä + BYTE byRes[64]; +}NET_DVR_PTZ_STATUS, *LPNET_DVR_PTZ_STATUS; + +typedef struct tagNET_DVR_SAFETYCABIN_WORK_MODE +{ + DWORD dwSize; + BYTE byWorkMode; //¹¤×÷ģʽ£¬0-ÎÞÈËÃų£¿ª£¬1-ÎÞÈËÃų£Ëø + BYTE byFaintToUnlock; //Ôε¹±¨¾¯Ò»¶¨Ê±¼äºóÍⲿ¿ÉÒÔ¿ªËø£º0-·ñ£¬1-ÊÇ + BYTE byOvertimeToUnlock; //ʹÓó¬Ê±ºóÍⲿ°´Å¥ÊÇ·ñ¿ÉÒÔ¿ªËø£º0-·ñ£¬1-ÊÇ + BYTE byRes[13]; +}NET_DVR_SAFETYCABIN_WORK_MODE,*LPNET_DVR_SAFETYCABIN_WORK_MODE; + +typedef struct tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG +{ + DWORD dwSize; + BYTE bySensorType; //´«¸ÐÆ÷ÀàÐÍ£¬0-ºìÍâ¶ÔÉäÐÍ£¬1-Ä»Á±´«¸ÐÆ÷ + BYTE bySensitivity; //´«¸ÐÆ÷Ãô¸Ð¶È£¬·¶Î§£º0-100% + BYTE byDevUseTimeout; //·À»¤²ÕʹÓó¬Ê±Ê±¼ä£¬µ¥Î»£º·Ö,·¶Î§£º5-30£¬Ä¬Èϳ¬Ê±15min,³¬Ê±ºóͨ¹ý²¼·ÀͨµÀÉÏ´«±¨¾¯ + BYTE byRes1; + WORD wCurtainDelayTime; //Ä»Á±´«¸ÐÆ÷̽²âÑÓʱʱ¼ä£¬µ¥Î»£ºÃ룬·¶Î§£º0-10 + WORD wCurtainResponseTime; //Ä»Á±ÈË״̬±ä»¯¿ØÖÆÆ÷ÏìӦʱ¼ä£¬µ¥Î»£ºÃ룬·¶Î§£º0-300 + WORD wFaintToEmergencyTime; //Ôε¹¸æ¾¯ÉúЧʱ¼ä£¬µ¥Î»£ºÃ룬·¶Î§£º10-300 + BYTE byFollowDetectorSensitivity; //βËæ¼ì²âÁéÃô¶È£¬·¶Î§£º0-100% + BYTE byManyPersonSensitivity; //¶àÈ˼ì²âÁéÃô¶È£¬·¶Î§£º0-100% + BYTE byRes2[28]; //±£Áô +}NET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG,*LPNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG; + +typedef struct tagNET_DVR_ETHERNET_IPV6_COND +{ + DWORD dwSize; + BYTE byMACAddr[MACADDR_LEN]; //Íø¿¨µÄÎïÀíµØÖ· + BYTE byRes[64]; //±£Áô +}NET_DVR_ETHERNET_IPV6_COND,*LPNET_DVR_ETHERNET_IPV6_COND; + +typedef struct tagNET_DVR_ETHERNET_IPV6_CFG +{ + DWORD dwSize; + BYTE byState; //IPv6״̬£¬0-·ÓÉ·ÖÅ䣬1-×Ô¶¯ÉèÖà + BYTE byRes1[3]; + BYTE byIPv6[MAX_IPV6_LEN]; //IPv6µØÖ· + BYTE byRes[64]; //±£Áô +}NET_DVR_ETHERNET_IPV6_CFG,*LPNET_DVR_ETHERNET_IPV6_CFG; + +typedef struct +{ + BYTE byHour;//0~24 + BYTE byMinute;//0~60 + BYTE bySecond;//0~60 + BYTE byRes; + WORD wMilliSecond; //0~1000 + BYTE byRes1[2]; +}NET_DVR_DAYTIME,*LPNET_DVR_DAYTIME; + +typedef struct +{ + NET_DVR_DAYTIME struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_DAYTIME struStopTime; //½áÊøʱ¼ä +}NET_DVR_SCHEDULE_DAYTIME, *LPNET_DVR_SCHEDULE_DAYTIME; + +typedef struct +{ + BYTE byObjectSize;//Õ¼±È²ÎÊý(0~100) + BYTE byMotionSensitive; /*Òƶ¯Õì²âÁéÃô¶È, 0 - 5,Ô½¸ßÔ½ÁéÃô,0xff¹Ø±Õ*/ + BYTE byRes[6]; +}NET_DVR_DNMODE, *LPNET_DVR_DNMODE; + +typedef struct +{ + BYTE byAreaNo;//ÇøÓò±àºÅ(IPC- 1~8) + BYTE byRes[3]; + NET_VCA_RECT struRect;//µ¥¸öÇøÓòµÄ×ø±êÐÅÏ¢(¾ØÐÎ) size = 16; + NET_DVR_DNMODE struDayNightDisable;//¹Ø±Õģʽ + NET_DVR_DNMODE struDayModeParam;//°×Ììģʽ + NET_DVR_DNMODE struNightModeParam;//Ò¹Ííģʽ + BYTE byRes1[8]; +}NET_DVR_MOTION_MULTI_AREAPARAM, *LPNET_DVR_MOTION_MULTI_AREAPARAM; + +typedef struct +{ + BYTE byDayNightCtrl;//ÈÕÒ¹¿ØÖÆ 0~¹Ø±Õ,1~×Ô¶¯Çл»,2~¶¨Ê±Çл»(ĬÈϹرÕ) + BYTE byAllMotionSensitive; /*Òƶ¯Õì²âÁéÃô¶È, 0 - 5,Ô½¸ßÔ½ÁéÃô,0xff¹Ø±Õ£¬È«²¿ÇøÓòµÄÁéÃô¶È·¶Î§*/ + BYTE byRes[2];// + NET_DVR_SCHEDULE_DAYTIME struScheduleTime;//Çл»Ê±¼ä 16 + NET_DVR_MOTION_MULTI_AREAPARAM struMotionMultiAreaParam[MAX_MULTI_AREA_NUM];//×î´óÖ§³Ö24¸öÇøÓò + BYTE byRes1[60]; +}NET_DVR_MOTION_MULTI_AREA,*LPNET_DVR_MOTION_MULTI_AREA; //1328 + +typedef struct +{ + BYTE byMotionScope[64][96]; /*Õì²âÇøÓò,0-96λ,±íʾ64ÐÐ,¹²ÓÐ96*64¸öСºê¿é,Ä¿Ç°ÓÐЧµÄÊÇ22*18,Ϊ1±íʾÊÇÒƶ¯Õì²âÇøÓò,0-±íʾ²»ÊÇ*/ + BYTE byMotionSensitive; /*Òƶ¯Õì²âÁéÃô¶È, 0 - 5,Ô½¸ßÔ½ÁéÃô,0xff¹Ø±Õ*/ + BYTE byRes[3]; +}NET_DVR_MOTION_SINGLE_AREA, *LPNET_DVR_MOTION_SINGLE_AREA; + +typedef struct +{ + NET_DVR_MOTION_SINGLE_AREA struMotionSingleArea; //ÆÕͨģʽϵĵ¥ÇøÓòÉè + NET_DVR_MOTION_MULTI_AREA struMotionMultiArea; //ר¼ÒģʽϵĶàÇøÓòÉèÖà +}NET_DVR_MOTION_MODE_PARAM, *LPNET_DVR_MOTION_MODE_PARAM; + +typedef struct +{ + NET_DVR_MOTION_MODE_PARAM struMotionMode; //(5.1.0ÐÂÔö) + BYTE byEnableHandleMotion; /* ÊÇ·ñ´¦ÀíÒƶ¯Õì²â 0£­·ñ 1£­ÊÇ*/ + BYTE byEnableDisplay; /*ÆôÓÃÒƶ¯Õì²â¸ßÁÁÏÔʾ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byConfigurationMode; //0~ÆÕͨ,1~ר¼Ò(5.1.0ÐÂÔö) + BYTE byKeyingEnable; //ÆôÓüü¿ØÒƶ¯Õì²â 0-²»ÆôÓã¬1-ÆôÓà + /* Òì³£´¦Àí·½Ê½ */ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x1000: ץͼÉÏ´«µ½ÔÆ*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; //ʵ¼Ê´¥·¢µÄ±¨¾¯Êä³öºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0 - dwRelAlarmOut -1ÓÐЧ£¬Èç¹ûÖмäÓöµ½0xffffffff,ÔòºóÐøÎÞЧ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + /*´¥·¢µÄ¼ÏñͨµÀ*/ + DWORD dwMaxRecordChanNum; //É豸֧³ÖµÄ×î´ó¹ØÁªÂ¼ÏñͨµÀÊý-Ö»¶Á + DWORD dwRelRecordChan[MAX_CHANNUM_V40]; /* ʵ¼Ê´¥·¢Â¼ÏñͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0 - dwRelRecordChan -1ÓÐЧ£¬Èç¹ûÖмäÓöµ½0xffffffff,ÔòºóÐøÎÞЧ*/ + BYTE byDiscardFalseAlarm; //ÆôÓÃÈ¥Îó±¨ 0-ÎÞЧ£¬1-²»ÆôÓã¬2-ÆôÓà + BYTE byRes[127]; //±£Áô×Ö½Ú +}NET_DVR_MOTION_V40,*LPNET_DVR_MOTION_V40; + +typedef struct +{ + DWORD dwEnableHideAlarm; /* ÊÇ·ñÆô¶¯ÕÚµ²±¨¾¯£¬0-·ñ£¬1-µÍÁéÃô¶È£¬2-ÖÐÁéÃô¶È£¬3-¸ßÁéÃô¶È*/ + WORD wHideAlarmAreaTopLeftX; /* ÕÚµ²ÇøÓòµÄx×ø±ê */ + WORD wHideAlarmAreaTopLeftY; /* ÕÚµ²ÇøÓòµÄy×ø±ê */ + WORD wHideAlarmAreaWidth; /* ÕÚµ²ÇøÓòµÄ¿í */ + WORD wHideAlarmAreaHeight; /*ÕÚµ²ÇøÓòµÄ¸ß*/ + /* ÐźŶªÊ§´¥·¢±¨¾¯Êä³ö */ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x1000:ץͼÉÏ´«µ½ÔÆ*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; /*´¥·¢±¨¾¯Êä³öºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0 - dwRelAlarmOut -1ÓÐЧ£¬Èç¹ûÖмäÓöµ½0xffffffff,ÔòºóÐøÎÞЧ*/ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + BYTE byRes[64]; //±£Áô +}NET_DVR_HIDEALARM_V40,*LPNET_DVR_HIDEALARM_V40; //ÕÚµ²±¨¾¯ + +typedef struct +{ + DWORD dwEnableVILostAlarm; /* ÊÇ·ñÆô¶¯ÐźŶªÊ§±¨¾¯ ,0-·ñ,1-ÊÇ*/ + /* ÐźŶªÊ§´¥·¢±¨¾¯Êä³ö */ + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + /*0x1000:ץͼÉÏ´«µ½ÔÆ*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; /*´¥·¢±¨¾¯Êä³öºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0 - dwRelAlarmOut -1ÓÐЧ£¬Èç¹ûÖмäÓöµ½0xffffffff,ÔòºóÐøÎÞЧ*/ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + BYTE byVILostAlarmThreshold; /*ÐźŶªÊ§±¨¾¯ãÐÖµ£¬µ±ÖµµÍÓÚãÐÖµ£¬ÈÏΪÐźŶªÊ§£¬È¡Öµ0-99*/ + BYTE byRes[63]; //±£Áô +}NET_DVR_VILOST_V40,*LPNET_DVR_VILOST_V40; //ÐźŶªÊ§±¨¾¯ + +typedef struct +{ + NET_DVR_COLOR struColor[MAX_TIMESEGMENT_V30];/*ͼÏó²ÎÊý(µÚÒ»¸öÓÐЧ£¬ÆäËûÈý¸ö±£Áô)*/ + NET_DVR_SCHEDTIME struHandleTime[MAX_TIMESEGMENT_V30];/*´¦Àíʱ¼ä¶Î(±£Áô)*/ +}NET_DVR_VICOLOR, *LPNET_DVR_VICOLOR; + +typedef struct +{ + DWORD dwSize; + BYTE sChanName[NAME_LEN]; + DWORD dwVideoFormat; /* Ö»¶Á ÊÓƵÖÆʽ 1-NTSC 2-PAL */ + NET_DVR_VICOLOR struViColor;// ͼÏñ²ÎÊý°´Ê±¼ä¶ÎÉèÖà + //ÏÔʾͨµÀÃû + DWORD dwShowChanName; // Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾͨµÀÃû³Æ,0-²»ÏÔʾ,1-ÏÔʾ + WORD wShowNameTopLeftX; /* ͨµÀÃû³ÆÏÔʾλÖõÄx×ø±ê */ + WORD wShowNameTopLeftY; /* ͨµÀÃû³ÆÏÔʾλÖõÄy×ø±ê */ + //Òþ˽ÕÚµ² + DWORD dwEnableHide; /* ÊÇ·ñÆô¶¯ÕÚµ² ,0-·ñ,1-ÊÇ*/ + NET_DVR_SHELTER struShelter[MAX_SHELTERNUM]; + //OSD + DWORD dwShowOsd;// Ô¤ÀÀµÄͼÏóÉÏÊÇ·ñÏÔʾOSD,0-²»ÏÔʾ,1-ÏÔʾ + WORD wOSDTopLeftX; /* OSDµÄx×ø±ê */ + WORD wOSDTopLeftY; /* OSDµÄy×ø±ê */ + BYTE byOSDType; /* OSDÀàÐÍ(Ö÷ÒªÊÇÄêÔÂÈÕ¸ñʽ) */ + /* 0: XXXX-XX-XX ÄêÔÂÈÕ */ + /* 1: XX-XX-XXXX ÔÂÈÕÄê */ + /* 2: XXXXÄêXXÔÂXXÈÕ */ + /* 3: XXÔÂXXÈÕXXXXÄê */ + /* 4: XX-XX-XXXX ÈÕÔÂÄê*/ + /* 5: XXÈÕXXÔÂXXXXÄê */ + /*6: xx/xx/xxxx(ÔÂ/ÈÕ/Äê) */ + /*7: xxxx/xx/xx(Äê/ÔÂ/ÈÕ) */ + /*8: xx/xx/xxxx(ÈÕ/ÔÂ/Äê)*/ + BYTE byDispWeek; /* ÊÇ·ñÏÔʾÐÇÆÚ */ + BYTE byOSDAttrib; /* OSDÊôÐÔ:͸Ã÷£¬ÉÁ˸ */ + /* 0: ²»ÏÔʾOSD */ + /* 1: ͸Ã÷£¬ÉÁ˸ */ + /* 2: ͸Ã÷£¬²»ÉÁ˸ */ + /* 3: ²»Í¸Ã÷£¬ÉÁ˸ */ + /* 4: ²»Í¸Ã÷£¬²»ÉÁ˸ */ + BYTE byHourOSDType; /* OSDСʱÖÆ:0-24СʱÖÆ,1-12СʱÖÆ */ + BYTE byFontSize; //16*16(ÖÐ)/8*16(Ó¢)£¬1-32*32(ÖÐ)/16*32(Ó¢)£¬2-64*64(ÖÐ)/32*64(Ó¢) 3-48*48(ÖÐ)/24*48(Ó¢) 4-24*24(ÖÐ)/12*24(Ó¢) 5-96*96(ÖÐ)/48*96(Ó¢) 6-128*128(ÖÐ)/64*128(Ó¢) 7-80*80(ÖÐ)/40*80(Ó¢) 8-112*112(ÖÐ)/56*112(Ó¢) 0xff-×ÔÊÊÓ¦(adaptive) + BYTE byOSDColorType; //0-ĬÈÏ£¨ºÚ°×£©£»1-×Ô¶¨Ò壻2-¹´±ß + /*µ±¶ÔÆ뷽ʽѡÔñ¹ú±êģʽʱ£¬¿ÉÒÔ·Ö±ð¶ÔÓÒϽǡ¢×óϽÇÁ½¸öÇøÓò×ö×Ö·ûµþ¼Ó¡£ + ÓÒϽÇÇøÓò£º + ¹²Ö§³Ö6ÐÐ×Ö·ûµþ¼Ó£¬¿ÉÒÔͨ¹ýNET_DVR_SET_SHOWSTRING_V30/ NET_DVR_GET_SHOWSTRING_V30×Ö·ûµþ¼Ó½Ó¿Ú£¬¶ÔÓ¦NET_DVR_SHOWSTRINGINFO½á¹¹ÌåÊý×éÖеĵÚ0ÖÁµÚ5¸öϱêµÄÖµ¡£µþ¼Ó×Ö·ûµÄ·½Ê½Îª´Óϵ½Éϵķ½Ê½¡£ + ×óϽÇÇøÓò£º + ¹²Ö§³Ö2ÐÐ×Ö·ûµþ¼Ó£¬¿ÉÒÔͨ¹ýNET_DVR_SET_SHOWSTRING_V3/ NET_DVR_GET_SHOWSTRING_V30×Ö·ûµþ¼Ó½Ó¿Ú£¬¶ÔÓ¦NET_DVR_SHOWSTRINGINFO½á¹¹ÌåÊý×éÖеĵÚ6ºÍµÚ7¸öϱêµÄÖµ¡£µþ¼Ó×Ö·ûµÄ·½Ê½Îª´Óϵ½Éϵķ½Ê½¡£ + */ + BYTE byAlignment;//¶ÔÆ뷽ʽ 0-×ÔÊÊÓ¦£¬1-ÓÒ¶ÔÆë, 2-×ó¶ÔÆ룬3-¹ú±êģʽ£¬4-È«²¿ÓÒ¶ÔÆë(°üº¬µþ¼Ó×Ö·û¡¢Ê±¼äÒÔ¼°±êÌâµÈËùÓÐOSD×Ö·û)£¬5-È«²¿×ó¶ÔÆë(°üº¬µþ¼Ó×Ö·û¡¢Ê±¼äÒÔ¼°±êÌâµÈËùÓÐOSD×Ö·û) + BYTE byOSDMilliSecondEnable;//ÊÓƵµþ¼Óʱ¼äÖ§³ÖºÁÃ룻0~²»µþ¼Ó, 1-µþ¼Ó + NET_DVR_VILOST_V40 struVILost; //ÊÓƵÐźŶªÊ§±¨¾¯£¨Ö§³Ö×飩 + NET_DVR_VILOST_V40 struAULost; /*ÒôƵÐźŶªÊ§±¨¾¯£¨Ö§³Ö×飩*/ + NET_DVR_MOTION_V40 struMotion; //Òƶ¯Õì²â±¨¾¯£¨Ö§³Ö×飩 + NET_DVR_HIDEALARM_V40 struHideAlarm; //ÕÚµ²±¨¾¯£¨Ö§³Ö×飩 + NET_DVR_RGB_COLOR struOsdColor;//OSDÑÕÉ« + DWORD dwBoundary; //±ß½çÖµ£¬×ó¶ÔÆ룬ÓÒ¶ÔÆëÒÔ¼°¹ú±êģʽµÄ±ß½çÖµ£¬0-±íʾĬÈÏÖµ£¬µ¥Î»£ºÏñËØ;ÔÚ¹ú±êģʽÏ£¬µ¥Î»ÐÞ¸ÄΪ×Ö·û¸öÊý£¨·¶Î§ÊÇ£¬0,1,2£© + NET_DVR_RGB_COLOR struOsdBkColor; //×Ô¶¨ÒåOSD±³¾°É« + BYTE byOSDBkColorMode; //OSD±³¾°É«Ä£Ê½£¬0-ĬÈÏ£¬1-×Ô¶¨ÒåOSD±³¾°É« + BYTE byUpDownBoundary; //ÉÏÏÂ×îС±ß½çֵѡÏµ¥Î»Îª×Ö·û¸öÊý£¨·¶Î§ÊÇ£¬0,1,2£©,¹ú±êģʽÏÂÎÞЧ¡£byAlignment=3¸Ã×Ö¶ÎÎÞЧ£¬Í¨¹ýdwBoundary½øÐб߽çÅäÖã¬.byAlignment²»µÈÓÚ3µÄÇé¿öÏ£¬ byUpDownBoundary/byLeftRightBoundaryÅäÖóɹ¦ºó£¬dwBoundaryÖµ½«²»ÉúЧ + BYTE byLeftRightBoundary; //×óÓÒ×îС±ß½çֵѡÏµ¥Î»Îª×Ö·û¸öÊý£¨·¶Î§ÊÇ£¬0,1,2£©, ¹ú±êģʽÏÂÎÞЧ¡£byAlignment=3¸Ã×Ö¶ÎÎÞЧ£¬Í¨¹ýdwBoundary½øÐб߽çÅäÖã¬.byAlignment²»µÈÓÚ3µÄÇé¿öÏ£¬ byUpDownBoundary/byLeftRightBoundaryÅäÖóɹ¦ºó£¬dwBoundaryÖµ½«²»ÉúЧ + BYTE byAngleEnabled;//OSDÊÇ·ñµþ¼Ó¸©Ñö½ÇÐÅÏ¢,0~²»µþ¼Ó, 1-µþ¼Ó + WORD wTiltAngleTopLeftX; /* ¸©Ñö½ÇÐÅÏ¢ÏÔʾλÖõÄx×ø±ê */ + WORD wTiltAngleTopLeftY; /* ¸©Ñö½ÇÐÅÏ¢ÏÔʾλÖõÄy×ø±ê */ + BYTE byRes[108]; +}NET_DVR_PICCFG_V40,*LPNET_DVR_PICCFG_V40; + +typedef struct // +{ + DWORD dwSize; + BYTE byWorkType;// 0-×ÔÊÊÓ¦, 1-¶¨Ê±Ä£Ê½ + BYTE byRes[3]; + //¶¨Ê±Ä£Ê½²ÎÊý + NET_DVR_SCHEDULE_DAYTIME struDayNightScheduleTime;//ÈÕÒ¹¶¨Ê±Çл»Ä£Ê½(°×Ììʱ¼ä) + NET_DVR_CAMERAPARAMCFG_EX struSelfAdaptiveParam; //×ÔÊÊÓ¦²ÎÊý + NET_DVR_CAMERAPARAMCFG_EX struDayIspAdvanceParam;//°×Ìì²ÎÊý + NET_DVR_CAMERAPARAMCFG_EX struNightIspAdvanceParam;//Ò¹Íí²ÎÊý + BYTE byRes1[512]; +}NET_DVR_ISP_CAMERAPARAMCFG,*LPNET_DVR_ISP_CAMERAPARAMCFG; + +typedef struct +{ + DWORD dwSize; + BYTE byIrLampServer;//ºìÍâµÆÉèÖà 0¡«½ûÓã¬1¡«ÆôÓà + BYTE bytelnetServer;//telnetÉèÖà 0¡«½ûÓã¬1¡«ÆôÓà + BYTE byABFServer;//ABFÉèÖà 0¡«ÆôÓã¬1¡«½ûÓà + BYTE byEnableLEDStatus;//״ָ̬ʾµÆ¿ØÖÆ 0¡«½ûÓã¬1¡«ÆôÓà + BYTE byEnableAutoDefog;//×Ô¶¯³ýÎí¿ØÖÆ 0¡«ÆôÓã¬1¡«½ûÓà + BYTE byEnableSupplementLight;//²¹¹âµÆ¿ØÖÆ0-ÆôÓã¬1-½ûÓà + BYTE byEnableDeicing;//³ý±ù¹¦ÄÜ 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byEnableVisibleMovementPower;// ¿É¼û¹â»úоµçÔ´¿ª¹Ø 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byEnableThermalMovementPower;// ÈȳÉÏñ»úоµçÔ´¿ª¹Ø 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byEnablePtzPower;// ÔÆ̨µçÔ´¿ª¹Ø 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byPowerSavingControl;// µÍ¹¦ºÄ²ßÂÔ 0-±£Áô 1-ÐÝÃßģʽ 2-µÍ¹¦ºÄģʽ µÍ¹¦ºÄģʽÏ ¿É¼û¹â»úоµçÔ´¡¢ÈȳÉÏñ»úоµçÔ´¡¢ÔÆ̨µçÔ´¿ØÖÆÉúЧ + BYTE byCaptureWithSupplimentLightEnabled;//ÆôÓÃ×¥ÅIJ¹¹âʹÄÜ 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[244]; +}NET_DVR_DEVSERVER_CFG,*LPNET_DVR_DEVSERVER_CFG; + +typedef struct tagNET_DVR_GBT28181_ACCESS_CFG +{ + DWORD dwSize; + BYTE byEnable;//28181ЭÒéʹÄÜ 0-¹Ø±Õ 1-¿ªÆô + BYTE byTransProtocol;//´«ÊäЭÒé:0-UDP¡¢1-TCP¡¢Ä¬ÈÏ0-UDP + WORD wLocalSipPort;//1024-65535(IPCÉ豸¶Ë) + char szServerID[MAX_SERVERID_LEN];//·þÎñÆ÷ID£º64×Ö½Ú×Ö·û´®£¬½öÏÞÊý×Ö + char szServerDomain[MAX_SIPSERVER_ADDRESS_LEN] ;// ·þÎñÆ÷Óò + char szSipServerAddress[MAX_SIPSERVER_ADDRESS_LEN] ;// SIP·þÎñÆ÷µØÖ·Ö§³ÖÓòÃûºÍIPµØÖ· + WORD wServerSipPort;//·þÎñÆ÷SIP¶Ë¿Ú£º1024-65535 + BYTE byProtocolVersion;//ЭÒé°æ±¾ 0-GB/T28181-2011(½öÖ§³ÖUDP),1-GB/T28181-2015(Ö§³ÖTCP,UDP),2-GB/T28181-2016 + BYTE byTCPConnectMod; //TCPÁ¬½Óģʽ£¬Ê¹ÓÃTCP´«ÊäЭÒéʱÓÐЧ£¬0-ÎÞЧ£¬1-Ö÷¶¯Ä£Ê½£¬2-±»¶¯Ä£Ê½ + char szSipUserName[MAX_SERVERNAME_LEN];//SIPÓû§Ãû³Æ£º64×Ö½Ú×Ö·û´®(µÚÈý·½SIPÖÕ¶ËÇëÇóIPC·þÎñʱʹÓÃ) + char szSipAuthenticateID[MAX_AUTHENTICATEID_LEN];//SIPÓû§ÈÏÖ¤ID£º64×Ö½Ú×Ö·û´® + char szSipAuthenticatePasswd[MAX_AUTHENTICATEPASSWD_LEN];//SIPÓû§ÈÏÖ¤ÃÜÂ룺32×Ö½Ú×Ö·û´®(IPCÉ豸ע²áµ½SIP·þÎñÆ÷ʱʹÓÃ) + DWORD dwRegisterValid;//×¢²áÓÐЧÆÚ£ºµ¥Î»Ã룬ĬÈÏ3600£» + BYTE byHeartbeatInterval;//ÐÄÌø¼ä¸ô£ºµ¥Î»Ã룬ĬÈÏ10Ã룻 + BYTE byMaxHeartbeatTimeOut;//×î´óÐÄÌø³¬Ê±´ÎÊý£ºÄ¬ÈÏ3´Î£» + BYTE byStreamType;// È¡Á÷ÀàÐÍ0¡«Ö÷ÂëÁ÷£¬1¡«×ÓÂëÁ÷£¬2¡«3ÂëÁ÷ + BYTE byDeviceStatus; //É豸ÊÇ·ñÔÚÏß״̬£¬0-±£Áô£¬1-ÔÚÏߣ¬2-ÀëÏß + DWORD dwRegisterInterval;//×¢²á¼ä¸ô:×¢²áʧ°ÜºóÔÙ´Î×¢²áµÄʱ¼ä¼ä¸ô,·¶Î§60-600s£¬Ä¬ÈÏ60s + DWORD dwAutoAllocChannelID ; //ÊÇ·ñ×Ô¶¯·ÖÅäͨµÀID,°´Î»±íʾ£¬0ΪÊÖ¶¯ÅäÖã¬1Ϊ×Ô¶¯·ÖÅ䣬bit1-×Ô¶¯·ÖÅä±àÂëͨµÀID,bit2-×Ô¶¯·ÖÅ䱨¾¯ÊäÈëͨµÀ,bit3-×Ô¶¯·ÖÅä½âÂëͨµÀID + char szDeviceDomain[MAX_SIPSERVER_ADDRESS_LEN] ;// É豸Óò + BYTE byRes4[116]; +}NET_DVR_GBT28181_ACCESS_CFG,*LPNET_DVR_GBT28181_ACCESS_CFG; + +//GBT28181ЭÒéµÄÉ豸±àÂëͨµÀÅäÖà +typedef struct tagNET_DVR_GBT28181_CHANINFO_CFG +{ + DWORD dwSize; + char szVideoChannelNumID[MAX_COMPRESSIONID_LEN];//É豸ÊÓƵͨµÀ±àÂëID£º64×Ö½Ú×Ö·û´®£¬½öÏÞÊý×Ö + BYTE byRes[256]; +}NET_DVR_GBT28181_CHANINFO_CFG,*LPNET_DVR_GBT28181_CHANINFO_CFG; + +//GBT28181ЭÒéµÄ±¨¾¯ÊäÈëͨµÀÅäÖà Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_ALARMIN_INFO +{ + NET_DVR_STREAM_INFO struStreamInfo; + DWORD dwAlarmInChannel;//±¨¾¯ÊäÈëͨµÀºÅ + BYTE byRes[32]; //±£Áô +}NET_DVR_ALARMIN_INFO, *LPNET_DVR_ALARMIN_INFO; + +//GBT28181ЭÒéµÄ±¨¾¯ÊäÈëͨµÀÅäÖà ÅäÖýṹ +typedef struct tagNET_DVR_GBT28181_ALARMINCFG +{ + DWORD dwSize; + char szAlarmInNumID[MAX_COMPRESSIONID_LEN];//É豸±¨¾¯ÊäÈë±àÂëID£¨Ã¿Ò»Â·±¨¾¯ÊäÈ벻ͬ£©£º20×Ö½Ú×Ö·û´®£¬½öÏÞÊý×Ö + BYTE byRes[256]; +}NET_DVR_GBT28181_ALARMINCFG,*LPNET_DVR_GBT28181_ALARMINCFG; + +typedef struct tagNET_DVR_CAMERA_SETUPCFG +{ + DWORD dwSize; + WORD wSetupHeight; //¼ÜÉè¸ß¶È[0,20]£¬µ¥Î»£ºÃ× + BYTE byLensType; //¾µÍ·½¹¾àÀàÐÍ£¬0-δ֪,1-8mm,2-12mm,3-16mm,4-25mm,5-35mm,6-50mm,7-4mm,8-6mm + BYTE bySetupHeightUnit;// ¼ÜÉè¸ß¶Èµ¥Î»0¡«M,1~CM + DWORD dwSceneDis; //ͼÏñϱßԵλÖÃÓëÏà»úÖ®¼äµÄˮƽ¾àÀ룬µ¥Î»£ºÀåÃ× + float fPitchAngle;//Ïà»ú¸©Ñö½Ç¶È[-180¡ã, 180¡ã], + float fInclineAngle;//Ïà»úÇãб½Ç¶È[-180¡ã,180¡ã] + float fRotateAngle;//Ïà»úÐýת½Ç¶È[-180¡ã,180¡ã] + WORD wVideoDetCoefficient; //ÊÓƵ²âÊÔϵÊý[0,300](3.6ÐÂÔö) + BYTE byErectMethod; //¼ÜÉ跽ʽ0-Õý×°£¬1-²à×°(3.6ÐÂÔö) + BYTE byCameraViewAngle;//ÉãÏñ»ú°²×°ÊÓÒ°½Ç¶È(0-´¹Ö±£¬1-Çãб£¬Ä¬ÈÏ0-´¹Ö±) + DWORD dwHorizontalDistance;//ÉãÏñ»úÓë³öÈë¿Úˮƽ¾àÀ룺·¶Î§1-1000£¬Ä¬ÈÏ30£¬µ¥Î»cm£¬×¢ÒâÉãÏñ»ú½Ç¶ÈΪÇãбʱ¸ÃÏîÓÐЧ + BYTE byDetailLensType;//·¶Î§1-100£¬Ä¬ÈÏ28£¬µ¥Î»0.1mm + BYTE byRes[3]; + float fHorFieldAngle; //Ïà»úˮƽÊÓ³¡½Ç½Ç¶È[0¡ã, 360¡ã]£¨×¥ÅÄ»ú£© + float fVerFieldAngle; //Ïà»ú´¹Ö±ÊÓ³¡½Ç½Ç¶È[0¡ã, 360¡ã]£¨×¥ÅÄ»ú£©,Ó¥ÑÛ·¶Î§-90¡ã-90¡ã + float fLableSetupHeight; //±êÇ©µ½¼ÜÉèÏà»úµÄ¸ß¶È[0,100]£¬µ¥Î»£ºÃ× + float fMaxViewRadius;//×î´ó¿ÉÊӰ뾶,0~10000.00Ã×£¬Ä¬ÈÏ5000Ã×. + BYTE byRes1[16]; +}NET_DVR_CAMERA_SETUPCFG, *LPNET_DVR_CAMERA_SETUPCFG; + +//ÆðÖ¹ÈÕÆڶβÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_SCHEDDATE +{ + BYTE byStartMonth; //Æðʼ£¨Ô£© + BYTE byStartDay; //Æðʼ£¨ÈÕ£© + BYTE byStopMonth; //½áÊø£¨Ô£© + BYTE byStopDay; //½áÊø£¨ÈÕ£© +}NET_DVR_SCHEDDATE,*LPNET_DVR_SCHEDDATE; + +//ʱ¿ØÊä³ö²ÎÊý +typedef struct tagNET_DVR_OUTPUT_SCHEDULE +{ + NET_DVR_SCHEDTIME struTime; //ʱ¼ä¶Î + BYTE byState; //0¨C¹Ø±Õ, 1¨C¿ªÆô + BYTE byRes[11]; //±£Áô +} NET_DVR_OUTPUT_SCHEDULE ,*LPNET_DVR_OUTPUT_SCHEDULE; + +//µ¥Ìõʱ¿ØÊä³ö¹æÔò²ÎÊý +typedef struct tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE +{ + BYTE byEnable; //ÊÇ·ñÆôÓùæÔò,0-·ñ,1-ÊÇ + BYTE byRes1[3]; //±£Áô + NET_DVR_SCHEDDATE struDate; //ÈÕÆÚÇø¶Î + NET_DVR_OUTPUT_SCHEDULE struOutputSchedule[MAX_TIMESEGMENT_V30]; //×î¶àÖ§³Ö8¸öʱ¼ä¶ÎµÄʱ¿ØÊä³ö + BYTE byRes2[16]; //±£Áô +}NET_DVR_ONE_OUTPUT_SCHEDULE_RULE,*LPNET_DVR_ONE_OUTPUT_SCHEDULE_RULE; + +//ʱ¿ØÊä³ö¹æÔò²ÎÊý +typedef struct tagNET_DVR_OUTPUT_SCHEDULE_RULECFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_ONE_OUTPUT_SCHEDULE_RULE struOutputRule[MAX_RULE_NUM]; //×î¶àÖ§³Ö8¸öÈÕÆÚÇø¶ÎµÄ¹æÔòÅäÖà + BYTE byRes[64]; //±£Áô +}NET_DVR_OUTPUT_SCHEDULE_RULECFG,*LPNET_DVR_OUTPUT_SCHEDULE_RULECFG; + +//½»Í¨Í³¼Æ±¨¾¯²ÎÊý +typedef struct tagNET_DVR_TPS_ALARMCFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓý»Í¨Í³¼Æ±¨¾¯ÉÏ´« + BYTE byRes1[3]; // + DWORD dwInterval;//ͳ¼Æ¼ä¸ôʱ¼ä£¨µ¥Î»£º·ÖÖÓ£© + BYTE byRes[248]; +}NET_DVR_TPS_ALARMCFG, *LPNET_DVR_TPS_ALARMCFG; + +typedef struct tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND +{ + DWORD dwSize; + WORD wAlarmRecordID; //±¨¾¯Â¼ÏñID(ÓÃÓÚ²éѯ¼Ïñ£¬½öµ±byResultTypeΪ2ʱÓÐЧ) + BYTE byRes[130]; +}NET_DVR_DOWNLOAD_ALARM_RECORD_COND, *LPNET_DVR_DOWNLOAD_ALARM_RECORD_COND; + +typedef struct tagNET_DVR_CABINET_AlARM_PARAMCFG +{ + char sCabinetName[NAME_LEN]; + BYTE byAssociateIO;//1-4£¬0xff£¬ ÆäÖÐ1-4±íʾ¾ßÌåµÄIOͨµÀºÅ£¬0xff±íʾ²»ÆôÓà + BYTE byCabinetState;//0~µÍµçƽ,1~¸ßµçƽ + BYTE byAlarmIntervalTime;//È¡Öµ·¶Î§1-60£¬µ¥Î»£ºÃë + BYTE byRes1[25]; +}NET_DVR_CABINET_AlARM_PARAMCFG, *LPNET_DVR_CABINET_AlARM_PARAMCFG; + +typedef struct tagNET_DVR_CABINET_CFG +{ + DWORD dwSize; + BYTE byEnable;//0~²»ÆôÓã¬1¡«ÆôÓà + BYTE byRes[3]; + NET_DVR_CABINET_AlARM_PARAMCFG struCabinetCfg[MAX_CABINET_COUNT]; + BYTE byRes1[84]; +} NET_DVR_CABINET_CFG, *LPNET_DVR_CABINET_CFG; + +typedef struct tagNET_ITS_GATE_LANE_CFG +{ + BYTE byGateSiteID[MAX_ID_LEN]; //³öÈë¿Ú±àºÅ + BYTE byGateInfo[MAX_ID_LEN]; //³öÈë¿ÚÐÅÏ¢ÃèÊö + BYTE byLaneName[NAME_LEN]; //³µµÀÃû³Æ + BYTE byValid; //ÊÇ·ñÆôÓà 0 ±íʾδÆôÓã¬1±íʾÆôÓà + BYTE byCamLaneId; //¶ÔÓ¦Ïà»ú³µµÀºÅ1¡«16£¨Ïà»úÅäÖõijµµÀºÅ£¬¿ÉÒÔÌøÔ¾£¬¿ÉÒÔÏàͬ£© + WORD wLaneid; //³µµÀºÅ1¡«32£¨Ë÷Òý³µµÀºÅ£¬¿ÉÒÔÌøÔ¾ Âß¼­³µµÀ£© + BYTE byRelativeIoNum; //Âß¼­³µµÀºÅ¹ØÁªµÄÊä³ö¿Ú±àºÅ + BYTE byDirection; //·½Ïò±àºÅ; 0 -ÆäËû 1 È볡 2 ³ö³¡ 3 Ë«Ïò + BYTE byLprMode; //ÅÆʶ·ÅÐÐÅäÖÃ0 È«²¿½ø1 ³ý½ûÖ¹Ãûµ¥½ø2 ÔÊÐíÃûµ¥½ø + BYTE byCardMode; //¿¨Æ¬·ÅÐÐÅäÖÃ0 È«²¿½ø1 ³ý½ûÖ¹Ãûµ¥½ø2 ÔÊÐíÃûµ¥½ø + BYTE byGateLaneMode;//³öÈë¿Ú·ÅÐÐÅäÖÃģʽ 0-È«²¿½ø 1-Ö»ÓÐÅÆʶƥÅä·ÅÐÐ2 Ö»ÓÐË¢¿¨Æ¥Åä·Å//ÐÐ 3-ÅÆʶ»ò¿¨Æ¬ÓÐÒ»¸öÆ¥ÅäÔò·ÅÐÐ 4-ÅÆʶÇÒ¿¨Æ¬Í¬Ê±Æ¥ÅäÔò·ÅÐÐ 5-È«²»½ø + //2013-11-19 ÐÂÔö²ÎÊý + BYTE byCharge;//ÊÇ·ñÊÕ·Ñ 0-²»ÊÕ·Ñ£¬1-ÊÕ·Ñ + BYTE byChargeMode;//ÊÕ·ÑÀàÐÍ 0-³µÅÆÊÕ·Ñ£¬1-¿¨ºÅÊÕ·Ñ + BYTE byRes1; + BYTE byLedRelativeIndex[MAX_INDEX_LED];//LED Ë÷Òý (1~255) ½ô´ÕÅÅÁУ¬0±íʾÎÞЧ£¬²»½âÎöºóÃæµÄÊý¾Ý + BYTE byGateRelativeIndex;//³öÈë¿Ú¿ØÖÆ»úÏà¶ÔË÷Òý + BYTE byFarRrRelativeIndex;// Ô¶¾àÀë¶Á¿¨Æ÷Ïà¶ÔË÷Òý + BYTE byRes[82]; //Ô¤Áô +}NET_ITS_GATE_LANE_CFG, *LPNET_ITS_GATE_LANE_CFG; + +typedef struct tagNET_ITS_IPC_CHAN_LANE_CFG +{ + DWORD dwSize; + BYTE byIpcType; //0-ÎÞ£¬1-³µÅÆ×¥ÅÄ£¬2-ÈËÁ³×¥ÅÄ£¬3-¼à¿ØÏà»ú + BYTE byRes[135]; + NET_ITS_GATE_LANE_CFG struGateLane[4]; //³µµÀÅäÖýṹÌå +}NET_ITS_IPC_CHAN_LANE_CFG, *LPNET_ITS_IPC_CHAN_LANE_CFG; + +//É豸Զ³Ì¿ØÖÆ +typedef struct tagNET_ITS_REMOTE_COMMAND +{ + WORD wLaneid; //³µµÀºÅ1¡«32£¨Ë÷Òý³µµÀºÅ£¬¿ÉÒÔÌøÔ¾£© + BYTE byCamLaneId; //¶ÔÓ¦Ïà»ú³µµÀºÅ1¡«16£¨Ïà»úÅäÖõijµµÀºÅ£¬¿ÉÒÔÌøÔ¾£¬¿ÉÒÔÏàͬ£© + BYTE byRes; //Ô¤Áô + DWORD dwCode; //ÃüÁîÂë 0x0 ¿ªÕ¢ 0x1 ¹ØÕ¢£¬ÆäËü´ýÀ©Õ¹ + BYTE byRes1[128]; +}NET_ITS_REMOTE_COMMAND,*LPNET_ITS_REMOTE_COMMAND; + +typedef struct tagNET_ITS_REMOTE_CONTROL_ +{ + DWORD dwSize; + NET_ITS_REMOTE_COMMAND struRemoteCommand; //Ô¶³ÌÃüÁî½á¹¹ +}NET_ITS_REMOTE_CONTROL,*LPNET_ITS_REMOTE_CONTROL; + +//³¤Á¬½Ó»ñȡͨµÀ״̬ +typedef struct tagNET_ITS_ECT_CHANNELSTATE +{ + DWORD dwSize; + BYTE byRecordStatic; //ͨµÀÊÇ·ñÔÚ¼Ïñ,0-²»Â¼Ïñ,1-¼Ïñ + BYTE bySignalStatic; //Á¬½ÓµÄÐźÅ״̬,0-Õý³£,1-ÐźŶªÊ§ + BYTE byHardwareStatic;//ͨµÀÓ²¼þ״̬,0-Õý³£,1-Òì³£,ÀýÈçDSPËÀµô + BYTE byChannelArmState; //½ÓÈëIPCµÄ²¼·À״̬ + DWORD dwChannel; //ͨµÀºÅ + DWORD dwBitRate;//ʵ¼ÊÂëÂÊ + DWORD dwLinkNum;//¿Í»§¶ËÁ¬½ÓµÄ¸öÊý + NET_DVR_IPADDR struClientIP[MAX_LINK];//¿Í»§¶ËµÄIPµØÖ· + DWORD dwIPLinkNum;//Èç¹û¸ÃͨµÀΪIP½ÓÈ룬ÄÇô±íʾIP½ÓÈ뵱ǰµÄÁ¬½ÓÊý + BYTE byExceedMaxLink; // ÊÇ·ñ³¬³öÁË128·Á¬½ÓÊý 0 - 䳬³ö, 1-³¬³ö + BYTE byRes[139]; // ±£Áô×Ö½Ú +}NET_ITS_ECT_CHANNELSTATE, *LPNET_ITS_ECT_CHANNELSTATE; + +//Íâ½ÓµÆ +typedef struct tagNET_DVR_PARK_EXTERNAL_SUBINFO +{ + BYTE byEnable; //0 ¡« ²»¿ªÆô 1 ¡« ¿ªÆô + BYTE byFlicker;//0 ¡« ²»ÉÁ˸ 1 ¡« ÉÁ˸ + BYTE byIOState;//0 ¡« µÍµçƽ 1 ¡« ¸ßµçƽ (ÍâÖõÆÆðЧ) + BYTE byLampColor;// 0- Ãð 1-ºì 2-ÂÌ 3-»Æ 4-À¶ 5-Æ·ºì 6-Çà 7-°×É« (ÄÚÖõÆÆðЧ) + BYTE byRes[4]; +}NET_DVR_PARK_EXTERNAL_SUBINFO, *LPNET_DVR_PARK_EXTERNAL_SUBINFO; + +typedef struct tagNET_DVR_PARK_INLAY_SUBINFO +{ + BYTE byEnable; //0¡«²»¿ªÆô 1 ¡«¿ªÆô + BYTE byFlicker;//0¡«²»ÉÁ˸ 1 ¡«ÉÁ˸ + BYTE byLampColor;//0-Ãð 1-ºì 2-ÂÌ 3-»Æ 4-À¶ 5-Æ·ºì 6-Çà 7-°×É« (ÄÚÖõÆÆðЧ) + BYTE byRes[21]; +}NET_DVR_PARK_INLAY_SUBINFO, *LPNET_DVR_PARK_INLAY_SUBINFO; + +typedef struct tagNET_DVR_PARKINFO +{ + NET_DVR_PARK_EXTERNAL_SUBINFO struNormalParkIOState;//Óгµioµçƽ״̬ + NET_DVR_PARK_EXTERNAL_SUBINFO struNormalNoParkIOState;//ÎÞ³µioµçƽ״̬ + NET_DVR_PARK_EXTERNAL_SUBINFO struSpecialParkIOState;//ÌØÊ⳵λÓгµioµçƽ״̬ + NET_DVR_PARK_EXTERNAL_SUBINFO struSpecialNoParkIOState;//ÌØÊ⳵λÎÞ³µioµçƽ״̬ + BYTE byRes[32]; +}NET_DVR_PARKINFO, *LPNET_DVR_PARKINFO; + +typedef struct tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE +{ + NET_DVR_PARKINFO struParkInfo[MAX_PARKING_NUM];/*Íâ½ÓµÆµÄÇé¿öϳµÎ»ÐÅÏ¢£¬Ò»¸öͨµÀ×î´ó4¸ö³µÎ» (´Ó×óµ½ÓÒ³µÎ» Êý×é0¡«3)*/ + BYTE byRes[32]; +}NET_DVR_EXTERNAL_LAMP_CTRL_MODE, *LPNET_DVR_EXTERNAL_LAMP_CTRL_MODE; + +typedef struct tagNET_DVR_INLAY_LAMP_CTRL_MODE +{ + NET_DVR_PARK_INLAY_SUBINFO struLampStateCtrl[MAX_PARKING_STATUS]; + BYTE byRes[96]; +}NET_DVR_INLAY_LAMP_CTRL_MODE, *LPNET_DVR_INLAY_LAMP_CTRL_MODE; + +typedef struct tagNET_DVR_LAMP_INFO //8 +{ + BYTE byEnable; //0¡«²»¿ªÆô 1 ¡«¿ªÆô + BYTE byFlicker;//0~²»ÉÁ˸ 1 ¡«ÉÁ˸(³µÎ»Ö¸Ê¾µÆÉÁ˸) + BYTE byLampColor;//0- Ãð 1-ºì 2-ÂÌ 3-»Æ 4-À¶ 5-Æ·ºì 6-Çà 7-°×É« (³µÎ»Ö¸Ê¾µÆÑÕÉ«) + BYTE byRes[5]; +}NET_DVR_LAMP_INFO, *LPNET_DVR_LAMP_INFO; + +//ÄÚÖÃÍâÖõÆģʽ +typedef struct tagNET_DVR_PARKLAMP_CTRL_MODE//size == 72 +{ + //³µÎ»×´Ì¬ 0´ú±íÎÞ³µ£¬1´ú±íÓгµ£¬2´ú±íѹÏß(ÓÅÏȼ¶×î¸ß), 3ÌØÊ⳵λ + NET_DVR_LAMP_INFO struLampInfo[MAX_PARKING_STATUS/*8*/]; + //¹ØÁª³µÎ»µÆ£¨0-ÄÚÖõÆ, 1-ÍâÖõÆ1, 2-ÍâÖõÆ2, 3-ÍâÖõÆ3£© + BYTE byLampType; + BYTE byRes[7]; +}NET_DVR_PARKLAMP_CTRL_MODE, *LPNET_DVR_PARKLAMP_CTRL_MODE; + +typedef struct tagNET_DVR_LAMP_PARAM //4 +{ + BYTE byEnable; //0¡«²»¿ªÆô 1 ¡«¿ªÆô + BYTE byFlicker;//0~²»ÉÁ˸ 1 ¡«ÉÁ˸ + BYTE byLampColor;//0- Ãð 1-ºì 2-ÂÌ 3-»Æ 4-À¶ 5-Æ·ºì 6-Çà 7-°×É« + BYTE byRes[3]; +}NET_DVR_LAMP_PARAM, *LPNET_DVR_LAMP_PARAM; + +//ÄÚÖÃÍâÖõÆģʽ +typedef struct tagNET_DVR_EXTERNAL_PARKLAMP //size == 56 +{ + //³µÎ»×´Ì¬ 0´ú±íÎÞ³µ£¬1´ú±íÓгµ£¬2´ú±íѹÏß(ÓÅÏȼ¶×î¸ß), 3ÌØÊ⳵λ + NET_DVR_LAMP_PARAM struLampParam[MAX_PARKING_STATUS/*8*/]; + //¹ØÁª³µÎ»µÆ£¨0-ÄÚÖõÆ, 1-ÍâÖõÆ1, 2-ÍâÖõÆ2, 3-ÍâÖõÆ3£© + BYTE byLampType; + BYTE byRes[7]; +}NET_DVR_EXTERNAL_PARKLAMP, *LPNET_DVR_EXTERNAL_PARKLAMP; + +/*ÄÚÖõƼÓÍâÖõÆģʽÏ ÄÚÖõƿØÖƽṹ×ÓÐÅÏ¢ */ +typedef struct tagNET_DVR_BUILTIN_PARKLAMP +{ + BYTE byEnable; //0¡«²»¿ªÆô 1 ¡«¿ªÆô + BYTE byFlicker; //0~²»ÉÁ˸ 1 ¡«ÉÁ˸ + BYTE byLampColor; //0- Ãð 1-ºì 2-ÂÌ 3-»Æ 4-À¶ 5-Æ·ºì 6-Çà 7-°×É« (ÄÚÖõÆÆðЧ) + BYTE byRes[5]; +}NET_DVR_BUILTIN_PARKLAMP, *LPNET_DVR_BUILTIN_PARKLAMP; + +/* »ìºÏ¿ØÖÆģʽ½á¹¹ */ +typedef struct tagNET_DVR_MIXLAMP_CTRL_MODE +{ + NET_DVR_EXTERNAL_PARKLAMP struExternalParkLamp[MAX_PARKING_NUM/*4*/];//ÍâÖÃµÆ °´ÕÕ³µÎ»ºÅ½øÐÐÇø·Ö£¬Ò»¸öͨµÀ×î´ó4¸ö³µÎ» (´Ó×óµ½ÓÒ³µÎ» Êý×é0¡«3) + NET_DVR_BUILTIN_PARKLAMP struBuiltInParkLamp[MAX_PARKING_STATUS/*8*/];//ÄÚÖÃµÆ °´ÕÕ³µÎ»×´Ì¬Çø·Ö£¬³µÎ»×´Ì¬ 0´ú±íÎÞ³µ£¬1´ú±íÓгµ£¬2´ú±íѹÏß(ÓÅÏȼ¶×î¸ß), 3ÌØÊ⳵λ +}NET_DVR_MIXLAMP_CTRL_MODE, *LPNET_DVR_MIXLAMP_CTRL_MODE; + +/* µ¥¿ØÍâ½ÓµÆ¿ØÖÆģʽ½á¹¹ */ +typedef struct tagNET_DVR_SINGLELAMP_CTRL_MODE //µ¥ÍâÖõÆģʽÊDz»Çø·Ö³µÎ»ÐÅÏ¢£¬ÏÔʾµ±Ç°³µÎ»×´Ì¬ÖУ¬µÈ¼¶×îºÃµÄ״̬£¨Ñ¹Ïß>ÌØÊ⳵λ>ÓÐÎÞ³µ×´Ì¬£© +{ + NET_DVR_PARK_EXTERNAL_SUBINFO struExternLampStateCtrl[MAX_PARKING_STATUS/*4*/];//ÍâÖÃµÆ °´ÕÕ³µÎ»ºÅ½øÐÐÇø·Ö£¬Ò»¸öͨµÀ×î´ó4¸ö³µÎ» (´Ó×óµ½ÓÒ³µÎ» Êý×é0¡«3) + BYTE byLampType; /* 1-ÍâÖõÆ1£¬2-ÍâÖõÆ2£¬3-ÍâÖõÆ3*/ + BYTE byRes[23]; +}NET_DVR_SINGLELAMP_CTRL_MODE, *LPNET_DVR_SINGLELAMP_CTRL_MODE; + +typedef union tagNET_DVR_LAMP_CTRL_MODE_UNION +{ + BYTE uLen[288]; + NET_DVR_INLAY_LAMP_CTRL_MODE struInlayLampCtrlMode;/*ÄÚÖõƿØÖÆģʽ½á¹¹*/ + NET_DVR_EXTERNAL_LAMP_CTRL_MODE struExternalLampCtrlMode;/*Íâ½ÓµÆ¿ØÖÆģʽ½á¹¹*/ + NET_DVR_PARKLAMP_CTRL_MODE struParkLampCtrlMode[MAX_PARKING_NUM/*4*/];/*ÄÚÖÃÍâÖõÆģʽ£¬Ò»¸öͨµÀ×î´ó4¸ö³µÎ» (´Ó×óµ½ÓÒ³µÎ» Êý×é0¡«3) µ±Ä£Ê½ÎªÄÚÍâÖõƵÄʱºòÉúЧ*/ + //³µÎ»¼ì²âÏà»úÄÚÍâÖõƣ¬»ìºÏ¿ØÖÆģʽ£¨Çø·ÖÓëÉÏÃæÄÚÍâÖõÆģʽ£¬¸ÃģʽÏÂÄÚÖõƲ»×÷ΪÍâÖõÆʹÓã¨ÄÚÖÃÍâÖõÆģʽÏ£¬ÄÚÖõÆ×÷ΪÍâÖõÆʹÓã©£©£» + //»ìºÏ¿ØÖÆģʽÏ£¬ÄÚÖõÆÏÔʾµ±Ç°¼à²â³µÎ»×´Ì¬ÖУ¬ÓÅÏȼ¶×î¸ßµÄ³µÎ»×´Ì¬(ѹÏß>ÌØÊ⳵λ>ÓÐÎÞ³µ×´Ì¬)¹ØÁªµÆµÄ״̬ + NET_DVR_MIXLAMP_CTRL_MODE struMixLampCtrlMode; + //µ¥ÍâÖõÆģʽÊDz»Çø·Ö³µÎ»ÐÅÏ¢£¬ÏÔʾµ±Ç°³µÎ»×´Ì¬ÖУ¬µÈ¼¶×îºÃµÄ״̬£¨Ñ¹Ïß>ÌØÊ⳵λ>ÓÐÎÞ³µ×´Ì¬£© + NET_DVR_SINGLELAMP_CTRL_MODE struSingleExternalLampCtrlMode; +}NET_DVR_LAMP_CTRL_MODE_UNION, *LPNET_DVR_LAMP_CTRL_MODE_UNION;/*µÆ¿ØÖÆģʽÁªºÏÌå*/ + +typedef struct tagNET_DVR_LAMP_CTRL_INFO +{ + DWORD dwSize; + BYTE byLampCtrlMode;/*¿ØµÆģʽ£º1´ú±íÄÚÖõÆ,2´ú±íÍâ½ÓµÆ,3´ú±íÄÚÍâÖõÆ,4´ú±í»ìºÏµÆģʽ£¨ÄÚÖõÆÖ»×ö¸ßÓÅÏȼ¶Ö¸Ê¾µÆ),5-´ú±íµ¥ÍâÖõÆģʽ*/ + BYTE byCtrlChannelIndex;/*½»Ìæ¿ØÖÆͨµÀºÅ(33~48)*/ + BYTE byRes[2]; + NET_DVR_LAMP_CTRL_MODE_UNION uLampCtrlMode;/*µÆ¿ØÖÆģʽÁªºÏÌå*/ + BYTE byRes2[32]; +}NET_DVR_LAMP_CTRL_INFO, *LPNET_DVR_LAMP_CTRL_INFO; + +//³µÎ»ÊôÐÔÅäÖã¨Ä¬È϶¼ÊÇnormal£© +typedef struct tagNET_DVR_PARKSPACE_INFO +{ + BYTE byParkSpaceAttribute; //0~ÆÕͨ³µÎ» 1¡«ÌØÊ⳵λ + BYTE byRes[23]; +}NET_DVR_PARKSPACE_INFO, *LPNET_DVR_PARKSPACE_INFO; + +typedef struct tagNET_DVR_PARKSPACE_ATTRIBUTE +{ + DWORD dwSize; + NET_DVR_PARKSPACE_INFO struParkSpaceInfo[MAX_PARKING_NUM];//Ò»¸öͨµÀ×î´ó4¸ö³µÎ» (´Ó×óµ½ÓÒ³µÎ» Êý×é0¡«3) + BYTE byRes[64]; +}NET_DVR_PARKSPACE_ATTRIBUTE, *LPNET_DVR_PARKSPACE_ATTRIBUTE; + +//ָʾµÆÍâ¿Ø +typedef struct tagNET_DVR_LAMP_STATE +{ + BYTE byFlicker;//0~²»ÉÁ˸ 1 ¡«ÉÁ˸ + BYTE byParkingIndex;//³µÎ»ºÅ1¡«3 + BYTE byRes1[2]; + DWORD dwIONo;//1~IO1;2~IO2;4~IO3; + BYTE byRes2[8]; +}NET_DVR_LAMP_STATE, *LPNET_DVR_LAMP_STATE; + +typedef struct tagNET_DVR_LAMP_EXTERNAL_CFG +{ + DWORD dwSize; + BYTE byEnable; //Íâ¿ØʹÄÜ 0¡«²»ÆôÓà 1¡«ÆôÓà + BYTE byRes1[3]; + NET_DVR_LAMP_STATE struLampStateCtrl;//ָʾµÆÍâ¿Ø + BYTE byRes2[32]; +}NET_DVR_LAMP_EXTERNAL_CFG, *LPNET_DVR_LAMP_EXTERNAL_CFG; + +//³µÎ»Ç¿ÖÆץͼ Ò»¸öͨµÀ×î¶àËijµÎ» +typedef struct tagNET_DVR_COMPEL_CAPTURE +{ + DWORD dwSize; + BYTE byParkIndex;/*³µÎ»ÐòºÅ´Ó×óµ½ÓÒ £¨0-±íʾµ±Ç°Óм¸¸ö³µÎ»£¬¾ÍÉÏ´«¼¸ÕÅͼƬ£©1,2,3,4*/ + BYTE byRes[63]; +}NET_DVR_COMPEL_CAPTURE, *LPNET_DVR_COMPEL_CAPTURE; + +//Íâ¿Ø±¨¾¯½á¹¹ +typedef struct tagNET_DVR_EXTERNAL_CONTROL_ALARM +{ + DWORD dwSize; + DWORD dwChannelNo; + NET_DVR_LAMP_STATE struLampStateCtrl;//ָʾµÆÍâ¿Ø״̬ + NET_DVR_TIME struExternalBeginTime;/*Íâ¿Ø¿ªÊ¼Ê±¼ä*/ + BYTE byRes1[64]; +}NET_DVR_EXTERNAL_CONTROL_ALARM, *LPNET_DVR_EXTERNAL_CONTROL_ALARM; + +/* É豸ÀàÐÍ */ +typedef enum tagEXTERNAL_DEVICES_TYPE +{ + DEVICES_TYPE_RES1 = 0, //±£Áô1 + DEVICES_TYPE_FAR_SCR = 1, //Ô¶¾àÀë¶Á¿¨Æ÷ + DEVICES_TYPE_ENTRANCE_CONTROL = 2, //³öÈë¿Ú¿ØÖÆ»ú + DEVICES_TYPE_WJ_LED_DEV = 3, //Íâ½ÓLED + DEVICES_TYPE_NJ_LED_DEV = 4, //ÄÚ½ÓLED + DEVICES_TYPE_VEH_DETECT_DEV = 5, //³µ¼ìÆ÷É豸 + DEVICES_TYPE_DZ_DEV = 6, //µÀÕ¢ + DEVICES_TYPE_PX_SCR_DEV = 7, //ƱÏä¶Á¿¨Æ÷ + DEVICES_TYPE_KJ_SCR_DEV = 8, //¿¨»ú¶Á¿¨Æ÷ + DEVICES_TYPE_FKJ_DEV = 9, //·¢¿¨»ú + DEVICES_TYPE_SKJ_DEV = 10, //ÊÕ¿¨»ú + DEVICES_TYPE_HDD_DEV = 11, //Ó²ÅÌ(ÂãÅÌ 1G) + DEVICES_TYPE_DZ_LOCK = 12, //µÀÕ¢Ëøբ״̬£¬0±íʾδËøÕ¢£¬1±íʾËøÕ¢ + DEVICES_TYPE_PAPER_PRINTER = 13, //ֽƱ´òÓ¡»ú + DEVICES_TYPE_PAPER_SCANNERS = 14, //ֽƱɨÃèÒÇ + DEVICES_TYPE_IPC_ALARM = 15 //IPC²¼·À״̬ +}EXTERNAL_DEVICES_TYPE; + +/* É豸״̬ */ +typedef enum tagEXTERNAL_DEVICES_STATUS +{ + /* ͨÓÃÉ豸״̬Âë 0~19*/ + DEVICES_STATUS_NORMAL = 0, //״̬Õý³£ + DEVICES_STATUS_ABNORMAL = 1, //״̬Òì³£ + + /* ·¢¿¨»úÉ豸״̬Âë 20~39*/ + DEVICES_STATUS_TOO_LESS_CARD = 20, //·¢¿¨»úÉÙ¿¨ + DEVICES_STATUS_NO_CARD = 21, //·¢¿¨»úÎÞ¿¨ + DEVICES_STATUS_SENDCARD_ERROR = 22, //Ô¤·¢¿¨´íÎó + DEVICES_STATUS_CARD_BLOCKED = 23, //¶Â¿¨ + DEVICES_STATUS_CARD_FULL = 24, //»ØÊÕ²Ö¿¨Âú + + + /* µÀÕ¢É豸״̬Âë 40~60*/ + DEVICES_STATUS_OPENING = 40, //µÀÕ¢ÕýÔÚ¿ª + DEVICES_STATUS_CLOSING = 41, //µÀÕ¢ÕýÔÚ¹Ø + DEVICES_STATUS_OPENED = 42, //µÀÕ¢¿ªµ½Î» + DEVICES_STATUS_CLOSED = 43, //µÀÕ¢¹Øµ½Î» + DEVICES_STATUS_NOSIGNAL = 44, //µÀÕ¢ÎÞÐźŠ+ DEVICES_STATUS_LOCK= 45, //ËøÕ¢ + + /* ֽƱ´òÓ¡»ú״̬ 61~90*/ + PP_STATUS_OFFLINE = 61, //ÍÑ»ú + PP_STATUS_PRINT_HEADER_UP, // ´òӡͷ̧Æð + PP_STATUS_FEED_BUTTON_FEEDING, //ÕýÔÚÓýøÖ½¼ü½øÖ½ + PP_STATUS_ONLINE_WAITING, //Áª»úµÈ´ý + PP_STATUS_FEED_BUTTON_ENABLE, //°´¼ü½øֽʹÄÜΪ¿ª + PP_STATUS_JAMR_PAPER_ERROR, //¿¨Ö½´íÎó + PP_STATUS_CUT_PAPER_ERROR, //Çе¶´íÎó + PP_STATUS_AUTO_FEED_ERROR, //×Ô¶¯ÉÏÖ½´íÎó + PP_STATUS_EXIT_RECOVERY_ERROR, //Óпɻָ´´íÎó + PP_STATUS_EXIT_AUTO_RECOVERY_ERROR, //ÓпÉ×Ô¶¯»Ö¸´´íÎó + PP_STATUS_PULL_PAPER_ERROR, //À­Ö½´íÎó + PP_STATUS_LESS_PAPER , //Ö½½«¾¡ + PP_STATUS_NO_PAPER, //ÎÞÖ½ + PP_STATUS_PRINT_FAIL, //´òӡʧ°Ü + PP_STATUS_PRINTING, //ÕýÔÚ´òÓ¡ +}EXTERNAL_DEVICES_STATUS; + +/* Íâ½ÓÉ豸¿ØÖÆÀàÐÍ */ +typedef enum tagEXTERNAL_DEVICESCTRL_TYPE +{ + DEVICES_CTRL_RES = 0, //Ô¤Áô(²»È¥Çø·Ö¾ßÌå¿ØÖÆÀàÐÍ) + DEVICES_CTRL_REMOTE = 1, //Ò£¿ØÆ÷¿ØÖÆ£¬µ±Ç°½öÍâÉèΪµÀբʱ֧³Öͨ¹ýÒ£¿ØÆ÷¿ªÕ¢ +}EXTERNAL_DEVICESCTRL_TYPE; + + +typedef struct tagNET_DVR_GATE_ALARMINFO +{ + DWORD dwSize; + //0x1³µÁ¾·Ç·¨ÇÖÈ뱨¾¯ + //0x2µÀÕ¢³¬Ê±Î´¹Ø±¨¾¯ + //0x3³µÁ¾Ñ¹ÏßȦ³¬Ê±±¨¾¯ + //0x4·¢¿¨±¨¾¯£¨ÎÞ¿¨£© + //0x5·¢¿¨±¨¾¯£¨ÉÙ¿¨£© + //0x6·¢¿¨±¨¾¯£¨·¢¿¨Òì³££© + BYTE byAlarmType; + BYTE byExternalDevType;//Íâ½ÓÉ豸ÀàÐÍ(EXTERNAL_DEVICES_TYPE) + BYTE byExternalDevStatus;//Íâ½ÓÉ豸ÀàÐÍ(EXTERNAL_DEVICES_STATUS) + BYTE byExternalDevCtrlType;//Íâ½ÓÉ豸¿ØÖÆÀàÐÍ(EXTERNAL_DEVICESCTRL_TYPE) + NET_DVR_TIME_V30 struAlarmTime;//±¨¾¯Ê±¼ä + union + { + BYTE uLen[128]; + struct + { + char sLicense[MAX_LICENSE_LEN/*16*/];//³µÅƺÅÂë + /*³µÁ¾ÀàÐÍ0-±£Áô 1-¹Ì¶¨³µ£¬2-ÁÙʱ³µ£¬3-Ô¤¶©³µ£¬4-Áª¼ì³µ£¬5-ÊÚȨ³µ*/ + BYTE byVehicleType; + BYTE byRes1[111]; + }struVehicleInfo;//µ±struAlarmTypeΪ(0x1³µÁ¾·Ç·¨ÇÖÈ뱨¾¯) + }uAlarmInfo; + BYTE byRes2[64]; //Ô¤Áô +}NET_DVR_GATE_ALARMINFO, *LPNET_DVR_GATE_ALARMINFO; + +typedef struct tagNET_DVR_ALARMWIRELESSINFO +{ + BYTE byDeviceID[NAME_LEN]; //É豸ID + float fDataTraffic; /* ÒÑÓÃÁ÷Á¿,µ¥Î»£ºMB,СÊýµãºóÁ½Î»*/ + BYTE bySignalIntensity; /* ÐźÅÇ¿¶È£¬0~100*/ + BYTE byRes[127]; +}NET_DVR_ALARMWIRELESSINFO, *LPNET_DVR_ALARMWIRELESSINFO; + +typedef struct tagNET_DVR_VOLTAGE +{ + int iPhaseAVol; //AÏàµçѹ + int iPhaseBVol; //BÏàµçѹ + int iPhaseCVol; //CÏàµçѹ + int iAveragePhaseVol; //Ïàµçѹƽ¾ùÖµ +}NET_DVR_VOLTAGE, *LPNET_DVR_VOLTAGE; + +typedef struct _tagNET_DVR_LINE_VOLTAGE +{ + int iLineVolAB; //ABÏßµçѹ + int iLineVolBC; //BCÏßµçѹ + int iLineVolCA; //CAÏßµçѹ + int iAverageLineVol; //Ïßµçѹƽ¾ùÖµ +} NET_DVR_LINE_VOLTAGE,*LPNET_DVR_LINE_VOLTAGE; + + +//µçÁ÷ +typedef struct tagNET_DVR_CURRENT +{ + int iPhaseACurrent; //AÏàµçÁ÷ + int iPhaseBCurrent; //BÏàµçÁ÷ + int iPhaseCCurrent; //CÏàµçÁ÷ + BYTE byRes[4]; +}NET_DVR_CURRENT, *LPNET_DVR_CURRENT; + +//¹¦ÂÊ +typedef struct tagNET_DVR_POWER +{ + int iPhaseAPower; //AÏ๦ÂÊ + int iPhaseBPower; //BÏ๦ÂÊ + int iPhaseCPower; //CÏ๦ÂÊ + int iSysTotalPower; //ϵͳ×ܹ¦ÂÊ +}NET_DVR_POWER, *LPNET_DVR_POWER; + +//¹¦ÂÊÒòÊý +typedef struct tagNET_DVR_POWER_FACTOR +{ + int iPhaseAPowerFactor; //AÏ๦ÂÊÒòÊý + int iPhaseBPowerFactor; //BÏ๦ÂÊÒòÊý + int iPhaseCPowerFactor; //CÏ๦ÂÊÒòÊý + int iTotalPowerFactor; //×ܹ¦ÂÊÒòÊý +}NET_DVR_POWER_FACTOR, *LPNET_DVR_POWER_FACTOR; + +//ƵÂÊ +typedef struct tagNET_DVR_FREQUENCY +{ + int iPhaseAFrequency; //AÏàƵÂÊ + int iPhaseBFrequency; //BÏàƵÂÊ + int iPhaseCFrequency; //CÏàƵÂÊ + BYTE byRes[4]; +}NET_DVR_FREQUENCY, *LPNET_DVR_FREQUENCY; + +//¸ºÔØÂÊ +typedef struct tagNET_DVR_LOAD_FACTOR +{ + int iPhaseALoadFactor; //AÏฺÔØÂÊ + int iPhaseBLoadFactor; //BÏฺÔØÂÊ + int iPhaseCLoadFactor; //CÏฺÔØÂÊ + BYTE byRes[4]; +} NET_DVR_LOAD_FACTOR, *LPNET_DVR_LOAD_FACTOR; + +//UPS״̬ +typedef struct tagNET_DVR_ALARMHOST_UPS_STATE +{ + NET_DVR_VOLTAGE struInputVoltage; //ÊäÈëµçѹ + NET_DVR_VOLTAGE struBypassVoltage; //ÅÔ·µçѹ + NET_DVR_VOLTAGE struOutputVoltage; //Êä³öµçѹ + int iRectifierVol; //ÕûÁ÷Æ÷µçѹ + int iInverterVol; //Äæ±äÆ÷µçѹ + + NET_DVR_CURRENT struInputCurrent; //ÊäÈëµçÁ÷ + NET_DVR_CURRENT struBypassCurrent; //ÅÔ·µçÁ÷ + NET_DVR_CURRENT struOutputCurrent; //Êä³öµçÁ÷ + int iInverterCurrent; //Äæ±äÆ÷µçÁ÷ + + NET_DVR_FREQUENCY struInputFrequency; //ÊäÈëƵÂÊ + NET_DVR_FREQUENCY struBypassFrequency; //ÅÔ·ƵÂÊ + NET_DVR_FREQUENCY struOutputFrequency; //Êä³öƵÂÊ + int iInverterFre; //Äæ±äÆ÷ƵÂÊ + + NET_DVR_POWER struInputPower; //ÊäÈ빦ÂÊ + NET_DVR_POWER struBypassPower; //ÅÔ·¹¦ÂÊ + NET_DVR_POWER struOutputPower; //Êä³ö¹¦ÂÊ + NET_DVR_POWER struComplexPower; //¸´¹¦ÂÊ + + int iNormalPower; //±ê³Æ¹¦ÂÊ + int iPowerFacter; //¹¦ÂÊÒòÊý + + NET_DVR_LOAD_FACTOR struBatteryLoadFactor; //µç³Ø¸ºÔØÂÊ + int iBatteryEstimated; //µç³Ø±¸·Ýʱ¼ä(min) + int iBatteryTemperature; //µç³ØÎÂ¶È + int iBatteryVoltage; //µç³Øµçѹ + + + BYTE byRectifierState; //ÕûÁ÷Æ÷ÔËÐÐ״̬/*1Õý³£ 2Òì³£*/ + BYTE byInverterState; //Äæ±äÆ÷ÔËÐÐ״̬/*1Õý³£ 2Òì³£*/ + BYTE byChargeState; //³äµçÆ÷ÔËÐÐ״̬/*1Õý³£ 2Òì³£*/ + BYTE byBatteryState; //µç³ØÔËÐÐ״̬/*1Õý³£ 2Òì³£*/ + BYTE byAutoBypassState; //×Ô¶¯ÅÔ·״̬/*1Õý³£ 2Òì³£*/ + BYTE byRes2[247]; +} NET_DVR_ALARMHOST_UPS_STATE, *LPNET_DVR_ALARMHOST_UPS_STATE; + +//¿ª¹ØµçԴ״̬ +typedef struct tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE +{ + NET_DVR_VOLTAGE struACVoltage; //½»Á÷µçѹ + int iDCConvertVoltage; //DCת»»Æ÷µçѹ + NET_DVR_CURRENT struACCurrent; //½»Á÷µçÁ÷ + int iTotalCurrent; //¸ºÔØ×ܵçÁ÷ + int iBattery1Temperature; //µç³Ø1ÎÂ¶È + int iBattery2Temperature; //µç³Ø2ÎÂ¶È + int iBattery1Current; //µç³Ø1µçÁ÷ + int iBattery2Current; //µç³Ø2µçÁ÷ + int iBattery3Current; //µç³Ø3µçÁ÷ + int iBattery4Current; //µç³Ø4µçÁ÷ + int iBatteryTestVoltage; //µç³Ø²âÊÔµçѹ + int iRectifierOutputVoltage; //ÕûÁ÷Ä£¿éÊä³öµçѹ + int iRectifierOutputCurrent; //ÕûÁ÷Ä£¿éÊä³öµçÁ÷ + int iDCOutputVoltage; //Ö±Á÷Êä³öµçѹ + BYTE byRes[432]; +} NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE, +*LPNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE; + +//ÆøÌå̽²âÆ÷״̬ +typedef struct tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE +{ + int iSF6; //SF6£¬µ¥Î»ppm + int iFlow; //Á÷Á¿£¬ml/min + int iTemperature; //ζȣ¬µ¥Î»ÉãÊÏ¶È + int iO2; //ÑõÆø£¬µ¥Î»% + int iHumidity; //ʪ¶È£¬µ¥Î»% + BYTE byRes[492]; +} NET_DVR_ALARMHOST_GAS_DETECTOR_STATE, +*LPNET_DVR_ALARMHOST_GAS_DETECTOR_STATE; + +//ÎÂʪ¶È´«¸ÐÆ÷״̬ +typedef struct tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE +{ + int iTemperature; //ζȣ¬µ¥Î»ÉãÊÏ¶È + int iHumidity; //ʪ¶È£¬µ¥Î»% + BYTE byRes[504]; +} NET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE, *LPNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE; + +//¿Õµ÷״̬ +typedef struct tagNET_DVR_ALARMHOST_AIRCONDITION_STATE +{ + int iTemperature; //ζȣ¬µ¥Î»ÉãÊÏ¶È + int iHumidity; //ʪ¶È£¬µ¥Î»% + BYTE byRunState; //ÔËÐÐ״̬ 1-Õý³££¬2-Í£»ú + BYTE byRes[503]; +} NET_DVR_ALARMHOST_AIRCONDITION_STATE, *LPNET_DVR_ALARMHOST_AIRCONDITION_STATE; + + +//µçÁ¿±í״̬ +typedef struct tagNET_DVR_ALARMHOST_ELECTRICITY_STATE +{ + int iDCVoltage; //Ö±Á÷µçѹ + int iDCCurrent; //Ö±Á÷µçÁ÷ + NET_DVR_VOLTAGE struPhaseVoltage; //Ïàµçѹ + NET_DVR_LINE_VOLTAGE struLineVoltage; //Ïßµçѹ + NET_DVR_CURRENT struCurrent[4]; //µçÁ÷£¬struCurrent[0]±íʾµÚ1·, ÒÔ´ËÀàÍÆ + int iAverageCurrent; //ƽ¾ùµçÁ÷ + int iNeutralCurrent; //ÖÐÏßµçÁ÷ + NET_DVR_POWER struActivePower[4]; //Óй¦¹¦ÂÊ struActivePower[0]±íʾµÚһ·Óй¦¹¦ÂÊ£¬ÒÔ´ËÀàÍÆ + NET_DVR_POWER struReactivePower[4]; //ÎÞ¹¦¹¦ÂÊ struReactivePower[0]±íʾµÚһ·ÎÞ¹¦¹¦ÂÊ£¬ÒÔ´ËÀàÍÆ + NET_DVR_POWER struApparentPower[4]; //ÊÓÔÚ¹¦ÂÊ struApprentPower[0]±íʾµÚһ·ÊÓÔÚ¹¦ÂÊ£¬ÒÔ´ËÀàÍÆ + NET_DVR_POWER_FACTOR struPowerFactor[4]; //¹¦ÂÊÒòÊý£¬struPowerFactor[0]±íʾµÚһ·¹¦ÂÊÒòÊý£¬ÒÔ´ËÀàÍÆ + NET_DVR_FREQUENCY struFrequency; //ƵÂÊ + BYTE byRes[128]; +}NET_DVR_ALARMHOST_ELECTRICITY_STATE, *LPNET_DVR_ALARMHOST_ELECTRICITY_STATE; + +//±äµçÆ÷ÎÂÏÔ±í״̬ +typedef struct tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE +{ + int iPhaseATemperature; //AÏàÎÂ¶È + int iPhaseBTemperature; //BÏàÎÂ¶È + int iPhaseCTemperature; //CÏàÎÂ¶È + int iPhaseDTemperature; //DÏàÎÂ¶È + BYTE byRes[496]; +}NET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE, *LPNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE; + +//ˮλ´«¸ÐÆ÷ +typedef struct tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR +{ + LONG iWaterLevel; //ˮλ + BYTE byRes[508]; +}NET_DVR_ALARMHOST_WATERLEVEL_SENSOR, *LPNET_DVR_ALARMHOST_WATERLEVEL_SENSOR; + +//Ñï³¾ÔëÉù´«¸ÐÆ÷ +typedef struct tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR +{ + LONG iDust; //Ñï³¾ + LONG iNoise; //ÔëÉù + LONG iPM25; //PM2.5 + BYTE byRes[500]; +}NET_DVR_ALARMHOST_DUSTNOISE_SENSOR, *LPNET_DVR_ALARMHOST_DUSTNOISE_SENSOR; + +//»·¾³²É¼¯ÒÇ +typedef struct tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER +{ + LONG iAmmoniaNitrogen; //°±µª + LONG iCOD; //COD + LONG iPH; //PH + LONG iOxygen; //ÑõÆø + LONG iSulfurDioxide; //¶þÑõ»¯Áò + LONG iSoot; //Ñ̳¾ + LONG iFluoride; //·ú»¯Îï + LONG iPollutedWater; //ÎÛË® + LONG iTotalPhosphorus; //×ÜÁ× + LONG iExhaust; //·ÏÆø + LONG iNitrogenOxides; //µªÑõ»¯Îï + LONG iFlueGasTemperature;//ÑÌÆøÎÂ¶È + LONG iFlueGasPressure; //ÑÌÆøѹÁ¦ + LONG iDustThickness; /*·Û³¾Å¨¶È*/ + LONG iAirCleanLevel; /*¿ÕÆø½à¾»¶ÈµÈ¼¶*/ + LONG iPm10Thickness; /*PM10Ũ¶È*/ + BYTE byRes[448]; +}NET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER, *LPNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER; + +//·çËÙ´«¸ÐÆ÷״̬ +typedef struct +{ + int iWindSpeed; /*·çËÙ*/ + BYTE byRes[508]; +}NET_DVR_WIND_SPEED_STATE, *LPNET_DVR_WIND_SPEED_STATE; + +//ͨÓÃÀ©Õ¹Êä³öÄ£¿é״̬£¨48·£¬Ã¿Î»±íʾ1·£¬0±íʾ¹Ø£¬1±íʾ¿ª£© +typedef struct +{ + BYTE byOutPutState1; /*output1-8*/ + BYTE byOutPutState2; /*output9-16*/ + BYTE byOutPutState3; /*output17-24*/ + BYTE byOutPutState4; /*output25-32*/ + BYTE byOutPutState5; /*output33-40*/ + BYTE byOutPutState6; /*output41-48*/ + BYTE Res[506]; +}NET_DVR_GENERATE_OUTPUT_STATE, *LPNET_DVR_GENERATE_OUTPUT_STATE; + +//½þË®´«¸ÐÆ÷״̬ +typedef struct +{ + int iWaterLogVal; /* й¶λÖã¬100±¶*/ + int iLeakResist1; /*µÚһ·©ˮµç×è*/ + int iTotolResist1; /*µÚһ·×ܵç×è*/ + int iLeakResist2; /*µÚ¶þ·©ˮµç×è*/ + int iTotolResist2; /*µÚ¶þ·×ܵç×è*/ + BYTE byWaterLogAlarm; /* й©±¨¾¯1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byLeakAlarm1; /*µÚһ·©ˮ¸æ¾¯1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byFaultAlarm1; /*µÚһ·¹ÊÕϸ澯1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byLeakAlarm2; /*µÚ¶þ·©ˮ¸æ¾¯1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byFaultAlarm2; /*µÚ¶þ·¹ÊÕϸ澯1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byRes[487]; +}NET_DVR_SOAK_STATE, *LPNET_DVR_SOAK_STATE; + +//Ì«ÑôÄÜ¿ØÖÆÆ÷״̬ +typedef struct +{ + int iChangerVolInput; /*³äµçÉ豸ÊäÈëµçѹ*/ + int iChangerCurInput; /*³äµçÉ豸ÊäÈëµçÁ÷*/ + int iChangerPwInput; /*³äµçÉ豸ÊäÈ빦ÂÊ*/ + int iChangerVolOutput; /*³äµçÉ豸Êä³öµçѹ*/ + int iChangerCurOutput; /*³äµçÉ豸Êä³öµçÁ÷*/ + int iChangerPwOutput; /*³äµçÉ豸Êä³ö¹¦ÂÊ*/ + int iDischangerVolOutput; /*·ÅµçÉ豸Êä³öµçѹ*/ + int iDischangerCurOutput; /*·ÅµçÉ豸Êä³öµçÁ÷*/ + int iDischangerPwOutput; /*·ÅµçÉ豸Êä³ö¹¦ÂÊ*/ + int iDevTemperatrue; /*É豸ÄÚζÈ*/ + BYTE byBatteryVolState; /*Ðîµç³Øµçѹ״̬1£ºÕý³££¬2£ºÒì³£*/ + BYTE byBatteryTmpState; /*Ðîµç³ØζÈ״̬1£ºÕý³££¬2£ºÒì³£*/ + BYTE byChangerVolInputState; /*³äµçÉ豸ÊäÈëµçѹ״̬1£ºÕý³££¬2£ºÒì³£*/ + BYTE byChangerRunState; /*³äµçÉ豸ÔËÐÐ״̬1£ºÕý³££¬2£º´ý»ú*/ + BYTE byChangerChgState; /*³äµçÉ豸³äµç״̬1£ºÕý³££¬2£ºÒì³£*/ + BYTE byBatteryVolFlt; /*Ðîµç³Øµçѹ¹ÊÕÏ1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byBatteryTmpFlt; /*Ðîµç³ØζÈÒì³£1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byBatteryResistanceFlt; /*Ðîµç³ØÄÚ×èÒì³£1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byVolRcgFlt; /*¶î¶¨µçѹʶ±ð´íÎó1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byChangerVolInputFlt; /*³äµçÉ豸ÊäÈëµçѹÒì³£1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byChangerMosShort; /*³äµçMOS¹Ü¶Ì·1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byChangerAntiOrMosShort; /*³äµç»ò·À·´MOS¹Ü¶Ì·1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byChangerAntiShort; /*·À·´MOS¹Ü¶Ì·1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byInputOverCur; /*ÊäÈë¹ýÁ÷1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byLoadOverCur; /*¸ºÔعýÁ÷1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byLoadShort; /*¸ºÔضÌ·1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byLoadMosShort; /*¸ºÔØMOS¹Ü¶Ì·1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byChangerFlt; /*³äµçÉ豸¹ÊÕÏ1£ºÕý³££¬2£º¸æ¾¯*/ + BYTE byRes[454]; +}NET_DVR_SOLAR_POWER_STATE, *LPNET_DVR_SOLAR_POWER_STATE; + +//SF6±¨¾¯Ö÷»ú״̬ +typedef struct +{ + int iSf6Thick1; /*µÚÒ»µãSF6Ũ¶È*/ + int iO2Thick1; /*µÚÒ»µãÑõÆøŨ¶È*/ + int iTemprature1; /*µÚÒ»µãζÈ*/ + int iHumidity1; /*µÚÒ»µãʪ¶È*/ + int iSf6Thick2; /*µÚ¶þµãSF6Ũ¶È*/ + int iO2Thick2; /*µÚ¶þµãÑõÆøŨ¶È*/ + int iTemprature2; /*µÚ¶þµãζÈ*/ + int iHumidity2; /*µÚÈýµãʪ¶È*/ + int iSf6Thick3; /*µÚÈýµãSF6Ũ¶È*/ + int iO2Thick3; /*µÚÈýµãÑõÆøŨ¶È*/ + int iTemprature3; /*µÚÈýµãζÈ*/ + int iHumidity3; /*µÚÈýµãʪ¶È*/ + int iSf6Thick4; /*µÚËĵãSF6Ũ¶È*/ + int iO2Thick4; /*µÚËĵãÑõÆøŨ¶È*/ + int iTemprature4; /*µÚËĵãζÈ*/ + int iHumidity4; /*µÚËĵãʪ¶È*/ + int iSf6Thick5; /*µÚÎåµãSF6Ũ¶È*/ + int iO2Thick5; /*µÚÎåµãÑõÆøŨ¶È*/ + int iTemprature5; /*µÚÎåµãζÈ*/ + int iHumidity5; /*µÚÎåµãʪ¶È*/ + int iSf6Thick6; /*µÚÁùµãSF6Ũ¶È*/ + int iO2Thick6; /*µÚÁùµãÑõÆøŨ¶È*/ + int iTemprature6; /*µÚÁùµãζÈ*/ + int iHumidity6; /*µÚÁùµãʪ¶È*/ + int iSf6Thick7; /*µÚÆßµãSF6Ũ¶È*/ + int iO2Thick7; /*µÚÆßµãÑõÆøŨ¶È*/ + int iTemprature7; /*µÚÆßµãζÈ*/ + int iHumidity7; /*µÚÆßµãʪ¶È*/ + int iSf6Thick8; /*µÚ°ËµãSF6Ũ¶È*/ + int iO2Thick8; /*µÚ°ËµãÑõÆøŨ¶È*/ + int iTemprature8; /*µÚ°ËµãζÈ*/ + int iHumidity8; /*µÚ°Ëµãʪ¶È*/ + int iSf6Thick9; /*µÚ¾ÅµãSF6Ũ¶È*/ + int iO2Thick9; /*µÚ¾ÅµãÑõÆøŨ¶È*/ + int iTemprature9; /*µÚ¾ÅµãζÈ*/ + int iHumidity9; /*µÚ¾Åµãʪ¶È*/ + int iSf6Thick10; /*µÚÊ®µãSF6Ũ¶È*/ + int iO2Thick10; /*µÚÊ®µãÑõÆøŨ¶È*/ + int iTemprature10; /*µÚÊ®µãζÈ*/ + int iHumidity10; /*µÚÊ®µãʪ¶È*/ + int iSf6Thick11; /*µÚʮһµãSF6Ũ¶È*/ + int iO2Thick11; /*µÚʮһµãÑõÆøŨ¶È*/ + int iTemprature11; /*µÚʮһµãζÈ*/ + int iHumidity11; /*µÚʮһµãʪ¶È*/ + int iSf6Thick12; /*µÚÊ®¶þµãSF6Ũ¶È*/ + int iO2Thick12; /*µÚÊ®¶þµãÑõÆøŨ¶È*/ + int iTemprature12; /*µÚÊ®¶þµãζÈ*/ + int iHumidity12; /*µÚÊ®¶þµãʪ¶È*/ + BYTE byFanState1; /*·ç»ú״̬1 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState2; /*·ç»ú״̬2 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState3; /*·ç»ú״̬3 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState4; /*·ç»ú״̬4 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState5; /*·ç»ú״̬5 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState6; /*·ç»ú״̬6 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState7; /*·ç»ú״̬7 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState8; /*·ç»ú״̬8 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState9; /*·ç»ú״̬9 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState10; /*·ç»ú״̬10 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState11; /*·ç»ú״̬11 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byFanState12; /*·ç»ú״̬12 1£ºÔËÐУ¬2£ºÍ£Ö¹*/ + BYTE byRes[308]; +}NET_DVR_SF6_ALARMHOST_STATE, *LPNET_DVR_SF6_ALARMHOST_STATE; + +//³ÆÖØÒÇ״̬ +typedef struct +{ + int iWeight; /*³ÆÖØÖµ,1000±¶*/ + BYTE byRes[508]; +}NET_DVR_WEIGHT_STATE, *LPNET_DVR_WEIGHT_STATE; + +//ÆøÏó²É¼¯ÏµÍ³×´Ì¬ +typedef struct +{ + int iAirTemperature; /* ¿ÕÆøζÈ*/ + DWORD dwAirHumidity; /* ¿ÕÆøʪ¶È*/ + DWORD dwWindSpeed; /* ·çËÙ*/ + DWORD dwWindDirection; /* ·çÏò*/ + DWORD dwIlluminationIntensity; /* ¹âÕÕÇ¿¶È*/ + DWORD dwCO2; /* co2Ũ¶È*/ + DWORD dwPM25; /* PM2.5Ũ¶È*/ + DWORD dwAirPressure; /* ´óÆøѹÁ¦*/ + int iSoilTemperature; /* ÍÁÈÀζÈ*/ + DWORD dwSoilHumidity; /* ÍÁÈÀʪ¶È*/ + DWORD dwRainFall; /*½µÓêÁ¿*/ + BYTE byIsRainSnow; /* ÓêÑ©Çé¿ö£¬1-ÎÞÓêÑ©£¬2-ÓÐÓêÑ©*/ + BYTE byRes[467]; +}NET_DVR_WEATHER_STATION_STATE, *LPNET_DVR_WEATHER_STATION_STATE; + +//Ë®Öʼà²âÒÇ״̬ +typedef struct +{ + DWORD dwTurbidity; /* ×ǶÈÖµ*/ + DWORD dwChlorine; /* ÓàÂÈÖµ*/ + DWORD dwPH; /* PH Öµ*/ + BYTE byRes[500]; +}NET_DVR_WATER_QLT_STATE, *LPNET_DVR_WATER_QLT_STATE; + +//ȼÆø¼à²âϵͳ״̬ +typedef struct +{ + int iNatrualGasThick; /* ÌìÈ»ÆøŨ¶È*/ + BYTE byRes[508]; +}NET_DVR_FUEL_GAS_DETE_STATE, *LPNET_DVR_FUEL_GAS_DETE_STATE; + +//Ïû·ÀÖ÷»úÉ豸 +typedef struct tagNET_DVR_FIRE_ALARM_STATUS +{ + BYTE byFireAlarm[MAX_FIRE_ALARM_ZONE][MAX_FIRE_ALARM_POINT_ZONE]; //»ðµã״̬²ÎÊý룬1-Õý³££¬2-¸æ¾¯ + BYTE byRes[128]; //±£Áôλ +}NET_DVR_FIRE_ALARM_STATUS, *LPNET_DVR_FIRE_ALARM_STATUS; + +typedef union tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION +{ + NET_DVR_ALARMHOST_UPS_STATE struUpsState; //UPS״̬ + NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE struSwitchPowerState;//¿ª¹ØµçԴ״̬ + NET_DVR_ALARMHOST_GAS_DETECTOR_STATE struGasDetectorState;//ÆøÌå¼ì²âϵͳ״̬ + NET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE struTempHumiSensorState;//ÎÂʪ¶È´«¸ÐÆ÷״̬ + NET_DVR_ALARMHOST_AIRCONDITION_STATE struAirConditionState;//¿Õµ÷״̬ + NET_DVR_ALARMHOST_ELECTRICITY_STATE struElectricityState;//µçÁ¿±í״̬ + NET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE struTransformerTempState; //±äµçÆ÷״̬ + NET_DVR_ALARMHOST_WATERLEVEL_SENSOR struWaterLevelSensor;//ˮλ´«¸ÐÆ÷ + NET_DVR_ALARMHOST_DUSTNOISE_SENSOR struDustNoiseSensor;//Ñï³¾ÔëÉù´«¸ÐÆ÷ + NET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER struEnvironmentLogger;//»·¾³²É¼¯ÒÇ + NET_DVR_WIND_SPEED_STATE struWindSpeedState; //·çËÙ´«¸ÐÆ÷״̬ + NET_DVR_GENERATE_OUTPUT_STATE struGenerateOutputState; //ͨÓÃÀ©Õ¹Êä³öÄ£¿é״̬£¨48·£¬Ã¿Î»±íʾ1·£© + NET_DVR_SOAK_STATE struSoakState; //½þË®´«¸ÐÆ÷״̬ + NET_DVR_SOLAR_POWER_STATE struSolarPowerState; //Ì«ÑôÄÜ¿ØÖÆÆ÷״̬ + NET_DVR_SF6_ALARMHOST_STATE struSF6AlarmHostState; //SF6±¨¾¯Ö÷»ú״̬ + NET_DVR_WEIGHT_STATE struWeightState; //³ÆÖØÒÇ״̬ + NET_DVR_WEATHER_STATION_STATE struWeatherStationState; //ÆøÏó²É¼¯ÏµÍ³×´Ì¬ + NET_DVR_WATER_QLT_STATE struWaterQltState; //Ë®Öʼà²âÒÇ״̬ + NET_DVR_FUEL_GAS_DETE_STATE struFuelGasDeteState; //ȼÆø¼à²âϵͳ״̬ + NET_DVR_FIRE_ALARM_STATUS struFireAlarmStatus; //Ïû·ÀÖ÷»úÉ豸״̬ + BYTE byRes[512]; +} NET_DVR_EXTERNAL_DEVICE_STATE_UNION, *LPNET_DVR_EXTERNAL_DEVICE_STATE_UNION; + +typedef struct tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE +{ + DWORD dwSize; + BYTE byDevType; //1-UPS£¬2-¿ª¹ØµçÔ´£¬3-ÆøÌå¼ì²âϵͳ£¬4-ÎÂʪ¶È´«¸ÐÆ÷£¬5-¿Õµ÷£¬6-µçÁ¿±í£¬7-±äµçÆ÷״̬, 8-ˮλ´«¸ÐÆ÷¡¢9-Ñï³¾ÔëÉù´«¸ÐÆ÷¡¢10-»·¾³²É¼¯ÒÇ¡¢11-·çËÙ´«¸ÐÆ÷״̬¡¢12-ͨÓÃÀ©Õ¹Êä³öÄ£¿é״̬¡¢13-½þË®´«¸ÐÆ÷״̬¡¢14-Ì«ÑôÄÜ¿ØÖÆÆ÷״̬¡¢15-SF6±¨¾¯Ö÷»ú״̬¡¢16-³ÆÖØÒÇ״̬¡¢17-ÆøÏó²É¼¯ÏµÍ³×´Ì¬¡¢18-Ë®Öʼì²âÒÇ״̬¡¢19-ȼÆø¼à²âϵͳ״̬¡¢20-Ïû·ÀÖ÷»ú״̬ + BYTE byRes1[3]; + NET_DVR_EXTERNAL_DEVICE_STATE_UNION struDevState; + BYTE byRes2[32]; +} NET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE, *LPNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE; + +//ͨÓÃÀ©Õ¹Êä³öÄ£¿é¿ØÖÆ£¨48·£¬Ã¿Î»±íʾ1·£© +typedef struct +{ + DWORD dwSize; + BYTE byOutPutState1; /*output1-8*/ + BYTE byOutPutState2; /*output9-16*/ + BYTE byOutPutState3; /*output17-24*/ + BYTE byOutPutState4; /*output25-32*/ + BYTE byOutPutState5; /*output33-40*/ + BYTE byOutPutState6; /*output41-48*/ + BYTE byOperateType; //²Ù×÷ÀàÐÍ£¬0-ÎÞЧ£¬1-¿ª£¬2-¹Ø + BYTE Res[65]; +}NET_DVR_GENERATE_OUTPUT_CTRL, *LPNET_DVR_GENERATE_OUTPUT_CTRL; + +//UPS±¨¾¯ÏÞÖµ +typedef struct tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE +{ + int iInputVolHigh; //Ô½ÏÞÊäÈëµçѹֵ(¸ßÖµ) + int iInputVolLow; //Ô½ÏÞÊäÈëµçѹֵ(µÍÖµ) + int iInputFreHigh; //Ô½ÏÞÊäÈëƵÂÊÖµ(¸ßÖµ) + int iInputFreLow; //Ô½ÏÞÊäÈëƵÂÊÖµ(µÍÖµ) + int iOutputVolHigh; //Ô½½çÊä³öµçѹֵ(¸ßÖµ) + int iOutputVolLow; //Ô½½çÊä³öµçѹֵ(µÍÖµ) + int iBatteryVoltageLow; //µç³ØµÍµçѹÏÞÖµ + int iBatterySurplus; //µç³Øºó±¸Ê±¼äµÍ ÏÞÖµ + int iBatteryTemperatureHigh;//µç³ØζȸßÏÞÖµ + BYTE byRes[64]; //±£Áô +}NET_DVR_ALARMHOST_UPS_LIMIT_VALUE, *LPNET_DVR_ALARMHOST_UPS_LIMIT_VALUE; + +//ÎÂʪ¶È´«¸ÐÆ÷ÏÞÖµ +typedef struct tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE +{ + int iTemperatureHighLimit; //ζȸßÏÞÖµ£¬µ¥Î»ÉãÊÏ¶È + int iTemperatureLowLimit; //ζȵÍÏÞÖµ£¬µ¥Î»ÉãÊÏ¶È + int iHumidityHighLimit; //ʪ¶È¸ßÏÞÖµ£¬µ¥Î»% + int iHumidityLowLimit; //ʪ¶ÈµÍÏÞÖµ£¬µ¥Î»% + BYTE byRes[84]; +} NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE, *LPNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE; + +typedef union tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION +{ + NET_DVR_ALARMHOST_UPS_LIMIT_VALUE struUpsLimitValue; + NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE struTempHumidityLimitValue; +}NET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION,*LPNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION; + +typedef struct tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE +{ + DWORD dwSize; + BYTE byDevType; //1-UPS£¬2-ÎÂʪ¶È´«¸ÐÆ÷ + BYTE byRes1[3]; + NET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION struAlarmValue; + BYTE byRes2[32]; +}NET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE, *LPNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE; + +#define ALARMHOST_ALARMOUT_NUM 64 //´¥·¢Æ÷¸öÊý +#define MAX_OSD_UNIT_LEN 8 //OSDµ¥Î»³¤¶È +typedef struct tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG +{ + DWORD dwSize; + BYTE bySensorJointAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM/*512*/];//Ä£ÄâÁ¿Áª¶¯´¥·¢Æ÷£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE bySensorJointSiren[ALARMHOST_MAX_SIREN_NUM/*8*/];//Ä£ÄâÁ¿Áª¶¯¾¯ºÅ + BYTE bySensorAlarmTypeJointAlarmOut[ALARMHOST_ALARMOUT_NUM/*64*/];//Ä£ÄâÁ¿°´ÀàÐÍÁª¶¯´¥·¢Æ÷£¬¸Ã×Ö¶ÎÊÇbySensorJointAlarmOutµÄÀ©Õ¹¡£Êý×éϱê±íʾ´¥·¢Æ÷ºÅ£¬Êý×éÔªËصÄÖµ°´Î»±íʾ±¨¾¯ÀàÐÍ£¬¸÷¸öÀàÐͼäÊÇ"»ò"µÄ¹Øϵ¡£ÀàÐÍÖµ¶¨Ò壺1bit0-ÏÞ1£»bit1-ÏÞ2£»bit2-ÏÞ3£»bit3-ÏÞ4£»bit4-¹ÊÕÏ + BYTE bySesorAlarmTypeJointSiren[ALARMHOST_MAX_SIREN_NUM]; //Ä£ÄâÁ¿°´ÀàÐÍÁª¶¯¾¯ºÅ£¬¸Ã×Ö¶ÎÊÇbySensorJointSirenµÄÀ©Õ¹¡£Êý×éϱê±íʾ¾¯ºÅÐòºÅ£¬Êý×éÔªËصÄÖµ°´Î»±íʾ±¨¾¯ÀàÐÍ£¬¸÷¸öÀàÐͼäÊÇ"»ò"µÄ¹Øϵ¡£ÀàÐÍÖµ¶¨Ò壺bit0-ÏÞ1£»bit1-ÏÞ2£»bit2-ÏÞ3£»bit3-ÏÞ4£»bit4-¹ÊÕÏ + BYTE byChan; //ͨµÀºÅ + BYTE byRes[55]; +}NET_DVR_ALARMHOST_SENSOR_JOINT_CFG, *LPNET_DVR_ALARMHOST_SENSOR_JOINT_CFG; + +//UPS±¨¾¯ÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_ALARMHOST_UPS_ALARMINFO +{ + BYTE byAlarmType;/*±¨¾¯ÀàÐÍ£º1.AÏàÊäÈëµçѹԽÏÞ 2.BÏàÊäÈëµçѹԽÏÞ 3.CÏàÊäÈëµçѹԽÏÞ 4.AÏàÊä³öµçѹԽÏÞ5.BÏàÊä³öµçѹԽÏÞ 6.CÏàÊä³öµçѹԽÏÞ7.AÏàÊäÈëƵÂÊÔ½ÏÞ 8.BÏàÊäÈëƵÂÊÔ½ÏÞ9.CÏàÊäÈëƵÂÊÔ½ÏÞ10.ÕûÁ÷Æ÷µçѹԽÏÞ±¨¾¯ 11.¹ýÔر¨¾¯ 12.µç³ØµçѹµÍ±¨¾¯ 13.µç³Øºó±¸Ê±¼ä³¬µÍ±¨¾¯ 14.µç³Øζȳ¬¸ß±¨¾¯ 15.Äæ±äÆ÷¹Ø±Õ±¨¾¯ 16.×Ô¶¯ÅÔ·¿ª±¨¾¯ 17.ÕûÁ÷Æ÷¹ÊÕϱ¨¾¯ 18.Äæ±äÆ÷¹ÊÕϱ¨¾¯ 19.³äµçÆ÷¹ÊÕϱ¨¾¯ 20.µç³Ø¹ÊÕϱ¨¾¯ 21.×Ô¶¯ÅÔ·¹ÊÕϱ¨¾¯ */ + BYTE byChanNo; //485ͨµÀºÅ£¬´Ó1¿ªÊ¼ + BYTE bySlotNo; //485ÐéÄâ²ÛλºÅ + BYTE byRes1; //±£Áô + int iAlarmValue;//±¨¾¯Öµ + BYTE byRes2[64]; //±£Áô +}NET_DVR_ALARMHOST_UPS_ALARMINFO, *LPNET_DVR_ALARMHOST_UPS_ALARMINFO; + +//¿ª¹ØµçÔ´±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO +{ + BYTE byAlarmType; /*±¨¾¯ÀàÐÍ£º1-µç³Ø²âÊÔʧ°Ü 2-AC-DCת»»Æ÷¹ÊÕÏ£¬3-ÊäÈëÏß/ÏàµçѹAB/AÔ½ÏÞ£¬4-ÊäÈëÏß/ÏàµçѹBC/BÔ½ÏÞ£¬5-ÊäÈëÏß/ÏàµçѹCA/CÔ½ÏÞ£¬6-Êä³öµçÁ÷AÔ½ÏÞ£¬7-Êä³öµçÁ÷BÔ½ÏÞ£¬8-Êä³öµçÁ÷CÔ½ÏÞ£¬9ÕûÁ÷Ä£¿é¹ÊÕÏ£¬10-·çÉȹÊÕÏ£¬11-Ö±Á÷µçѹԽÏÞ*/ + BYTE byChanNo; //485ͨµÀºÅ£¬´Ó1¿ªÊ¼ + BYTE bySlotNo; //485ÐéÄâ²ÛλºÅ + BYTE byRes1; + int iAlarmValue; //±¨¾¯Öµ + BYTE byRes2[64]; +}NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO, +*LPNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO; + +//ÆøÌå¼ì²âϵͳ±¨¾¯ +typedef struct tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO +{ + BYTE byAlarmType; /*±¨¾¯ÀàÐÍ£º1- SF6ÆøÌ庬Á¿Òì³££¬2-ÑõÆøº¬Á¿Òì³££¬3-ζÈÖµÒì³££¬4-ʪ¶ÈÖµÒì³££¬5-Á÷Á¿*/ + BYTE byChanNo; //485ͨµÀºÅ£¬´Ó1¿ªÊ¼ + BYTE bySlotNo; //485ÐéÄâ²ÛλºÅ + BYTE byRes1; + int iAlarmValue; //±¨¾¯Öµ + BYTE byRes2[64]; +}NET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO, +*LPNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO; + + +//ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯ +typedef struct tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO +{ + BYTE byAlarmType; //1-ζÈÒì³££¬2-ʪ¶ÈÒì³£ + BYTE byChanNo; //485ͨµÀºÅ + BYTE bySlotNo; //485²ÛλºÅ + BYTE byRes1; + int iAlarmValue; //±¨¾¯Öµ + BYTE byRes2[64]; +} NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO, *LPNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO; + +typedef union tagNET_DVR_485_DEVICE_ALARM_UNION +{ + NET_DVR_ALARMHOST_UPS_ALARMINFO struUPSAlarm; //UPS±¨¾¯ + NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO struSwitchPowerAlarm; //¿ª¹ØµçÔ´±¨¾¯ + NET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO struGasDetectSystemAlarm; //ÆøÌå¼ì²âϵͳ±¨¾¯ + NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO struTempHumiditySensorAlarm; //ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯ + BYTE byRes[72]; +} NET_DVR_485_DEVICE_ALARM_UNION, *LPNET_DVR_485_DEVICE_ALARM_UNION; + +//485Íâ½ÓÉ豸±¨¾¯ÐÅÏ¢ +typedef struct tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO +{ + DWORD dwSize; + BYTE byAlarmType; //1-UPS±¨¾¯£¬2-¿ª¹ØµçÔ´±¨¾¯£¬3-ÆøÌå¼ì²âϵͳ±¨¾¯£¬4-ÎÂʪ¶È´«¸ÐÆ÷±¨¾¯ + BYTE byRes1[3]; + NET_DVR_485_DEVICE_ALARM_UNION struAlarmInfo; + BYTE byRes2[16]; +} NET_DVR_485_EXTERNAL_DEVICE_ALARMINFO, *LPNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO; + +typedef struct tagNET_DVR_ALARMHOST_RS485_SLOT_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE sDeviceName[NAME_LEN]; // Ç°¶ËÉ豸Ãû³Æ + WORD wDeviceType; // Ç°¶ËÉ豸ÀàÐÍALARM_FRONT_DEVICE _TYPE + WORD wDeviceProtocol; // Ç°¶ËÉ豸ЭÒé ͨ¹ý»ñȡЭÒéÁбí»ñÈ¡ + WORD wAddress; //É豸µØÖ· + BYTE byChannel; //485ͨµÀºÅ + BYTE bySlotChan; //²ÛλºÅ + BYTE byRes[60]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMHOST_RS485_SLOT_CFG, *LPNET_DVR_ALARMHOST_RS485_SLOT_CFG; + +//×ßÀÈģʽ +typedef struct tagNET_DVR_CORRIDOR_MODE +{ + DWORD dwSize; + BYTE byEnableCorridorMode; //ÊÇ·ñÆôÓÃ×ßÀÈģʽ 0¡«²»ÆôÓ㬠1¡«ÆôÓà + BYTE byMirrorMode; //¾µÏñ·½Ê½£¬0 ¹Ø±Õ;1 ×óÓÒ;2 ÉÏÏÂ;3 Öмä + BYTE byRes[126]; +}NET_DVR_CORRIDOR_MODE, *LPNET_DVR_CORRIDOR_MODE; + +//ÈËÁ³Õì²â +typedef struct tagNET_DVR_DETECT_FACE +{ + DWORD dwSize; + BYTE byEnableDetectFace; //ÊÇ·ñÆôÓà 0¡«²»ÆôÓ㬠1¡«ÆôÓà + BYTE byDetectSensitive; //ÁéÃô¶È 10¸öµÈ¼¶ 1¡«10 + BYTE byEnableDisplay; /*ÆôÓÃÒƶ¯Õì²â¸ßÁÁÏÔʾ£¬0-·ñ£¬1-ÊÇ*/ + BYTE byRes; + NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; /*´¦Àí·½Ê½*/ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä */ + DWORD dwMaxRelRecordChanNum; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀÊý ʵ¼ÊÖ§³ÖÊý + DWORD dwRelRecordChan[MAX_CHANNUM_V30]; /* ±¨¾¯´¥·¢µÄ¼ÏóͨµÀ*/ + NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; //¼ÙÈÕ²¼·Àʱ¼ä + WORD wDuration; //±¨¾¯³ÖÐøʱ¼ä 5s ÄÜÁ¦¼¯ + BYTE byRes1[30]; +}NET_DVR_DETECT_FACE, *LPNET_DVR_DETECT_FACE; + +typedef struct tagNET_DVR_MUL_STREAM_CHANNEL_GROUP +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwGroup ; //×éºÅ + NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND struMultiStreamCfg; //¶àÂëÁ÷ÅäÖà + BYTE byRes[64] ; +}NET_DVR_MUL_STREAM_CHANNEL_GROUP,*LPNET_DVR_MUL_STREAM_CHANNEL_GROUP; + +typedef struct tagNET_DVR_CHANNEL_GROUP +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + DWORD dwGroup; //×éºÅ + BYTE byID; //É豸ÇøÓòÉèÖÃID + BYTE byRes1[3]; + DWORD dwPositionNo; //³¡¾°Î»ÖÃË÷ÒýºÅ,IPCÊÇ0£¬IPDÊÇ´Ó1¿ªÊ¼ + BYTE byRes[56]; +}NET_DVR_CHANNEL_GROUP, *LPNET_DVR_CHANNEL_GROUP; + + +typedef struct tagNET_DVR_TIME_DETECTION +{ + NET_DVR_SCHEDTIME struSchedTime; //ʱ¼ä + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1,4],IPCĬÈÏÊÇ0 + BYTE byRes[15]; +}NET_DVR_TIME_DETECTION,*LPNET_DVR_TIME_DETECTION; + +//×¥ÅÄ´¥·¢Ä£Ê½Ö§³Ö¹ØÁª²¼·Àʱ¼ä¶ÎºÍÉÏ´«ÖÐÐÄÌõ¼þ +typedef struct tagNET_DVR_GUARD_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + /* + 0±íʾÎÞЧ£¬ + 1±íʾ¹ØÁª ×¥ÅÄVIAģʽ£¨ÊÓƵ´¥·¢×¥ÅÄ IPCʹÓã©; + 2 ±íʾ¹ØÁª ×¥ÅÄ HVT ģʽ £¨»ì¿¨IPCʹÓã© + */ + BYTE byRelateType; + BYTE byGroupNo; //×éºÅ + BYTE byRes[62]; +}NET_DVR_GUARD_COND,*LPNET_DVR_GUARD_COND; + +//×¥ÅÄ´¥·¢Ä£Ê½Ö§³Ö¹ØÁª²¼·Àʱ¼ä¶ÎºÍÉÏ´«ÖÐÐÄ +typedef struct tagNET_DVR_GUARD_CFG +{ + DWORD dwSize; + //²¼·Àʱ¼ä + NET_DVR_TIME_DETECTION struAlarmSched[MAX_DAYS/*7*/][MAX_TIMESEGMENT_V30/*8*/]; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¾×éÄÚʵ¼Ê´¥·¢µÄ¼ÏóͨµÀÊý + DWORD dwRelRecordChan[MAX_CHANNUM_V30]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ(0xffff ffff±íʾºóÐøÎÞЧ£© + NET_DVR_TIME_DETECTION struHolidayTime[MAX_TIMESEGMENT_V30]; //¼ÙÈÕ²¼·Àʱ¼ä + BYTE byDirection;//´¥·¢·½Ïò£º0-±£Áô£»1-È«²¿£»2-ÕýÏò£»3-·´Ïò + BYTE byRes[87]; +}NET_DVR_GUARD_CFG,*LPNET_DVR_GUARD_CFG; + +//×¥ÅÄͼƬ²ÎÊýÅäÖÃÀ©Õ¹Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_SNAPINFO_COND_ +{ + DWORD dwSize; + DWORD dwChan; + /* + 0 ±íʾ¹ØÁª ×¥ÅÄMPRģʽ£¨¶àÖ¡´¥·¢×¥ÅÄ IPCʹÓã© + 1 ±íʾ¹ØÁª ×¥ÅÄ HVT ģʽ£¨»ì¿¨IPCʹÓã© + */ + BYTE byRelateType; + BYTE byRes[63]; //±£Áô +}NET_DVR_SNAPINFO_COND, *LPNET_DVR_SNAPINFO_COND; + + +//×¥ÅÄͼƬ²ÎÊýÅäÖà +typedef struct tagNET_DVR_SNAPINFOCFG +{ + DWORD dwSize; + BYTE byCurPicType;//0-±íʾµÄͼƬÖÊÁ¿£¬1-±íʾͼƬ´óС + BYTE byPicQuality;//ͼƬÖÊÁ¿[1,100] + BYTE byRes1[2]; + DWORD dwPicSize;//ͼƬ´óС[64k,2048k] + BYTE byRes2[128]; +}NET_DVR_SNAPINFOCFG,*LPNET_DVR_SNAPINFOCFG; + +//ptz¸ú×Ù·½Ê½ +typedef enum _PTZ_TRACK_MODE_ +{ + PTZ_TRACK_MODE_ALWAYS = 1, //Ò»Ö±¸ú×Ù + PTZ_TRACK_MODE_BYTIME = 2, //¸ú×ÙÖ¸¶¨Ê±¼ä + PTZ_TRACK_MODE_NEXT = 3, //¸ú×ÙÏÂһĿ±ê +}PTZ_TRACK_MODE; + +//ptz¸ú×Ù²ÎÊý +typedef struct _NET_DVR_PTZ_TRACK_PARAM_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byTrackMode; //¸ú×Ù·½Ê½,²Î¿¼PTZ_TRACK_MODE + BYTE byLinkageTarget; //Áª¶¯Ä¿±ê0-ĬÈÏ,1-Çò»ú1,2-Çò»ú2¡­..ÒÀ´ÎÀàÍÆ + BYTE byAutoTrackEnable;//¸ú×ÙʹÄÜ 0-×Ô¶¯¸ú×Ù¿ªÆô£¬1-×Ô¶¯¸ú×ٹرգ¨Ç¹ÇòÉ豸²ÅÖ§³Ö×Ô¶¯¸ú×ٹرչ¦ÄÜ£¬¹ÊÔÚ´ËÌØÊâÀ©Õ¹£© + BYTE byRes1; //±£Áô + DWORD dwTrackTime; //¸ú×Ùʱ¼ä£¬ + //µ±¸ú×ÙģʽΪPTZ_TRACK_MODE_ALWAYS£¬´Ë×Ö¶ÎÎÞЧ + //µ±¸ú×ÙģʽΪPTZ_TRACK MODE_BYTIMEʱ£¬·¶Î§[1,60]£¬Ä¬ÈÏ10Ãë + //µ±¸ú×ÙģʽΪPTZ_TRACK MODE_NEXTʱ£¬·¶Î§[1,10]£¬Ä¬ÈÏ2Ãë + BYTE byRes2[256]; //±£Áô +}NET_DVR_PTZ_TRACK_PARAM,*LPNET_DVR_PTZ_TRACK_PARAM; + +typedef struct tagNET_VCA_TRAVERSE_PLANEPARAM +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byEnableDualVca;// ÆôÓÃÖ§³ÖÖÇÄܺó¼ìË÷ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableHumanMisinfoFilter;// ÆôÓÃÈËÌåÈ¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableVehicleMisinfoFilter;// ÆôÓóµÁ¾È¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + NET_VCA_TRAVERSE_PLANE struAlertParam[MAX_ALERTLINE_NUM]; //¾¯½äÏß²ÎÊý + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý ʵ¼ÊÖ§³ÖµÄÊýÁ¿ + DWORD byRelRecordChan[MAX_CHANNUM_V30];//´¥·¢Â¼ÏñµÄͨµÀºÅ + NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; //¼ÙÈÕ²¼·Àʱ¼ä + BYTE byRes2[100]; +}NET_VCA_TRAVERSE_PLANE_DETECTION, *LPNET_VCA_TRAVERSE_PLANE_DETECTION; + + +typedef struct tagNET_VCA_FIELDDETECION +{ + DWORD dwSize; + BYTE byEnable; //ʹÄÜ£¬ÊÇ·ñ¿ªÆô + BYTE byEnableDualVca;// ÆôÓÃÖ§³ÖÖÇÄܺó¼ìË÷ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableHumanMisinfoFilter;// ÆôÓÃÈËÌåÈ¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableVehicleMisinfoFilter;// ÆôÓóµÁ¾È¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + NET_VCA_INTRUSION struIntrusion[MAX_INTRUSIONREGION_NUM];//ÿ¸öÇøÓòµÄ²ÎÊýÉèÖà + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; //²¼·Àʱ¼ä + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý ʵ¼ÊÖ§³ÖµÄÊýÁ¿ + DWORD byRelRecordChan[MAX_CHANNUM_V30];//´¥·¢Â¼ÏñͨµÀ + NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30/*8*/]; //¼ÙÈÕ²¼·Àʱ¼ä + BYTE byRes2[100]; +}NET_VCA_FIELDDETECION, *LPNET_VCA_FIELDDETECION; + +typedef struct tagNET_DVR_ROI_DETECT_NUM +{ + DWORD dwSize; + DWORD dwGroup; + DWORD dwStreamType; //ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ʼþÀàÐÍ£¬3-ÂëÁ÷3£¬¡­¡­ + DWORD dwRoiFixNum; //¹Ì¶¨ÇøÓò×ÜÊý£¬È·¶¨ºóÐøÔٴλñÈ¡µÄ×éºÅ + DWORD dwRoiFixID[MAX_ROIDETECT_NUM];//IPCÏÖÔÚÖ§³Ö4¸ö£¬Çò»úÏÖÔÚÖ§³Ö24¸ö + BYTE szFixRoiName[MAX_ROIDETECT_NUM][NAME_LEN];//¹Ì¶¨ROIÇøÓòÃû³Æ + DWORD dwRoiTrackNum; //×Ô¶¯¸ú×ÙÇøÓò×ÜÊý£¬È·¶¨ºóÐøÔٴλñÈ¡µÄ×éºÅ + DWORD dwRoiTrackID[MAX_ROIDETECT_NUM];//IPCÏÖÔÚÖ§³Ö4¸ö£¬Çò»úÏÖÔÚÖ§³Ö24¸ö + BYTE byRes[320]; +}NET_DVR_ROI_DETECT_NUM, *LPNET_DVR_ROI_DETECT_NUM; + +typedef enum _DETECT_ROI_TYPE_ +{ + DETECT_FIX_ROI = 0, //¼ì²âROI¹Ì¶¨ÇøÓò + DETECT_TRACK_ROI = 1 //¼ì²âROI ×Ô¶¯¸ú×ÙÇøÓò +}DETECT_ROI_TYPE; +//Ìõ¼þ²ÎÊý +typedef struct tagNET_DVR_ROI_DETECT_COND +{ + DWORD dwSize; + DWORD dwRoiID; //ÇøÓò¼ì²âºÅ Ò»¸öPTZÖ§³Ö4¸ö + NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND struMultiStreamCfg; //¶àÂëÁ÷ÅäÖà + BYTE byRoiDetectType; // DECTECT_ROI_TYPE µÄÖµ + BYTE byRoiDetectTrackType;//¹Ì¶¨ÇøÓòʱ£¬¸Ã×Ö¶ÎÎÞЧ£»¸ú×ÙÇøÓòʱ£¬1¡«ÈËÁ³Õì²â£¨IPC£©,2¡«Òƶ¯ÎïÌå¸ú×Ù,3-³µÅƸú×Ù + BYTE byRes[30]; +}NET_DVR_ROI_DETECT_COND,*LPNET_DVR_ROI_DETECT_COND; + +//ÅäÖòÎÊý +//ROI¹Ì¶¨ÇøÓòģʽ ÇøÓò±àÂ빦ÄÜ +typedef struct tagNET_DVR_ROI_FIX_RECT_CFG +{ + BYTE byEnableFixRoi; // ROI¹Ì¶¨ÇøÓòģʽ ÊÇ·ñÆôÓà 0¡«²»ÆôÓ㬠1¡«ÆôÓà + BYTE byImageQualityLevel; //ͼÏñÖÊÁ¿ÌáÉýµÈ¼¶ 1¡«6 + BYTE byRes[2]; + BYTE szFixRoiName[NAME_LEN]; + NET_VCA_RECT struRoiRect; //ROIÇøÓò + BYTE byRes1[468]; +}NET_DVR_ROI_FIX_RECT_CFG, *LPNET_DVR_ROI_FIX_RECT_CFG; + +//ROI×Ô¶¯¸ú×Ùģʽ ÇøÓò±àÂ빦ÄÜ +typedef struct tagNET_DVR_ROI_TRACK_RECT_CFG +{ + BYTE byEnableTrackRoi; // ROI×Ô¶¯¸ú×Ùģʽ ÊÇ·ñÆôÓà 0¡«²»ÆôÓ㬠1¡«ÆôÓà + BYTE byImageQualityLevel; //ͼÏñÖÊÁ¿ÌáÉýµÈ¼¶ 1¡«6 + BYTE byModeType;// 0 ~ ÎÞ, 1¡«ÈËÁ³Ä£Ê½(Òƶ¯ºÍ¾²Ö¹µÄÎïÌå), 2~Òƶ¯ÎïÌå¸ú×Ù(Òƶ¯µÄÎïÌå), 3-³µÅƸú×Ù + BYTE byRes[509]; +}NET_DVR_ROI_TRACK_RECT_CFG, *LPNET_DVR_ROI_TRACK_RECT_CFG; + +typedef union tagNET_DVR_ROI_DETECT_UNION +{ + DWORD uLen[128]; + NET_DVR_ROI_FIX_RECT_CFG strRoiFixRectCfg;//¹Ì¶¨ÇøÓòģʽ + NET_DVR_ROI_TRACK_RECT_CFG strRoiTrackRectCfg;//×Ô¶¯¸ú×Ùģʽ +}NET_DVR_ROI_DETECT_UNION,*LPNET_DVR_ROI_DETECT_UNION; + +typedef struct tagNET_DVR_ROI_DETECT_CFG +{ + DWORD dwSize; //560 + DWORD dwStreamType; //ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ʼþÀàÐÍ£¬3-ÂëÁ÷3£¬¡­¡­ + BYTE byRoiDetectType; // DECTECT_ROI_TYPE µÄÖµ + BYTE byRes[3]; + NET_DVR_ROI_DETECT_UNION uRoiDetectInfo; //ROI¼ì²âÇøÓò + BYTE byRes1[36]; +}NET_DVR_ROI_DETECT_CFG, *LPNET_DVR_ROI_DETECT_CFG; + +//Ðé½¹Õì²â +typedef struct tagNET_VCA_DEFOCUSPARAM +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE bySensitiveLevel;// 1-100£¬Ä¬ÈÏ50£¬ÁéÃô¶ÈÔ½¸ß£¬Ô½ÈÝÒ×±¨¾¯ + BYTE byRes1[2]; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + BYTE byRes2[24]; +}NET_VCA_DEFOCUSPARAM,*LPNET_VCA_DEFOCUSPARAM; + +typedef struct tagNET_PTZ_INFO_EX +{ + float fPan;//PÖµ ¾«È·µ½Ð¡Êýµãºó3λ ·¶Î§[0,360.000] + float fTilt; //ZÖµ ¾«È·µ½Ð¡Êýµãºó3λ ·¶Î§[-90.000,90.000] + float fVisibleZoom;//¿É¼û¹âzoom ¾«È·µ½Ð¡Êýµãºó1λ ²»»á³¬¹ý[0£¬10000.0] + DWORD dwVisibleFocus;//¿É¼û¹âfocus[0,65535] + float fThermalZoom;//ÈȳÉÏñzoom ¾«È·µ½Ð¡Êýµãºó1λ ²»»á³¬¹ý[0£¬10000.0] + DWORD dwThermalFocus;//ÈȳÉÏñfocus[0,65535] +}NET_PTZ_INFO_EX, *LPNET_PTZ_INFO_EX; + +//IPC5.1.0 +typedef struct tagNET_DVR_PRESET_NAME +{ + DWORD dwSize; + WORD wPresetNum; //Ô¤Öõã±àºÅ + BYTE byRes1[2]; //×Ö½Ú¶ÔÆë + char byName[NAME_LEN]; + WORD wPanPos;//ˮƽ²ÎÊý Èç¹û»ñÈ¡µ½µÄÊý¾Ý´óÓÚ360ĬÈϼõÈ¥360 + WORD wTiltPos;//´¹Ö±²ÎÊý Èç¹û»ñÈ¡µ½µÄÊý¾Ý´óÓÚ360ĬÈϼõÈ¥360 + WORD wZoomPos;//±ä±¶²ÎÊýÈç¹û»ñÈ¡µ½µÄÊý¾Ý´óÓÚ360ĬÈϼõÈ¥360 + BYTE byRes2; + BYTE byPTZPosExEnable; /*ÊÇ·ñÆôÓÃPTZ×ø±êÀ©Õ¹£¬0~²»ÆôÓã¬PTZ×ø±êÖµÒÔwPanPos¡¢wTiltPos¡¢wZoomPosΪ׼¡£1~ÆôÓã¬PTZ×ø±êÖµÒÔstruPtzPosExΪ׼*/ + NET_PTZ_INFO_EX struPtzPosEx;// ptz×ø±êÀ©Õ¹(Ö§³Ö¸ß¾«¶ÈPTZÖµ) + BYTE byRes[32]; +}NET_DVR_PRESET_NAME, *LPNET_DVR_PRESET_NAME; + +typedef struct +{ + NET_DVR_SCHEDTIME struSchedTime; //ʱ¼ä + WORD wAction; ///< ¶¨Ê±¶¯×÷¾ßÌ嶯×÷ + WORD wActionNum; ///< ÌØÊ⶯×÷×Ó±àºÅ£¬ÈçÔ¤Öõ㣬Ѳº½£¬»¨Ñù£¬±¨¾¯Êä³ö£¬ÈÕÒ¹Çл»£¬ + BYTE byres[12]; +}NET_DVR_SCHEDTASK,* LPNET_DVR_SCHEDTASK; + +//¶¨Ê±ÈÎÎñ +typedef struct tagNET_DVR_TIME_TASK +{ + DWORD dwSize; + BYTE byTaskEnable; ///< ʹÄÜ 1-¿ª£¬0-¹Ø + BYTE byRes[3]; ///< ×Ö½Ú¶ÔÆë + NET_DVR_SCHEDTASK struTask[MAX_DAYS][MAX_SCH_TASKS_NUM]; ///< 7Ì죬ÿÌì10ʱ¼ä¶Î + DWORD dwParkTime; ///< ÊØÍûʱ¼ä 5s-720s + BYTE byRes1[64]; +}NET_DVR_TIME_TASK,*LPNET_DVR_TIME_TASK; + +//Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_CHANNEL_INDEX +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChannel ; //ͨµÀºÅ + DWORD dwIndex ; //Ë÷ÒýºÅ + BYTE byRes[64] ; +}NET_DVR_CHANNEL_INDEX, *LPNET_DVR_CHANNEL_INDEX; + +typedef struct tagNET_DVR_AUDIO_NAME +{ + DWORD dwSize; // ½á¹¹Ìå´óС + char cName[NAME_LEN] ; //Ãû³Æ + BYTE byRes[64]; +}NET_DVR_AUDIO_NAME, *LPNET_DVR_AUDIO_NAME; + +//µÇ¼É豸²ÎÊý +typedef struct tagNET_DVR_LOGIN_DEVICE_PARAM_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byMobileDev; //É豸ÖÖÀà, 0- ·ÇÒƶ¯É豸, 1 - Òƶ¯É豸 + BYTE byRes[63]; //±£Áô +}NET_DVR_LOGIN_DEVICE_PARAM, *LPNET_DVR_LOGIN_DEVICE_PARAM; + +typedef enum RECV_DATA_TYPE +{ + ENUM_RECV_ERRCODE = 0x0, //·µ»Ø´íÎóÂë +} RECV_DATA_TYPE; + +//ÂëÁ÷Êä³öģʽ +typedef enum tagFISHEYE_STREAM_OUTPUT_MODE_ +{ + FISHEYE_STREAM_MODE_FISHEYE = 1, //ÓãÑÛģʽ + FISHEYE_STREAM_MODE_PTZ = 2, //PTZģʽ + FISHEYE_STREAM_MODE_PANORAMA = 3 //È«¾°Ä£Ê½ +}FISHEYE_STREAM_OUTPUT_MODE; + +//»Øµ÷Êý¾ÝÀàÐÍö¾Ù +typedef enum _CALLBACK_TYPE_DATA_ENUM_ +{ + ENUM_FISHEYE_STREAM_STATUS = 1, //ÓãÑÛÂëÁ÷Êä³ö״̬ + ENUM_FISHEYE_PTZPOS = 2, //ptzͨµÀµ±Ç°Ëù´¦ÓãÑÛģʽϵÄ×ø±ê + ENUM_FISHEYE_REALTIME_OUTPUT = 3 //ʵʱÊä³öģʽ +}CALLBACK_TYPE_DATA_ENUM; + +//ÓãÑÛÂëÁ÷״̬ +typedef struct tagNET_DVR_FISHEYE_STREAM_STATUS_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byStreamMode; //ÂëÁ÷Êä³öģʽ£¬²Î¼ûFISHEYE_STREAM_OUTPUT_MODE + BYTE byRes[63]; //±£Áô +}NET_DVR_FISHEYE_STREAM_STATUS,*LPNET_DVR_FISHEYE_STREAM_STATUS; + +//³¤Á¬½Ó»Øµ÷Êý¾Ý½á¹¹Ìå +typedef struct tagNET_DVR_CALLBACK_TYPE_DATA +{ + DWORD dwChannel; //ͨµÀºÅ + DWORD dwDataType; //²Î¼ûCALLBACK_TYPE_DATA_ENUM + DWORD dwDataLen; //Êý¾Ý³¤¶È + BYTE* pData; //Êý¾Ý£¬µ±dwTypeDataΪ ENUM_FISHEYE_STREAM_STATUS£¬Æä¶ÔӦΪNET_DVR_FISHEYE_STREAM_STATUS + BYTE byRes[64]; //±£Áô +}NET_DVR_CALLBACK_TYPE_DATA,*LPNET_DVR_CALLBACK_TYPE_DATA; + +//ÓãÑÛptzÍ϶¯²ÎÊý +typedef struct tagNET_DVR_DRAG_POS_PARAM +{ + DWORD dwChannel; //ͨµÀºÅ + DWORD dwPtzChannel; //µ±dwChannelËùָͨµÀģʽΪFISHEYE_STREAM_MODE_FISHEYE£¨ÓãÑÛģʽʱ£©£¬´ËֵΪÆäÍ϶¯ËùÁª¶¯µÄptzͨµÀ¡£µ±dwChannelͨµÀģʽΪ·ÇÓãÑÛʱ£¬ÖÃΪ0¼´¿É + NET_VCA_POINT struToPoint; //Í϶¯»­ÃæÒªÌøתµ½µÄÄ¿±êµã£¬Ä¿±êµãλÖÃÏà¶ÔÓÚÔ¤ÀÀ»­ÃæµÄ×óÉÏ½Ç + NET_VCA_POINT struOriPoint; //Í϶¯²Ù×÷Æðʼµã,´ËµãΪµ±´ÎÍ϶¯²Ù×÷¿ªÊ¼Ê±£¬Êó±êÖ¸ÕëÏà¶ÔÓÚÔ¤ÀÀ»­Ãæ×óÉϽǵÄλÖà + BYTE byRes[56]; //±£Áô +}NET_DVR_DRAG_POS_PARAM,*LPNET_DVR_DRAG_POS_PARAM; + +//ƽ̨²éѯÕï¶Ï·þÎñÆ÷µÄ״̬ +typedef struct tagNET_DVR_QUERY_STATUS +{ + DWORD dwSize; + BYTE byCpuLoad; //CPU×ÊÔ´Õ¼ÓÃÇé¿ö, È¡Öµ·¶Î§£º0-100 + BYTE byMemLoad; //Memory×ÊÔ´Õ¼ÓÃÇé¿ö£¬È¡Öµ·¶Î§£º0-100 + WORD wAbility; //Õï¶Ï·þÎñÆ÷ÄÜÁ¦¼¯£¬´óÓÚ0 + WORD wRemainAbility;//Õï¶Ï·þÎñÆ÷Ê£ÓàÄÜÁ¦£¬È¡Öµ·¶Î§£º´óÓÚ 0 Ê£Óà¼à¿ØµãµÄ¸öÊý + WORD wTotalPlanNum; //×î¶à64¸ö¼Æ»®> + WORD wCurPlanNum; //µ±Ç°¼Æ»®Êý ×î¶à64¸ö¼Æ»®> + BYTE byRes[62]; //±£Áô +}NET_DVR_QUERY_STATUS, *LPNET_DVR_QUERY_STATUS; + +typedef struct tagNET_DVR_MONITOR_VQDCFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byDevType; //É豸ÀàÐÍ£º0-·ÇÔÆ̨É豸£¬1-´øÔÆ̨É豸 + BYTE bySignalPoint; //ÐźŶªÊ§·§Öµ£¬0-100 + BYTE byBlurPoint; //ͼÏñÄ£ºý·§Öµ£¬0-100 + BYTE byLumaPoint; //ͼÏñ¹ýÁÁ·§Öµ£¬0-100 + BYTE byChromaPoint; //ͼÏñÆ«É«·§Öµ£¬0-100 + BYTE bySnowPoint; //ÔëÉù¸ÉÈÅ·§Öµ£¬0-100 + BYTE byStreakPoint; //ÌõÎƸÉÈÅ·§Öµ£¬0-100 + BYTE byFreezePoint; //»­Ã涳½á·§Öµ£¬0-100 + BYTE byPTZPoint; //ÔÆ̨ʧ¿Ø·§Öµ£¬0-100 + BYTE byMonitorDel; //¼à¿Øµãɾ³ý 0-²»É¾³ý£¬ 1-ɾ³ý + BYTE byContrastThreshold; //¶Ô±È¶ÈÒì³£ãÐÖµ£¬0-100 + BYTE byMonoThreshold; //ºÚ°×ͼÏñãÐÖµ£¬0-100 + BYTE byShakeThreshold; //ÊÓƵ¶¶¶¯ãÐÖµ£¬0-100 + BYTE byFlashThreshold; //ÊÓƵ¾ç±äãÐÖµ£¬0-100 + BYTE byCoverThreshold; //ÊÓƵÕÚµ²ãÐÖµ£¬0-100 + BYTE bySceneThreshold; //³¡¾°±ä¸üãÐÖµ£¬0-100 + BYTE byDarkThreshold; //ͼÏñ¹ý°µãÐÖµ£¬0-100 + BYTE byRes[46]; +}NET_DVR_MONITOR_VQDCFG, *LPNET_DVR_MONITOR_VQDCFG; + +//Õï¶Ï½á¹û +typedef struct tagNET_DVR_DIAGNOSIS_UPLOAD +{ + DWORD dwSize; + char sStreamID[STREAM_ID_LEN]; ///< Á÷ID£¬³¤¶ÈСÓÚ32¸ö×Ö½Ú + char sMonitorIP[64]; ///< ¼à¿Øµãip + DWORD dwChanIndex; ///< ¼à¿ØµãͨµÀºÅ + DWORD dwWidth; ///< ͼÏñ¿í¶È + DWORD dwHeight; ///< ͼÏñ¸ß¶È + NET_DVR_TIME struCheckTime; ///< ¼ì²âʱ¼ä(ºÏ²¢ÈÕÆÚºÍʱ¼ä×Ö¶Î)£¬¸ñʽ£º2012-08-06 13:00:00 + BYTE byResult; ///0-δ¼ì²â 1-Õý³£ 2-Òì³£ 3-µÇ¼ʧ°Ü 4-È¡Á÷Òì³£ + BYTE bySignalResult; ///< ÊÓƵ¶ªÊ§¼ì²â½á¹û 0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byBlurResult; ///< ͼÏñÄ£ºý¼ì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byLumaResult; ///< ͼÏñ¹ýÁÁ¼ì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byChromaResult; ///< Æ«É«¼ì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE bySnowResult; ///< ÔëÉù¸ÉÈżì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byStreakResult; ///< ÌõÎƸÉÈżì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byFreezeResult; ///< »­Ã涳½á¼ì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byPTZResult; ///< ÔÆ̨¼ì²â½á¹û£¬0-δ¼ì²â 1-Õý³£ 2-Òì³£ + BYTE byContrastResult; //¶Ô±È¶ÈÒì³£¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + BYTE byMonoResult; //ºÚ°×ͼÏñ¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + BYTE byShakeResult; //ÊÓƵ¶¶¶¯¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + char sSNapShotURL[256]; ///<ͼƬURLµØÖ· + BYTE byFlashResult; //ÊÓƵ¾ç±ä¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + BYTE byCoverResult; //ÊÓƵÕÚµ²¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + BYTE bySceneResult; //³¡¾°±ä¸ü¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + BYTE byDarkResult; //ͼÏñ¹ý°µ¼ì²â½á¹û£¬0-δ¼ì²â£¬1-Õý³££¬2-Òì³£ + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ£¬0-ÎÞЧ£¬1-δ֪£¬2-¹ú±êÀàÐÍ£¬3-·Ç¹ú±êÀàÐÍ + BYTE byRes2[59]; +}NET_DVR_DIAGNOSIS_UPLOAD, *LPNET_DVR_DIAGNOSIS_UPLOAD; + +typedef struct tagNET_DVR_DOWN_LOAD_REQUEST ///< Õâ¸öÊý¾Ý½á¹¹ÊÇƽ̨·¢Ë͵½Õï¶Ï·þÎñÆ÷µÄ +{ + NET_DVR_STREAM_INFO struStreamInfo; + char sSnapShotURL[256]; ///< Õï¶ÏץͼURL£¬³¤¶ÈСÓÚ256¸ö×Ö½Ú + BYTE byRes[32]; +}NET_DVR_DOWN_LOAD_REQUEST, *LPNET_DVR_DOWN_LOAD_REQUEST; + +typedef struct tagNET_DVR_VQD_RESULT_INFO ///< Õâ¸öÊý¾Ý½á¹¹ÊÇÕï¶Ï·þÎñÆ÷·µ»Ø¸øƽ̨µÄ +{ + DWORD dwSize; + char sStreamID[32]; ///<Á÷ID(¼à¿ØµãID)£¬³¤¶ÈСÓÚ32¸ö×Ö½Ú + DWORD dwPicLength; ///ͼƬ³¤¶È + BYTE byStatus; ///< ÉèÖýá¹û:0-³É¹¦,1-Êý¾ÝÓÐÎó£¬2-ͼƬ²»´æÔÚ£¬3-»ñȡͼƬʧ°Ü + BYTE byRes[31]; + char *pSnapShot; ///< Õï¶Ïץͼ£¬ÊÇÒ»¿éͼƬ»º´æÊý¾Ý(700k) +}NET_DVR_VQD_RESULT_INFO, *LPNET_DVR_VQD_RESULT_INFO; + +typedef struct tagNET_DVR_PLAN_VQD_CFG +{ + DWORD dwSize; + BYTE sPlanID[PLAN_ID_LEN]; ///< ¼Æ»®id£¬³¤¶ÈСÓÚ32¸ö×Ö½Ú + NET_DVR_SCHEDTIME struDetectTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; ///< ¼ì²âʱ¼ä + BYTE byPlanMode; ///0:¼´Ê±¼Æ»®£¬1:ÖÜÆڼƻ® + BYTE byRes1;// + BYTE byCheckFlag; ///< ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE bySignal; ///<ÊÓƵ¶ªÊ§ ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byBlur; ///< ͼÏñÄ£ºý ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byLuma; ///< ͼÏñ¹ýÁÁÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byChroma; ///< Æ«É«¼ì²â ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE bySnow; ///<ÔëÉù¸ÉÈÅ ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byStreak; ///<ÌõÎƸÉÈÅ ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byFreeze; ///<»­Ã涳½áÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byPTZ; ///<ÔÆ̨ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byEnablePlanRound; ///¼Æ»®Ñ­»·ÊÇ·ñ¿ªÆô + BYTE byContrast; //¶Ô±È¶ÈÒì³£ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byMono; //ºÚ°×ͼÏñÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byShake; //ÊÓƵ¶¶¶¯ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byFlash; //ÊÓƵ¾ç±äÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byCover; //ÊÓƵÕÚµ²ÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byScene; //³¡¾°±ä¸üÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byDark; //ͼÏñ¹ý°µÊÇ·ñ¼ì²â£¬0-²»¼ì²â£¬1-¼ì²â + BYTE byRes[13]; +}NET_DVR_PLAN_VQD_CFG, *LPNET_DVR_PLAN_VQD_CFG; + + +typedef struct tagNET_DVR_TEST_SPOTCFG +{ + DWORD dwSize; + BYTE byStepCount; //×ܲ½Êý + BYTE byStepIndex; //µ±Ç°µÚ¼¸²½ + BYTE byRes[14]; +}NET_DVR_TEST_SPOTCFG, *LPNET_DVR_TEST_SPOTCFG; + +//µÚÈý·½IPCÁбí +typedef enum tagNET_DVR_IPC_ENUM +{ + ENUM_BUSINESS_INVALID = -1, + + ENUM_BUSINESS_HIKVISION = 0, + ENUM_BUSINESS_PANASONIC, + ENUM_BUSINESS_SONY, + ENUM_BUSINESS_AXIS, + ENUM_BUSINESS_SANYO, + ENUM_BUSINESS_BOSCH, + ENUM_BUSINESS_ZAVIO, + ENUM_BUSINESS_GRANDEYE, + ENUM_BUSINESS_PROVIDEO, + ENUM_BUSINESS_ARECONT, // 9 + ENUM_BUSINESS_ACTI, + ENUM_BUSINESS_PELCO, + ENUM_BUSINESS_VIVOTEK, + ENUM_BUSINESS_INFINOVA, + ENUM_BUSINESS_DAHUA, //14 + + ENUM_BUSINESS_HIK_STD_H264 = 0x20, + ENUM_BUSINESS_HIK_STD_MPEG4, + ENUM_BUSINESS_SUNELL , //¾°Ñô + ENUM_BUSINESS_ATEME , + ENUM_BUSINESS_LAUNCH, //ÀÊ³Û + ENUM_BUSINESS_YAAN, //ÑÅ°² + ENUM_BUSINESS_BLUESKY, //À¶É«ÐÇ¼Ê + ENUM_BUSINESS_BLUESKYLIMIT,//À¶É«ÐǼÊLIMIT + ENUM_BUSINESS_TDWY, //ÌìµØΰҵ + ENUM_BUSINESS_HBGK, //ºº°î¸ß¿Æ + ENUM_BUSINESS_SANTACHI, //½ðÈýÁ¢ + ENUM_BUSINESS_HIGHEASY, //ºãÒä + ENUM_BUSINESS_SAMSUNG, + + ENUM_BUSINESS_URL_RTSP = 0x40, /* urlÀàÐÍÈ¡Á÷ */ + ENUM_BUSINESS_ONVIF, + + ENUM_MAX_BUSINESS_TYPE, //×î´ó³§ÉÌÀàÐÍ +} NET_DVR_IPC_ENUM, *LPNET_DVR_IPC_ENUM; + +//ºó¶Ë´«ÏÔͳһºóµÚÈý·½IPCÁбí +typedef enum tagNET_DVR_IPC_ENUM_UNIFY +{ + ENUM_IPC_PROTOCOL_INVALID = -1, + ENUM_IPC_PROTOCOL_HIKVISION = 0, //º£¿µÍþÊÓ + ENUM_IPC_PROTOCOL_PANASONIC , //ËÉÏ + ENUM_IPC_PROTOCOL_SONY , //Ë÷Äá + + ENUM_IPC_PROTOCOL_AXIS = 4, //°²Ñ¶Ê¿ + ENUM_IPC_PROTOCOL_SANYO , //ÈýÑó + ENUM_IPC_PROTOCOL_BOSCH , //²©ÊÀ + ENUM_IPC_PROTOCOL_ZAVIO , //ZAVIO + ENUM_IPC_PROTOCOL_GRANDEYE , //GRANDEYE + ENUM_IPC_PROTOCOL_PROVIDEO , //´´ÊÓ + ENUM_IPC_PROTOCOL_ARECONT , //°®Èñ¿µÌØ + ENUM_IPC_PROTOCOL_ACTI , //´óÎÀͨ + ENUM_IPC_PROTOCOL_PELCO , //ÅÁ¶û¸ß + ENUM_IPC_PROTOCOL_VIVOTEK , //¾§î£Í¨Ñ¶ + ENUM_IPC_PROTOCOL_DAHUA , //´ó»ª + ENUM_IPC_PROTOCOL_SAMSUNG , //ÈýÐÇ + + ENUM_IPC_PROTOCOL_PSIA = 17, //PSIA + ENUM_IPC_PROTOCOL_ONVIF , //ONVIF + ENUM_IPC_PROTOCOL_BRICKCOM , //½ðשͨÐÅ + ENUM_IPC_PROTOCOL_GB28181 , //GB28181 + + ENUM_IPC_PROTOCOL_CANON = 23 , //¼ÑÄÜ + + ENUM_IPC_PROTOCOL_HUINT = 32, //HUINT + ENUM_IPC_PROTOCOL_INFINOVA , //Ó¢·ÉÍØ + ENUM_IPC_PROTOCOL_HIK_STD_H264, //º£¿µ±ê×¼264 + ENUM_IPC_PROTOCOL_HIK_STD_MPEG4 , //º£¿µ±ê×¼MPEG4 + ENUM_IPC_PROTOCOL_SUNELL , //¾°Ñô + ENUM_IPC_PROTOCOL_ATEME , //°²ÌØÄ· + ENUM_IPC_PROTOCOL_LAUNCH , //ÀÉ³Û + ENUM_IPC_PROTOCOL_YAAN, //ÑÇ°² + ENUM_IPC_PROTOCOL_BLUESKY , //À¶É«ÐÇ¼Ê + ENUM_IPC_PROTOCOL_BLUESKYLIMIT , //À¶É«ÐǼÊLIMIT + ENUM_IPC_PROTOCOL_TDWY , //ÌìµØΰҵ + ENUM_IPC_PROTOCOL_HBGK , //ºº°î¸ß¿Æ + ENUM_IPC_PROTOCOL_SANTACHI, //½ðÈýÁ¢ + ENUM_IPC_PROTOCOL_HIGHEASY, //ºãÒÚ + ENUM_IPC_PROTOCOL_HANBANG , //ºº°î¸ß¿Æ + ENUM_IPC_PROTOCOL_SAMSUNG_3120 , //ÈýÐÇ3120 + ENUM_IPC_PROTOCOL_SAMSUNG_3080 , //ÈýÐÇ3080 + ENUM_IPC_PROTOCOL_SAMSUNG_2000, //ÈýÐÇ2000 + ENUM_IPC_PROTOCOL_SAMSUNG_5200 , //ÈýÐÇ5200 + ENUM_IPC_PROTOCOL_JINGYUAN , //¾¯Ôº + ENUM_IPC_PROTOCOL_VIDEOTREC , //¶¯Á¦Ó¯¿Æ + ENUM_IPC_PROTOCOL_CHENOVA , //ÉϺ£³Ï·á + ENUM_IPC_PROTOCOL_FENGHUO , //·é»ð + ENUM_IPC_PROTOCOL_ZB_5301 , //Õã½­±´¶û5301 + ENUM_IPC_PROTOCOL_ZB_5401 , //Õã½­±´¶û5401 + ENUM_IPC_PROTOCOL_HAIXIN, //º£ÐÅ + ENUM_IPC_PROTOCOL_ZHONGYINGXIN , //ÖÐå­öÎ + ENUM_IPC_PROTOCOL_AVUN , //ÐÅŵ°²´ï + ENUM_IPC_PROTOCOL_GOVTY , //¹ãÖݼªÌï + ENUM_IPC_PROTOCOL_SAE , //°¬Àï¿Ë + ENUM_IPC_PROTOCOL_DONGFANGWANGLI, //¶«·½ÍøÁ¦ + ENUM_IPC_PROTOCOL_CHANGHONG, //³¤ºç + ENUM_IPC_PROTOCOL_H3C , //»ªÈý + ENUM_IPC_PROTOCOL_BAIAN , //°Ù°² + ENUM_IPC_PROTOCOL_HAT , //»ª°²Ì© + ENUM_IPC_PROTOCOL_YUANYE, //Ô¶Òµ + ENUM_IPC_PROTOCOL_HIKCARD , //º£¿µ°å¿¨ + ENUM_IPC_PROTOCOL_HAIXINCAP , //º£ÐÅ×¥ÅÄ»ú + ENUM_IPC_PROTOCOL_WENANCAP , //ÎÄ°²×¥ÅÄ»ú + ENUM_IPC_PROTOCOL_XUNMEI , //ѶÃÀ + ENUM_IPC_PROTOCOL_BAIWO , //°ÛÎÖ + ENUM_IPC_PROTOCOL_APD , //°²ÆÕ´ï + ENUM_IPC_PROTOCOL_REACHDEV , //ÈñÈ¡ + ENUM_IPC_PROTOCOL_XUNMEI_DAHUA , //ѶÃÀ´ó»ªOEM + ENUM_IPC_PROTOCOL_HUANGHE, //»ÆºÓÉ豸 + ENUM_IPC_PROTOCOL_LIANCHEN , //Áªå· + ENUM_IPC_PROTOCOL_CHENGYE, //³ÏÒµ + ENUM_IPC_PROTOCOL_VISIONDIGI , //ÍþǬ + ENUM_IPC_PROTOCOL_HENGHE , //ºãºÓ + ENUM_IPC_PROTOCOL_KODAK , //¿Æ´ï + ENUM_IPC_PROTOCOL_AIRONIX, //°ÂÄá¿Ë˹ + ENUM_IPC_PROTOCOL_LG, //ÀÖ½ð + ENUM_IPC_PROTOCOL_HASEE , //ÉñÖÝ + ENUM_IPC_PROTOCOL_8000ME , //8000ME + ENUM_IPC_PROTOCOL_POVITEL , //ÆÕÌ첩Íþ + ENUM_IPC_PROTOCOL_YIVIEW, //ÒÚά + ENUM_IPC_PROTOCOL_TIANYUE , //ÌìÔ¾ + ENUM_IPC_PROTOCOL_HOWELL , //ºÆά + ENUM_IPC_PROTOCOL_WAPA, //²¨Á£ + ENUM_IPC_PROTOCOL_SANLE , //ÈýÀÖ + ENUM_IPC_PROTOCOL_HIKCARD_ENCRYPTION, //¼ÓÃܺ£¿µ°å¿¨ + ENUM_IPC_PROTOCOL_JUNSDA , //ÖæÊÓ´ï + ENUM_IPC_PROTOCOL_LIYUAN , //Á¢Ôª + ENUM_IPC_PROTOCOL_XINCHAN , //ÐŲú + ENUM_IPC_PROTOCOL_BITE , //±ÈÌØ + ENUM_IPC_PROTOCOL_MEIAN, //ÃÀ°² + ENUM_IPC_PROTOCOL_ROSEEK, //ÈñÊÆ + ENUM_IPC_PROTOCOL_AEBELL , //ÃÀµç±´¶û + ENUM_IPC_PROTOCOL_JSL_ST , //½ðÈýÁ¢ST + ENUM_IPC_PROTOCOL_VIMICRO, //ÖÐÐÇ΢µç×Ó + ENUM_IPC_PROTOCOL_UNIVIEW, //ÓîÊÓ + + ENUM_IPC_PROTOCOL_TYPE, //×î´ó³§ÉÌÀàÐÍ +}NET_DVR_IPC_ENUM_UNIFY, *LPNET_DVR_IPC_ENUM_UNIFY; + + + +typedef struct tagNET_DVR_MRD_SEARCH_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_STREAM_INFO struStreamInfo; // ¼à¿Øµã + WORD wYear; // Äê + BYTE byMonth; // Ô + BYTE byDrawFrame; // 0-²»³éÖ¡ 1-³éÖ¡ + BYTE byStreamType; //0-Ö÷ÂëÁ÷ 1-×ÓÂëÁ÷ + BYTE byLocalOrUTC; //0-É豸±¾µØʱÇø 1-UTC + BYTE byRes[30]; +}NET_DVR_MRD_SEARCH_PARAM, *LPNET_DVR_MRD_SEARCH_PARAM; + +typedef struct tagNET_DVR_MRD_SEARCH_RESULT +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byRecordDistribution[LEN_32]; // ¼Ïñ·Ö²¼£¬byRecordDistribution[0]=1±íʾ1ÈÕ´æÔÚ¼Ïñ£¬byRecordDistribution[0]=0±íʾûÓмÏñ£¬ + //byRecordDistribution[1]±íʾ2ÈÕ£¬ÒÔ´ËÀàÍÆ + BYTE byHasEventRecode[LEN_31]; //ʼþ¼Ïñ 0-ÎÞʼþ¼Ïñ£¬1-ÓÐʼþ¼Ïñ + BYTE byRes; //±£Áô +}NET_DVR_MRD_SEARCH_RESULT, *LPNET_DVR_MRD_SEARCH_RESULT; + + +typedef struct tagNET_DVR_ACCESS_DEVICE_INFO +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byGroup; // ×éºÅ£¬Ã¿×é¿É»ñÈ¡ 64¸öͨµÀ£¬´Ó0¿ªÊ¼, 0±íʾµÚ1×飬ÒÔ´ËÀàÍÆ + BYTE byProType; //ЭÒéÀàÐÍ£¬0-˽ÓÐЭÒ飬1-ËÉÏÂЭÒ飬2-Ë÷Äá + BYTE byAccessMode; //½ÓÈëģʽ£¬0-IPµØÖ·£¬1-ÓòÃû + BYTE byRes1; //±£Áô×ֶΣ¬ÖÃ0 + char szUserName[NAME_LEN]; //Óû§Ãû + char szPassword[PASSWD_LEN]; //ÃÜÂë + char szDomain[MAX_DOMAIN_NAME]; //É豸ÓòÃû + NET_DVR_IPADDR struIP; //IPµØÖ· + WORD wPort; // ¶Ë¿ÚºÅ + BYTE szGB28181DevID[DEV_ID_LEN]; //GB28181ЭÒé½ÓÈëʱµÄÉ豸·þÎñÆ÷ID + BYTE byRes2[2]; //±£Áô×ֶΣ¬ÖÃ0 +}NET_DVR_ACCESS_DEVICE_INFO, *LPNET_DVR_ACCESS_DEVICE_INFO; + +typedef struct tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwTotalChannelNum; //É豸×ÜͨµÀ¸öÊý£¬É豸²»ÔÚÏßʱ·µ»Ø0£¬byChannelÎÞЧ + BYTE byChannel[MAX_CHANNUM_V30]; /*byChannel[i]Ϊ0±íʾµÚ£¨byGroup+1£©*£¨i-1£©Í¨µÀδ½ÓÈëµ½NVR£¬ + Ϊ1±íʾ¸ÃͨµÀÒѽÓÈëµ½NVR byGroupÔÚNET_DVR_ACCESS_DEVICE_INFOÖÐ*/ + BYTE byRes[32]; //±£Áô +}NET_DVR_ACCESS_DEVICE_CHANNEL_INFO, *LPNET_DVR_ACCESS_DEVICE_CHANNEL_INFO; + +typedef struct tagNET_DVR_PREVIEW_SWITCH_COND +{ + DWORD dwSize; //×éºÅ + BYTE byGroup; //×éºÅ£¬Ã¿×é¿ÉÅäÖÃ64¸ö»­Ãæ + BYTE byVideoOutType; /*ÊÓƵÊä³ö½Ó¿ÚÀàÐÍ,0-Ö÷CVBS,1-HDMI 2-VGA 3-¸¨ÖúÊä³öÒ» + 4-¸¨ÖúÊä³ö¶þ 5-¸¨ÖúÊä³öÈý 6-¸¨ÖúÊä³öËÄ, 7-¸¨ÖúHDMI, 8-À©Õ¹HDMI1, + 9-À©Õ¹HDMI2, 10-À©Õ¹HDMI3, 11-À©Õ¹HDMI4, 12-·ÇͬԴVGA1£¬ + 13-·ÇͬԴVGA2£¬14-·ÇͬԴVGA3£¬15-·ÇͬԴVGA4£¬16-ͬԴVGA, 17-Ö÷LCD,18-¸¨ÖúVGA,19-¸¨ÖúLCD*/ + BYTE byGetDefaultPreviewSet;//ÊÇ·ñ»ñÈ¡Ô¤É裬0-·ñ£¬1-ÊÇ£»ÈôΪÊÇʱ£¬byPreviewNumber×Ö¶ÎÓÐЧ + BYTE byPreviewNumber;//Ô¤ÀÀÊýÄ¿,0-1»­Ãæ,1-4»­Ãæ,2-9»­Ãæ,3-16»­Ãæ, 4-6»­Ãæ, 5-8»­Ãæ6-25»­Ãæ,7-32»­Ãæ, 8-36»­Ãæ 0xfb-×Ô¶¨Òå·ÖÆÁ4, 0xfc-×Ô¶¨Òå·ÖÆÁ3, 0xfd-×Ô¶¨Òå·ÖÆÁ2, 0xfe-×Ô¶¨Òå·ÖÆÁ1,0xff:×î´ó»­Ãæ +}NET_DVR_PREVIEW_SWITCH_COND, *LPNET_DVR_PREVIEW_SWITCH_COND; + +typedef struct tagNET_DVR_PREVIEW_SWITCH_CFG +{ + DWORD dwSize; // °æ±¾¹ÜÀí¼°½á¹¹Ìå´óС + WORD wSwitchSeq[MAX_WINDOW_V40];/*bySwitchSeq [i]=6£¬±íʾµÚ£¨×éºÅ*64+i+1£©¸ö´°¿Ú + ÏÔʾµÚÁùͨµÀ£¬Îª0xff±íʾ¸Ã´°¿Ú²»ÏÔʾ*/ + BYTE byPreviewNumber;/*Ô¤ÀÀÊýÄ¿,0-1»­Ãæ,1-4»­Ãæ,2-9»­Ãæ,3-16»­Ãæ, 4-6»­Ãæ, 5-8»­Ã棬6-25»­Ãæ,7-32»­Ãæ, 8-36»­Ãæ, 9-64»­Ãæ + 0xff:×î´ó»­Ãæ*/ + BYTE byEnableAudio;//ÊÇ·ñÉùÒôÔ¤ÀÀ,0-²»Ô¤ÀÀ,1-Ô¤ÀÀ + BYTE bySwitchTime;//Çл»Ê±¼ä,0-²»Çл»,1-5s,2-10s,3-20s,4-30s, 5-60s 6-120s,7-300s + BYTE bySameSource ; //ÊÇ·ñͬԴ£¬µ±ÊÓƵÊä³ö¿ÚÀàÐÍΪ·ÇͬԴVGA1-·ÇͬԴVGA4ʱÓÐЧ + BYTE byRes[32]; //±£Áô +}NET_DVR_PREVIEW_SWITCH_CFG,* LPNET_DVR_PREVIEW_SWITCH_CFG; + +typedef struct tagNET_DVR_USER_COND +{ + char szUserName[NAME_LEN]; + BYTE byRes[48]; +}NET_DVR_USER_COND, *LPNET_DVR_USER_COND; + +typedef struct tagNET_DVR_USER_RIGHT_CFG +{ + DWORD dwSize; + BYTE byAddMonitoringPointRight; // Ìí¼Ó¼à¿Øµã£¨Ç°¶ËÉ豸£©È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byModMonitoringPointRight; // Ð޸ļà¿Øµã£¨Ç°¶ËÉ豸£©È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byDelMonitoringPointRight; // Ìí¼Ó¼à¿Øµã£¨Ç°¶ËÉ豸£©È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE bySetRecordPlanRight; // Öƶ¨Â¼Ïñ²ßÂÔȨÏÞ0-ÎÞ 1-ÓÐ + BYTE byDelRecordPlanRight; // ɾ³ý¼Ïñ²ßÂÔȨÏÞ0-ÎÞ 1-ÓÐ + BYTE byEnableOrDisableRecordPlanRight; // ÆôÓúͽûÓüÏñ¼Æ»®È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byManualRecordRight; // Æô¶¯ºÍÍ£Ö¹ÊÖ¶¯Â¼ÏñȨÏÞ0-ÎÞ 1-ÓÐ + BYTE bySetAlarmRecordRight; // ±¨¾¯Â¼ÏñÉ趨ȨÏÞ0-ÎÞ 1-ÓÐ + BYTE byRecordBackupRight; // ¼Ïñ´æµµÈ¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byRecordDownloadRight; // ¼ÏñÏÂÔØȨÏÞ0-ÎÞ 1-ÓÐ + BYTE byRecordDeleteRight; // ¼Ïñɾ³ýȨÏÞ0-ÎÞ 1-ÓУ¨±£Áô£© + BYTE byDelBackupRecordRight; // ɾ³ý´æµµÂ¼ÏñȨÏÞ0-ÎÞ 1-ÓУ¨±£Áô£© + BYTE bySetBackupVolumeRight; // ÉèÖô浵¾íȨÏÞ0-ÎÞ 1-ÓÐ + BYTE byRecordPlayBackRight; // ¼Ïñ»Ø·ÅȨÏÞ0-ÎÞ 1-ÓÐ DWORD dwZoneIndex + BYTE byLogDeleteRight; // ÈÕÖ¾Çå¿ÕȨÏÞ0-ÎÞ 1-ÓУ¨±£Áô£© + BYTE byLogDownloadRight; // ÈÕÖ¾ÏÂÔØȨÏÞ0-ÎÞ 1-ÓУ¨±£Áô£© + BYTE byAddUserRight; // Ìí¼ÓÓû§È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byDelUserRight; // ɾ³ýÓû§È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byModUserRight; // ÐÞ¸ÄÓû§È¨ÏÞ0-ÎÞ 1-ÓÐ + BYTE byAllocUserRight; // Óû§È¨ÏÞ·ÖÅäȨÏÞ0-ÎÞ 1-ÓÐ + BYTE byRes[128]; +}NET_DVR_USER_RIGHT_CFG, *LPNET_DVR_USER_RIGHT_CFG; + +typedef struct tagNET_DVR_MACHINE_MAX_NUM_CFG +{ + DWORD dwSize; + DWORD dwMaxNum; // ×î´ó±¸»úÊýÄ¿ + BYTE byRes[32]; +}NET_DVR_MACHINE_MAX_NUM_CFG, *LPNETDVR_MACHINE_MAX_NUM_CFG; + +//ÅäÖÃN+1É豸¹¤×÷»úģʽ£¬NVRÐèÒªÕâ²½£¬CVR²»ÐèÒª +typedef struct tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG +{ + DWORD dwSize ; + BYTE byWorkMode; //0-¹¤×÷»ú 1-±¸»ú + BYTE byRes[127]; //±£Áô +}NET_DVR_N_PLUS_ONE_WORK_MODE_CFG, *LPNET_DVR_N_PLUS_ONE_WORK_MODE_CFG; + +typedef struct tagNET_DVR_ADD_PARAM +{ + NET_DVR_IPADDR struIP; // É豸IP + char szPassword[PASSWD_LEN]; //±¸»úÃÜÂ룬Ðè¼òÒ×¼ÓÃÜ + BYTE byAddType; // 0-£¨¹¤×÷»úÉÏ£©Ìí¼Ó±¸»ú£¬1-£¨±¸»úÉÏ£©Ìí¼Ó¹¤×÷»ú + BYTE byDisableBackup; //±¸·Ý¹¦ÄÜʹÄÜ¿ª¹Ø 0-¿ªÆô1-¹Ø±Õ CVRĬÈÏ¿ªÆô +}NET_DVR_ADD_PARAM, *LPNET_DVR_ADD_PARAM; + +typedef struct tagNET_DVR_DEL_PARAM +{ + NET_DVR_IPADDR struIP; // É豸IP + BYTE byDelType; // 0-ɾ³ýÖ¸¶¨µÄ»úÆ÷£¨±¸»ú»ò¹¤×÷»ú£©1-ȫɾ +}NET_DVR_DEL_PARAM, *LPNET_DVR_DEL_PARAM; + +typedef union tagNET_DVR_NPO_PARAM_UNION +{ + NET_DVR_ADD_PARAM struAddParam; //Ìí¼ÓÐÅÏ¢ + NET_DVR_DEL_PARAM struDelParam; //ɾ³ýÐÅÏ¢ +}NET_DVR_NPO_PARAM_UNION, *LPNET_DVR_NPO_PARAM_UNION; + +// N+1ģʽÉ豸²ÎÊý +typedef struct tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM +{ + DWORD dwSize; + NET_DVR_NPO_PARAM_UNION unionParam; + BYTE byType; /* 0-Ìí¼Ó£¬¶ÔÓ¦unionParamÖеÄstruAddParam 1-ɾ³ý£¬¶ÔÓ¦unionParamÖеÄstruDelParam 2-Ìí¼ÓÇÒÓû§ÃûÉúЧ£¬¶ÔÓ¦unionParamÖеÄstruAddParam ºÍszUserName*/ + BYTE byRes[3]; + char szUserName[NAME_LEN]; //Óû§Ãû + BYTE byRes2[220]; // ±£Áô +}NET_DVR_N_PLUS_ONE_DEVICE_PARAM, *LPNET_DVR_N_PLUS_ONE_DEVICE_PARAM; + +// Êý¾Ý»ØǨ +typedef struct tagNET_DVR_DATA_CALLBACK_CFG +{ + DWORD dwSize; + BYTE byEnable; // 0-²»ÆôÓÃÊý¾Ý»ØǨ 1-ÆôÓÃÊý¾Ý»ØǨ + BYTE byDelData; // µ±byEnableΪ1ÊÇÓÐЧ 0-²»É¾³ý±¸»ú¼ÏñÊý¾Ý 1-ɾ³ý±¸»ú¼ÏñÊý¾Ý + BYTE byRes[30]; +}NET_DVR_DATA_CALLBACK_CFG, *LPNET_DVR_DATA_CALLBACK_CFG; + +typedef struct tagNET_DVR_HD_STATUS +{ + DWORD dwSize; + BYTE bySleepStatus;/*ÐÝÃß״̬0-²»ÐÝÃß 1-ÐÝÃß*/ + BYTE byRes[127]; +}NET_DVR_HD_STATUS, *LPNET_DVR_HD_STATUS; + +typedef struct tagNET_DVR_RAID_BTS_CFG +{ + DWORD dwSize; + BYTE bySpeed; /*0-¸ßËÙ 1-ÖÐËÙ 2-µÍËÙ*/ + BYTE byRes[127]; +}NET_DVR_RAID_BTS_CFG, *LPNET_DVR_RAID_BTS_CFG; + +typedef struct tagNET_DVR_LUN_CLONE +{ + DWORD dwSize; + DWORD dwSrcLunID; // Ô´LUN ID + DWORD dwDstLunID; // Ä¿µÄLUN ID + BYTE byRes[32]; +}NET_DVR_LUN_CLONE, *LPNET_DVR_LUN_CLONE; + +typedef struct tagNET_DVR_LUN_EXPAND +{ + DWORD dwSize; + DWORD dwLunID; // LUN ID + DWORD dwHSize; // À©Õ¹µÄ´óС¸ß32λ + DWORD dwLSize; // À©Õ¹µÄ´óСµÍ32λ + char szArrayIDGroup[NAME_LEN]; // ʹÓõÄÕóÁÐID×飬ÒÔ¶ººÅ¸ô¿ª£¬Îª¿ÕÔòΪĬÈÏ + char szNewLunName[MAX_NAMELEN]; // ÐÂLUNÃû + BYTE byRes[32]; +}NET_DVR_LUN_EXPAND, *LPNET_DVR_LUN_EXPAND; + + +typedef struct tagNET_DVR_DVR_NET_DISK_MODIFY +{ + DWORD dwSize; + char szOldDvrNetDiskName[MAX_NAMELEN]; // Ô­DVRÍøÅ̹²ÏíÃû + char szNewDvrNetDiskName[MAX_NAMELEN]; // ÐÂDVRÍøÅ̹²ÏíÃû + NET_DVR_IPADDR struWarrantIP; // ÐÂÊÚȨµÄDVRÍøÅÌIP + BYTE byRes[32]; +}NET_DVR_DVR_NET_DISK_MODIFY, *LPNET_DVR_DVR_NET_DISK_MODIFY; + + +typedef struct tagNET_DVR_NAS_PARAM +{ + DWORD dwSize; + DWORD dwLunID; // LUN ID + BYTE byRes[32]; +}NET_DVR_NAS_PARAM, *LPNET_DVR_NAS_PARAM; + +typedef struct tagNET_DVR_ISCSI_PARAM +{ + DWORD dwSize; + DWORD dwTargetID; // iSCSI·þÎñµÄTarget ID + DWORD dwLunID; // LUN ID + DWORD dwAccessMode; //¶Áд·½Ê½ 0-¶Áд 1-ͬ²½¶Áд 2-Ö»¶Á 3-ÖÇÄÜÖ»¶Á; + NET_DVR_IPADDR struClientIP; // ¿Í»§¶ËIP£¬0.0.0.0ΪËùÒÔIP + BYTE byRes[32]; +}NET_DVR_ISCSI_PARAM, *LPNET_DVR_ISCSI_PARAM; + +typedef struct tagNET_DVR_FC_PARAM +{ + DWORD dwSize; + DWORD dwStoreLunID; // ´æ´¢LUN ID + DWORD dwLogicLunID; // Âß¼­LUN ID£¬-1±íʾ×Ô¶¯Éú³É + DWORD dwHbaID; // ¹âÏËͨµÀºÅ + DWORD dwAccessMode; //¶Áд·½Ê½ 0-¶Áд 1-ͬ²½¶Áд 2-Ö»¶Á 3-ÖÇÄÜÖ»¶Á; + char szClientWWWPN[NAME_LEN]; // ¿Í»§¹âÏË¿¨ + BYTE byRes[32]; +}NET_DVR_FC_PARAM, *LPNET_DVR_FC_PARAM; + + +// Âß¼­¾í 60×Ö½Ú +typedef struct tagNET_DVR_LUN_PARAM +{ + DWORD dwHCapacity; // Âß¼­¾í´óС¸ß32λ + DWORD dwLCapacity; // Âß¼­¾í´óСµÍ32λ + char szName[MAX_NAMELEN]; // Âß¼­¾íÃû³Æ + DWORD dwBlockSize; // Âß¼­¾íµÄ×îС´æ´¢µ¥Ôª¿é´óС + char szArrayIDGroup[NAME_LEN]; //ʹÓõÄÕóÁÐID×飬ÒÔ¶ººÅ¸ô¿ª£¬Îª¿ÕÔòʹÓÃĬÈÏÕóÁÐ +}NET_DVR_LUN_PARAM, *LPNET_DVR_LUN_PARAM; + +typedef struct tagNET_DVR_DVR_PARAM_ +{ + DWORD dwHCapacity; // DVRÍøÅÌ´óС¸ß32λ + DWORD dwLCapacity; // DVRÍøÅÌ´óСµÍ32λ + char szName[MAX_NAMELEN]; // DVRÍøÅÌÃû³Æ + DWORD dwBlockSize; // Âß¼­¾íµÄ×îС´æ´¢µ¥Ôª¿é´óС + NET_DVR_IPADDR struWarrantIP; // ÊÚȨµÄDVRÍøÅÌIP + char szArrayIDGroup[NAME_LEN]; //ʹÓõÄÕóÁÐID×飬ÒÔ¶ººÅ¸ô¿ª£¬Îª¿ÕÔòʹÓÃĬÈÏÕóÁÐ +}NET_DVR_DVR_PARAM, *LPNET_DVR_DVR_PARAM; + +typedef union tagNET_DVR_VD_UNION +{ + BYTE byUnionLen[256]; // ÁªºÏÌå´óС + NET_DVR_OPERATE_VD_PARAM struHikVDParam; // ÐéÄâ´ÅÅÌ + NET_DVR_LUN_PARAM struLunParam; // Âß¼­¾í + NET_DVR_DVR_PARAM struDvrParam; // DVRÍøÅÌ +}NET_DVR_VD_UNION, *LPNET_DVR_VD_UNION; + +typedef struct tagNET_DVR_OPERATE_VD_PARAM_EX +{ + BYTE byVDType; //ÐéÄâ´ÅÅÌÀàÐÍ£º0-˽ÓÐÐéÄâ´ÅÅÌ 1-Âß¼­¾í 2-DVRÍøÅÌ + BYTE byRes1[3]; + NET_DVR_VD_UNION uVDParam; + BYTE byRes2[32]; +}NET_DVR_OPERATE_VD_PARAM_EX, *LPNET_DVR_OPERATE_VD_PARAM_EX; + +typedef struct tagNET_DVR_CVR_ALARM +{ + char szFirstType[NAME_LEN]; //Ö÷ÀàÐÍ£¬²»ÄÜΪ¿Õ + char szFirstIndex[NAME_LEN]; //Ö÷ÀàÐͱàºÅ + char szSecondType[NAME_LEN]; //´ÎÀàÐÍ£¬¿ÉÒÔΪ¿Õ + NET_DVR_TIME struTime; //±¨¾¯Ê±¼ä + BYTE byStatus; //״̬ 0-Õý³£ ·Ç0-²»Õý³££¬²»Í¬ÀàÐÍÖµ±íʾÒâÒ岻ͬ£¬¼ûϱí + BYTE byAlarmLevel; //±¨¾¯¼¶±ð + BYTE byRes1[2]; + char szSecondIndex[NAME_LEN]; //´ÎÀàÐͱàºÅ£¬¿ÉÒÔΪ¿Õ + char szThirdType[NAME_LEN]; //µÚÈýÀàÐÍ£¬¿ÉÒÔΪ¿Õ + char szThirdIndex[NAME_LEN]; //µÚÈýÀàÐͱàºÅ + char szFourthType[NAME_LEN]; //µÚËÄÀàÐÍ£¬¿ÉÒÔΪ¿Õ + char szFourthIndex[NAME_LEN]; //µÚËÄÀàÐͱàºÅ + BYTE byRes2[92]; //±£Áô +}NET_DVR_CVR_ALARM, *LPNET_DVR_CVR_ALARM; + +typedef struct tagNET_DVR_WORKING_DEVICE_INFO +{ + NET_DVR_IPADDR struIP; //É豸IP + BYTE byLinkStatus; //Á¬½Ó״̬ 0-Á¬½Óʧ°Ü1-Á¬½Ó³É¹¦ + BYTE byWorkStatus; //¹¤×÷״̬ 0-Õý³£1-Òì³£ + BYTE byBacupStatus; //±¸·Ý״̬0-²»ÔÚ±¸·Ý1-ÕýÔÚ±¸·Ý + BYTE bySyncProgress; //¼Ïñͬ²½½ø¶È£¬0±íʾδ¿ªÊ¼£¬100±íʾͬ²½Íê³É + NET_DVR_TIME_EX struSyncBeginTime; //ͬ²½¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struSyncEndTime; //ͬ²½½áÊøʱ + char szSerialNumber[SERIALNO_LEN] ; //É豸ÐòÁкŠ+ DWORD dwSoftwareVersion ; //É豸Èí¼þ°æ±¾ + BYTE byWorkingDeviceGUID[GUID_LEN]; //¹¤×÷»úGUID£¬·Ç×Ö·û´®£¬ÓÃÓÚ±¸»úÉÏËÑË÷¹¤×÷»ú¼Ïñ + char szDevTypeName[DEV_TYPE_NAME_LEN]; //É豸ÀàÐÍÃû³Æ + WORD wDevType; //É豸ÀàÐÍÖµ +}NET_DVR_WORKING_DEVICE_INFO, *LPNET_DVR_WORKING_DEVICE_INFO; + +typedef struct tagNET_DVR_REDUNDANT_DEVICE_INFO +{ + NET_DVR_IPADDR struIP; //É豸IP + BYTE byWorkStatus; //¹¤×÷״̬ 0-Õý³£1-Òì³£ + BYTE byBackupStatus; //±¸·Ý״̬0-²»ÔÚ¼à¿Ø 1-ÕýÔÚ¼à¿Ø2-ÕýÔÚ±¸·ÝÖÐ2-ÕýÔÚͬ²½ + WORD wBackupPort; //±¸·Ý¶Ë¿Ú +}NET_DVR_REDUNDANT_DEVICE_INFO, *LPNET_DVR_REDUNDANT_DEVICE_INFO; + +typedef struct tagNET_DVR_WORKING_DEVICE_INFO_V50 +{ + NET_DVR_WORKING_DEVICE_INFO struWorkingDeviceInfo; //¹¤×÷»úÐÅÏ¢ + char szUserName[NAME_LEN]; //Óû§Ãû + BYTE byRes[32]; +}NET_DVR_WORKING_DEVICE_INFO_V50, *LPNET_DVR_WORKING_DEVICE_INFO_V50; + +typedef struct tagNET_DVR_REDUNDANT_DEVICE_INFO_V50 +{ + NET_DVR_REDUNDANT_DEVICE_INFO struRedundantDeviceInfo; //±¸»úÐÅÏ¢ + char szUserName[NAME_LEN]; //Óû§Ãû + BYTE byRes[32]; +}NET_DVR_REDUNDANT_DEVICE_INFO_V50, *LPNET_DVR_REDUNDANT_DEVICE_INFO_V50; + +typedef union tagNET_DVR_NPO_DEV_INFO_UNION +{ + BYTE byUnionLen[512]; //ÁªºÏÌ峤¶È + NET_DVR_WORKING_DEVICE_INFO struWorkingDeviceInfo; //¹¤×÷»úÐÅÏ¢ + NET_DVR_REDUNDANT_DEVICE_INFO struRedundantDeviceInfo; //±¸»úÐÅÏ¢ + NET_DVR_WORKING_DEVICE_INFO_V50 struWorkingDeviceInfoV50; //¹¤×÷»úÐÅÏ¢V50 + NET_DVR_REDUNDANT_DEVICE_INFO_V50 struRedundantDeviceInfoV50; //±¸»úÐÅÏ¢V50 +}NET_DVR_NPO_DEV_INFO_UNION, *LPNET_DVR_NPO_DEV_INFO_UNION; + + +typedef struct tagNET_DVR_N_PLUS_ONE_DEVICE_INFO +{ + DWORD dwSize; + NET_DVR_NPO_DEV_INFO_UNION unionDevInfo; + BYTE byType; /*ÀàÐÍ 0-¹¤×÷»ú£¬¶ÔÓ¦unionDevInfoÖеÄstruWorkingDeviceInfo 1-±¸»ú£¬¶ÔÓ¦unionDevInfoÖеÄstruRedundantDeviceInfo + 2-¹¤×÷»úV50£¬¶ÔÓ¦unionDevInfoÖеÄstruWorkingDeviceInfoV50 3-±¸»úV50£¬¶ÔÓ¦unionDevInfoÖеÄstruRedundantDeviceInfoV50*/ + BYTE byRes[127]; +}NET_DVR_N_PLUS_ONE_DEVICE_INFO, *LPNET_DVR_N_PLUS_ONE_DEVICE_INFO; + +//ipcÉý¼¶²ÎÊý +typedef struct tagNET_DVR_UPGRADE_IPC_PARAM +{ + NET_DVR_STREAM_INFO struStreamInfo[MAX_CHANNUM_V30]; // 64¸ö¼à¿Øµã + char szFileName[260]; // Éý¼¶ÎļþÃû +}NET_DVR_UPGRADE_IPC_PARAM, *LPNET_DVR_UPGRADE_IPC_PARAM; + + +typedef struct tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE +{ + NET_DVR_STREAM_INFO struStreamInfo; //¼à¿Øµã + WORD wErrCode; //¶ÔÓ¦´íÎóÂë + BYTE byRes[30]; //±£Áô +}NET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE, *LPNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE; + +typedef struct tagNET_DVR_UPGRADE_IPC_ERR_INFO +{ + NET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE struErrInfoSingle[MAX_CHANNUM_V30]; +}NET_DVR_UPGRADE_IPC_ERR_INFO, *LPNET_DVR_UPGRADE_IPC_ERR_INFO; + +//IPCÅäÖÃÎļþµ¼Èë +typedef struct tagNET_DVR_IPC_CFG_FILE_PARAM +{ + char szFileName[260]; // ÅäÖÃÎļþÃû + BYTE byRes[32]; +}NET_DVR_IPC_CFG_FILE_PARAM, *LPNET_DVR_IPC_CFG_FILE_PARAM; + +typedef struct tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE +{ + WORD wRow; //³ö´íµÄÐУ¬0±íʾû³ö´í£¬1±íʾµÚ1Ðгö´í£¬ÒÔ´ËÀàÍÆ + WORD wErrCode; //´íÎóÂë + BYTE byRes[32]; +}NET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE, *LPNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE; + +typedef struct tagNET_DVR_IPC_CFG_FILE_ERR_INFO +{ + NET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE struErrInfoSingle[MAX_CHANNUM_V30]; +}NET_DVR_IPC_CFG_FILE_ERR_INFO, *LPNET_DVR_IPC_CFG_FILE_ERR_INFO; + +typedef struct tagNET_DVR_TRANSFER_SWITCH +{ + DWORD dwEnable; + BYTE byRes[64]; +}NET_DVR_TRANSFER_SWITCH, *LPNET_DVR_TRANSFER_SWITCH; + +typedef struct tagNET_DVR_PTZ_PATTERN +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + DWORD dwPatternCmd; //ÔÆ̨¹ì¼£²Ù×÷ÃüÁîÂë,Ïê¼ûÏÂÃ涨Òå + DWORD dwPatternID; //ÔÆ̨¹ì¼£ID£¨É¾³ýËùÓй켣ʱÎÞЧ£© + BYTE byRes[64]; +}NET_DVR_PTZ_PATTERN, *LPNET_DVR_PTZ_PATTERN; + +typedef struct tagNET_DVR_PTZ_PARKACTION_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byOneTouchSwitch;//Ò»¼ü¿ª¹Ø, 0-²»ÆôÓã¬1-ÆôÓà (ºÍwActionType×éºÏʹÓÃ) + BYTE byRes1[2]; + DWORD dwParkTime; //ÊØÍûµÈ´ýʱ¼ä£¬µ¥Î»s + WORD wActionType; //ÊØÍû¶¯×÷ÀàÐÍ£¬0-×Ô¶¯É¨Ã裬1-֡ɨÃ裬2-Ëæ»úɨÃ裬3-Ѳº½É¨Ã裬4-»¨ÑùɨÃ裬5-Ô¤Öõ㣬6-È«¾°É¨Ã裬7-´¹Ö±É¨Ãè, 8-ÇøÓòɨÃè + WORD wID; //IDºÅ£¨Ñ²º½É¨Ãè¡¢Ô¤Öõ㡢»¨ÑùɨÃèµÄID£© + BYTE byRes[128]; +}NET_DVR_PTZ_PARKACTION_CFG, *LPNET_DVR_PTZ_PARKACTION_CFG; + +typedef struct tagNET_DVR_PTZ_MANUALTRACE +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + NET_VCA_POINT struPoint; //¶¨Î»×ø±ê + BYTE byTrackType; //¸ú×ÙÀàÐÍ0¡¢·Ç×Ô¶¯È¡Ö¤(ÆÕͨȡ֤) 1¡¢¸ßËÙµÀ·¸ú×Ù 2¡¢³ÇÊеÀ·¸ú×Ù£¨ÊÖ¶¯¸ú×ÙÈ¡Ö¤£©3¡¢¾²Ì¬È¡Ö¤ + BYTE byLinkageType;//Áª¶¯¶¯×÷: 0-ÊÖ¶¯¸ú×Ù 1-Áª¶¯²»¸ú×Ù + BYTE byRes[2]; + NET_VCA_POINT struPointEnd;/*¶¨Î»×ø±êÖÕµã*/ + NET_DVR_TIME_V30 struTime;//ÊÖ¶¯¸ú×Ù¶¨Î»£¬µ±Ç°Ê±¼ä¡£ + DWORD dwSerialNo;//ÐòºÅ£» + BYTE byRes1[36]; +}NET_DVR_PTZ_MANUALTRACE, *LPNET_DVR_PTZ_MANUALTRACE; + +typedef enum tagVQD_TYPE +{ + VQD_BLUR_FLAG = 0x00000001, //ͼÏñÄ£ºý + VQD_LUMA_FLAG = 0x00000002,//ÁÁ¶ÈÒì³£ + VQD_CHROMA_FLAG = 0x00000004,//ͼÏñÆ«É« + VQD_SNOW_FLAG = 0x00000008,//Ñ©»¨¸ÉÈÅ + VQD_STREAK_FLAG = 0x00000010,//ÌõÎƸÉÈÅ + VQD_FREEZE_FLAG = 0x00000020,//»­Ã涳½á + VQD_SIGLOSE_FLAG = 0x00000040,//ÐźŶªÊ§ + VQD_PTZ_FLAG = 0x00000080//ÔÆ̨ʧ¿Ø +}VQD_TYPE; + +typedef struct tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG +{ + DWORD dwSize ; //½á¹¹Ìå´óС + BYTE byEnable; // Õï¶ÏʹÄÜ 0 :¹Ø±Õ£¬¿ªÆô 1:¿ªÆô + BYTE byRes1[3] ; //±£Áô + BYTE byVQDTypeEnable[32]; //VQDÕï¶Ïģʽ£¬0 --²»ÆôÓà 1--ÆôÓà ÿÖÖÕï¶ÏÀàÐͶÔÓ¦ÓÐÁéÃô¶È£¬ÁéÃô¶ÈµÄϱêÓëÕï¶ÏÀàÐ͵ÄϱêÒ»Ö + /*Êý×é0 ͼÏñÄ£ºý Êý×é1 ÁÁ¶ÈÒì³£ Êý×é2 ͼÏñÆ«É«*/ + /*Êý×é3 Ñ©»¨¸ÉÈÅ Êý×é4 ÌõÎƸÉÈÅ Êý×é5 »­Ã涳½á*/ + /*Êý×é6 ÐźŶªÊ§ Êý×é7 ÔÆ̨ʧ¿Ø*/ + BYTE byThresholdValue[32] ; //ãÐÖµ0~100£¬²»Í¬Õï¶ÏģʽÓи÷×Ô¶ÔÓ¦µÄãÐÖµ + NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; //±¨¾¯´¦Àí·½Ê½ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; + NET_DVR_SCHEDTIME struHolidayAlarmTime[MAX_TIMESEGMENT_V30]; //¼ÙÈÕ²¼·Àʱ¼ä¶Î + BYTE byRes[324]; //±£Áô +}NET_DVR_VQD_LOOP_DIAGNOSE_CFG, *LPNET_DVR_VQD_LOOP_DIAGNOSE_CFG; + + +typedef struct tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO +{ + DWORD dwChannelNO; //ͨµÀºÅ + DWORD dwVQDType; // VQDÕï¶ÏÀàÐÍ + NET_DVR_TIME struDiagnoseTime; //Õï¶Ïʱ¼ä + BYTE byScoreValue; //·ÖÊýÖµ £¬°Ù·ÖÖÆ + BYTE byRes[27]; +}NET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO,*LPNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO; + + +typedef struct tagNET_DVR_VQD_DIAGNOSE_INFO +{ + DWORD dwSize ; //½á¹¹Ìå´óС + NET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO struVQDDiagnoseExceptionInfo ; //Õï¶ÏÒì³£ÐÅÏ¢½á¹¹Ìå +}NET_DVR_VQD_DIAGNOSE_INFO, *LPNET_DVR_VQD_DIAGNOSE_INFO; + +typedef struct tagNET_DVR_DEC_RESOURCE_LIST +{ + DWORD dwSize; + BYTE byDecStatus[MAX_SUBSYSTEM_NUM_V40/*120*/]; + //½âÂë×ÊԴ״̬ÁÐ±í£¬byDecStatus[i]±íʾ²ÛλºÅiµÄ×Óϵͳ״̬£¬0-ÎÞЧ£¬1-¿ÕÏУ¬2-ÆÕͨ½âÂë(°üÀ¨ÆÕͨ½âÂëÉÏǽºÍ´óÆÁÖ÷´ÓÆÁ)£¬3-ÖÇÄܽâÂë + BYTE byRes[32]; +}NET_DVR_DEC_RESOURCE_LIST,*LPNET_DVR_DEC_RESOURCE_LIST; + +typedef struct tagNET_DVR_DEC_APPLICANT_INFO +{ + DWORD dwSize; + DWORD dwDecResource; /*ÉêÇëµÄ½âÂë×ÊÔ´£¬ÒÔ·Ö±æÂʺâÁ¿£¬0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF 5£¨±£Áô£©, + 6-QVGA(320*240), 7-QQVGA(160*120), 16-VGA£¨640*480£©, 17-UXGA£¨1600*1200£©, 18-SVGA £¨800*600£©, + 19-HD720p£¨1280*720£©,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, + 31-2448*2048,32-2448*1200,33-2448*800,34-XGA£¨1024*768£©£¬35-SXGA£¨1280*1024£©,36-WD1(960*576/960*480), + 37-1080i,38-WXGA(1440*900),39-HD_F(1920*1080/1280*720),40-HD_H(1920*540/1280*360),41-HD_Q(960*540/630*360)*/ + DWORD dwChannel; //ÖÇÄÜͨµÀºÅ + NET_DVR_IPADDR struIP; //ÉêÇëÕßIP + WORD wPort; //ÉêÇëÕ߶˿ںÅ(ÖÇÄÜ·ÖÎöÒÇͨѶ¶Ë¿Ú) + BYTE byRes[18]; +}NET_DVR_DEC_APPLICANT_INFO,*LPNET_DVR_DEC_APPLICANT_INFO; + +typedef struct tagNET_DVR_DEC_RESOURCE_INFO +{ + DWORD dwSize; + DWORD dwSlotNum; //²ÛλºÅ£¬´Ë²ÎÊý×öÊͷŽâÂë×ÊÔ´ºÍµÇ½½âÂë×ÓϵͳУÑéÓà + NET_DVR_IPADDR struIP; //½âÂë×ÓϵͳIPµØÖ· + WORD wPort; //¶Ë¿ÚºÅ + BYTE byRes1[2]; + DWORD dwDecChan; //½âÂëͨµÀºÅ + BYTE sUserName[NAME_LEN]; /* ½âÂë×ÓϵͳµÇ½ÕʺŠ*/ + BYTE sPassword[PASSWD_LEN]; /* ½âÂë×ÓϵͳµÇ½ÃÜÂë */ + BYTE byRes2[32]; +}NET_DVR_DEC_RESOURCE_INFO,*LPNET_DVR_DEC_RESOURCE_INFO; + +typedef struct tagNET_DVR_DEC_CHAN_COND +{ + DWORD dwSize; + DWORD dwSlotNum; //²ÛλºÅ,ÌîÉêÇë½âÂë×ÊԴʱ·µ»ØµÄ²ÛλºÅ + DWORD dwDecChan; //½âÂëͨµÀºÅ + BYTE byRes[16]; +}NET_DVR_DEC_CHAN_COND,*LPNET_DVR_DEC_CHAN_COND; + +typedef struct tagNET_DVR_DEC_YUV_CFG +{ + DWORD dwSize; + BYTE byEnable; //¹ØÁªÊ¹ÄÜ£¬0-ÎÞ¹ØÁª£¬1-¹ØÁª + BYTE byRes1[3]; + //byEnable = 1ʱÒÔϲÎÊýÓÐЧ + DWORD dwYUVAddress[3]; //YUVÊä³öµØÖ· + WORD wWidth; //YUVÊä³ö¿í + WORD wHeight; //YUVÊä³ö¸ß + BYTE byEnableAudio; //ʹÄÜÒôƵ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes2[3]; + DWORD dwAudioAddr; //ÒôƵÊä³öµØÖ· + BYTE byRes3[16]; +}NET_DVR_DEC_YUV_CFG,*LPNET_DVR_DEC_YUV_CFG; + +typedef struct tagNET_DVR_INPUT_INFO +{ + DWORD dwSize; + BYTE byChanType; //½ÓÈëÀàÐÍ£¬1-±¾µØÄ£ÄâÁ¿Í¨µÀ£¬2-±¾µØ¿ª¹ØÁ¿Í¨µÀ£¬3-485ͨµÀ£¬4-ÍøÂçͨµÀ + BYTE byRes1[3]; + DWORD dwChanNo; //ͨµÀºÅ£¬É豸ͨµÀºÅ£¬Ö§³ÖbyChanTypeËùÓÐÀàÐÍ + DWORD dwSubChanNo; //²ÛλºÅ£¬485²ÛλºÅ£¬ÔÚbyChanTypeΪ3-485ͨµÀʱÓÐЧ£¬±íʾͨµÀºÅϵÄ×ÓͨµÀºÅ + DWORD dwVariableNo; //±äÁ¿±àºÅ£¬µ±byChanTypeΪ2-±¾µØ¿ª¹ØÁ¿Í¨µÀʱ(1-ÊäÈ룬2-Êä³ö) + BYTE byRemoteType; //»ñÈ¡±äÁ¿ÀàÐÍ£¬0-È«²¿ÀàÐÍ£¬1-Ò£ÐÅ£¬2-Ò£²â + BYTE byLinkageIPCType; //Áª¶¯IPCÅäÖÃÀàÐÍ£º0-ĬÈÏ£¬1-°´±äÁ¿ºÅÅäÖã¬2-°´Í¨µÀºÅÅäÖà + BYTE byLinkageTriggerType; //Áª¶¯´¥·¢Æ÷ÅäÖÃÀàÐÍ£º0-ĬÈÏ£¬1-°´±äÁ¿ºÅÅäÖã¬2-°´Í¨µÀºÅÅäÖà + BYTE byRes2[57]; +}NET_DVR_INPUT_INFO, *LPNET_DVR_INPUT_INFO; + +typedef struct tagNET_DVR_ALARM_VARIABLE_CFG +{ + DWORD dwSize; + WORD wVariableIndex; //±äÁ¿±àºÅ£¬Ö»ÄÜ»ñÈ¡ + WORD wVariableType; //±äÁ¿ÀàÐÍ 1-Ä£ÄâÁ¿ 2-¿ª¹ØÁ¿£¬Ö»ÄÜ»ñÈ¡ + BYTE sDescribe[NAME_LEN];//±äÁ¿ÃèÊö + BYTE byLimitLineType; //±¨¾¯ÏÞÖµÅäÖÃÀàÐÍ£¬0-²»Ö§³Ö±¨¾¯ÏÞÖµÅäÖã¬1-Á½ÏÞÖµÅäÖ㨼´ÉÏÏÞ¡¢ÏÂÏÞ£©£¬2-ËÄÏÞÖµÅäÖà + BYTE byRemoteType; //±äÁ¿Ô¶¶¯ÏµÍ³ÀàÐÍ£º0-È«²¿ÀàÐÍ£¬1-Ò£ÐÅ£¬2Ò£²â + BYTE byOsdEnabled; //±äÁ¿ÊÇ·ñÖ§³ÖOSDµþ¼Ó:0-ĬÈÏ£¬1-Ö§³Ö£¬2-²»Ö§³Ö + BYTE byRes[29]; //±£Áô +}NET_DVR_ALARM_VARIABLE_CFG, *LPNET_DVR_ALARM_VARIABLE_CFG; + + +//Ä£ÄâÁ¿µãºÅÏà¹Ø²ÎÊý +typedef struct tagNET_DVR_ALARM_SENSOR_POINT_CFG +{ + int nMeasureHigh; // Á¿³ÌÉÏÏÞ Íⲿֵ*1000´«Èë ¿ÉÒÔΪ¸ºÊý + int nMeasureLow; // Á¿³ÌÏÂÏÞ Íⲿֵ*1000´«Èë + BYTE byAlarmMode; // ±¨¾¯Ä£Ê½£¬ÎåÖÖ£¬-HHHH¡¢-HHHL¡¢-HHLL¡¢HLLL¡¢-LLLL£¬ + // ¼´£º1111£¨ÉÏÉÏÉÏÉÏ£©£¬1110£¨ÉÏÉÏÉÏÏ£©£¬1100£¨ÉÏÉÏÏÂÏ£©£¬1000(ÉÏÏÂÏÂÏÂ)£¬0000(ÏÂÏÂÏÂÏÂ) + BYTE byRes1[3]; + int nAlarmValue[4]; // ±¨¾¯ÏÞ + DWORD dwOsdCfg; // Ä£ÄâÁ¿×Ö·ûµþ¼Ó£¬°´Î»±íʾ0-15¶ÔÓ¦ÊÓƵͨµÀ1-16 + DWORD dwSensitive; // ÁéÃô¶È·¶Î§10~1000¡£Íⲿ float*1000¡£ ÁéÃô¶È±íʾµ±ÊµÊ±ÖµµÄ±ä»¯³¬¹ýÁéÃô¶ÈµÄ·¶Î§Ê±£¬Ôò±íʾʵʱֵ·¢ÉúÁ˱仯£¬·ñÔòÈÏΪûÓз¢Éú±ä»¯¡£È磺ÁéÃô¶ÈΪ0.1£¬Ôò±íʾǰºó¼ì²âµÄÁ½¸öÖµÖ®²î´óÓÚ0.1ʱ£¬ÔòÈÏΪÊý¾Ý·¢Éú±ä»¯£¬ÐèÒªÉÏ´«¡£Èç¹ûΪ1£¬Ôò±íʾ±ä»¯³¬¹ý1ʱÉϱ¨¡£ + DWORD dwIPChanOsd; // Êý×ÖͨµÀµþ¼ÓÄ£ÄâÁ¿×Ö·û£¬°´Î»±íʾ£¬0~31¶ÔÓ¦Êý×ÖͨµÀ1-32 + char szOSDUnit[MAX_OSD_UNIT_LEN]; //OSDµþ¼Óµ¥Î» + BYTE byRes[16]; +}NET_DVR_ALARM_SENSOR_POINT_CFG,*LPNET_DVR_ALARM_SENSOR_POINT_CFG; + +//¿ª¹ØÁ¿µãºÅÏà¹Ø²ÎÊý»ò485Ò£ÐÅÐźŠ+typedef struct tagNET_DVR_ALARM_SWITCH_POINT_CFG +{ + DWORD dwIPCChanOsd;//Ö§³Öosd¿ª¹ØÁ¿µþ¼ÓµÄIPCͨµÀÐÅÏ¢£¬°´Î»±íʾ£¬0~31¶ÔÓ¦Êý×ÖͨµÀ1-32 + BYTE byRes[60]; +}NET_DVR_ALARM_SWITCH_POINT_CFG,*LPNET_DVR_ALARM_SWITCH_POINT_CFG; + +//Ä£ÄâÁ¿µãºÅÏà¹Ø²ÎÊý»ò485Ò£²âÐźŠ+typedef union tagNET_DVR_ALARM_POINT_PARAM_UNION +{ + BYTE byLength[64]; //ÁªºÏÌ峤¶ÈΪ64 + NET_DVR_ALARM_SENSOR_POINT_CFG struSensor; //Ä£ÄâÁ¿£¨»ò485Ò£²âÐźţ©Ïà¹Ø²ÎÊý + NET_DVR_ALARM_SWITCH_POINT_CFG struSwitch; //¿ª¹ØÁ¿£¨»ò485Ò£ÐÅÐźţ©Ïà¹Ø²ÎÊý +}NET_DVR_ALARM_POINT_PARAM_UNION,*LPNET_DVR_ALARM_POINT_PARAM_UNION; + +//µãºÅÐÅÏ¢ +typedef struct tagNET_DVR_ALARM_POINT_CFG +{ + DWORD dwSize; + DWORD dwPointNo; //µãºÅ + BYTE sPointDescribe[NAME_LEN]; //µãºÅÃèÊö + NET_DVR_ALARM_POINT_PARAM_UNION struPointParam; //µ±±äÁ¿ÀàÐÍΪģÄâÁ¿»ò485Ò£ÐÅÐźÅʱ£¬Ê¹ÓýṹÌåstruSensor£¬µ±±äÁ¿ÀàÐÍΪ¿ª¹ØÁ¿»ò485Ò£ÐÅÐźÅʱ£¬Ê¹ÓýṹÌåstruSwitch + BYTE byPointType; //µãºÅÀàÐÍ£¬1-Ä£ÄâÁ¿£¬2-¿ª¹ØÁ¿ + BYTE byChanType; //½ÓÈëÀàÐÍ£¬1-±¾µØÄ£ÄâÁ¿Í¨µÀ£¬2-±¾µØ¿ª¹ØÁ¿Í¨µÀ£¬3-485ͨµÀ£¬4-ÍøÂçͨµÀ + BYTE byRes1[2]; + DWORD dwChanNo; //ͨµÀºÅ + DWORD dwSubChanNo; //²ÛλºÅ + DWORD dwVariableNo; //±äÁ¿±àºÅ£¬µ±byChanTypeΪ¿ª¹ØÁ¿Ê±(1-ÊäÈëÐźţ¬2-Êä³öÐźÅ) + BYTE byRes[16]; //±£Áô +}NET_DVR_ALARM_POINT_CFG, *LPNET_DVR_ALARM_POINT_CFG; + +//ÀúÊ·Êý¾Ý²éѯ +typedef struct _NET_DVR_SEARCH_CONDITION +{ + DWORD dwSize; + BYTE byMajorType; //²éѯ·½Ê½£¬1-È«²¿£¬2-°´Ê±¼ä£¬ 3-°´ÀàÐÍ£¬4-ʱ¼ä+ÀàÐÍ + BYTE byMinorType; //1-µãºÅ£¬2-ͨµÀ+²Ûλ+±äÁ¿ºÅ + BYTE byRes1[2]; + NET_DVR_TIME struStartTime; //Æðʼʱ¼ä + NET_DVR_TIME struStopTime; //½áÊøʱ¼ä + BYTE byChanType; //ͨµÀÀàÐÍ£¬1-Ä£ÄâÁ¿£¬2-485ͨµÀ£¬3-ÍøÂçͨµÀ£¬0xff±íʾÎÞЧ + BYTE byRes2[3]; + DWORD dwChanNo; //ͨµÀºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff±íʾÎÞЧ + DWORD dwSubChanNo; //²ÛλºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff±íʾÎÞЧ + DWORD dwVariableNo; //±äÁ¿ºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff±íʾÎÞЧ + DWORD dwPointNo; //µãºÅ£¬0xffffffff±íʾÎÞЧ + BYTE byRes3[32]; //±£Áô +}NET_DVR_SEARCH_CONDITION, *LPNET_DVR_SEARCH_CONDITION; + +typedef struct _NET_DVR_HISTORY_DATA +{ + DWORD dwSize; + NET_DVR_TIME struTime; //ʱ¼äµã + BYTE byChanType; //ͨµÀÀàÐÍ£¬1-Ä£ÄâÁ¿£¬2-485ͨµÀ£¬3-ÍøÂçͨµÀ£¬0xff±íʾÎÞЧ + BYTE byRes1[3]; + DWORD dwChanNo; //ͨµÀºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff±íʾÎÞЧ + DWORD dwSubChanNo; //²ÛλºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff±íʾÎÞЧ + DWORD dwVariableNo; //±äÁ¿ºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff±íʾÎÞЧ + DWORD dwPointNo; //µãºÅ£¬0xffffffff±íʾÎÞЧ + int iData; //ÀúÊ·Êý¾Ý + BYTE byDataType; //0-Õý³£Êý¾Ý£¬1-Ô½ÉÏÏÞÊý¾Ý£¬2-Ô½ÏÂÏÞÊý¾Ý + BYTE byRes2[31]; +}NET_DVR_HISTORY_DATA, *LPNET_DVR_HISTORY_DATA; + +typedef struct tagNET_DVR_ALARMHOST_ALARM_MODE_CFG +{ + DWORD dwSize; + BYTE byDataUploadMode; //1-°´Í¨µÀÉÏ´«£¬2-°´¼à²âµãÉÏ´« + BYTE byRes[31]; +}NET_DVR_ALARMHOST_ALARM_MODE_CFG,*LPNET_DVR_ALARMHOST_ALARM_MODE_CFG; + + +typedef struct tagNET_DVR_ALARMHOST_POINT_VALUE +{ + BYTE byChanType; //½ÓÈëÀàÐÍ£¬1-±¾µØÄ£ÄâÁ¿Í¨µÀ£¬2-±¾µØ¿ª¹ØÁ¿Í¨µÀ£¬3-485ͨµÀ£¬4-ÍøÂçͨµÀ + BYTE byPointType; //µãÀàÐÍ£¬1-Ò£²â£¨Ä£ÄâÁ¿£©£¬2-Ò£ÐÅ£¨¿ª¹ØÁ¿£© + BYTE byRes1[2]; //±£Áô + DWORD dwChanNo; //485ͨµÀºÅ£¬0xffffffff±íʾÎÞЧ£¬Í¨µÀÀàÐÍΪ1ʱ£º±íʾ±¾µØÄ£ÄâÁ¿Í¨µÀºÅ£¬Í¨µÀÀàÐÍΪ2ʱ±íʾ±¾µØ¿ª¹ØÁ¿Í¨µÀºÅ£¬Í¨µÀÀàÐÍΪ3ʱ±íʾ485ͨµÀºÅ¡£ + DWORD dwSubChanNo; //²ÛλºÅ£¬ 0xffffffff±íʾÎÞЧ£¬Í¨µÀÀàÐÍΪ3ʱʹÓà + DWORD dwVariableNo; //±äÁ¿±àºÅ£¬0xffffffff±íʾÎÞЧ + DWORD dwPointNo; //104µãºÅ£¬0xffffffff±íʾÎÞЧ + int iValue; //¼à²âµãµÄÖµ£¬±íʾµÍ32λ + int iValueEx; //¼à²âµãµÄÖµ£¬±íʾ¸ß32λ + BYTE byRes[12]; +}NET_DVR_ALARMHOST_POINT_VALUE,*LPNET_DVR_ALARMHOST_POINT_VALUE; + +typedef union tagNET_DVR_ALARMHOST_DATA_UNION +{ + BYTE byLength[40]; + NET_DVR_ALARMHOST_POINT_VALUE struPointValue; //¼à²âµãʵʱÊý¾Ý +}NET_DVR_ALARMHOST_DATA_UNION,*LPNET_DVR_ALARMHOST_DATA_UNION; + +typedef struct tagNET_DVR_ALARMHOST_DATA_UPLOAD +{ + DWORD dwSize; + BYTE byDataType; //Êý¾ÝÀàÐÍ£¬1-¼à²âµãʵʱÊý¾ÝÉÏ´« + BYTE byRes1[3]; + NET_DVR_ALARMHOST_DATA_UNION struAlarmData; + BYTE byRes2[32]; +}NET_DVR_ALARMHOST_DATA_UPLOAD, *LPNET_DVR_ALARMHOST_DATA_UPLOAD; + +typedef struct tagNET_DVR_INPUTVOLUME +{ + DWORD dwSize; /*½á¹¹³¤¶È*/ + BYTE byAudioInputChan;//ÒôƵÊäÈëͨµÀºÅ + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_INPUTVOLUME, *LPNET_DVR_INPUTVOLUME; + +typedef struct tagNET_DVR_AUDIOOUT_VOLUME +{ + DWORD dwSize; + BYTE byAudioOutVolume;// Êä³öÒôÁ¿µÈ¼¶£º¹éÒ»»¯Îª0-100£» + BYTE byRes[63]; +}NET_DVR_AUDIOOUT_VOLUME,*LPNET_DVR_AUDIOOUT_VOLUME; + +typedef struct tagNET_DVR_FUZZY_UPGRADE +{ + DWORD dwSize; + char sUpgradeInfo[MAX_UPGRADE_INFO_LEN]; + BYTE byRes[64]; +}NET_DVR_FUZZY_UPGRADE,*LPNET_DVR_FUZZY_UPGRADE; + +typedef struct tagNET_DVR_RS485_WORK_MODE +{ + DWORD dwSize; + BYTE byWorkMode; //¹¤×÷ģʽ£¬0-¿ØÖÆ̨£¬1-˽ÓÐ͸Ã÷ͨµÀ£¬2-͸Ã÷ͨµÀ + BYTE byRes[31]; +}NET_DVR_RS485_WORK_MODE, *LPNET_DVR_RS485_WORK_MODE; + +typedef struct tagNET_DVR_TRANSPARENT_CLIENT_SINGLE +{ + BYTE byEnable; //ʹÄÜ͸Ã÷ͨµÀ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byRes1[3]; + NET_DVR_IPADDR struIP; //Ô¶³ÌÉ豸IPµØÖ· + WORD wPort; //Ô¶³ÌÉ豸¶Ë¿Ú + BYTE byRes2[18]; +}NET_DVR_TRANSPARENT_CLIENT_SINGLE, *LPNET_DVR_TRANSPARENT_CLIENT_SINGLE; + +typedef struct tagNET_DVR_TRANSPARENT_SERVER_SINGLE +{ + BYTE byEnable; //ʹÄÜ͸Ã÷ͨµÀ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byRes1[3]; + NET_DVR_IPADDR struIP; //ÔÊÐí½ÓÈëµÄÔ¶³ÌÉ豸IP + BYTE byRes2[16]; +}NET_DVR_TRANSPARENT_SERVER_SINGLE, *LPNET_DVR_TRANSPARENT_SERVER_SINGLE; + +typedef struct tagNET_DVR_TRANSPARENT_CLIENT_MODE +{ + NET_DVR_TRANSPARENT_CLIENT_SINGLE struClientSingle[MAX_TRANSPARENT_CHAN_NUM]; + BYTE byRes[320]; +}NET_DVR_TRANSPARENT_CLIENT_MODE, *LPNET_DVR_TRANSPARENT_CLIENT_MODE; + +typedef struct tagNET_DVR_TRANSPARENT_SERVER_MODE +{ + WORD wPort; //±¾µØ¼àÌýµÄ¶Ë¿ÚºÅ£¬ºÍRS485¿ÚÒ»Ò»¶ÔÓ¦ + BYTE byRes1[2]; + NET_DVR_TRANSPARENT_SERVER_SINGLE struServerSingle[MAX_TRANSPARENT_ACCESS_NUM]; + BYTE byRes2[332]; +}NET_DVR_TRANSPARENT_SERVER_MODE, *LPNET_DVR_TRANSPARENT_SERVER_MODE; + +typedef union tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION +{ + BYTE byRes[512]; + NET_DVR_TRANSPARENT_CLIENT_MODE struClientMode; //¿Í»§¶Ëģʽ²ÎÊý + NET_DVR_TRANSPARENT_SERVER_MODE struServerMode; //·þÎñÆ÷ģʽ²ÎÊý +}NET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION, *LPNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION; + +typedef struct tagNET_DVR_TRANSPARENT_CHAN_CFG +{ + DWORD dwSize; + BYTE byWorkMode; //¹¤×÷ģʽ£¬1-¿Í»§¶Ëģʽ£¬2-·þÎñÆ÷ģʽ + BYTE byRes[3]; + NET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION struTransparentPara; +}NET_DVR_TRANSPARENT_CHAN_CFG, *LPNET_DVR_TRANSPARENT_CHAN_CFG; + +typedef struct tagNET_DVR_NAKED_DATA_INFO +{ + char sSocketIP[128]; + WORD wSocktPort; + BYTE byRes[258]; +}NET_DVR_NAKED_DATA_INFO, *LPNET_DVR_NAKED_DATA_INFO; + +typedef enum tagNAKED_DATA_TYPE +{ + NAKED_DATA_TYPE_NOT_DEFINED = 0, //䶨Òå + NAKED_DATA_TYPE_POS_INFO //½ÓÊÕµÄÊÇPosÐÅÏ¢ +}NAKED_DATA_TYPE; + + +typedef struct tagNET_DVR_NAKED_DATA_PARAM +{ + WORD wPort; //IP¶Ë¿ÚºÅ£¬¶ÔÓÚPosÐÅÏ¢½ÓÊÕ£¬¸ÃֵΪ0£¬ÔòʹÓÃĬÈ϶˿Ú7050 + BYTE byRes[130]; //±£Áô×Ö½Ú +}NET_DVR_NAKED_DATA_PARAM, *LPNET_DVR_NAKED_DATA_PARAM; + +#define UPLOAD_POS_INFO 1001 //ÉÏ´«PosÐÅÏ¢ + +typedef struct tagNET_DVR_POS_INFO +{ + NET_DVR_STRUCTHEAD struVerHead; //°æ±¾Í· + DWORD dwChannelNum; //ͨµÀºÅ + BYTE byRes[60]; +}NET_DVR_POS_INFO, *LPNET_DVR_POS_INFO; + + +#define MAX_IGNORE_STRING_NUM 4 +#define FILTERRULE_NUM 4 +#define MAX_POS_FILTER_DATA_LEN 128 + +typedef struct tagNET_DVR_POS_OSD_REGION +{ + NET_VCA_POINT struStart; //Æðµã×ø±ê + NET_VCA_POINT struEnd; //ÖÕµã×ø±ê +}NET_DVR_POS_OSD_REGION, *LPNET_DVR_POS_OSD_REGION; + + +typedef struct +{ + DWORD dwDelayTime; /*delay time(5-3600s)*/ + BYTE byPrevOsd; /*overlay osd on preview*/ + BYTE byRes1[3]; /*preserve*/ + NET_DVR_POS_OSD_REGION struOsdPosInfo; /*overlay osd rect info*/ + BYTE byRes[64]; /*preserve*/ +}NET_DVR_POS_ACTION, *LPNET_DVR_POS_ACTION; + +typedef struct +{ + BYTE sData[MAX_POS_FILTER_DATA_LEN];/*½»Ò׿ªÊ¼±êÖ¾£¬Ä¿Ç°×î´óΪ32£¬Ö»ÓÐanyCharacterΪ·ñʱ²ÅÉúЧ*/ + BYTE byExclusive; //ÊÇ·ñ°üº¬±êÖ¾±¾Éí 0-°üº¬ 1-²»°üº¬ + BYTE byFlagType; //±êÖ¾ÀàÐÍ£º0-×Ö·û´®£»1-Ê®Áù½øÖÆ + BYTE byRes[2]; /*±£Áô*/ +}NET_DVR_GENERIC_START, *LPNET_DVR_GENERIC_START; + +typedef struct +{ + BYTE sData[MAX_POS_FILTER_DATA_LEN];/*½»Ò×½áÊø±êÖ¾£¬Ä¿Ç°×î´óΪ32*/ + BYTE byExclusive; //ÊÇ·ñ°üº¬±êÖ¾±¾Éí 0-°üº¬ 1-²»°üº¬ + BYTE byFlagType; //±êÖ¾ÀàÐÍ£º0-×Ö·û´®£»1-Ê®Áù½øÖÆ + BYTE byRes[6]; +} NET_DVR_GENERIC_END, *LPNET_DVR_GENERIC_END; + +typedef struct +{ + BYTE sData[MAX_POS_FILTER_DATA_LEN];/*Êý¾Ý±êÖ¾£¬Ä¿Ç°×î´óΪ32*/ + BYTE byFlagType; //±êÖ¾ÀàÐÍ£º0-×Ö·û´®£»1-Ê®Áù½øÖÆ + BYTE byRes[3]; +}NET_DVR_GENERIC_DATA_CFG, *LPNET_DVR_GENERIC_DATA_CFG; + +typedef struct +{ + BYTE sData[MAX_POS_FILTER_DATA_LEN];/*ºöÂÔµÄ×Ö·û£¬Ä¿Ç°×î´óΪ32*/ +}NET_DVR_IGNORE_STRING, *LPNET_DVR_IGNORE_STRING; + +typedef struct +{ + BYTE byCaseSensitive;/*ÊÇ·ñÇø·Ö´óСд£¬0->²»Çø·Ö£¬1->Çø·Ö*/ + BYTE byRes1[7]; + NET_DVR_GENERIC_START struTransactionStart;/*½»Ò׿ªÊ¼*/ + NET_DVR_GENERIC_END struTransactionEnd;/*½»Ò×½áÊø*/ + NET_DVR_GENERIC_DATA_CFG struLineDeli;/*Ðмä¸ô·û*/ + NET_DVR_IGNORE_STRING struIgnoreString[MAX_IGNORE_STRING_NUM];/*ºöÂÔ×Ö·û´®£¬Ä¿Ç°Îª4¸ö*/ + BYTE byRes[40]; //±£Áô +}NET_DVR_POS_GENERIC, *LPNET_DVR_GENERIC; + +typedef struct +{ + DWORD dwPosAddr; //posµØÖ·±àºÅ + BYTE byRes[948]; +}NET_DVR_POS_AVE, *LPNET_DVR_AVE; + +#define SERIAL_NUM_LEN 8 +typedef struct tagNET_DVR_POS_NUCLEUS/*size 952byte*/ +{ + char szEmployeeNo[SERIAL_NUM_LEN];//Ô±¹¤±àºÅ£¬Èç1£¨±¸×¢£º±êÌâe£© + char szTerminalNo[SERIAL_NUM_LEN];// Pos»ú±àºÅ£¬Èç1£¨±¸×¢£º±êÌât£© + char szShiftNo[SERIAL_NUM_LEN]; //Âְࣨ±¸×¢£º±êÌâs£© + BYTE byRes[928]; +}NET_DVR_POS_NUCLEUS, *LPNET_DVR_POS_NUCLEUS; +typedef union _NET_DVR_POS_PROTOCOL_UNION +{ + BYTE byLenth[952]; //ÓÃÓÚ±íʾÁªºÏÌ峤¶È£¬ÎÞʵ¼ÊÒâÒå + NET_DVR_POS_GENERIC struGeneric; + NET_DVR_POS_AVE struAve; + NET_DVR_POS_NUCLEUS struNUCLEUS; +}NET_DVR_POS_PROTOCOL_UNION,*LPNET_DVR_POS_PROTOCOL_UNION; + +typedef enum tagNET_DVR_CHARSET_ENUM //±àÂ뷽ʽ +{ + ENUM_UTF8 =0, + ENUM_GB2312, + ENUM_LATIN1, + ENUM_LATIN2, + ENUM_LATIN3, + ENUM_LATIN4, + ENUM_CYRILLIC, + ENUM_ARABIC, + ENUM_GREEK, + ENUM_HEBREW, + ENUM_TURKISH, + ENUM_NORDIC, + ENUM_THAI, + ENUM_LATIN7, + ENUM_LATIN8, + ENUM_LATIN9, + ENUM_LATIN10, + ENUM_CENTRAL_EUROPEAN, + ENUM_CYRILLIC_SCRIPT, + ENUM_HEBREW_DOS862 +}NET_DVR_CHARSET_ENUM, *LPNET_DVR_CHARSET_ENUM; + + +typedef struct +{ + DWORD dwSize; + BYTE byEnable; //¹æÔòʹÄÜ + BYTE byCharSetType; //±àÂ뷽ʽ0-UTF-8,1-GB2312 + BYTE byRes1; //±£Áô + BYTE byProtocolType;//ЭÒéÀàÐÍ£¬1->generic textЭÒé(universal Protocol), 2->AVE VSI-ADD 3->AVE Vnet,4-EPSON(¸ÃÀàÐÍÎÞÐè´¦ÀíposЭÒé²ÎÊý), 5-NUCLEUS + //6- Gilbarco£¨ÅäÖöÔÓ¦½á¹¹ÌåNET_DVR_POS_GENERIC£©,7- NCR£¨ÅäÖöÔÓ¦½á¹¹ÌåNET_DVR_POS_GENERIC£© + NET_DVR_POS_PROTOCOL_UNION uPosProtocol; //POSЭÒé + BYTE byRes[32]; //±£Áô +}NET_DVR_POS_FILTER_CFG, *LPNET_DVR_POS_FILTER_CFG; + +typedef struct tagNET_DVR_NET_SNIFF /*ÍøÂçÕìÌý½á¹¹Ìå 312byte*/ +{ + BYTE byEnableSourcePort; //ÊÇ·ñÆôÓöÔÊý¾ÝÔ´¶Ë¿Ú¹ýÂË 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableDestAddr; //ÊÇ·ñÆôÓöÔÄ¿±êIPµØÖ·½øÐйýÂË 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableDestPort; //ÊÇ·ñÆôÓöÔÄ¿±êµØÖ·µÄ¶Ë¿ÚºÅ½øÐйýÂË + BYTE byRes1; //±£Áô + BYTE bySourceIpAddr[MAX_DOMAIN_NAME]; //Êý¾ÝÔ´µØÖ· + BYTE byDestinationIpAddr[MAX_DOMAIN_NAME]; //Êý¾Ý·¢ËÍÄ¿±êµØÖ· + WORD wSourcePort; //Êý¾ÝÔ´¶Ë¿ÚºÅ + WORD wDestinationPort; //Êý¾Ý·¢ËÍÄ¿±ê¶Ë¿ÚºÅ + BYTE byRes[16]; //±£Áô +}NET_DVR_NET_SNIFF, *LPNET_DVR_NET_SNIFF; + +typedef struct +{ + WORD wNetPort; /*device net port*/ + BYTE byRes[2]; +}NET_DVR_NET_RECEIVE, *LPNET_DVR_NET_RECEIVE; + +typedef struct tagNET_DVR_MONITOR_INFO /*¼àÌý*/ +{ + WORD wPort; //¼àÌý¶Ë¿ÚºÅ + BYTE byRes1[2]; + NET_DVR_IPADDR struRestrictRemoteIP;//±£ÁôÏÞÖÆÔ¶³Ì·ÃÎÊIP + BYTE byRes[164]; +}NET_DVR_MONITOR_INFO, *LPNET_DVR_MONITOR_INFO; + +typedef union tagNET_DVR_POS_CONNECTMODE_UNION +{ + BYTE byLen[312]; //ÁªºÏÌ峤¶È£¬ÎÞʵ¼ÊÒâÒå + NET_DVR_NET_RECEIVE struNetRecv; //ÍøÂç½ÓÊÜģʽ + NET_DVR_MONITOR_INFO struTcpMonitor; //ÍøÂç¼àÌýģʽ + NET_DVR_SINGLE_RS232 struRS232; //´®¿Ú·½Ê½ + NET_DVR_MONITOR_INFO struUdpMonitor; //ÍøÂç¼àÌý-UDPģʽ + NET_DVR_NET_SNIFF struSniff; //ÍøÂçÕìÌýģʽ + NET_DVR_ADDRESS struMcast; //¶à²¥Ä£Ê½ + NET_DVR_USB_RS232 struUSBRS232; //USBת´®¿Ú·½Ê½ +}NET_DVR_POS_CONNECTMODE_UNION, *LPNET_DVR_POS_CONNECTMODE_UNION; + + +//DVRÓëPOSÁ¬½Ó·½Ê½ÅäÖýṹÌå +typedef struct tagNET_DVR_CONNECT_POS_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byConnectMode; //Á¬½Óģʽ:0->ÍøÂç¼àÌý(TCP),1->ÍøÂç½ÓÊÜ,2->´®¿Ú½ÓÊÕ3-ÍøÂç¼àÌý£¨UDP£©,4-ÍøÂçÕìÌý,5-¶à²¥ + BYTE byRes1[3]; //±£Áô + NET_DVR_POS_CONNECTMODE_UNION uPosConnMode; //Á¬½ÓģʽÅäÖà + BYTE byRes[64]; +}NET_DVR_CONNECT_POS_CFG, *LPNET_DVR_CONNECT_POS_CFG; + +typedef struct tagNET_DVR_CHAN_FILTER_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byFilterID; //POS¹ýÂ˹æÔòID + BYTE byFontSize; //×ֺŴóС£¬0-- 8*16 1--16*32 2--32*64 + BYTE byShowPosInfo; //ÂëÁ÷ÖÐÊÇ·ñµþ¼ÓposÐÅÏ¢ + BYTE byOverlayMode; //µþ¼Ó·½Ê½£¬0-¹öÆÁ£¬1-·­Ò³ + DWORD dwDelayTime; /*delay time(5-3600s)*/ + NET_DVR_POS_OSD_REGION struOsdPosInfo; /*overlay osd rect info*/ + NET_DVR_RGB_COLOR struOsdColor; //OSDÑÕÉ« + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + //Òì³£´¦Àí·½Ê½Öб¨¾¯Êä³öºÅÓë×éºÅ°ó¶¨£¬¼´×éºÅΪ0ʱ£¬±íʾ¹ØÁªµÄ±¨¾¯Êä³öºÅ·¶Î§Îª1-64£¬µ±×éºÅΪ1ʱ£¬±íʾ¹ØÁªµÄ±¨¾¯Êä³öºÅ·¶Î§Îª65-128£¬ ÇÒÊÇ×éÄÚ½ô´ÕÅÅÁУ¬Èç¹ûÓöµ½0xffffffff±íʾ±¾×é µ±Ç°µÄ¼°×éÄÚºóÐøµÄ±¨¾¯³öºÅÎÞЧ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¾×éÄÚ¹ØÁªµÄ¼ÏóͨµÀÊý + DWORD dwRelRecordChan[MAX_CHANNUM_V30];//´¥·¢Â¼ÏñͨµÀ + //¹ØÁªµÄ¼ÏñͨµÀºÅÓë×éºÅ°ó¶¨£¬¼´×éºÅΪ0ʱ£¬±íʾ¹ØÁªµÄͨµÀºÅ·¶Î§Îª1-64£¬µ±×éºÅΪ1ʱ£¬±íʾ¹ØÁªµÄͨµÀºÅ·¶Î§Îª65-128£¬ ÇÒÊÇ×éÄÚ½ô´ÕÅÅÁУ¬Èç¹ûÓöµ½0xffffffff±íʾ±¾×éÄÚºóÐøµÄ¹ØÁªÍ¨µÀºÅÎÞЧ + DWORD dwTimeOut; /*time Out(5-3600s)*/ //Êý¾Ý³¬Ê±Ö¸Ôڶ೤ʱ¼ä½ÓÊÕ²»µ½POSÊý¾Ý¼´Åж¨Ò»´ÎÊý¾Ý°üµÄ½áÊø¡£ + BYTE byRes[60]; //±£Áô +}NET_DVR_CHAN_FILTER_CFG, *LPNET_DVR_CHAN_FILTER_CFG; + +#define MAX_LAN_ENCODE_LEN 32 //ÓïÑÔ±àÂë¸ñʽ×î´ó³¤¶È +typedef struct tagNET_DVR_DEVICE_LAN_ENCODE +{ + DWORD dwSize; + BYTE byLanEncode[MAX_LAN_ENCODE_LEN]; //É豸ÓïÑÔ±àÂë¸ñʽ + BYTE byRes[28]; +}NET_DVR_DEVICE_LAN_ENCODE, *LPNET_DVR_DEVICE_LAN_ENCODE; + +typedef struct tagNET_DVR_SCENECHANGE_DETECTION +{ + DWORD dwSize; + BYTE byEnable; //ʹÄÜ£¬ÊÇ·ñ¿ªÆô 0~²»¿ªÆô,1~¿ªÆô + BYTE bySensitiveLevel;// 1-100£¬Ä¬ÈÏ50£¬ÁéÃô¶ÈÔ½¸ß£¬Ô½ÈÝÒ×±¨¾¯ + BYTE byRes1[2]; + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý ʵ¼ÊÖ§³ÖµÄÊýÁ¿ + DWORD dwRelRecordChan[MAX_CHANNUM_V30];//´¥·¢Â¼ÏñͨµÀ + //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ£¨ËÄ×Ö½ÚµÄͨµÀºÅ£¬³õʼֵÊÇ 0xffffffff£© + BYTE byRes2[128]; +}NET_DVR_SCENECHANGE_DETECTION,*LPNET_DVR_SCENECHANGE_DETECTION; + +typedef struct tagNET_DVR_SCENECHANGE_DETECTION_RESULT +{ + DWORD dwSize; // ½á¹¹´óС + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byRes[126]; // ±£Áô×Ö½Ú +}NET_DVR_SCENECHANGE_DETECTION_RESULT,*LPNET_DVR_SCENECHANGE_DETECTION_RESULT; + +typedef enum +{ + PREVIEW_MOD = 0, + ALARM_MOD, + PLAYBACK_MOD, + MAX_TYPE +}MODULE_TYPE; + +//³µÎ»ÐÅÏ¢ +typedef struct tagNET_DVR_PARK_INFO +{ + char sPlateNo[MAX_PlATE_NO_LEN]; //³µÅƺÅÂë + char sParkIndex[MAX_PlATE_NO_LEN]; //³µÎ»±àºÅ + BYTE byRes[64]; +}NET_DVR_PARK_INFO, *LPNET_DVR_PARK_INFO; + + +typedef struct tagNET_DVR_CROSSLINE_ALARM +{ + DWORD dwSize; + NET_VCA_DEV_INFO struDevInfo; + NET_DVR_TIME_EX struTriggerTime;/*´¥·¢Ê±¼ä*/ + NET_DVR_PARK_INFO struParkInfo; //³µÎ»ÐÅÏ¢ + BYTE byRes1[128]; +}NET_DVR_CROSSLINE_ALARM, *LPNET_DVR_CROSSLINE_ALARM; + +typedef struct tagNET_DVR_STREAM_SRC_CFG +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamID; //Á÷ÐÅÏ¢ + NET_DVR_STREAM_SRC_INFO struStreamSrcInfo; //Á÷Ô´ÐÅÏ¢ +}NET_DVR_STREAM_SRC_CFG,*LPNET_DVR_STREAM_SRC_CFG; + +typedef struct tagNET_DVR_ENCODEINFO +{ + BYTE byFormatType; //·â×°ÀàÐÍ£¬1-ÂãÁ÷£¬2-RTP·â×°£¬3-PS·â×°£¬4-TS·â×°£¬5-˽ÓУ¬6-FLV£¬7-ASF£¬8-3GP, 9-RTP+PS£¨¹ú±ê£ºGB28181£©£¬0xff-ÎÞЧ + BYTE byVideoEncType;//ÊÓƵ±àÂëÀàÐÍ£¬0-˽ÓÐ264£¬1-±ê×¼h264£¬2-±ê×¼mpeg4£¬7-M-JPEG£¬0xff-ÎÞЧ + WORD wWidth; //ͼÏñ¿í¶È + WORD wHeight; //ͼÏñ¸ß¶È + BYTE byRes1[2]; + DWORD dwVideoBitrate; //ÊÓƵÂëÂÊ,µ¥Î»Kbps + DWORD dwVideoFrameRate; //Ö¡ÂÊ£¬200Æð±íʾСÓÚ1Ö¡/ÃëµÄ״̬£¬ÆäÓàÖµ±íʾʵ¼ÊÖ¡ÂÊÖµ,200-1/2,201-1/4,202-1/8,203-1/16 + BYTE byAudioEncType;//ÒôƵ±àÂëÀàÐÍ£¬0-G722£¬1-G711_U£¬2-G711_A£¬5-MPEG2,6-G726£¬7-AAC,0xff-ÎÞЧ + BYTE byRes2[15]; +}NET_DVR_ENCODEINFO, *LPNET_DVR_ENCODEINFO; + + +typedef struct tagNET_DVR_TRANSSTATUS +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo;//Á÷ID¡¢×ªÂëͨµÀÐÅÏ¢ + BYTE byMode;//תÂëģʽ£¬1-Ö÷¶¯×ªÂ룬2-±»¶¯×ªÂë + BYTE byLinkNums;//Á¬½ÓÊý + BYTE byPassiveTransMode; //±»¶¯×ªÂëģʽ£¬0-ÎÞЧ£¬1-ʵʱÁ÷£¬2-ÎļþÁ÷ + BYTE byRes; + NET_DVR_ADDRESS struDstIPInfo[MAX_LINK];//Ä¿±êתÂëipµØÖ· + BYTE byTransResource;//ËùʹÓõÄתÂë×ÊÔ´Êý£¬°´D1¼ÆËã + BYTE byRes1[15]; + NET_DVR_ENCODEINFO struSrcEncodeInfo;//Ô´±àÂëÐÅÏ¢ + NET_DVR_ENCODEINFO struDstEncodeInfo[MAX_LINK /*6*/];//Ä¿±ê±àÂëÐÅÏ¢ + BYTE byRes2[36]; +}NET_DVR_TRANSSTATUS, *LPNET_DVR_TRANSSTATUS; + +typedef struct tagNET_DVR_TRANSDEVICE_STATUS +{ + DWORD dwSize; + DWORD dwTotalResource;//È«²¿×ªÂë×ÊÔ´£¬ÒÔD1Ϊµ¥Î»¼ÆËã + DWORD dwIdleResource;//Ê£ÓàתÂë×ÊÔ´£¬ÒÔD1Ϊµ¥Î»¼ÆËã + BYTE byCpuLoad;//CPUÀûÓÃÂÊ + BYTE byRes[67]; +}NET_DVR_TRANSDEVICE_STATUS, *LPNET_DVR_TRANSDEVICE_STATUS; + +typedef struct tagNET_DVR_DEV_WORK_MODE +{ + DWORD dwSize; + BYTE byWorkMode; //1-ͨµÀģʽ£¬2-Á÷IDģʽ + BYTE byDisplayMode; //0-ÆÕͨ£¬1-³©ÏÔ + BYTE byEnableVcaDec; //ÊÇ·ñÆôÓÃÖÇÄܽâÂ룬0-²»ÆôÓ㬷Ç0-ÆôÓà + BYTE byRes[61]; +}NET_DVR_DEV_WORK_MODE,*LPNET_DVR_DEV_WORK_MODE; + + +typedef struct tagNET_DVR_PASSIVETRANSINFO +{ + DWORD dwSize; + BYTE byStreamType;// ÂëÁ÷ÀàÐÍ£¬0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷ + BYTE byLinkMode;// 0£ºTCP·½Ê½,1£ºUDP·½Ê½£¨±£Áô£© + BYTE byPassiveTransMode; //±»¶¯×ªÂëģʽ£¬1-ʵʱÁ÷£¬2-ÎļþÁ÷ + BYTE byRes1[5]; + BYTE byDataType;//»º³åÇøÀàÐÍ£¬1-SDP£¬2-ÂëÁ÷Í· + BYTE byRes2; + WORD wDataLength;//Êý¾Ý³¤¶È + char *pBuffer;//»º³åÇø + BYTE byRes3[32]; // ±£Áô +}NET_DVR_PASSIVETRANSINFO, *LPNET_DVR_PASSIVETRANSINFO; + +typedef struct tagNET_DVR_BASEMAP_CONTROL_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÏÔʾ£¬1-ÏÔʾ£¬0-Òþ²Ø + BYTE byBaseMapType; //µ×ͼÀàÐÍ£¬1-ͼƬµ×ͼ£¬2-³¬¸ßÇåÊäÈëµ×ͼ£¬3-µ×ͼÂÖѵ + BYTE byBaseMapCircleNo; //µ×ͼÂÖѵ²ÎÊý±àºÅ£¬byBaseMapTypeΪ3ʱÓÐЧ + BYTE byRes1; + DWORD dwBaseMapNo; //µ×ͼºÅ£»µ×ͼÀàÐÍΪ1ʱ£¬´Ë²ÎÊýΪͼƬÐòºÅ£¬µ×ͼÀàÐÍΪ2ʱ´Ë²ÎÊýΪ³¬¸ßÇåÊäÈë×ÓϵͳÊäÈë¿ÚºÅ£¨1×Ö½Ú¾ØÕóºÅ+1×Ö½Ú×Ó°åºÅ+1×Ö½ÚÊäÈë¿ÚºÅ+1×Ö½Ú±£Áô£© + BYTE byRes2[64]; +}NET_DVR_BASEMAP_CONTROL_CFG,*LPNET_DVR_BASEMAP_CONTROL_CFG; + +typedef struct tagNET_DVR_VIRTUAL_SCREEN_CFG +{ + DWORD dwSize; + DWORD dwResolution; //·Ö±æÂÊ£¬MAKE_RESOLUTIONºê¶¨ÒåµÄÖµ£¬´ÓµçÊÓǽÄÜÁ¦»ñÈ¡Ö§³ÖµÄ·Ö±æÂÊÖµ + BYTE byRes[64]; +}NET_DVR_VIRTUAL_SCREEN_CFG, *LPNET_DVR_VIRTUAL_SCREEN_CFG; + +typedef struct tagNET_DVR_BASEMAP_WINCFG +{ + DWORD dwSize; + BYTE byEnable; + BYTE byWndOperateMode; //´°¿Ú²Ù×÷ģʽ£¬0-ͳһ×ø±ê£¬1-·Ö±æÂÊ×ø±ê + BYTE byRes1[6]; + NET_DVR_RECTCFG_EX struWinPosition;//Ä¿µÄ´°¿Ú(Ïà¶ÔÏÔʾǽ),µ×ͼ´°¿ÚµÄÆðʼ×ø±êºÍ´óС±ØÐëÊÇ»ù×¼×ø±êµÄÕûÊý±¶ + NET_DVR_RECTCFG_EX struResolution; //Ä¿µÄ´°¿Ú·Ö±æÂÊ×ø±ê£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + DWORD dwXCoordinate; //LEDÇøÓò×óÉϽÇX×ø±ê£¨Í³Ò»×ø±ê£©£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + DWORD dwYCoordinate; //LEDÇøÓò×óÉϽÇY×ø±ê£¨Í³Ò»×ø±ê£©£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + BYTE byRes2[36]; +}NET_DVR_BASEMAP_WINCFG, *LPNET_DVR_BASEMAP_WINCFG; + +typedef struct tagNET_DVR_BASEMAP_PIC_INFO +{ + DWORD dwSize; + BYTE sPicName[NAME_LEN];//ͼƬÃû³Æ + BYTE byUsed; //ÊÇ·ñÒÑ´æÔÚ£¬0-²»´æÔÚ£¬1-´æÔÚ + BYTE byRes[31]; +}NET_DVR_BASEMAP_PIC_INFO,*LPNET_DVR_BASEMAP_PIC_INFO; + +typedef struct tagNET_DVR_MATRIX_LOGO_INFO +{ + DWORD dwSize; + DWORD dwLogoSize;//LOGO´óС£¬°üÀ¨BMPµÄÎļþÍ·£¬Í¼Æ¬´óС³¬ÏÞ£¬ÏÞ100K£¬¸ßºÍ¿íÐëÊÇ32µÄ±¶Êý + BYTE byRes[32]; +}NET_DVR_MATRIX_LOGO_INFO,*LPNET_DVR_MATRIX_LOGO_INFO; + +typedef struct tagNET_DVR_MATRIX_LOGO_CFG +{ + DWORD dwSize; + BYTE byExist; //logoÊÇ·ñ´æÔÚ£¬0-²»´æÔÚ£¬1-´æÔÚ£¨´Ë²ÎÊýÖ»ÄÜ»ñÈ¡£© + BYTE byRes1[3]; + DWORD dwLogoSize;//LOGO´óС£¬°üÀ¨BMPµÄÎļþÍ·(´Ë²ÎÊýÖ»ÄÜ»ñÈ¡) + BYTE byLogoName[NAME_LEN]; //logoÃû³Æ + DWORD dwLogoNo; //logo±àºÅ£¨»ñÈ¡ËùÓÐlogoÐÅϢʱÓÐЧ£© + BYTE byRes2[28]; +}NET_DVR_MATRIX_LOGO_CFG,*LPNET_DVR_MATRIX_LOGO_CFG; + +typedef struct tagNET_DVR_WIN_LOGO_CFG +{ + DWORD dwSize; + DWORD dwLogoNo; //logoºÅ + BYTE byEnable; //logoÊÇ·ñÏÔʾ£¬1-ÏÔʾ£¬0-Òþ²Ø + BYTE byRes1[3]; + DWORD dwCoordinateX; //ͼƬÏÔʾÇøÓòX×ø±ê + DWORD dwCoordinateY; //ͼƬÏÔʾÇøÓòY×ø±ê + BYTE byFlash; //ÊÇ·ñÉÁ˸1-ÉÁ˸£¬0-²»ÉÁ˸ + BYTE byTranslucent; //ÊÇ·ñ°ë͸Ã÷1-°ë͸Ã÷£¬0-²»°ë͸Ã÷ + BYTE byRes2[34]; //±£Áô +}NET_DVR_WIN_LOGO_CFG,*LPNET_DVR_WIN_LOGO_CFG; + + +typedef struct tagNET_DVR_BIG_SCREEN_AUDIO_CFG +{ + DWORD dwSize; + DWORD dwWinIndex; //´°¿ÚºÅ£¬´Ó1¿ªÊ¼£¬0±íʾµ×ͼ + BYTE byEnable; //ÊÇ·ñ´ò¿ªÒôƵ£¬1-´ò¿ªÒôƵ£¬0-¹Ø±ÕÒôƵ + BYTE byRes[31]; +}NET_DVR_BIG_SCREEN_AUDIO_CFG, *LPNET_DVR_BIG_SCREEN_AUDIO_CFG; + +typedef struct tagNET_DVR_WIN_ZOOM_STATUS +{ + DWORD dwSize; + BYTE byZoomStatus; //0-Õý³£×´Ì¬£¬1-·Å´ó״̬ + BYTE byRes1[3]; + NET_DVR_POINT_FRAME struPointFrame; //·Å´óÇøÓò£¬µ±byZoomStatusΪ1ʱÓÐЧ + BYTE byRes2[32]; +}NET_DVR_WIN_ZOOM_STATUS,NET_DVR_WIN_ZOOM_STATUS; + +typedef struct tagNET_DVR_RESUME_INITRACKPOS_CFG +{ + DWORD dwSize; // ½á¹¹´óС + DWORD dwChannel;; // ͨµÀºÅ + BYTE byRes[16]; // ±£Áô×Ö½Ú +}NET_DVR_RESUME_INITRACKPOS_CFG,*LPNET_DVR_RESUME_INITRACKPOS_CFG; + +typedef struct tagNet_DVR_TEST_SELFCHECK_RESULT +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE bySelfCheckStatus; //×Ô¼ì״ֵ̬ 0-δ¿ªÊ¼£¬1-³É¹¦£¬2-ʧ°Ü£¬3-×Ô¼ìÖÐ + BYTE byRes[23]; //±£Áô×Ö½Ú +}NET_DVR_TEST_SELFCHECK_RESULT, *LPNET_DVR_TEST_SELECHECK_RESULT; + + +typedef struct tagNET_DVR_TEST_COMMAND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byTestCommand[MAX_TEST_COMMAND_NUM]; + //0-±íʾ²»¿ªÆô²âÊÔ£¬ 1-±íʾ¿ªÆô²âÊÔ + //Êý×éϱê0 ¿ªÆôÀÏ»¯²âÊÔ³ÌÐò + //Êý×éϱê1 ºìÍâµÆ½øÈë²âÊÔģʽ + //Êý×éϱê2 ICRÀÏ»¯²âÊÔ£¬0±íʾ¹Ø±Õ£¬1±íʾ¿ªÆô£¬¿ÉÒÔÓëbit0 ×éºÏ£¬Èç0000_0001(Ö»¿ªÆôѲº½ÀÏ»¯)¡¢0000_0101£¨Í¬Ê±¿ªÆôѲº½ºÍICRÀÏ»¯£©¡¢0000_0100£¨Ö»¿ªÆôICRÀÏ»¯£© + //Êý×éϱê3 -Çò»úpt×Ô½ÃÕý¹¦ÄÜ״̬£¬0±íʾÇò»ú×Ô½ÃÕý¹¦ÄÜδÇå³ý£¬1±íʾÇò»ú×Ô½ÃÕý¹¦ÄÜÒÑÇå³ý + //Êý×éϱê4 »¨ÑùɨÃè²âÊÔ³ÌÐò£¬0±íʾ¹Ø±Õ£¬1±íʾ¿ªÆô + //Êý×éϱê5 µç×ÓÂÞÅÌУÕý³ÌÐò£¬0±íʾ¹Ø±Õ£¬1±íʾ¿ªÆô + WORD wICRIntervalTime;//icr¼ä¸ôʱ¼ä£¨byTestCommand Êý×éϱí2ÄÚµÄֵΪ1ʱ£¬ICR¿ª¹Ø¼ä¸ôʱ¼ä£¬µ¥Î»Ã룩 + BYTE byElectronicCompassState;//ÂÞÅÌ״̬·µ»Ø£¬ 0-Õý³££¬ 1-²»Õý³£ + BYTE byRes1[1]; + float fDeviceTem; //É豸»úоζȣ¬¾«È·¶È0.001 + BYTE byTemp[9]; //ÓÃÓÚ¶à¸öÎÂÃôÉ豸£¬ ϱê0-È«¾°µÄÎÂÃô£¬ ±ê1-4£ºÈ«¾°1µÄ4¸ösensorµÄÎÂÃô£¬ ±ê5-8£ºÈ«¾°2µÄ4¸ösensorµÄÎÂÃô,Ä¿Ç°ÓÃÓÚÓ¥ÑÛÈ«¾° + BYTE byRes[3]; //±£Áô×Ö½Ú +}NET_DVR_TEST_COMMAND, *LPNET_DVR_TEST_COMMAND; + +typedef struct tagNET_DVR_AGING_TRICK_SCAN +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byAging; // ±íʾÉèÖõIJÎÊý ΪÀÏ»¯Ç°¹¤¾ß»¹ÊÇÀÏ»¯ºó¹¤¾ß£¬ 0-ÀÏ»¯Ç°¡¢1-ÀÏ»¯ºó + BYTE byWriteReadEnalbe; //¶ÁдָÁîʹÄÜ£¬0-ÉèÖöÁÖ¸Á 1-ÉèÖÃдָÁî + BYTE byRes[126]; //±£Áô×Ö½Ú +}NET_DVR_AGING_TRICK_SCAN, *LPNET_DVR_AGING_TRICK_SCAN; + +#define IPC_PARAM_AGING_TRICK_SCAN 0x00000001 //Çå³ý»¨ÑùɨÃè²ÎÊýÉèÖà +typedef struct tagNET_DVR_IPC_PARAM_TYPE +{ + DWORD dwSize; + DWORD dwParamType; //²ÎÊýÀàÐÍ£¬°´Î»±íʾ + // #define IPC_PARAM_AGING_TRICK_SCAN 0x00000001 //Çå³ý»¨ÑùɨÃè²ÎÊýÉèÖà + BYTE byRes[32]; +}NET_DVR_IPC_PARAM_TYPE, *LPNET_DVR_IPC_PARAM_TYPE; + +typedef struct tagNET_DVR_ECCENTRIC_CORRECT_STATE +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byEccentricCorrectState; // Æ«ÐĽÃÕý״̬£¬0-УÕýʧ°Ü¡¢1-УÕý³É¹¦¡¢2-УÕýÖÐ + BYTE byRes[127]; //±£Áô×Ö½Ú +}NET_DVR_ECCENTRIC_CORRECT_STATE, *LPNET_DVR_ECCENTRIC_CORRECT_STATE; + + + +#define MAX_DEVMODULE_NUM 8 +typedef struct tagNET_DVR_TEST_DEVMODULE_CFG +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byDevFanModuleType[MAX_DEVMODULE_NUM]; //²âÊÔµÄÉ豸ÀàÐÍ + // 0-²»¿ªÆô²âÊÔ,1-¿ªÆô²âÊÔ + // bit0-²âÊÔ·çÉÈ1 + // bit1-²âÊÔ·çÉÈ2 + BYTE byDevHeaterModuleType[MAX_DEVMODULE_NUM]; //²âÊÔµÄÉ豸ÀàÐÍ + // 0-²»¿ªÆô²âÊÔ,1-¿ªÆô²âÊÔ + // bit0-²âÊÔ¼ÓÈÈÆ÷1 + // bit1-²âÊÔ¼ÓÈÈÆ÷2 + BYTE byRes[22]; //±£Áô×Ö½Ú +}NET_DVR_TEST_DEVMODULE_CFG, *LPNET_DVR_TEST_DEVMODULE_CFG; + +//³öÈë¿ÚÌõ¼þ +typedef struct tagNET_DVR_BARRIERGATE_COND +{ + BYTE byLaneNo;//³µµÀºÅ£¨0-±íʾÎÞЧֵ(É豸ÐèÒª×öÓÐЧֵÅжÏ),1-³µµÀ1£© + BYTE byRes[3]; +}NET_DVR_BARRIERGATE_COND,*LPNET_DVR_BARRIERGATE_COND; + +typedef struct tagNET_DVR_VEHICLE_CONTROL +{ + BYTE byGateOperateType;//0-ÎÞ²Ù×÷,1-¿ªµÀÕ¢ + BYTE byRes1 ; + WORD wAlarmOperateType;//0-ÎÞ²Ù×÷,bit0-¼ÌµçÆ÷Êä³ö±¨¾¯ bit1-²¼·ÀÉÏ´«±¨¾¯ bit3-¸æ¾¯Ö÷»úÉÏ´«£¨¿É¸´Ñ¡£©(0-±íʾ¹Ø£¬1-±íʾ¿ª) + BYTE byRes2[8]; +}NET_DVR_VEHICLE_CONTROL,*LPNET_DVR_VEHICLE_CONTROL; + +typedef struct tagNET_DVR_RELAY_PARAM +{ + BYTE byAccessDevInfo;//0-²»½ÓÈëÉ豸£¬1-¿ªµÀÕ¢¡¢2-¹ØµÀÕ¢¡¢3-Í£µÀÕ¢¡¢4-±¨¾¯Ðźš¢5-³£ÁÁµÆ + BYTE byRes[3]; +}NET_DVR_RELAY_PARAM,*LPNET_DVR_RELAY_PARAM; + +//³öÈë¿ÚÅäÖà +typedef struct tagNET_DVR_ENTRANCE_CFG +{ + DWORD dwSize; + BYTE byEnable ;// ʹÄÜ0-±íʾ¹Ø±Õ£¬1-±íʾ´ò¿ª + BYTE byBarrierGateCtrlMode;//0-Ïà»ú×Ô¶¯¿ØÖÆ£¬1-ƽ̨Íⲿ¿ØÖÆ + BYTE byRes1[2]; + DWORD dwRelateTriggerMode;//¹ØÁª´¥·¢Ä£Ê½ ²Î¿¼ITC_TRIGGERMODE_TYPE + /*0x00: ²»×öÆ¥Åä*/ + /*0x01: ³µÅÆÆ¥Å䣨´ø³µÅÆÑÕÉ«£©*/ + /*0x02: ³µÅÆÆ¥Å䣨²»´ø³µÅÆÑÕÉ«£©*/ + /*0x04: ¿¨ºÅÆ¥Åä*/ + DWORD dwMatchContent; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + NET_DVR_RELAY_PARAM struRelayRelateInfo[MAX_RELAY_NUM/*12*/];//¼ÌµçÆ÷¹ØÁªÅäÖÃÐÅÏ¢(Ò»¸ö¼ÌµçÆ÷Ö»ÄÜ¿ØÖÆÒ»¸ö½ÓÈëÉ豸) Êý×é0±íʾ¼ÌµçÆ÷1 Êý×é1±íʾ¼ÌµçÆ÷2 ÒÀ´ÎÀàÍÆ 12 + BYTE byGateSingleIO[MAX_IOIN_NUM/*8*/]; //µ¥¸öIO´¥·¢²ÎÊý£¬µ¥¸öIO´¥·¢²ÎÊý£¬Êý×é0±íʾIO1£¬Êý×é1±íʾIO2£¬ÒÀ´ÎÀàÍÆ ; ¾ßÌåÊý×éÖµµÄº¬Ò壨0-ÎÞ£¬1-µÀÕ¢¿ªµ½Î»£¬2-µÀÕ¢¹Øµ½Î»£¬3-Ïû·À±¨¾¯£© + //³µÁ¾ÐÅÏ¢¹Ü¿Ø + //Êý×é0±íʾÁÙʱ³µÁ¾ÅäÖõÄģʽ + //Êý×é1-½ûÖ¹Ãûµ¥³µÁ¾µÄģʽ, + //Êý×é2-ÔÊÐíÃûµ¥³µÁ¾µÄģʽ + NET_DVR_VEHICLE_CONTROL struVehicleCtrl[MAX_VEHICLE_TYPE_NUM/*8*/];//³µÁ¾ÐÅÏ¢¹Ü¿Ø + BYTE byNotCloseCarFollow;//ÆôÓøú³µ²»ÂäբʹÄÜ£¬0~Ϊ²»ÆôÓã¬1~ÆôÓà + BYTE byParkingDetectEnabled;//ÆôÓÃפ³µ¼ì²âʹÄÜ£¬0~Ϊ²»ÆôÓã¬1~ÆôÓà + BYTE byParkingDetectJudgeTime;//פ³µ¼ì²âÅжÏʱ¼ä£¬µ¥Î»Ãë + BYTE byRes2[61]; +}NET_DVR_ENTRANCE_CFG,*LPNET_DVR_ENTRANCE_CFG; +////////////////////////////³öÈë¿Ú²ÎÊýÅäÖà end/////////////////////////////// + +// µÀÕ¢¿ØÖÆ +typedef struct tagNET_DVR_BARRIERGATE_CFG +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byLaneNo; //µÀÕ¢ºÅ£¨0-±íʾÎÞЧֵ(É豸ÐèÒª×öÓÐЧֵÅжÏ),1-µÀÕ¢1£© + /* + ÈôÀϵÄƽ̨²»Ö§³ÖbyUnlock×ֶΣ¬¸Ã×ֶν«¸³ÖµÎª0£¬Í¨¹ý¡°0-¹Ø±ÕµÀÕ¢,1-¿ªÆôµÀÕ¢,2-Í£Ö¹µÀÕ¢¡±ÖеÄÈκÎÒ»ÖÖ²Ù×÷½Ô¿É½øÐнâËø¡£ + ÈôÐÂƽ̨֧³ÖbyUnlock×ֶΣ¬ÐèbyUnlock×ֶθ³ÖµÎª1£¬²¢½áºÏ4~½âËøµÀÕ¢À´½øÐнâËø¡£byUnlock×ֶθ³ÖµÎª1ºó£¬¡°0-¹Ø±ÕµÀÕ¢,1-¿ªÆôµÀÕ¢,2-Í£Ö¹µÀÕ¢¡±²Ù×÷½«²»¿ÉÓÃÓÚ½âËø¡£ + */ + BYTE byBarrierGateCtrl;//0-¹Ø±ÕµÀÕ¢,1-¿ªÆôµÀÕ¢,2-Í£Ö¹µÀÕ¢ 3-Ëø¶¨µÀÕ¢,4~½âËøµÀÕ¢ + BYTE byEntranceNo;//³öÈë¿Ú±àºÅ [1,8] + BYTE byUnlock;//ÆôÓýâËøʹÄÜ£¬0~Ϊ²»ÆôÓã¬1~ÆôÓà + BYTE byRes[12]; +}NET_DVR_BARRIERGATE_CFG, *LPNET_DVR_BARRIERGATE_CFG; + +//³öÈë¿ÚÃûµ¥µÄÊý¾Ýͬ²½ +typedef struct tagNET_DVR_VEHICLE_CONTROL_LIST_INFO +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ0xff - È«²¿Í¨µÀ£¨ITC ĬÈÏÊÇ1£© + DWORD dwDataIndex;//Êý¾ÝÁ÷Ë®ºÅ£¨Æ½Ì¨Î¬»¤µÄÊý¾ÝΨһֵ£¬¿Í»§¶Ë²Ù×÷µÄʱºò£¬¸ÃÖµ²»»áÆðЧ¡£¸ÃÖµÖ÷ÒªÓÃÓÚÊý¾ÝÔöÁ¿Í¬²½£© + char sLicense[MAX_LICENSE_LEN]; //³µÅƺÅÂë + BYTE byListType;//Ãûµ¥ÊôÐÔ£¨Ãûµ¥£©0-ÔÊÐíÃûµ¥£¬1-½ûÖ¹Ãûµ¥ + BYTE byPlateType; //³µÅÆÀàÐÍ + BYTE byPlateColor; //³µÅÆÑÕÉ« + BYTE byRes[21]; + char sCardNo[MAX_CARDNO_LEN]; // ¿¨ºÅ + NET_DVR_TIME_V30 struStartTime;//ÓÐЧ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struStopTime;//ÓÐЧ½áÊøʱ¼ä + //²Ù×÷Êý£¨Æ½Ì¨Í¬²½±íÁ÷Ë®ºÅ²»»áÖظ´£¬ÓÃÓÚÔöÁ¿¸üУ¬´ú±íͬ²½µ½Í¬²½±íµÄijһÌõ¼Ç¼ÁË£¬´æÔÚÏà»úÄڴ棬ÖØÆôºó»áÇå0£©2014-03-03 + char sOperateIndex[MAX_OPERATE_INDEX_LEN]; + BYTE byRes1[224]; // ±£Áô×Ö½Ú +} NET_DVR_VEHICLE_CONTROL_LIST_INFO,*LPNET_DVR_VEHICLE_CONTROL_LIST_INFO; + +//Êý¾ÝÈ«²¿»ñÈ¡½Ó¿Ú £¨³¤Á¬½Ó»ñÈ¡£© +typedef struct tagNET_DVR_VEHICLE_CONTROL_COND +{ + DWORD dwChannel;//ͨµÀºÅ0xffffffff - È«²¿Í¨µÀ£¨ITC ĬÈÏÊÇ1£© + DWORD dwOperateType;//²Ù×÷ÀàÐÍ£¬²ÎÕÕVCA_OPERATE _TYPE¡££¨¿É¸´Ñ¡£© + char sLicense[MAX_LICENSE_LEN];//³µÅƺÅÂë + char sCardNo[MAX_CARDNO_LEN]; // ¿¨ºÅ + BYTE byListType;//Ãûµ¥ÊôÐÔ0-ÔÊÐíÃûµ¥£¬1-½ûÖ¹Ãûµ¥£¬0xff-È«²¿ + //2014-02-25 + BYTE byRes1[3]; + DWORD dwDataIndex;//Êý¾ÝÁ÷Ë®ºÅ + BYTE byRes[116]; +}NET_DVR_VEHICLE_CONTROL_COND,*LPNET_DVR_VEHICLE_CONTROL_COND; + +//Ãûµ¥Êý¾ÝÐèҪͬ²½±¨¾¯ +typedef struct +{ + DWORD dwSize; + DWORD dwDataIndex;//Êý¾ÝÁ÷Ë®ºÅ£¨Õâ¸öÖµ·µ»ØÉ豸µ±Ç°½ÓÊÕµ½µÄÊý¾ÝµÄ×îºóÒ»¸öÊý¾ÝÁ÷Ë®ºÅ,ƽ̨ͬ²½µÄʱºò´ÓÏÂÒ»¸öÁ÷Ë®ºÅ¿ªÊ¼Í¬²½£© + char sOperateIndex[MAX_OPERATE_INDEX_LEN]; //²Ù×÷Êý£¨Æ½Ì¨Í¬²½±íÁ÷Ë®ºÅ²»»áÖظ´£¬ÓÃÓÚÔöÁ¿¸üУ¬´ú±íͬ²½µ½Í¬²½±íµÄijһÌõ¼Ç¼ÁË£¬´æÔÚÏà»úÄڴ棬ÖØÆôºó»áÇå0£© 2014-03-03 + BYTE byRes[32]; +}NET_DVR_VEHICLE_CONTROL_LIST_DSALARM, *LPNET_DVR_VEHICLE_CONTROL_LIST_DSALARM; + +//³µÁ¾±¨¾¯ +typedef struct tagNET_DVR_VEHICLE_CONTROL_ALARM +{ + DWORD dwSize; + BYTE byListType; //Ãûµ¥ÊôÐÔ0-ÔÊÐíÃûµ¥£¬1-½ûÖ¹Ãûµ¥£¬2-ÁÙʱÃûµ¥ + BYTE byPlateType; //³µÅÆÀàÐÍ + BYTE byPlateColor; //³µÅÆÑÕÉ« + BYTE byRes1; + char sLicense[MAX_LICENSE_LEN];//³µÅƺÅÂë + char sCardNo[MAX_CARDNO_LEN]; // ¿¨ºÅ + NET_DVR_TIME_V30 struAlarmTime; //±¨¾¯Ê±¼ä + DWORD dwChannel; //É豸ͨµÀºÅ£¬Èç¹ûÖ±Á¬µÄÊÇIPC£¬ÔòΪipcͨµÀºÅ£»Èç¹ûÁ¬µÄDVR\nvr,ÔòΪDVR\NVRµÄͨµÀºÅ + DWORD dwPicDataLen; //ͼƬÊý¾Ý´óС£¬0±íʾÎÞͼƬ£¬²»Îª0ÊDZíʾºóÃæ´øͼƬÊý¾Ý + BYTE byPicType; //ͼƬÀàÐÍ£¬0-JPEG + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + BYTE byRes3[2]; + char *pPicData; + BYTE byRes2[48]; +}NET_DVR_VEHICLE_CONTROL_ALARM,*LPNET_DVR_VEHICLE_CONTROL_ALARM; + +//Ïû·À±¨¾¯ +typedef struct tagNET_DVR_FIRE_ALARM +{ + DWORD dwSize; + NET_DVR_TIME_V30 struAlarmTime;//±¨¾¯Ê±¼ä + BYTE byRes[128]; +}NET_DVR_FIRE_ALARM,*LPNET_DVR_FIRE_ALARM; + +//Çå³ýÉ豸³µÅƽûÖ¹Ãûµ¥Êý¾Ý¿âÐÅÏ¢ +typedef struct +{ + DWORD dwSize; + DWORD dwDelType;//ɾ³ýÌõ¼þÀàÐÍ£¬É¾³ýÌõ¼þÀàÐÍ£¬²ÎÕÕVCA_OPERATE _TYPE¡££¨¿É¸´Ñ¡£© + char sLicense[16]; //³µÅƺÅÂë + char sCardNo[48]; // ¿¨ºÅ + BYTE byPlateType; //³µÅÆÀàÐÍ + BYTE byPlateColor; //³µÅÆÑÕÉ« + BYTE byOperateType; //ɾ³ý²Ù×÷ÀàÐÍ(0-Ìõ¼þɾ³ý,0xff-ɾ³ýÈ«²¿) + //2014-02-25 + BYTE byListType;//Ãûµ¥ÊôÐÔ0-ÔÊÐíÃûµ¥£¬1-½ûÖ¹Ãûµ¥ 2014-03-03 + DWORD dwDataIndex;//Êý¾ÝÁ÷Ë®ºÅ + //²Ù×÷Êý£¨Æ½Ì¨Í¬²½±íÁ÷Ë®ºÅ²»»áÖظ´£¬ÓÃÓÚÔöÁ¿¸üУ¬´ú±íͬ²½µ½Í¬²½±íµÄijһÌõ¼Ç¼ÁË£¬´æÔÚÏà»úÄڴ棬ÖØÆôºó»áÇå0£©2014-03-03 + char sOperateIndex[MAX_OPERATE_INDEX_LEN]; + BYTE byRes[24]; +} NET_DVR_VEHICLE_CONTROL_DELINFO, *LPNET_DVR_VEHICLE_CONTROL_DELINFO; + +//³£ÁÁµÆ¹¦ÄÜ +typedef struct tagNET_DVR_GATELAMP_INFO +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byLaneNo; //µÀÕ¢ºÅ£¨0-±íʾÎÞЧֵ(É豸ÐèÒª×öÓÐЧֵÅжÏ),1-µÀÕ¢1£© + BYTE byBrightlampCtrl;//0-¹Ø±Õ³£ÁÁµÆ£¬1-¿ªÆô³£ÁÁµÆ + BYTE byRes[14]; +}NET_DVR_GATELAMP_INFO,*LPNET_DVR_GATELAMP_INFO; + + +//SDI¾ØÕó1.0 +#define MATRIX_MAX_OUTPUT_NUM 256 //¾ØÕó×î´óÊä³öͨµÀ¸öÊý +typedef struct tagNET_DVR_MATRIX_BASE_CFG +{ + DWORD dwSize; + DWORD dwValidInputNum; //ÓÐЧµÄÊäÈëͨµÀÊý + DWORD dwValidOutputNum; //ÓÐЧµÄÊä³öͨµÀÊý + BYTE byRes[64]; +}NET_DVR_MATRIX_BASE_CFG, *LPNET_DVR_MATRIX_BASE_CFG; + +typedef struct tagNET_DVR_MATRIX_SWITCH_INFO +{ + DWORD dwSize; + DWORD dwInputChan; //ÊäÈëͨµÀºÅ£¬Îª0±íʾȡÏûºÍÖ¸¶¨Êä³öµÄ¹ØÁª¹Øϵ + DWORD dwOutputChan; //ÒªÇл»µ½µÄÊä³öͨµÀºÅ, (ÆÁÄ»·þÎñÆ÷ΪÆÁÄ»Ë÷ÒýºÅ(1×Ö½ÚÉ豸ºÅ+1×Ö½Ú±£Áô+2×Ö½ÚÆÁÄ»Ë÷ÒýºÅ)), 0xffffffff±íʾÇл»µ½ËùÓÐÊä³ö + DWORD dwMatrixID; //¾ØÕóIDºÅ + BYTE byRes[28]; +}NET_DVR_MATRIX_SWITCH_INFO, *LPNET_DVR_MATRIX_SWITCH_INFO; + +typedef struct tagNET_DVR_IO_RELATION_INFO +{ + DWORD dwSize; + DWORD dwIORelation[MATRIX_MAX_OUTPUT_NUM]; //Êä³öͨµÀ¹ØÁªµÄÊäÈëͨµÀ, dwIORelation[i] = j±íʾÊä³öͨµÀ(i + 1)ºÍÊäÈëͨµÀj¹ØÁª, + //dwIORelation[i] = 0±íʾÊä³öͨµÀi + 1δ¹ØÁªÊäÈëͨµÀ + BYTE byRes[256]; +}NET_DVR_IO_RELATION_INFO, *LPNET_DVR_IO_RELATION_INFO; + + +//ÅúÁ¿½Ó¿ÚÅäÖà +typedef struct tagNET_DVR_EXTERNAL_DEVCOND +{ + DWORD dwSize; + BYTE byExternalDevTpye;//0-ÆäËû(±£Áô)£¬1-Ô¶¾àÀë¶ÁÍ·É豸£¬2-³öÈë¿Ú¿ØÖÆ»ú£¬3-ledÆÁ 0xff-È«²¿ÐÅÏ¢£¨³¤Á¬½Ó»ñȡʱʹÓã© + BYTE byRelativeIndex;//0-ÆäËû(±£Áô)£¬Ë÷Òý(Ïà¶ÔÓÚ½ÓÈëÀàÐÍ) ·¶Î§ 1~8 LedµÄÏà¶ÔË÷Òý·¶Î§ÊÇ£¨1¡«255£© 0xff-È«²¿ÐÅÏ¢£¨³¤Á¬½Ó»ñȡʱʹÓã© + // BYTE byLaneID;// Âß¼­³µµÀºÅ + BYTE byRes[30]; +}NET_DVR_EXTERNAL_DEVCOND,*LPNET_DVR_EXTERNAL_DEVCOND; + +typedef struct tagNET_DVR_EXTERNAL_DEVCFG +{ + DWORD dwSize; + BYTE byExternalDevTpye;//0-ÆäËû£¬1-Ô¶¾àÀë¶ÁÍ·É豸£¬2-³öÈë¿Ú¿ØÖÆ»ú£¬3-ledÆÁ + BYTE byRes2[3]; + char sDevName[MAX_DEVNAME_LEN]; + union + { + BYTE byUnionLen[656]; + struct + { + NET_DVR_IPADDR struDevIP;//DEV IPµØÖ· 144 + WORD wDevPort;//É豸¶Ë¿Ú + BYTE byRes[510]; + }struRrReader;//Ô¶¾àÀë¶ÁÍ·É豸 + struct + { + BYTE byRs485No; //RS485±àºÅ(Íâ½ÓÉ豸ÀàÐÍÒ»Ñù£¬¸Ã±àºÅ¿ÉÒÔÖظ´£»ÀàÐͲ»Ò»Ñù£¬¸Ã±àºÅ»¥³â) + BYTE byDevCtrlCode;//²¦ÂëµØÖ·£¬ÓÃÓÚÇø·ÖÉ豸(1-255) + BYTE byAutoIssuedData;//ÊÇ·ñ×Ô¶¯Ï·¢¿¨Æ¬Êý¾Ý 0-²»×Ô¶¯Ï·¢£¬1-×Ô¶¯Ï·¢ + BYTE byOfflineDetEnable;//ÀëÏß¼ì²â 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byDetCycle;//¼ì²âÖÜÆÚ£¨0¡«60 µ¥Î» s£© + BYTE byRes[651]; + }struGateway;//³öÈë¿Ú¿ØÖÆ»ú + struct + { + BYTE byExternalMode;//0-RS485,1-ÍøÂç + BYTE byRes[3]; + NET_DVR_IPADDR struDevIP;//DEV IPµØÖ· 144 (ÔÚbyExternalMode == 1 ʱÉúЧ) + WORD wDevPort;//É豸¶Ë¿Ú(ÔÚbyExternalMode == 1 ʱÉúЧ) + BYTE byRs485No; //RS485±àºÅ(Íâ½ÓÉ豸ÀàÐÍÒ»Ñù£¬¸Ã±àºÅ¿ÉÒÔÖظ´£»ÀàÐͲ»Ò»Ñù£¬¸Ã±àºÅ»¥³â) + BYTE byDevCtrlCode;//²¦ÂëµØÖ·£¬ÓÃÓÚÇø·ÖÉ豸(1-255) + //ledÆÁͨ¹ý¿ØÖÆ¿¨¿ØÖÆÏÔʾµÄ£¬²»Í¬µÄ¿ØÖÆ¿¨ÀàÐÍÖ§³ÖµÄÏÔʾ·½Ê½²»Í¬ + BYTE byCtrlCardType;//¿ØÖÆ¿¨ÀàÐÍ 0-±£Áô(ÎÞЧֵ) 1- EQ2013 + BYTE byLedScreenType;//ÆÁÀàÐÍ 0-µ¥É«ÆÁ 1-Ë«É«ÆÁ + BYTE byLedScreenUse;//ÆÁÓÃ;0-ÆäËü 1-ÇøλÆÁ 2-ÌáʾÆÁ 3-ÊÕ·ÑÆÁ + BYTE byLedDisplayMode;//ÆÁÄ»×ÖÌåÏÔʾ·½Ê½: 1 "Á¢¼´ÏÔʾ", 2 "×óÒÆ" ,3 "ÓÒÒÆ" ,4 "ÉÏÒÆ", 5 "ÏÂÒÆ" + char sLedCustomInfo[MAX_LED_INFO];//ÆÁÄ»×ÖÌåÏÔʾÐÅÏ¢ + //ledÆÁÊÇÓÉ¿ØÖÆ¿¨¿ØÖƵģ¬ledÆÁ¿ÉÒÔ¸ù¾ÝÏîĿʵ¼ÊʹÓøü»»´óС£¬´ËʱÐèÒªÖÕ¶Ë֪ͨ¿ØÖÆ¿¨Ä¿Ç°Ê¹ÓõÄÆÁ¿íºÍÆÁ¸ß + DWORD dwLedScreenH;//ÏÔʾÆÁ×é³É¸ß¶ÈÉÏÐèÒªµÄLEDµãÊý + DWORD dwLedScreenW;//ÏÔʾÆÁ×é³É¿í¶ÈÉÏÐèÒªµÄLEDµãÊý + BYTE byRes1[236]; + }struLed;//ledÆÁ + }uExternalDevInfo; //ÓÉbyExternalMode ÖµÀ´¾ö¶¨ÄĸöÓÐЧ + BYTE byRes[128]; +}NET_DVR_EXTERNAL_DEVCFG, *LPNET_DVR_EXTERNAL_DEVCFG; + +//³¤Á¬½Ó»ñÈ¡ÅäÖà +typedef struct tagNET_DVR_EXTERNAL_DEVSTATUS//Ô¶¾àÀë¶ÁÍ·É豸 +{ + DWORD dwSize; + char sDevName[MAX_DEVNAME_LEN];//É豸Ãû³Æ + BYTE byExternalDevTpye;//0-ÆäËû(±£Áô)£¬1-Ô¶¾àÀë¶ÁÍ·É豸£¬2-³öÈë¿Ú¿ØÖÆ»ú£¬3-ledÆÁ 0xff-È«²¿ÐÅÏ¢£¨³¤Á¬½Ó»ñȡʱʹÓã© + BYTE byRelativeIndex;//0-ÆäËû(±£Áô)£¬Ïà¶ÔË÷Òý(Ïà¶ÔÓÚ½ÓÈëÀàÐÍÄÜ) ·¶Î§ 1~8 0xff-È«²¿ÐÅÏ¢£¨³¤Á¬½Ó»ñȡʱʹÓã© + BYTE byOnline;//0-²»ÔÚÏߣ¬1-ÔÚÏß + BYTE byRes[125]; +}NET_DVR_EXTERNAL_DEVSTATUS,*LPNET_DVR_EXTERNAL_DEVSTATUS; + +//Öն˳öÈë¿Ú¼ì²âÅäÖà +typedef struct tagNET_DVR_ENTRANCEDET_CFG +{ + DWORD dwSize; //½á¹¹³¤¶È + //ÀëÏß¼ì²â¿ªÆôʱ£¬Èç¹û¼ì²âµ½É豸ÔÚÏߣ¬ÔòÓÉÖÕ¶ËÆ¥Å俨ƬÐÅÏ¢£¬²¢·¢Ë͵ÀÕ¢¿ØÖÆÖ¸Áî¸ø³öÈë¿Ú¿ØÖÆ»ú£»·ñÔòÓɳöÈë¿Ú¿ØÖÆ»ú×ÔÉíÆ¥Åä¿ØÖƵÀÕ¢ + BYTE byOfflineDetEnable;//ÀëÏß¼ì²â 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byDetCycle;//¼ì²âÖÜÆÚ£¨0¡«60 µ¥Î» s£© + BYTE byDevCtrlCode;//³öÈë¿Ú¿ØÖÆ»ú²¦ÂëµØÖ·£¬ÓÃÓÚÇø·ÖÉ豸(1-255) + BYTE byRes[61]; +}NET_DVR_ENTRANCEDET_CFG,*LPNET_DVR_ENTRANCEDET_CFG; + +//Öն˳öÈë¿Ú¿ØÖÆ(¿ØÖÆ½Ó¿Ú Ï·¢¿¨Æ¬ÐÅÏ¢) +typedef struct tagNET_DVR_ENTRANCEDEV_COMMAND +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byDevCtrlCode;//³öÈë¿Ú¿ØÖÆ»ú²¦ÂëµØÖ·£¬ÓÃÓÚÇø·ÖÉ豸(1-255) + BYTE byManualIssuedData;//ÊÖ¶¯Êý¾ÝÏ·¢ 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[62]; +}NET_DVR_ENTRANCEDEV_COMMAND,*LPNET_DVR_ENTRANCEDEV_COMMAND; + +//Öն˳öÈë¿Ú¿ØÖÆ(¿ØÖÆ½Ó¿Ú Çå¿ÕÏ·¢¿¨Æ¬ÐÅÏ¢) +typedef struct tagNET_DVR_ENISSUED_DATADEL +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byDevCtrlCode;//³öÈë¿Ú¿ØÖÆ»ú²¦ÂëµØÖ·£¬ÓÃÓÚÇø·ÖÉ豸(1-255) + BYTE byRes[27]; +}NET_DVR_ENISSUED_DATADEL,*LPNET_DVR_ENISSUED_DATADEL; + +//³öÈë¿Ú¹ý³µÊÕ·ÑÃ÷ϸ£¨¼àÌý·½Ê½£© +typedef struct _tagNET_ITS_PASSVEHICLE_COST_ITEM +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwPassVehicleID; //¹ý³µÐòºÅÓë³öÈë¿ÚÊý¾ÝµÄ¹ý³µÐòºÅÏà¹ØÁª + BYTE byIntime[MAX_TIME_LEN]; //È볡ʱ¼ä¸ñʽΪyyyymmddhh24missfff + BYTE byOuttime[MAX_TIME_LEN]; //³ö³¡Ê±¼ä¸ñʽΪyyyymmddhh24missfff + BYTE byCardNo[MAX_CARD_LEN]; //¿¨ºÅ + BYTE byPlateInfo[MAX_LICENSE_LEN]; //³µÅƺÅÂë + float fPayCost; //Êշѽð¶î(µ¥Î»Ôª) + BYTE byOperatorName[MAX_OPERATORNAME_LEN]; //²Ù×÷ÈËÔ±Ãû³Æ + BYTE byVehicleType; //³µÁ¾ÀàÐÍ 0-СÐͳµ 2 ´óÐͳµ + BYTE byRes1[3]; //Ô¤Áô×Ö¶Î1 + DWORD dwPayRuleID; // ÊշѹæÔòÁ÷Ë®ºÅ + DWORD dwFreeRuleID; // ¼õÃâ¹æÔòÁ÷Ë®ºÅ + BYTE byRes2[256]; // Ô¤Áô×Ö¶Î2 +}NET_ITS_PASSVEHICLE_COST_ITEM, *LPNET_ITS_PASSVEHICLE_COST_ITEM; + +//³öÈë¿Ú½»½Ó°àÊý¾Ý£¨¼àÌý·½Ê½£© +typedef struct _tagNET_ITS_HANDOVER_INFO +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byOperatorName[MAX_OPERATORNAME_LEN]; //²Ù×÷ÈËÔ±Ãû³Æ + BYTE byOperatorCard[MAX_CARD_LEN]; //²Ù×÷ÈËÔ±¿¨ºÅ + BYTE byStartTime[MAX_TIME_LEN];//ÉÏ°àʱ¼ä¸ñʽÐÎÈçyyyymmddhh24miss + BYTE byEndTime[MAX_TIME_LEN]; //Ï°àʱ¼ä¸ñʽÐÎÈçyyyymmddhh24miss + float fTotal_Pay; //±¾´ÎÉÏ°àÆÚ¼ä×ܵÄÊշѽð¶î(µ¥Î»Ôª) + DWORD dwTotal_Records; //±¾´ÎÉÏ°àÆÚ¼ä×ܵĹý³µÊշѵļǼÌõÊý + BYTE byRes[64]; //Ô¤Áô +}NET_ITS_HANDOVER_INFO, *LPNET_ITS_HANDOVER_INFO; + + +typedef struct tagNET_DVR_CURTRIGGERMODE //(3.7Ver) +{ + DWORD dwSize; + DWORD dwTriggerType; //´¥·¢ÀàÐÍ£¬Ïê¼ûITC_TRIGGERMODE_TYPE + BYTE byRes[24]; +}NET_DVR_CURTRIGGERMODE, *LPNET_DVR_CURTRIGGERMODE; + + + +typedef struct tagNET_DVR_TEMP_HUMI +{ + DWORD dwSize; // ÄÚÈݳ¤¶È && °æ±¾£¨ÓÃÓÚºóÆÚÀ©Õ¹£© + DWORD dwChannel; // ͨµÀºÅ£¬Ä¬ÈÏ1 + int iHumidity; // ʪ¶È£¬ÕûÊý²¿·Ö£ºval/1000£¬Ð¡Êý²¿·Ö£ºval%1000 + int iTemp; // ζȣ¬ÕûÊý²¿·Ö£ºval/1000£¬Ð¡Êý²¿·Ö£ºval%100 + BYTE byRes[8]; // ±£Áô×Ö½Ú +}NET_DVR_TEMP_HUMI, *LPNET_DVR_TEMP_HUMI; + + +typedef struct tagNET_DVR_ALARMSOUNDMODE_CFG +{ + DWORD dwSize; // ÄÚÈݳ¤¶È && °æ±¾£¨ÓÃÓÚºóÆÚÀ©Õ¹£© + DWORD dwChannel; // ͨµÀºÅ£¬Ä¬ÈÏ1 + DWORD dwSoundMode; // ±¨¾¯Ä£Ê½: 0ÌáÐÑģʽ£»1¾¯±¨Ä£Ê½£»2¾²Òôģʽ + BYTE byRes[12]; // ±£Áô×Ö½Ú +}NET_DVR_ALARMSOUNDMODE_CFG, *LPNET_DVR_ALARMSOUNDMODE_CFG; + +typedef struct tagNET_DVR_SECURITYMODE +{ + DWORD dwSize;// ÄÚÈݳ¤¶È && °æ±¾£¨ÓÃÓÚºóÆÚÀ©Õ¹£© + DWORD dwChannel; // ͨµÀºÅ£¬Ä¬ÈÏ1 + DWORD dwMode; // °²È«Ä£Ê½: 1ÆôÓã¬ÂëÁ÷¼ÓÃÜ£»2²»ÆôÓã¬ÂëÁ÷²»¼ÓÃÜ + char szRandCode[6]; //É豸³ö³§µÄ"Ëæ»úÑéÖ¤Âë" + BYTE byRes[6]; // ±£Áô×Ö½Ú +}NET_DVR_SECURITYMODE, *LPNET_DVR_SECURITYMODE; + +typedef struct tagNET_DVR_MOBILE_CAPTUREPIC_CFG +{ + DWORD dwSize; + BYTE byPreviewFpsAdjMode; /* Ô¤ÀÀÖ¡Âʵ÷½Úģʽ:0-²»µ÷½Ú£¬±ê×¼Ö¡ÂÊÔ¤ÀÀ,1-±ê×¼µÍÖ¡ÂÊÔ¤ÀÀ,2-¸ù¾ÝGPSËٶȽøÐÐÖ¡Âʵ÷½Ú */ + BYTE bySelPeccType; /* ÊÇ·ñÑ¡ÔñÎ¥ÕÂÀàÐÍ */ + BYTE byOptHabit; /* È¡Ö¤²Ù×÷Ï°¹ß, 0:³¤°´È¡Ö¤;1:¶Ì°´Á½´ÎÈ¡Ö¤ */ + BYTE byEnablePeccRec; /* 1: ʹÄÜÎ¥Õ¼Ïñץȡ, 0: ½ûֹΥÕ¼Ïñץȡ */ + BYTE byPicSize; /*0=CIF,1=QCIF,2=D1,3=UXGA(1600x1200), 4=SVGA(800x600), 5=HD720p(1280x720),6-VGA£¬7-XVGA£¬8-HD900p£¬9-HD1080£¬10-2560*1920£¬11-1600*304£¬12-2048*1536£¬13-2448*2048,14-2448*1200£¬15-2448*800£¬16-XGA(1024*768)£¬17-SXGA(1280*1024),18-WD1(960*576/960*480),19-1080i */ + BYTE byPicQuality; /* ͼƬÖÊÁ¿ÏµÊý 0-×îºÃ 1-½ÏºÃ 2-Ò»°ã */ + BYTE byRes[62]; +}NET_DVR_MOBILE_CAPTUREPIC_CFG,*LPNET_DVR_MOBILE_CAPTUREPIC_CFG; + +typedef struct tagNET_DVR_CMS_PARAM +{ + DWORD dwSize; + NET_DVR_IPADDR struAddr; // ƽ̨·þÎñÆ÷IP + WORD wServerPort; // ƽ̨·þÎñÆ÷ÕìÌý¶Ë¿Ú£¬ + BYTE bySeverProtocolType; //ƽ̨ЭÒéÀàÐÍ 1-˽ÓУ¬2-Ehome + BYTE byStatus; //É豸ע²áµ½¸Ãƽ̨µÄ״̬£¬1-δע²á£¬2-ÒÑ×¢²á + BYTE sDeviceId[NAME_LEN/*32*/]; //É豸ID£¬ÓÉƽ̨Ìṩ + char sPassWord[PASSWD_LEN]; //ÃÜÂë + /********* IPC5.1.7 ÐÂÔö²ÎÊý Begin 2014-03-21***********/ + BYTE sPlatformEhomeVersion[NAME_LEN];//ƽ̨EHOMEЭÒé°æ±¾ + /********* IPC5.1.7 ÐÂÔö²ÎÊý end 2014-03-21***********/ + BYTE byNetWork; //ÍøÂçÀàÐÍ£º0- ÎÞÒâÒ壬1-×Ô¶¯£¬2-ÓÐÏßÍøÂçÓÅÏÈ£¬3-ÓÐÏßÍøÂ磬4-3GÍøÂ磨ÎÞÏßÍøÂ磩£¬5-ÓÐÏßÍøÂç1£¬6-ÓÐÏßÍøÂç2 + BYTE byAddressType; //0 - ÎÞÒâÒå, 1 - ipv4/ipv6µØÖ·£¬2 - ÓòÃû + BYTE byProtocolVersion; //ЭÒé°æ±¾ 0 - ÎÞÒâÒå, 1 ¨C v2.0£¬2 ¨C v4.0,3-v2.6 + BYTE byRes1; + BYTE sDomainName[MAX_DOMAIN_NAME/*64*/]; //ƽ̨·þÎñÆ÷ÓòÃû£¬byAddressTypeΪ2ʱÓÐЧ + BYTE byEnable; //0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[139]; // ±£Áô×Ö½Ú +}NET_DVR_CMS_PARAM, *LPNET_DVR_CMS_PARAM; + +//Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_HEATMAP_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1],Çò»úµ±Ç°Ö§³Ö1¸ö³¡¾°, IPCĬÈÏÊÇ0 + BYTE byRes[63]; +}NET_DVR_HEATMAP_COND, *LPNET_DVR_HEATMAP_COND; + +typedef struct tagNET_DVR_HEATMAP_PARAM +{ + BYTE byTargetTrackEnable;//Ä¿±ê¸ú×Ù£º0-¹Ø±Õ£¬1-¿ªÆô£¬Ä¬ÈÏ0-¹Ø±Õ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byBackgroundUpdateRate;//±³¾°¸üÐÂËٶȣº·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE bySceneChangeLevel;//³¡¾°±ä»¯µÈ¼¶£º·¶Î§1-100£¬Ä¬ÈÏ50 + BYTE byMinTargetSize;//×îСĿ±ê³ß´ç£º·¶Î§1-100£¬Ä¬ÈÏ50 + /* + 0- ĬÈÏÉÏ´«ÀàÐÍ£ºCOMM_UPLOAD_HEATMAP_RESULT£» + 1- ÉÏ´«ÀàÐÍ£ºCOMM_UPLOAD_HEATMAP_RESULT_PDC ºÍ COMM_UPLOAD_HEATMAP_RESULT_DURATION£» + */ + BYTE byUploadHeatMapResultType; + BYTE byDayReport; + BYTE byWeekReport; + float fConfidence;//ÖÃÐŶÈ[0.00,100.00] + BYTE byMonthReport; + BYTE byYearReport; + BYTE byRes[6]; +}NET_DVR_HEATMAP_PARAM, *LPNET_DVR_HEATMAP_PARAM; + +#define MAX_HEATMAPREGION_NUM 8 + +//ÈȶÈͼ¼ì²âÅäÖýṹ +typedef struct tagNET_DVR_HEATMAP_CFG +{ + DWORD dwSize; + BYTE byEnable; //ʹÄÜ£¬ÊÇ·ñ¿ªÆô + BYTE byRes[3]; + NET_VCA_POLYGON struRegion[MAX_HEATMAPREGION_NUM/*8*/];//ÇøÓò·¶Î§ + NET_DVR_HEATMAP_PARAM struHeatMap ; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + //²¼·Àʱ¼ä + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS/*7*/][MAX_TIMESEGMENT_V30/*8*/]; + BYTE byRes1[512]; +}NET_DVR_HEATMAP_CFG, *LPNET_DVR_HEATMAP_CFG; + +//ÈȶÈͼ±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_HEATMAP_RESULT +{ + DWORD dwSize; + NET_VCA_DEV_INFO struDevInfo;/*É豸ÐÅÏ¢*/ + NET_DVR_TIME_EX struStartTime;/*¿ªÊ¼Ê±¼ä*/ + NET_DVR_TIME_EX struEndTime;/*½áÊøʱ¼ä*/ + DWORD dwMaxHeatMapValue;//×î´óÈȶÈÖµ + DWORD dwMinHeatMapValue;//×îСÈȶÈÖµ + DWORD dwTimeHeatMapValue;// (ʱ¼äÈȶÈÖµ)ƽ¾ùÈȶÈÖµ + WORD wArrayLine;//ͼƬÏñËصãÐÐÖµ + WORD wArrayColumn;//ͼƬÏñËصãÁÐÖµ £¨µ±ÐÐÁÐֵΪ0µÄʱºò£¬ÏñËصãÖµÄÚ´æÐÅÏ¢²»´æÔÚ£© + BYTE* pBuffer; //ÈȶÈͼƬÏñËصãÊý¾ÝÐÅÏ¢ + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1],Çò»úµ±Ç°Ö§³Ö1¸ö³¡¾°, IPCĬÈÏÊÇ0 + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÊÇÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cStartTimeDifferenceH; /*¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬+±íʾ¶«Çø*/ + char cStartTimeDifferenceM; /*¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø*/ + char cStopTimeDifferenceH; /*½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø*/ + char cStopTimeDifferenceM; /*½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬+±íʾ¶«Çø*/ + BYTE byArrayUnitType; //¾ØÕóµ¥ÔªÊý¾ÝÀàÐÍ£¨¾ØÕóÐÅÏ¢ÖÐÿ¸öÏñËصãÊý¾ÝµÄÊý¾ÝÀàÐÍ£©£¬1-byte£¬2-short,4-int + BYTE byRes1[2]; + DWORD dwTotalTime;//Í£Áôʱ¼ä×ܺͣ¬µ¥Î»Ã룬°´ÈËԱͣÁôʱ¼ä±¨¾¯Ê±ÉÏ´« + BYTE byRes[112]; +}NET_DVR_HEATMAP_RESULT,*LPNET_DVR_HEATMAP_RESULT; + +//ÈȶÈͼ±¨¾¯²éÕÒ Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_HEATMAP_QUERY_COND +{ + DWORD dwSize; + DWORD dwChannel ;//ͨµÀºÅ + NET_DVR_TIME_EX struStartTime;/*¿ªÊ¼Ê±¼ä*/ + NET_DVR_TIME_EX struEndTime;/*½áÊøʱ¼ä*/ + BYTE byReportType;//0-ÎÞЧֵ£¬1-ÈÕ±¨±í£¬2-Öܱ¨±í£¬3-Ô±¨±í£¬4-Ä걨±í + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1],Çò»úµ±Ç°Ö§³Ö1¸ö³¡¾°, IPCĬÈÏÊÇ0 + BYTE byHeatMapInfoType;//0~»ñÈ¡¿Õ¼äÈȶÈͼƬ·½Ê½£¬1~»ñÈ¡¿Õ¼äÈȶȾØÕóÐÅÏ¢·½Ê½£¬2~»ñÈ¡¿Õ¼äÈȶÈͼƬºÍ¿Õ¼äÈȶȾØÕóÐÅÏ¢ + BYTE byStatisticalModel;//ͳ¼Æģʽ 0s-±£Áô£¨Ä¬ÈÏ£©£¬1-Í£Áôʱ¼ä£¬2-°´ÈËÊýͳ¼Æ£© + BYTE byRes[124]; +}NET_DVR_HEATMAP_QUERY_COND,*LPNET_DVR_HEATMAP_QUERY_COND; + +//ÈȶÈͼ±¨¾¯²éÕÒ +typedef struct tagNET_DVR_HEATMAP_INFO +{ + DWORD dwSize; + NET_DVR_TIME_EX struStartTime;/*¼ä¸ô¿ªÊ¼Ê±¼ä*/ + NET_DVR_TIME_EX struEndTime; /*¼ä¸ô½áÊøʱ¼ä*/ + DWORD dwHeatMapPicLen; /*¿Õ¼äÈȶÈͼƬ³¤¶È(µ±º¬ÓÐͼƬµÄʱºò£¬¸Ã×Ö¶ÎΪ·Ç0£¬Ã»ÓÐͼƬµÄʱºò£¬¸Ã×Ö¶ÎΪ0)*/ + BYTE* pBuffer; //ÈȶÈͼƬÊý¾ÝÐÅÏ¢ + DWORD dwTimeHeatMapValue ; //ʱ¼äÈȶÈÖµ(º¬ÓпÕÈȶÈͼµÄʱºò,¸Ã×ֶβ»ÐèÒª´«Öµ) + DWORD dwHeatMapMaxValue;//¼ì²âÇøÓò×î¸ßÈȶȵãÈËÔ±»î¶¯Ê±¼ä(s)(¿Õ¼äÈȶÈͼʱÓÐЧ) + DWORD dwHeatMapMinValue;//¼ì²âÇøÓò×îµÍÈȶȵãÈËÔ±»î¶¯Ê±¼ä(s) (¿Õ¼äÈȶÈͼʱÓÐЧ) + WORD wArrayLine;//ͼƬÏñËصãÐÐÖµ £¨ÉÏ´«ÈȶȾØÕóÐÅϢʱÉúЧ£© + WORD wArrayColumn;//ͼƬÏñËصãÁÐÖµ £¨µ±ÐÐÁÐֵΪ0µÄʱºò£¬ÏñËصãÖµÄÚ´æÐÅÏ¢²»´æÔÚ£©£¨ÉÏ´«ÈȶȾØÕóÐÅϢʱÉúЧ£© + BYTE* pArrayBuffer;//ÈȶȾØÕóÊý¾ÝÐÅÏ¢£¨¾ØÕóÊý¾ÝµÄ͸´«£¬ÐÅÏ¢³¤¶ÈΪwArrayLine* wArrayColumn*µ¥ÔªÊý¾ÝÀàÐͳ¤¶È£¨ÀýÈçbyArrayUnitTypeΪ1±íʾΪintÐÍ£¬ÕâÀï¾ÍÒª³ËÒÔ4¸ö×Ö½Ú£©£© + BYTE byArrayUnitType;//¾ØÕóµ¥ÔªÊý¾ÝÀàÐÍ£¨¾ØÕóÐÅÏ¢ÖÐÿ¸öÏñËصãÊý¾ÝµÄÊý¾ÝÀàÐÍ£©£¬0~byte£¬1~int£»(µ±É豸Óзµ»Ø¾ØÕóÐÅϢʱÉúЧ) + BYTE byRes[107]; +}NET_DVR_HEATMAP_INFO,*LPNET_DVR_HEATMAP_INFO; + + +typedef struct tagNET_DVR_PDC_QUERY_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + NET_DVR_TIME_EX struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndTime; //½áÊøʱ¼ä + BYTE byReportType; //0-ÎÞЧֵ£¬1-ÈÕ±¨±í£¬2-Öܱ¨±í£¬3-Ô±¨±í£¬4-Ä걨±í + BYTE byEnableProgramStatistics; //ÊÇ·ñ°´½ÚĿͳ¼Æ£¬0-·ñ£¬1-ÊÇ + BYTE byTriggerPeopleCountingData;//´¥·¢¿ÍÁ÷ͳ¼ÆÊý¾ÝµÄʹÄÜ, 0-·ñ£¬1-ÊÇ + BYTE byMultiChannelSearch;//¶àͨµÀ²éѯʹÄÜ, 0-·ñ£¬1-ÊÇ£¨pSearchChannel ¡¢dwSearchChannelNumÓÐЧ£© + DWORD dwPlayScheduleNo; //°´½ÚĿͳ¼Æʱ¹ØÁªµÄÈճ̺Š+ BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes1[3]; + DWORD dwSearchChannelNum; //²éѯͨµÀÊýÄ¿ + char* pSearchChannel; //²éѯͨµÀºÅ£¬´óСΪsizeof(DWORD)* dwSearchChannelNum + BYTE byChild;//Ö»¼ì²â¶ùͯ, 0-·ñ£¬1-ÊÇ + BYTE byMinTimeInterva;// ×îСʱ¼ä¼ä¸ô,0-ÎÞЧ£¬1-15·ÖÖÓ, 2-30·ÖÖÓ, 3һСʱ, 4-Ìì, 5-ÖÜ, 6-Ô + BYTE byStatisticType;//ͳ¼ÆÀàÐÍ£¬0-ÎÞЧֵ£¬1-½øÈëÈËÊý£¬2-À뿪ÈËÊý£¬3-È«²¿,4-½øÈëÀ뿪Öظ´ÈËÊý,5-ÈËÁ³ÊôÐÔ(ÐèҪϷ¢¾ßÌåÖ§³ÖµÄÈËÁ³ÊôÐÔ),0-ÎÞЧֵ±íʾ²»½øÐÐͳ¼ÆÀàÐ͵ÄÌõ¼þ²éѯ£¬Ï൱ÓÚ±£Áô×Ö½Ú¡£È«²¿±íʾͳ¼ÆÀàÐÍΪ½øÈëºÍÀ뿪£¨²»°üÀ¨¾­¹ý£©¡£ + BYTE byFaceExpression;//²Î¼ûFACE_EXPRESSION_GROUP_ENUM + BYTE byGender;//ÐÔ±ð£¬1-ÄУ¬2-Å®£¬3-È«²¿£¬0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byMask;//ÊÇ·ñ´÷¿ÚÕÖ 0-±íʾ¡°Î´Öª¡±£¨Ëã·¨²»Ö§³Ö£©£¬1-²»´÷£¬2-´÷£¬3-È«²¿£¬0xff-Ëã·¨Ö§³ÖµÄ£¬µ«ÊÇûÓÐʶ±ð³öÀ´ + BYTE byAgeGroup;//ÄêÁä¶Î£¬²Î¼ûHUMAN_AGE_GROUP_ENUM + BYTE byGlasses; /*ÊÇ·ñ´øÑÛ¾µ£¬0-δ֪£¬1-ÊÇ£¬2-·ñ£¬3-´÷Ä«¾µ, 4 - È«²¿, 0xff-Ëã·¨Ö§³Ö£¬µ«ÊÇûÓÐʶ±ð³öÀ´*/ + BYTE byRes[96]; +}NET_DVR_PDC_QUERY_COND,*LPNET_DVR_PDC_QUERY_COND; + +typedef struct tagNET_DVR_PROGRAM_INFO +{ + DWORD dwProgramNo; //½ÚÄ¿±àºÅ + BYTE sProgramName[NAME_LEN]; //½ÚÄ¿Ãû³Æ + BYTE byRes[16]; +}NET_DVR_PROGRAM_INFO, *LPNET_DVR_PROGRAM_INFO; +typedef struct tagNET_DVR_POSINFO_OVERLAY +{ + DWORD dwSize; + BYTE byEnable;// PosÐÅÏ¢µþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byBackpackEnanble;//ÊÇ·ñµþ¼Ó±³°üÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE bySexEnanble;//ÊÇ·ñµþ¼ÓÐÔ±ðÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byCarryEnanble;//ÊÇ·ñµþ¼ÓÁණÎ÷ÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byRideEnanble;//ÊÇ·ñµþ¼ÓÆï³µÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byMaskEnanble;//ÊÇ·ñµþ¼Ó´ø¿ÚÕÖÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byHatEnanble;//ÊÇ·ñµþ¼Ó´÷ñ×ÓÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE bySleeveEnanble;//ÊÇ·ñµþ¼Ó³¤¶ÌÐäÇé¿ö£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byPantsTypeEnanble;//ÊÇ·ñµþ¼Ó¿ã×ÓÊôÐÔÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byHairEnanble;//ÊÇ·ñµþ¼Ó³¤¶Ì·¢ÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byGlassesEnanble;//ÊÇ·ñµþ¼Ó´÷ÑÛ¾µÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byAgeEnanble;//ÊÇ·ñµþ¼ÓÄêÁäÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byHeightEnanble;//ÊÇ·ñµþ¼ÓÉí¸ßÐÅÏ¢ÊÇ·ñµþ¼Ó£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byRes[511]; +}NET_DVR_POSINFO_OVERLAY, *LPNET_DVR_POSINFO_OVERLAY; + +typedef struct tagNET_DVR_PDC_RESULT +{ + DWORD dwSize; + NET_DVR_TIME_EX struStartTime;/*¿ªÊ¼Ê±¼ä*/ + NET_DVR_TIME_EX struEndTime;/*½áÊøʱ¼ä*/ + DWORD dwEnterNum; //½øÈëÈËÊý + DWORD dwLeaveNum; //À뿪ÈËÊý + NET_DVR_PROGRAM_INFO struProgramInfo; //½ÚÄ¿ÐÅÏ¢ + DWORD dwPeoplePassing; //¾­¹ýÈËÊý + BYTE byRes1[8]; //±£Áô×Ö½Ú + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes3[3]; //±£Áô×Ö½Ú + DWORD dwDuplicatePeople; // Öظ´ÈËÊý + DWORD dwExpressionUnknown; //±íÇéδ֪ + DWORD dwPokerFace; //±íÇéÖÐÐÔ + DWORD dwHappy; //±íÇé¸ßÐË + DWORD dwSurprised; //±íÇ龪ÑÈ + DWORD dwDisgusted; //±íÇéÑá¶ñ + DWORD dwSad; //±íÇéÄѹý + DWORD dwAngry; //±íÇé·ßÅ­ + DWORD dwContemptuous; //±íÇéÇáÃï + DWORD dwPanic; //±íÇ麦Å + DWORD dwGenderUnknown; //ÐÔ±ðδ֪ + DWORD dwFemale; //ÐÔ±ðÅ® + DWORD dwMale; //ÐÔ±ðÄÐ + DWORD dwMaskUnknown; //Ãæ¾ßδ֪ + DWORD dwMaskYes; //´÷Ãæ¾ß + DWORD dwMaskNo; //²»´÷Ãæ¾ß + DWORD dwGlassUnknown; //ÑÛ¾µÎ´Öª + DWORD dwGlassYes; //´÷ÑÛ¾µ + DWORD dwGlassNo; //²»´÷ÑÛ¾µ + DWORD dwSunglasses; //Ä«¾µ + DWORD dwAgeGroupUnknown; //ÄêÁä¶Îδ֪ + DWORD dwChild; //ÄêÁä¶ÎÉÙÄê + DWORD dwYoung; //ÄêÁä¶ÎÇàÄê + DWORD dwMiddle; //ÄêÁä¶ÎÖÐÄê + DWORD dwOld; //ÄêÁä¶ÎÀÏÄê + DWORD dwInfant; //ÄêÁä¶ÎÓ¤Ó׶ù + DWORD dwKid; //ÄêÁä¶Î¶ùͯ + DWORD dwTeenager; //ÄêÁä¶ÎÇàÉÙÄê + DWORD dwPrime; //ÄêÁä¶Î׳Äê + DWORD dwMiddleAged; //ÄêÁä¶ÎÖÐÀÏÄê + BYTE byRes[64]; +}NET_DVR_PDC_RESULT, *LPNET_DVR_PDC_RESULT; + + +typedef struct tagNET_DVR_MOBILE_PLATE_RECOGCFG +{ + DWORD dwSize; + BYTE byDefaultCHN[MAX_CHJC_NUM]; /*É豸ÔËÐÐÊ¡·ÝµÄºº×Ö¼òд 3 */ + BYTE byTimeOsd;// ʱ¼äÐÅÏ¢µþ¼Ó 0 - ²»µþ¼Ó£¬ 1- µþ¼Ó + BYTE byRecogResultOsd;//ʶ±ð½á¹ûµþ¼Ó 0 - ²»µþ¼Ó£¬ 1- µþ¼Ó + BYTE byRecogHint;//ʶ±ð³É¹¦Ìáʾ 0 - ²»Ìáʾ£¬ 1- Ìáʾ + BYTE byRecogDir;//ʶ±ð·½Ïò 0: ÕýÏò, 1: ±³Ïò + BYTE byRecogEnv;//ʶ±ð»·¾³ 0: °×Ìì, 1: ÍíÉÏ + BYTE byRecogPlateType;//0-С³µÅÆʶ±ð£¬1-´ó³µÅÆʶ±ð + BYTE byUploadPlate;//ÊÇ·ñÉÏ´«³µÅÆ 0 -²»ÉÏ´«£¬ 1-ÉÏ´« + BYTE byRes[62]; +}NET_DVR_MOBILE_PLATE_RECOGCFG,*LPNET_DVR_MOBILE_PLATE_RECOGCFG; + +typedef struct tagNET_DVR_MOBILE_RADAR_CFG +{ + DWORD dwSize; + BYTE byEnableRadar; /* 0:²»¿ªÆôÀ×´ï 1:¿ªÆôÀ×´ï */ + BYTE byEnableAlarm; /* 0:²»¿ªÆô±¨¾¯ 1:¿ªÆô±¨¾¯ */ + WORD wOverSpeed; /* ·¶Î§Îª20~250 */ + BYTE bySpeedUnits; /* 0:¹«Àï/Сʱ 1:Ó¢Àï/Сʱ */ + BYTE bydirection; /* 0:·´Ïò£¨À×´ïÓë³µÏàÏò£© 1:ÕýÏò£¨À×´ïÓë³µ·´Ïò£© */ + BYTE byMeasureMode; /* 0:¾²Ì¬ (À×´ï״̬) 1:¶¯Ì¬ (À×´ï״̬)*/ + BYTE byTargetType; /* 0:×î¿ì(À×´ï²âËÙ³µÁ¾×î¿ì) 1:×î½ü(À×´ï²âËÙ³µÁ¾×î½ü)*/ + BYTE bySensitivity; /* ÁéÃô¶È[0,100] */ + BYTE byCaptureNum; /* ×¥ÅÄÕÅÊý[0,255] */ + BYTE byUploadPlate; /*ÊÇ·ñÉÏ´«³¬ËÙ×¥ÅÄͼƬ 0-²»ÉÏ´«£¬1-ÉÏ´«*/ + BYTE byRes[61]; +}NET_DVR_MOBILE_RADAR_CFG,*LPNET_DVR_MOBILE_RADAR_CFG; + +typedef struct tagNET_DVR_MOBILE_LOCALPLATECHK_CFG +{ + DWORD dwSize; + BYTE byCheck; /* »ü²éÈÎÎñÊÇ·ñ½øÐнûÖ¹Ãûµ¥»ü²é 0-»ü²é£¬1-²»»ü²é*/ + BYTE byCheckAlarm;/* »ü²é³É¹¦±¨¾¯ 0-²»±¨¾¯£¬1-±¨¾¯*/ + BYTE byCheckHint; /* »ü²é³É¹¦Ìáʾ (Èí¼þÌáʾ) 0-²»Ìáʾ£¬1-Ìáʾ*/ + BYTE byUploadUnlicensedCar; /*ÊÇ·ñÉÏ´«·Ç·¨³µÐÅÏ¢ 0-²»ÉÏ´«£¬1-ÉÏ´«*/ + BYTE byRes[64]; +}NET_DVR_MOBILE_LOCALPLATECHK_CFG,*LPNET_DVR_MOBILE_LOCALPLATECHK_CFG; + +typedef struct tagNET_DVR_VEHICLE_CHECK +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ0xff - È«²¿Í¨µÀ£¨Ä¬ÈÏÊÇ1,´ú±íÒ»¸öͨµÀ£© + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢ + WORD wIllegalType; //Î¥ÕÂÀàÐͲÉÓùú±ê¶¨Òå £¨²Î¿¼¸½¼þ£© + BYTE byRes[2]; + char sIllegalTypeInfo[128];// Î¥¹æÀàÐÍÐÅÏ¢£¨128£© + NET_DVR_TIME_V30 struIllegalTime;//Î¥¹æʱ¼ä + BYTE byIllegalVehicleNum;//³µÁ¾Î¥·¨´ÎÊý + BYTE byRes1[3]; + char sCustomInfo[64];//×Ô¶¨ÒåÐÅÏ¢ + BYTE byRes2[128]; // ±£Áô×Ö½Ú +}NET_DVR_VEHICLE_CHECK,*LPNET_DVR_VEHICLE_CHECK; + +typedef enum _LONG_CFG_SEND_DATA_TYPE_ENUM_ +{ + ENUM_DVR_VEHICLE_CHECK = 1, //½ûÖ¹Ãûµ¥³µÁ¾Êý¾Ý»ü²éÀàÐÍ + ENUM_MSC_SEND_DATA = 2, //ÆÁÄ»¿ØÖÆÆ÷Êý¾ÝÀàÐÍ + ENUM_ACS_SEND_DATA = 3, //ÃŽûÖ÷»úÊý¾ÝÀàÐÍ + ENUM_TME_CARD_SEND_DATA = 4, //Í£³µ³¡(³öÈë¿Ú¿ØÖÆ»ú)¿¨Æ¬Êý¾ÝÀàÐÍ + ENUM_TME_VEHICLE_SEND_DATA = 5, //Í£³µ³¡(³öÈë¿Ú¿ØÖÆ»ú)³µÁ¾Êý¾ÝÀàÐÍ + ENUM_DVR_DEBUG_CMD = 6, //µ÷ÊÔÃüÁîÐÅÏ¢ + ENUM_DVR_SCREEN_CTRL_CMD =7, //ÆÁÄ»»¥¶¯ÃüÁîÀàÐÍ + ENUM_CVR_PASSBACK_SEND_DATA = 8, //CVR»ñÈ¡¼à¿Øµã»Ø´«ÈÎÎñ¿ÉÖ´ÐÐÐÔ + ENUM_ACS_INTELLIGENT_IDENTITY_DATA = 9, //ÖÇÄÜÉí·Ýʶ±ðÖÕ¶ËÊý¾ÝÀàÐÍ + ENUM_VIDEO_INTERCOM_SEND_DATA = 10, //¿ÉÊÓ¶Ô½²Êý¾ÝÀàÐÍ + ENUM_SEND_JSON_DATA = 11 //͸´«JSONÊý¾Ý +}LONG_CFG_SEND_DATA_TYPE_ENUM; + +typedef enum _LONG_CFG_RECV_DATA_TYPE_ENUM_ +{ + ENUM_DVR_ERROR_CODE = 1, //´íÎóÂë + ENUM_MSC_RECV_DATA=2, //ÆÁÄ»¿ØÖÆÆ÷Êý¾ÝÀàÐÍ + ENUM_ACS_RECV_DATA=3 //ÃŽûÖ÷»úÊý¾ÝÀàÐÍ +}LONG_CFG_RECV_DATA_TYPE_ENUM; + +typedef struct tagNET_DVR_WIPER_CONTINUEWORK_PARAM +{ + BYTE byWorkTimeInterval;//¹¤×÷ʱ¼ä¼ä¸ô£¨µ¥Î»£ºÃ룩[2s~60s] + BYTE byRes[3]; + DWORD dwContinueWorkTime;//³ÖÐø¹¤×÷ʱ¼ä£¨µ¥Î»£ºÃ룩[2min~24h]½çÃæÏÔʾ°´·ÖÖÓµ¥Î» + BYTE byRes1[8]; +}NET_DVR_WIPER_CONTINUEWORK_PARAM,*LPNET_DVR_WIPER_CONTINUEWORK_PARAM; + +typedef union tagNET_DVR_WIPERMODE_PARAM_UNION +{ + BYTE uLen[16]; + //µ±byWiperWorkMode = 1ʱÉúЧ + NET_DVR_WIPER_CONTINUEWORK_PARAM struWiperContinueWorkParam; +}NET_DVR_WIPERMODE_PARAM_UNION,*LPNET_DVR_WIPERMODE_PARAM_UNION; + +typedef struct tagNET_DVR_WIPERINFO_CFG +{ + DWORD dwSize; + //ÓêË¢¹¤×÷ģʽ + //0-µ¥´Îģʽ£¬1-³ÖÐøģʽ£¨Õë¶ÔÅäÖýṹNET_DVR_ROTATE_OPERATE_PARAM£©£¬2-ÖÇÄÜģʽ£¬0xff-¹Ø±Õ + BYTE byWiperWorkMode; + BYTE byRes1; + WORD wSensitivity;//½µÓêÁéÃô¶È + BYTE byRes[20]; + NET_DVR_WIPERMODE_PARAM_UNION ustruWiperModeParam; +}NET_DVR_WIPERINFO_CFG,*LPNET_DVR_WIPERINFO_CFG; + +//±£´æ×Ô¶¯¶Ô½¹²ÎÊý +typedef struct tagNET_DVR_AUTOFOCUS_TESTCFG +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[24]; // ±£Áô×Ö½Ú +}NET_DVR_AUTOFOCUS_TESTCFG,*LPNET_DVR_AUTOFOCUS_TESTCFG; + + +typedef struct tagNET_DVR_VIDEO_OUT_CFG +{ + BYTE byDisplayMode; //ÏÔʾģʽ£¬1-±ê×¼£¬2-ÀäÉ«£¬3-ůɫ£¬0xff-×Ô¶¨Òå + BYTE byBrightnessLevel; // ÁÁ¶ÈÖµ0-100 + BYTE byContrastLevel; // ¶Ô±È¶È0-100 + BYTE bySharpnessLevel; // Èñ¶È0-100 + BYTE bySaturationLevel; // ±¥ºÍ¶È0-100 + BYTE byHueLevel; // É«µ÷0-100 + BYTE byImageMode; // ͼÏñģʽ£¬0-Õý³£Ä£Ê½£¬1-ҹģʽ1£¬2-ҹģʽ2£¬3-ҹģʽ3£¬4-ÈÕÕÕģʽ1£¬5-ÈÕÕÕģʽ2£¬6-ÈÕÕÕģʽ3 + BYTE byRes[5]; // ±£Áô +}NET_DVR_VIDEO_OUT_CFG, *LPNET_DVR_VIDEO_OUT_CFG; +//ɫΠ+typedef struct tagNET_DVR_COLOR_TEMPERATURE_CFG +{ + BYTE byRed; //ºìÉ«£¬ 0-100 + BYTE byGreen; //ÂÌÉ«£¬ 0-100 + BYTE byBlue; //À¶É«£¬0-100 + BYTE byRedOffset; //ºìÉ«Æ«ÒÆ£¬0-100 + BYTE byGreenOffset; //ÂÌÉ«Æ«ÒÆ£¬0-100 + BYTE byBlueOffset; //À¶É«Æ«ÒÆ£¬0-100 + BYTE byRes[6]; +}NET_DVR_COLOR_TEMPERATURE_CFG, *LPNET_DVR_COLOR_TEMPERATURE_CFG; + +typedef struct tagNET_DVR_ADC_CFG +{ + BYTE byGainR; //ÔöÒæR£¬ 0-100 + BYTE byGainG; //ÔöÒæG£¬0-100 + BYTE byGainB; //ÔöÒæB£¬0-100 + BYTE byOffsetR; //Æ«ÒÆÁ¿R£¬0-100 + BYTE byOffsetG; //Æ«ÒÆÁ¿G£¬0-100 + BYTE byOffsetB; //Æ«ÒÆÁ¿B£¬0-100 + BYTE byRes[6]; +}NET_DVR_ADC_CFG, *LPNET_DVR_ADC_CFG; + +typedef struct tagNET_DVR_SCREEN_EDGE_CFG +{ + BYTE byEnable; //ÊÇ·ñÆôÓÃÆÁÄ»±ßÔµ 0-²»ÆôÓà 1-ÆôÓà + BYTE byLeftEdge; //×ó±ßÔµ£¬0-100 + BYTE byRightEdge; //ÓÒ±ßÔµ£¬0-100 + BYTE byTopEdge; //ÉϱßÔµ£¬0-100 + BYTE byLowerEdge; //ϱßÔµ£¬0-100 + BYTE byRes[7]; +}NET_DVR_SCREEN_EDGE_CFG, *LPNET_DVR_SCREEN_EDGE_CFG; + +typedef struct tagNET_DVR_SCREEN_DISPLAY_CFG +{ + DWORD dwSize; + BYTE byCfgType; /*ÉèÖõIJÎÊýÀàÐÍ£¬»ñȡʱ´Ë²ÎÊýÎÞЧ£¬0-ÎÞЧ£¬1-±³¹â²ÎÊý£¬2-ÊÓƵ²ÎÊý£¬3-ɫβÎÊý£¬4-ADC²ÎÊý£¬5-ÆÁÄ»±ßÔµ²ÎÊý*/ + BYTE byBackLight; //±³¹â 0~100 + BYTE byRes1[2]; + NET_DVR_VIDEO_OUT_CFG struVideoOutCfg; //ÊÓƵ²ÎÊý£¨»­Ãæģʽ£© + NET_DVR_COLOR_TEMPERATURE_CFG struColorTempCfg; //ɫβÎÊý + NET_DVR_ADC_CFG struAdcCfg; //ADC²ÎÊý + NET_DVR_SCREEN_EDGE_CFG struScreenEdgeCfg; //ÆÁÄ»±ßÔµ²ÎÊý + BYTE byRes[32]; +}NET_DVR_SCREEN_DISPLAY_CFG, *LPNET_DVR_SCREEN_DISPLAY_CFG; +//Ä£ÄâÒ£¿ØÀàÐÍ +typedef enum tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE +{ + REMOTE_CTRL_POWERSUPPLY_OPEN = 1,//1-µçÔ´¿ª + REMOTE_CTRL_POWERSUPPLY_CLOSE = 2,//2-µçÔ´¹Ø + REMOTE_CTRL_SIGNALSOURCE,//3-ÐźÅÔ´ + REMOTE_CTRL_MENU,//4-²Ëµ¥ + REMOTE_CTRL_DETERMINATION,//5-È·¶¨ + REMOTE_CTRL_ON,//6-ÉÏ + REMOTE_CTRL_UNDER,//7-Ï + REMOTE_CTRL_LEFT,//8-×ó + REMOTE_CTRL_RIGHT,//9-ÓÒ + REMOTE_CTRL_INFO,//10-INFO + REMOTE_CTRL_RETURN,// 11-·µ»ØÉÏÒ»²ã + REMOTE_CTRL_NUM, //12-Êý×Ö¼üÅÌ +}SCREEN_REMOTE_CTRL_TYPE; + +//Ä£ÄâÒ£¿Ø°´¼ü +typedef struct tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL +{ + DWORD dwSize; + BYTE byControlType; //1-µçÔ´¿ª£¬2-µçÔ´¹Ø£¬3-ÐźÅÔ´£¬4-²Ëµ¥£¬5-È·¶¨£¬6-ÉÏ£¬7-Ï£¬8-×ó£¬9-ÓÒ, 10-INFO, 11-·µ»ØÉÏÒ»²ã,12-Êý×Ö°´¼ü,13-¿ª¹ØÒ»Ìå°´¼ü + BYTE byControlParam; //²Ù×÷²ÎÊý£¬²Ù×÷ÀàÐÍΪ12ʱ£¬±íʾ°´¼üÖµ£¨0-9£©£¬ÆäËû²Ù×÷ʱ´Ë²ÎÊýÎÞЧ + BYTE byRes[14]; +}NET_DVR_SIMULATE_SCREEN_REMOTE_CTRL,*LPNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL; + +//ÆÁÄ»ÐźÅÔ´ÅäÖà +typedef struct tagNET_DVR_SCREEN_SIGNAL_CFG +{ + DWORD dwSize; + BYTE bySignalSourceType; //ÊäÈëÔ´Ë÷Òý£¬¼ûö¾Ù NET_DVR_CAM_MODE + BYTE byNoSignalPic; //ÎÞÐźŻ­Ãæģʽ£¬1-À¶ÆÁ£¬2-ºÚÆÁ£¬3-LOGO»­Ãæ + BYTE byRes[14]; +}NET_DVR_SCREEN_SIGNAL_CFG, *LPNET_DVR_SCREEN_SIGNAL_CFG; + +//ÆÁĻƴ½ÓÅäÖà +typedef struct tagNET_DVRSCREEN_SPLICE_CFG +{ + DWORD dwSize; + BYTE bySpliceIndex; //×ÔÆ´½ÓÆÁºÅ£¬0¾ÍÊÇûÓÐÆ´½Ó£¬ÆäËûÖµ±íʾ×ÔÆ´½ÓÆÁµÄÆÁºÅ¡£ÀýÈçÆ´½Ó0101~0202Õâ4¿éÆÁ£¬ÔòÕâ4¿éÆÁµÄbySpliceIndex±ØÐëÏàͬ£¬ÇÒ·Ç0. + BYTE bySpliceX; //ÆÁÄ»ÔÚ×ÔÆ´½ÓÆÁÖеÄÐÐλÖà + BYTE bySpliceY; //ÆÁÄ»ÔÚ×ÔÆ´½ÓÆÁÖеÄÁÐλÖà + BYTE byWidth; //Æ´½Ó¹æÄ£¿í£¬ÒÔÆÁĻΪµ¥Î» + BYTE byHeight; //Æ´½Ó¹æÄ£¸ß£¬ÒÔÆÁĻΪµ¥Î» + BYTE byRes[11]; +}NET_DVR_SCREEN_SPLICE_CFG, *LPNET_DVR_SCREEN_SPLICE_CFG; + +//·çÉȹ¤×÷·½Ê½ÅäÖà +typedef struct tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG +{ + DWORD dwSize; + BYTE byWorkMode; //1-³£¿ª£¬2-×Ô¶¯ + BYTE byTemperatureLimitValue; //·çÉÈ¿ªÆôµÄζȷ§Öµ£¬¹¤×÷ģʽΪ×Ô¶¯Ê±¸Ã²ÎÊýÓÐЧ¡£ + BYTE byRes[14]; +}NET_DVR_SCREEN_FAN_WORK_MODE_CFG, *LPNET_DVR_SCREEN_FAN_WORK_MODE_CFG; + +//VGAÐźÅÅäÖà +typedef struct tagNET_DVR_SCREEN_VGA_CFG +{ + DWORD dwSize; + BYTE byEnableAutoAdjust; //ÊÇ·ñ×Ô¶¯µ÷Õû£¬0-·ñ£¬1-ÊÇ£¬µ±×Ô¶¯µ÷ÕûÆôÓÃʱÒÔϲÎÊýÎÞЧ + BYTE byHorizontalPosition; //ˮƽλÖà 0-100 + BYTE byVerticalPosition; //´¹Ö±Î»Öà 0-100 + BYTE byClock; //ʱÖÓ £¬0-100 + BYTE byPhase; //Ïà룬0-100 + BYTE byRes[11]; +}NET_DVR_SCREEN_VGA_CFG, *LPNET_DVR_SCREEN_VGA_CFG; + +//ÆÁÄ»²Ëµ¥ÅäÖà +typedef struct tagNET_DVR_SCREEN_MENU_CFG +{ + DWORD dwSize; + BYTE byMenuLanguage; //ÓïÑÔ£¬1-ÖÐÎÄ£¬2-Ó¢ÎÄ + BYTE byTransparency; //͸Ã÷¶È 0-²»Í¸Ã÷£¬1-µÍ£¬2-ÖУ¬3-¸ß + BYTE byDuration; //³ÖÐøʱ¼ä£¬0-³£¿ª£¬1-5Ã룬2-15Ã룬3-30Ãë + BYTE byRes[13]; +}NET_DVR_SCREEN_MENU_CFG, *LPNET_DVR_SCREEN_MENU_CFG; + +//»­Öл­ +typedef struct tagNET_DVR_PIP_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓû­Öл­ 0-²»ÆôÓà 1-ÆôÓà + BYTE bySubWindowSource; //×Ó»­ÃæÐźÅÔ´£¬²Î¿¼Ã¶¾ÙNET_DVR_CAM_MODE + BYTE bySubWindowBorderColor; //×Ó»­Ãæ±ß¿òÑÕÉ«£¬ 1-À¶É«£¬2-ºÚÉ« + BYTE byRes1; + NET_DVR_RECTCFG struPosition; //×Ó»­ÃæλÖã¬ÆÁÄ»×Ü´óСΪ100*100 + BYTE byRes2[12]; +}NET_DVR_PIP_CFG, *LPNET_DVR_PIP_CFG; + +//͸ÎíÅäÖà +typedef struct tagNET_DVR_DEFOG_LCD +{ + DWORD dwSize; + BYTE byDefogEnable; //¿ªÆô͸Îí¿ª¹Ø£¬0~¹Ø±Õ£¬1~¿ªÆô + BYTE byDefogModel; //͸Îíģʽ£¬0~×Ô¶¯È¥Îí£¬1~ÊÖ¶¯È¥Îí + BYTE byDefogLevel; //͸ÎíÇ¿¶ÈµÈ¼¶£¬1-7¸öµÈ¼¶£¬Ä¬Èϵȼ¶Îª4¡£µÈ¼¶1Ϊ0.5£»µÈ¼¶2Ϊ0.55£»µÈ¼¶3Ϊ0.60£»µÈ¼¶4Ϊ0.65£»µÈ¼¶5Ϊ0.70£»µÈ¼¶6Ϊ0.75£»µÈ¼¶7Ϊ0.80¡££¨È¥ÎíģʽΪÊÖ¶¯È¥Îíʱ£¬¿ÉÅäÖÃÈ¥ÎíÇ¿¶ÈµÈ¼¶£© + BYTE byRes[33]; +}NET_DVR_DEFOG_LCD,*LPNET_DVR_DEFOG_LCD; + +//ÆÁĻάǽ +typedef struct tagNET_DVR_SCREEN_WALL_CFG +{ + DWORD dwSize; + BYTE byEnable; //״̬¿ª¹Ø¡£0-Ϊ¹Ø±Õ£»1-Ϊ¿ªÆô + BYTE byRes[35]; +}NET_DVR_SCREEN_WALL_CFG, *LPNET_DVR_SCREEN_WALL_CFG; + +//ÆÁĻλÖà +typedef struct tagNET_DVR_SCREEN_POS_CFG +{ + DWORD dwSize; + BYTE byScreenRowNum;//ÆÁÄ»Ðкš£ + BYTE byScreenColNum;//ÆÁÄ»Áкš£ + BYTE byRes[34]; +}NET_DVR_SCREEN_POS_CFG, *LPNET_DVR_SCREEN_POS_CFG; + +typedef struct tagNET_DVR_VIDEO_AUDIOIN_CFG +{ + DWORD dwSize; //½á¹¹ÌåµÄ³¤¶È + DWORD dwChanNo; //ÊÓÒôƵͨµÀºÅ£¬ °ó¶¨ÇÒÆôÓú󣬱»°ó¶¨µÄÓïÒô¶Ô½²Í¨µÀÔò×÷Ϊ¸ÃͨµÀµÄÒôƵԴ + BYTE byEnable; //ÊÇ·ñÆôÓÃÓïÒô¶Ô½²×÷ΪÒôƵÊäÈëÔ´ 0-²»ÆôÓà 1-ÆôÓà + BYTE byRes[31]; //±£Áô +}NET_DVR_VIDEO_AUDIOIN_CFG, *LPNET_DVR_VIDEO_AUDIOIN_CFG; + +typedef struct _NET_DVR_VCA_DETION_CFG +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byRes1[3]; + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwMaxRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelRecordChanNum ; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ Êý ʵ¼ÊÖ§³ÖµÄÊýÁ¿ + DWORD dwRelRecordChan[MAX_CHANNUM_V30/*64*/];//´¥·¢Â¼ÏñͨµÀºÅ + BYTE byEnablePreset[MAX_CHANNUM_V30]; + BYTE byPresetNo[MAX_CHANNUM_V30]; + BYTE byEnableCruise[MAX_CHANNUM_V30]; + BYTE byCruiseNo[MAX_CHANNUM_V30]; + BYTE byEnablePtzTrack[MAX_CHANNUM_V30]; + BYTE byPTZTrack[MAX_CHANNUM_V30]; + NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30/*8*/]; //¼ÙÈÕ²¼·Àʱ¼ä + BYTE byRes[224];; +}NET_DVR_VCA_DETION_CFG, *LPNET_DVR_VCA_DETION_CFG; + +typedef struct tagNET_DVR_VCA_DETECTION_CFG_V40 +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable;//ʹÄÜ + BYTE byRes1[3]; + NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; + DWORD dwHandleType; //Òì³£´¦Àí,Òì³£´¦Àí·½Ê½µÄ"»ò"½á¹û + /*0x00: ÎÞÏìÓ¦*/ + /*0x01: ¼àÊÓÆ÷ÉϾ¯¸æ*/ + /*0x02: ÉùÒô¾¯¸æ*/ + /*0x04: ÉÏ´«ÖÐÐÄ*/ + /*0x08: ´¥·¢±¨¾¯Êä³ö*/ + /*0x10: ´¥·¢JPRGץͼ²¢ÉÏ´«Email*/ + /*0x20: ÎÞÏßÉù¹â±¨¾¯Æ÷Áª¶¯*/ + /*0x40: Áª¶¯µç×ÓµØͼ(Ä¿Ç°Ö»ÓÐPCNVRÖ§³Ö)*/ + /*0x200: ץͼ²¢ÉÏ´«FTP*/ + DWORD dwMaxRelAlarmOutChanNum ; //´¥·¢µÄ±¨¾¯Êä³öͨµÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + DWORD dwRelAlarmOut[MAX_ALARMOUT_V40/*4128*/]; //* ʵ¼Ê´¥·¢µÄ±¨¾¯Êä³öºÅ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0¿ªÊ¼Ë³Ðò¶ÁÈ¡£¬Èç¹ûÓöµ½0xffffffffÔòºóÐøÎÞЧ*/ + /*´¥·¢µÄ¼ÏñͨµÀ*/ + DWORD dwMaxRecordChanNum; //É豸֧³ÖµÄ×î´ó¹ØÁªÂ¼ÏñͨµÀÊý-Ö»¶Á + DWORD dwRelRecordChan[MAX_CHANNUM_V40/*512*/]; /* ʵ¼Ê´¥·¢Â¼ÏñͨµÀ£¬°´Öµ±íʾ,²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0¿ªÊ¼Ë³Ðò¶ÁÈ¡£¬Èç¹ûÓöµ½0xffffffff,ÔòºóÐøÎÞЧ*/ + DWORD dwEnablePresetChanNum; //µ±Ç°ÒÑÆôÓÃÔ¤ÖõãµÄÊýÄ¿ + NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40/*512*/]; //ÆôÓõÄÔ¤ÖõãÐÅÏ¢£¬µ±dwEnablePresetChanNum²»Îª0ʱ£¬Êý×éϱê0-(dwEnablePresetChanNum -1)ÓÐЧ£¬µ±Îª0ʱ£¬±íʾδÆôÓÃÔ¤Öõã + BYTE byRes2[516]; /*±£Áô*/ + DWORD dwEnableCruiseChanNum; //µ±Ç°ÒÑÆôÓÃѲº½µÄͨµÀÊýÄ¿ + NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40/*512*/]; //ÆôÓÃѲº½¹¦ÄÜͨµÀµÄÐÅÏ¢£¬µ±dwEnableCruiseChanNum²»Îª0ʱ£¬Êý×éϱê0-( dwEnableCruiseChanNum -1)ÓÐЧ£¬µ±Îª0ʱ£¬±íʾδÆôÓÃѲº½ + DWORD dwEnablePtzTrackChanNum; //µ±Ç°ÒÑÆôÔÆ̨¹ì¼£Í¨µÀÊýÄ¿ + NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40/*512*/]; //µ÷ÓÃÔÆ̨¹ì¼£µÄͨµÀÐÅÏ¢£¬µ±dwEnablePtzTrackChanNum²»Îª0ʱ£¬Êý×éϱê0-(dwEnablePresetChanNum -1)ÓÐЧ£¬µ±Îª0ʱ£¬±íʾδÆôÓÃÔÆ̨¹ì¼£ + NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; //¼ÙÈÕ²¼·Àʱ¼ä + BYTE byRes[224]; +}NET_DVR_VCA_DETECTION_CFG_V40, *LPNET_DVR_VCA_DETECTION_CFG_V40; + +typedef struct tagNET_DVR_CLOUD_STORAGE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС; + BYTE byEnableCS; //¿ªÆôÔÆ´æ´¢·þÎñ 0-¹Ø±Õ 1-¿ªÆô + BYTE byRes[511]; //±£Áô +} NET_DVR_CLOUD_STORAGE_CFG, *LPNET_DVR_CLOUD_STORAGE_CFG; + + +typedef struct tagNET_DVR_CHANS_RECORD_STATUS_CFG +{ + DWORD dwSize ; //½á¹¹Ìå´óС + BYTE byValid; //ÊÇ·ñÓÐЧ + /*(Ö»¶Á)¼ÏñÀàÐÍ£¬0: ²»ÔÚ¼Ïñ£»1£ºÔÚ¼Ïñ 2-¿ÕÏÐ + 3-ÎÞÁ¬½Ó 4-ÎÞÊäÈëÊÓƵ 5-δ¼ÓÔØ 6-´æµµÖÐ 7-»Ø´«ÖÐ + 8-Óû§Ãû»òÃÜÂë´í 9-δÑéÖ¤,10-´æµµÖкͼÏñÖÐ 11-¼Ïñ»Ø´«ÖкͼÏñÖÐ*/ + BYTE byRecord; + DWORD dwRelatedHD; //¹ØÁª´ÅÅÌ + BYTE byOffLineRecord; //¶ÏÍø¼Ïñ¹¦ÄÜ 0-¹Ø±Õ 1-¿ªÆô + BYTE byRes[63]; //±£Áô×Ö½Ú +}NET_DVR_CHAN_RECORD_STATUS_CFG, *LPNET_DVR_CHAN_RECORD_STATUS_CFG; + +#define MAX_CAMERAID_LEN 64 +typedef struct tagNET_DVR_UPLOAD_RECORD_INFO +{ + DWORD dwSize; + DWORD dwRecordType; //¼ÏñÀàÐÍ 0- ¶¨Ê±Â¼Ïñ£¬1- Òƶ¯Õì²â¼Ïñ£¬2- ±¨¾¯Â¼Ïñ£¬3- ±¨¾¯»òÒƶ¯Õì²â¼Ïñ£¬4- ±¨¾¯ºÍÒƶ¯Õì²â¼Ïñ£¬ 5- ÃüÁî´¥·¢£¬6- ÊÖ¶¯Â¼Ïñ£¬7- Õ𶯱¨¾¯£¬8- »·¾³´¥·¢±¨¾¯£¬9- ÖÇÄܱ¨¾¯£¬10- »Ø´«Â¼Ïñ + BYTE sCameraID[MAX_CAMERAID_LEN]; //camera id; + NET_DVR_TIME_EX struStartTime; //¼Ïñ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struStopTime; //¼Ïñ½áÊøʱ¼ä + DWORD dwStoragePoolID; //´æ´¢³ØID + BYTE byFormatType ; //·â×°ÀàÐÍ£º1-ÂãÁ÷£¬2-RTP·â×°£¬3-PS·â×°£¬4-TS·â×°£¬5-˽ÓУ¬6-FLV£¬7-ASF£¬8-3GP£¬9-RTP+PS£¨¹ú±ê£ºGB28181£©£¬0xff-ÎÞЧ + BYTE byVideoEncType ; //ÊÓƵ±àÂëÀàÐÍ£º0-˽ÓÐ264£¬1-±ê×¼h264£¬2-±ê×¼mpeg4£¬7-M-JPEG£¬8-MPEG2£¬0xfe- ×Ô¶¯£¨ºÍÔ´Ò»Ö£©£¬0xff-ÎÞЧ + BYTE byAudioEncType; //ÒôƵ±àÂëÀàÐÍ£º0-G722£¬1-G711_U£¬2-G711_A£¬5-MP2L2£¬6-G726£¬7-AAC£¬0xfe- ×Ô¶¯£¨ºÍÔ´Ò»Ö£©£¬0xff-ÎÞЧ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes[120]; +}NET_DVR_UPLOAD_RECORD_INFO,*LPNET_DVR_UPLOAD_RECORD_INFO; + +//²¹¹âµÆ²ÎÊýÅäÖà Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_IOOUT_COND +{ + DWORD dwSize; + BYTE bySyncOutputNo;//ͬ²½Êä³öºÅ(0-F1,1-F2,2-F3) + BYTE byRes[63]; +}NET_DVR_IOOUT_COND,*LPNET_DVR_IOOUT_COND; + +//²¹¹âµÆ²ÎÊýÅäÖà +typedef struct tagNET_DVR_IOOUT_CFG +{ + DWORD dwSize; + BYTE byWorkMode;// 0-±¨¾¯Êä³ö,1-ƵÉÁµÆ(ĬÈÏ) + BYTE byRes1[3]; + union + { + BYTE byUnionLen[128]; + struct + { + BYTE byDefaultState;//ĬÈÏ״̬ 0-µÍµçƽ(ĬÈÏ)£¬1-¸ßµçƽ + BYTE byWorkState;//ÉúЧ״̬ 0-µÍµçƽ(ĬÈÏ),1-¸ßµçƽ,2-Âö³å + BYTE byFreqMulti;//±¶Æµ£¬ÊýÖµ·¶Î§[1,15] + BYTE byDutyRatio;//Õ¼¿Õ±È£¬[0,40%] + BYTE byRes[3]; + BYTE byFlashLightEnable; //ÉèÖÃÉÁ¹âµÆʱ¼äʹÄÜ:0-¹Ø;1-¿ª + NET_DVR_SCHEDTIME struFlashLightTime;//ÆôÓÃÉÁ¹âµÆʱ¼ä + BYTE byRes1[116]; + }struStrobeLamp; // ƵÉÁµÆ ʱÓÐЧ + }uWorkModeInfo; + BYTE byRes2[128]; +}NET_DVR_IOOUT_CFG,*LPNET_DVR_IOOUT_CFG; + +//ÐźŵÆͬ²½²ÎÊý +typedef struct tagNET_DVR_SIGNAL_SYNCCFG +{ + DWORD dwSize; + WORD wPhase;//Ïàλ(0~360) + BYTE byLineLock;//µçԴͬ²½ 0-·ñ£¬1-ÊÇ + BYTE byRes[125]; +}NET_DVR_SIGNAL_SYNCCFG,*LPNET_DVR_SIGNAL_SYNCCFG; + +// өʯEZVIZ½ÓÈë²ÎÊý½á¹¹Ìå +typedef struct +{ + DWORD dwSize; + BYTE byEnable;// ÆôÓÃEZVIZ½ÓÈë 0¡«½ûÓã¬1¡«ÆôÓà + /********* IPC5.1.7 ÐÂÔö²ÎÊý Begin 2014-03-21***********/ + BYTE byDeviceStatus; //É豸ÊÇ·ñÔÚÏß״̬£¬0-±£Áô£¬1-ÔÚÏߣ¬2-ÀëÏß + BYTE byAllowRedirect; //ÊÇ·ñÔÊÐíÖض¨Ïò,0-±£Áô,1-ÊÇ,2-·ñ,0±íʾ±£³Ö²»±ä,¼æÈÝÀÏSDK½ÓÐÂÉ豸µÄÇé¿ö + BYTE byDomainName[MAX_DOMAIN_NAME]; //ÓòÃû·þÎñÆ÷µØÖ· + BYTE byRes1; + BYTE byVerificationCode[NET_SDK_MAX_VERIFICATION_CODE_LEN/*32*/];//өʯÔÆÑéÖ¤Âë + BYTE byNetMode; //ÍøÂçģʽ£¬0-ÎÞÒâÒ壬1-×Ô¶¯£¬2-ÓÐÏßÍøÂçÓÅÏÈ£¬3-ÓÐÏßÍøÂç(ĬÈÏ)£¬4-ÎÞÏßÍøÂç + BYTE byOfflineStatus; //É豸ÀëÏß¾ßÌå״̬: 0-±£Áô£¬1-өʯע²áÑéÖ¤ÂëÎÞЧ¡£¸Ã×Ö¶ÎΪֻ¶Á£¬ÇÒµ±DeviceStatusΪ2ʱÉúЧ¡£ + BYTE byEnableTiming;// ÆôÓÃEZVIZУʱ 0¡«½ûÓã¬1¡«ÆôÓà + BYTE byRes2; + BYTE byOperateCode[NET_SDK_MAX_OPERATE_CODE_LEN]; //²Ù×÷Â룬Óû§°ó¶¨É豸ʱʹÓà + BYTE byRes[344]; +}NET_DVR_EZVIZ_ACCESS_CFG,*LPNET_DVR_EZVIZ_ACCESS_CFG; + +typedef struct tagNET_DVR_ALARM_RELATE_COND +{ + DWORD dwSize; + /* + 0±íʾÒƶ¯Õì²â£¬ + 1±íʾÊÓƵÕÚµ²£¬ + 2±íʾÊÓƵ¶ªÊ§£¬ + 3±íʾPIR±¨¾¯£¬ + 4±íʾÎÞÏß±¨¾¯£¬ + 5±íʾºô¾È±¨¾¯£¬ + 6±íʾÖÇÄÜץͼ£¬ + 7±íʾÈËÁ³Õì²â£¬ + 8±íʾԽ½çÕì²âÕì²â£¬ + 9±íʾÇøÓòÈëÇÖÕì²â£¬ + 10±íʾ³¡¾°±ä¸üÕì²â£¬ + 11 ±íʾÒì³£Õì²â£¬ + 0xff ±íʾ±¨¾¯ÊäÈë + */ + BYTE byAlarmType; + //Áª¶¯¶¯×÷ 0-ÎÞЧ,1-ץͼÉÏ´«FTP,2-JpegץͼÉÏ´«Email + BYTE byRelateActType; + BYTE byRes[2]; + //±¨¾¯ÊäÈëºÅ»òÕßͨµÀºÅ»òÕßÎÞÏß±àºÅ + //(µ±byAlarmType ==0xffʱ,dwChannel±íʾµÄÊDZ¨¾¯ÊäÈëºÅ) + //(µ±byAlarmType ==4ʱ,dwChannel±íʾµÄÊÇÎÞÏß±àºÅ) + DWORD dwChannel; + BYTE byRes1[64]; +}NET_DVR_ALARM_RELATE_COND,*LPNET_DVR_ALARM_RELATE_COND; + +typedef struct tagNET_DVR_ALARM_RELATE_CFG +{ + DWORD dwSize; + DWORD dwMaxRelateChanNum ; //´¥·¢µÄ±¨¾¯¹ØÁªÍ¨µÀÊý£¨Ö»¶Á£©×î´óÖ§³ÖÊýÁ¿ + //dwRelateChanµÄ³õʼֵÊÇ0xffffffff;Êý×éÄÚÌîдÊÇʵ¼ÊµÄͨµÀºÅ; + DWORD dwRelateChan[MAX_CHANNUM_V40/*512*/]; + BYTE byRes1[256]; +}NET_DVR_ALARM_RELATE_CFG,*LPNET_DVR_ALARM_RELATE_CFG; + +typedef struct tagNET_DVR_PTZ_BASICPARAMCFG +{ + DWORD dwSize; + BYTE byProportionalPan; //ÆôÓñÈÀý±ä±¶ÅäÖà 0-·ñ£¬1-ÊÇ + BYTE byPresetFreezing; //ÆôÓÃÔ¤ÖõãÊÓƵ¶³½á 0-·ñ£¬1-ÊÇ + BYTE byPresetSpeed;//Ô¤ÖõãËٶȵȼ¶ 1--8£¬Ä¬ÈÏ4 + BYTE byKeyboardCtrlSpeed;//ÊÖ¿ØËٶȵȼ¶0-µÍ,1-ÖÐ,2-¸ß + BYTE byAutoScanSpeed;//ɨÃèËٶȵȼ¶£º1--40£¬Ä¬ÈÏ28 + BYTE byZoomingSpeed;//±ä±¶Ëٶȣº1--3£¬Ä¬ÈÏ3 + BYTE byManualControlSpeed;//ÊÖ¿ØËÙ¶Èģʽ£º0-¼æÈÝ£¬1-ÐÐÈË£¬2-·Ç»ú¶¯³µ£¬3-»ú¶¯³µ£¬4-×ÔÊÊÓ¦ + BYTE byPTZMotionTrack;//ÆôÓÃÔ˶¯¸ú×Ù£¨Ëø¶¨ÔÆ̨²Ù×÷£© 0-ĬÈÏ£¨¿ªÆô£©£¬1-¹Ø±Õ + BYTE byRes[124]; +}NET_DVR_PTZ_BASICPARAMCFG,*LPNET_DVR_PTZ_BASICPARAMCFG; + +typedef struct tagNET_DVR_PTZ_OSDCFG +{ + DWORD dwSize; + BYTE byZoomStatus; //¾µÍ·±¶ÊýÏÔʾ£º1-2Ãë¡¢2-5Ãë¡¢3-10Ãë¡¢0xff-³£¹Ø¡¢0-³£¿ª£¬Ä¬ÈÏ2Ãë + BYTE byPtStatus; //·½Î»½ÇÏÔʾ£º1-2Ãë¡¢2-5Ãë¡¢3-10Ãë¡¢0xff-³£¹Ø¡¢0-³£¿ª£¬Ä¬ÈÏ2Ãë + BYTE byPresetStatus;//Ô¤Öõã±êÌâÏÔʾ£º1-2Ãë¡¢2-5Ãë¡¢3-10Ãë¡¢0xff-³£¹Ø¡¢0-³£¿ª£¬Ä¬ÈÏ2Ãë + BYTE byPositionDisplayFormat;//·½Î»½ÇÏÔʾ¸ñʽ 0-°´ÕÕPTÏÔʾ(Àý P179|T-02)£¬1-°´ÕÕ·½Î»ÏÔʾ(SE123|T-02) + BYTE byRes[124]; +}NET_DVR_PTZ_OSDCFG,*LPNET_DVR_PTZ_OSDCFG; + +typedef struct tagNET_DVR_PTZ_POWEROFFMEMCFG +{ + DWORD dwSize; + BYTE byResumeTimePoint; //µôµç¼ÇÒäģʽ£ºOxff-½ûÓá¢1-30Ãë¡¢2-60Ãë¡¢3-300Ãë¡¢4-600Ã룬ĬÈÏ30Ãë + BYTE byRes[127]; +}NET_DVR_PTZ_POWEROFFMEMCFG,*LPNET_DVR_PTZ_POWEROFFMEMCFG; + +typedef struct tagNET_DVR_PTZ_LIMITCOND +{ + DWORD dwSize; + DWORD dwChan; //ͨµÀºÅ + BYTE byLimitMode; //ÏÞλģʽ 0-±£Áô£¬1-¼ü¿ØÏÞ룬2-ɨÃèÏÞλ + BYTE byRes[63]; +}NET_DVR_PTZ_LIMITCOND, *LPNET_DVR_PTZ_LIMITCOND; + +typedef struct tagNET_DVR_PTZ_LIMITCFG +{ + DWORD dwSize; + BYTE byEnable;//ÆôÓÃʹÄÜ£¬0-·ñ£¬1-ÊÇ + BYTE byLimitStatus; //ÏÞλ״̬ 0-δÏÞ룬1-ÒÑÏÞ루²»¿É±à¼­£© + BYTE byRes[122]; +}NET_DVR_PTZ_LIMITCFG,*LPNET_DVR_PTZ_LIMITCFG; + +typedef struct tagNET_DVR_PTZ_LIMITCTRL +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ + BYTE byLimitMode; //ÏÞλģʽ 0-±£Áô£¬1-¼ü¿ØÏÞ룬2-ɨÃèÏÞλ + BYTE byWorkMode ;//0-ÉèÖã¬1-Çå³ý + BYTE byRes[122]; +}NET_DVR_PTZ_LIMITCTRL,*LPNET_DVR_PTZ_LIMITCTRL; + +typedef struct tagNET_DVR_PTZ_LOCKCFG +{ + DWORD dwSize; + BYTE byWorkMode ;//ÔÆ̨Ëø¶¨¿ØÖÆ 0-½âËø£¬1-Ëø¶¨ + BYTE byRes[123]; +}NET_DVR_PTZ_LOCKCFG,*LPNET_DVR_PTZ_LOCKCFG; + +typedef struct tagNET_DVR_PTZLOCKINFO_COND +{ + DWORD dwSize; + DWORD dwChannel ;//ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_PTZLOCKINFO_COND,*LPNET_DVR_PTZLOCKINFO_COND; + +typedef struct tagNET_DVR_PTZLOCKINFO +{ + DWORD dwSize; + DWORD dwRemainingSec ;//Ê£ÓàÃëÊý + BYTE byRes[128]; //±£Áô×Ö½Ú +}NET_DVR_PTZLOCKINFO, *LPNET_DVR_PTZLOCKINFO; + +typedef struct tagNET_DVR_CRUISEPOINT_COND +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ + WORD wRouteNo;//Ѳº½Â·¾¶ºÅ + BYTE byRes[30]; +}NET_DVR_CRUISEPOINT_COND,*LPNET_DVR_CRUISEPOINT_COND; + +typedef struct +{ + WORD wPresetNo; //Ô¤Öõã + WORD wDwell; //Í£Áôʱ¼ä + BYTE bySpeed; //ËÙ¶È + BYTE bySupport256PresetNo;//¼æÈÝ֮ǰµÄ µÚ256ºÅÔ¤ÖõãÊÇ·ñÉúЧ + BYTE byRes[6]; +}NET_DVR_CRUISEPOINT_PARAM,*LPNET_DVR_CRUISEPOINT_PARAM; + +typedef struct +{ + DWORD dwSize; + // ×î´óÖ§³Ö128¸öѲº½µã + NET_DVR_CRUISEPOINT_PARAM struCruisePoint[MAX_CRUISE_POINT_NUM]; + BYTE Res[64]; //±£Áô +}NET_DVR_CRUISEPOINT_V40, *LPNET_DVR_CRUISEPOINT_V40; + +typedef struct +{ + DWORD dwSize; + // ×î´óÖ§³Ö256¸öѲº½µã + NET_DVR_CRUISEPOINT_PARAM struCruisePoint[MAX_CRUISEPOINT_NUM_V50]; + BYTE Res[64]; //±£Áô +}NET_DVR_CRUISEPOINT_V50, *LPNET_DVR_CRUISEPOINT_V50; + + +typedef struct tagNET_DVR_TEST_VERSION_HEAD +{ + DWORD dwSize; + DWORD dwParam1; + BYTE byParam2; + BYTE byRes[31]; +}NET_DVR_TEST_VERSION_HEAD, *LPNET_DVR_TEST_VERSION_HEAD; + +typedef struct tagNET_DVR_TEST_VERSION_HEAD_V1 +{ + DWORD dwSize; + DWORD dwParam1; + BYTE byParam2; + BYTE byRes[31]; + DWORD dwParam1_1; + BYTE byParam1_2; + BYTE byRes1[31]; +}NET_DVR_TEST_VERSION_HEAD_V1, *LPNET_DVR_TEST_VERSION_HEAD_V1; + +typedef struct tagNET_DVR_TEST_VERSION_HEAD_V2 +{ + DWORD dwSize; + DWORD dwParam1; + BYTE byParam2; + BYTE byRes[31]; + DWORD dwParam1_1; + BYTE byParam1_2; + BYTE byRes1[31]; + DWORD dwParam2_1; + BYTE byParam2_2; + BYTE byRes2[31]; +}NET_DVR_TEST_VERSION_HEAD_V2, *LPNET_DVR_TEST_VERSION_HEAD_V2; + +#define MAX_DISPLAY_NUM 512 //×î´óÏÔʾÊä³ö¸öÊý +#define MAX_LEDCONTENT_NUM 512 //ÐéÄâLED×Ö·û´®×î´ó³¤¶È +#define MAX_PPT_CHAN 128 //PPT³¤¶È + +typedef struct tagNET_DVR_VIDEOWALLDISPLAYMODE +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byRes1[3]; + NET_DVR_RECTCFG_EX struRect;//×ø±ê·¶Î§£¬ÒÀ¾Ý»ù×¼×ø±ê¼ÆËã³öÖ§³ÖµÄÆ´¿Øģʽ + BYTE sName[NAME_LEN]; //µçÊÓǽÃû³Æ + BYTE byRes2[100]; +}NET_DVR_VIDEOWALLDISPLAYMODE, *LPNET_DVR_VIDEOWALLDISPLAYMODE; + +typedef struct tagNET_DVR_DISPLAYPARAM +{ + DWORD dwDisplayNo;//ÏÔʾÊä³öºÅ + BYTE byDispChanType;/*Êä³öÁ¬½Óģʽ,1-BNC£¬2-VGA£¬3-HDMI£¬4-DVI£¬5-SDI, 6-FIBER, \ + 7-RGB, 8-YPrPb, 9-VGA/HDMI/DVI×ÔÊÊÓ¦£¬10-3GSDI,11-VGA/DVI×ÔÊÊÓ¦£¬12-HDBaseT,13-HDTVI, 14-TVI£¬0xff-ÎÞЧ*/ + + BYTE byRes[11]; +}NET_DVR_DISPLAYPARAM,*LPNET_DVR_DISPLAYPARAM; + +typedef struct tagNET_DVR_DISPLAYCFG +{ + DWORD dwSize; + NET_DVR_DISPLAYPARAM struDisplayParam[MAX_DISPLAY_NUM/*512*/] ; + BYTE byRes[128]; +}NET_DVR_DISPLAYCFG,*LPNET_DVR_DISPLAYCFG; + +typedef struct tagNET_DVR_VIDEOWALLDISPLAYPOSITION +{ + DWORD dwSize; + BYTE byEnable; + BYTE byCoordinateType;//×ø±êÀàÐÍ¡£0-»ù×¼×ø±ê£¬1-ʵ¼Ê×ø±ê + BYTE byRes1[2]; + //ǽºÅ,1×Ö½ÚǽºÅ£¨¸ß×Ö½Ú£¬¶ÔÓÚºÏÂëÆ÷É豸£¬ÎªºÏÂëͨµÀºÅ£©+3×Ö½Ú±£Áô + DWORD dwVideoWallNo; + DWORD dwDisplayNo;//ÏÔʾÊä³öºÅ + //×ø±êÐëΪ»ù×¼×ø±êµÄÕûÊý±¶£¨1920*1920£©£¬¿í¶ÈºÍ¸ß¶ÈÖµ²»ÓÃÉèÖ㬼´Îª»ù×¼Öµ + NET_DVR_RECTCFG_EX struRectCfg; + BYTE byRes2[64]; +}NET_DVR_VIDEOWALLDISPLAYPOSITION,*LPNET_DVR_VIDEOWALLDISPLAYPOSITION; + +/*´°¿ÚÐÅÏ¢*/ +typedef struct tagNET_DVR_VIDEOWALLWINDOWPOSITION +{ + DWORD dwSize; + BYTE byEnable; //´°¿ÚʹÄÜ,0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byWndOperateMode; //´°¿Ú²Ù×÷ģʽ£¬0-ͳһ×ø±ê£¬1-·Ö±æÂÊ×ø±ê + BYTE byRes1[6]; + DWORD dwWindowNo;//´°¿ÚºÅ + DWORD dwLayerIndex;//´°¿ÚÏà¶ÔÓ¦µÄͼ²ãºÅ£¬Í¼²ãºÅµ½×î´ó¼´Öö¥£¬Öö¥²Ù×÷ + NET_DVR_RECTCFG_EX struRect; //Ä¿µÄ´°¿Úͳһ×ø±ê(Ïà¶ÔÏÔʾǽ)£¬»ñÈ¡»ò°´Í³Ò»×ø±êÉèÖÃʱÓÐЧ + NET_DVR_RECTCFG_EX struResolution; //Ä¿µÄ´°¿Ú·Ö±æÂÊ×ø±ê£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + DWORD dwXCoordinate; //LEDÇøÓò×óÉϽÇX×ø±ê£¨Í³Ò»×ø±ê£©£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + DWORD dwYCoordinate; //LEDÇøÓò×óÉϽÇY×ø±ê£¨Í³Ò»×ø±ê£©£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + BYTE byRes2[36]; +}NET_DVR_VIDEOWALLWINDOWPOSITION,*LPNET_DVR_VIDEOWALLWINDOWPOSITION; + +typedef struct tagNET_DVR_VIDEO_WALL_INFO +{ + DWORD dwSize; + //´°¿ÚºÅ£º1×Ö½ÚǽºÅ£¨¶ÔÓÚºÏÂëÆ÷É豸£¬ÎªºÏÂëͨµÀºÅ£©+1×Ö½Ú±£Áô+2×Ö½Ú´°¿ÚºÅ + DWORD dwWindowNo; + DWORD dwSceneNo;//³¡¾°ºÅ + DWORD dwDestWallNo; //Ä¿µÄǽºÅ + DWORD dwDestSceneNo;//Ä¿µÄ³¡¾°ºÅ + BYTE byRes[12]; +}NET_DVR_VIDEO_WALL_INFO,*LPNET_DVR_VIDEO_WALL_INFO; + +typedef struct tagNET_DVR_VIRTUALLED_PARAM +{ + DWORD dwSize; + BYTE byEnable; //ʹÄÜ + BYTE byDispMode; //ÏÔʾģʽ£¬1-͸Ã÷£¬2-°ë͸Ã÷£¬3-¸²¸Ç + BYTE byWndOperateMode; //´°¿Ú²Ù×÷ģʽ£¬0-ͳһ×ø±ê£¬1-·Ö±æÂÊ×ø±ê + BYTE byType; //ÐéÄâLEDÀàÐÍ£¬0-Îı¾£¬1-ʱ¼ä + BYTE byDirection; //ÐéÄâLED·½Ïò£¬0-ˮƽ·½Ïò£¬1-´¹Ö±·½Ïò + BYTE byTimeType; //ʱ¼äÀàÐÍ£¬byTypeΪ1ʱÓÐЧ£¬0-ÎÞЧ£¬1-Ö»ÏÔʾʱ¼ä£¬2-ÏÔʾÈÕÆÚºÍʱ¼ä + BYTE byDateFormat; //ÈÕÆÚÏÔʾ¸ñʽ£¬byTimeTypeΪ2ʱÓÐЧ + //0-ÎÞЧ£¬1-XXXX-XX-XX(ÄêÔÂÈÕ)£¬2-XX-XX-XXXX(ÔÂÈÕÄê)£¬3-XX-XX-XXXX(ÈÕÔÂÄê)£¬4-XXXXÄêXXÔÂXXÈÕ£¬5-XXÔÂXXÈÕXXXXÄ꣬6-XXÈÕXXÔÂXXXXÄê + BYTE byTimeFormat; //ʱ¼äÏÔʾ¸ñʽ£¬byTimeType²»ÎªÁãʱÓÐЧ + //0-ÎÞЧ£¬1-H:MM:SS£¬2-HH:MM:SS + NET_DVR_RGB_COLOR struContentColor; //×ÖÌåÑÕÉ« + NET_DVR_RGB_COLOR struBackColor; //±³¾°ÑÕÉ« + NET_DVR_RECTCFG_EX struRect; + DWORD dwContentNum; //Îı¾ÄÚÈݳ¤¶È£¬byTypeΪ0ʱÓÐЧ + BYTE byLedContent[MAX_LEDCONTENT_NUM/*512*/]; //Îı¾ÄÚÈÝ£¬byTypeΪ0ʱÓÐЧ + BYTE byMoveMode; //Òƶ¯Ä£Ê½£¬1-ÆÕͨ£»2-ƽ»¬£»3-¾²Ö¹ + BYTE byFontSize; //×ÖÌå´óС£¬1-1±¶£¬2-2±¶£¬3-4±¶ + BYTE byMoveDirection; //Òƶ¯·½Ïò£¬0-ĬÈÏ£¨´Ó×óµ½ÓÒ£©£¬1-´Ó×óµ½ÓÒ£¬2-´ÓÓÒµ½×ó£¬3-´ÓÉϵ½Ï£¬4-´Óϵ½ÉÏ£¬¶¯Ì¬ÐéÄâLEDʱÓÐЧ + BYTE byMoveSpeed; //Òƶ¯Ëٶȣ¬1-ËÙ¶È1£¬2-ËÙ¶È2£¬¶¯Ì¬ÐéÄâLEDʱÓÐЧ + NET_DVR_RECTCFG_EX struResolution; //Ä¿µÄ´°¿Ú·Ö±æÂÊ×ø±ê£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + DWORD dwXCoordinate; //LEDÇøÓò×óÉϽÇX×ø±ê£¨Í³Ò»×ø±ê£©£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + DWORD dwYCoordinate; //LEDÇøÓò×óÉϽÇY×ø±ê£¨Í³Ò»×ø±ê£©£¬»ñÈ¡»ò°´·Ö±æÂÊ×ø±êÉèÖÃÓÐЧ + BYTE byHourFormat; //ʱ¼äÖÆʽ£¬byTimeType²»ÎªÁãʱÓÐЧ£¬0-ÎÞЧ£¬1-12СʱÖÆ£¬2-24СʱÖÆ + BYTE byAMFormat; //AM¸ñʽ£¬byHourFormatΪ1ʱÓÐЧ£¬0-ÎÞЧ£¬1-AM£¬2-ÉÏÎç + BYTE byPMFormat; //PM¸ñʽ£¬byHourFormatΪ1ʱÓÐЧ£¬0-ÎÞЧ£¬1-PM£¬2-ÏÂÎç + BYTE byAlignmentX; //ˮƽ¶ÔÆ뷽ʽ£¬byDirectionΪ0ʱÓÐЧ£¬0-ÎÞЧ£¬1-×ó¶ÔÆ룬2-¾ÓÖжÔÆ룬3-ÓÒ¶ÔÆë + BYTE byAlignmentY; //´¹Ö±¶ÔÆ뷽ʽ£¬byDirectionΪ1ʱÓÐЧ£¬0-ÎÞЧ£¬1-¶¥¶Ë¶ÔÆ룬2-¾ÓÖжÔÆ룬3-µ×¶Ë¶ÔÆë + BYTE byFontType; //×ÖÌåÀàÐÍ£¬0-ĬÈÏ£¬1-ËÎÌ壬2-ºÚÌ壬3-¿¬Ì壬255-×Ô¶¨Òå + BYTE byRes2[90]; +}NET_DVR_VIRTUALLED_PARAM,*LPNET_DVR_VIRTUALLED_PARAM; + +typedef struct tagNET_DVR_IMAGE_CUT_MODE +{ + DWORD dwSize; + BYTE byCutMode; //ͼÏñÇиîģʽ£¬1-4:3,2-16:9 + BYTE byRes[31]; +}NET_DVR_IMAGE_CUT_MODE,*LPNET_DVR_IMAGE_CUT_MODE; + +typedef struct tagNET_DVR_USING_SERIALPORT +{ + DWORD dwSize ; + DWORD dwSerialPort; //µ±Ç°Ê¹Óô®¿ÚºÅ + BYTE byProtocolType; //´®¿ÚЭÒéÀàÐÍ£¬1-LCD-S1 , 2-LCD-S2 , 3-LCD-L1 £¬ 4-LCD-DLP£¬ 5-LCD-S3 , 6-LCD-D20£¬7-LCD-L2,8-LCD-Z1£¬9-LCD-D20/D,10-LCD-D20/S,11-LCD-D20/P,12-LCD-D20/T,13-LCD-D20/F,14-LCD-D20/DF,15-LCD-D20/FS,16-LCD-D20/FP,17-LCD-D20/FT,18-LCD-D5022,19-LCD-D5032,20-LCD-D5042+ + BYTE byRes[31]; +}NET_DVR_USING_SERIALPORT,*LPNET_DVR_USING_SERIALPORT; + +typedef struct tagNET_DVR_VIDEOWALLSCENECFG +{ + DWORD dwSize; + BYTE sSceneName[NAME_LEN];//³¡¾°Ãû³Æ + BYTE byEnable;//³¡¾°ÊÇ·ñÓÐЧ 1-ÓÐЧ£¬0-ÎÞЧ + BYTE bySceneIndex; //³¡¾°ºÅ£¬Ö»ÄÜ»ñÈ¡¡£»ñÈ¡ËùÓг¡¾°Ê±Ê¹ÓøòÎÊý + BYTE byRes [78]; +}NET_DVR_VIDEOWALLSCENECFG, *LPNET_DVR_VIDEOWALLSCENECFG; + +typedef struct tagNET_DVR_SCENE_CONTROL_INFO +{ + DWORD dwSize; + NET_DVR_VIDEO_WALL_INFO struVideoWallInfo; //µçÊÓǽÐÅÏ¢ + DWORD dwCmd; //³¡¾°¿ØÖÆÃüÁ1-³¡¾°Ä£Ê½Çл»£¨Èç¹ûÒªÇл»µÄÊǵ±Ç°³¡¾°£¬Ôò²»½øÐÐÇл»£©£¬2-³õʼ»¯³¡¾°£¨½«´Ë³¡¾°µÄÅäÖÃÇå¿Õ£¬Èç¹ûÊǵ±Ç°³¡¾°£¬Ôòͬʱ¶Ôµ±Ç°³¡¾°½øÐÐÇåÆÁ²Ù×÷£©£¬3-Ç¿ÖÆÇл»£¨ÎÞÂÛÊÇ·ñÊǵ±Ç°³¡¾°£¬Ç¿ÖÆÇл»£©£¬4-±£´æµ±Ç°Ä£Ê½µ½Ä³³¡¾° 5-ɾ³ý³¡¾° ,6-³¡¾°¸´ÖÆ + BYTE byRes[4]; +}NET_DVR_SCENE_CONTROL_INFO, *LPNET_DVR_SCENE_CONTROL_INFO; + +typedef struct tagNET_DVR_SHOW_CONTROL_INFO +{ + DWORD dwSize; + DWORD dwDisplayNo; //ÏÔʾÊä³ö¿ÚºÅ£¬0xffffffff±íʾ¶ÔËùÓÃÊä³ö¿Ú½øÐвÙ×÷ + BYTE byEnable; //ʹÄÜÏÔʾ£¬0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byChanType; //ÏÔʾµÄͨµÀÀàÐÍ£¬1-ÏÔʾͨµÀºÅ£¬2-ÐéÄâÆÁºÅ + BYTE byRes1[2]; + DWORD dwWallNo; //ǽºÅ£¬1×Ö½ÚǽºÅ£¨¸ß룩+3×Ö½Ú±£Áô£¬ÏÔʾÆÁÄ»ÐòºÅʱÓÐЧ + BYTE byRes2[56]; +}NET_DVR_SHOW_CONTROL_INFO,*LPNET_DVR_SHOW_CONTROL_INFO; + +typedef struct tagNET_DVR_BUF_INFO +{ + void* pBuf; //»º³åÇøÖ¸Õë + DWORD nLen; //»º³åÇø³¤¶È +}NET_DVR_BUF_INFO, *LPNET_DVR_BUF_INFO; + +typedef struct tagNET_DVR_IN_PARAM +{ + NET_DVR_BUF_INFO struCondBuf; //Ìõ¼þ»º³åÇø + NET_DVR_BUF_INFO struInParamBuf; //²ÎÊý»º³åÇø + DWORD dwRecvTimeout; //½ÓÊÕÊý¾Ý³¬Ê±Ê±¼ä£¬µ¥Î»£ºms,ÖÃ0²ÉÓýӿÚĬÈϳ¬Ê± + BYTE byRes[32]; +}NET_DVR_IN_PARAM,LPNET_DVR_IN_PARAM; + +typedef struct tagNET_DVR_OUT_PARAM +{ + NET_DVR_BUF_INFO struOutBuf; //Êä³ö²ÎÊý»º³åÇø + void* lpStatusList; //״̬»º³åÇø + BYTE byRes[32]; +}NET_DVR_OUT_PARAM,LPNET_DVR_OUT_PARAM; + +typedef struct tagNET_DVR_AUDIO_CHAN_INFO +{ + DWORD dwSize; + DWORD dwChannel; //ÒôƵͨµÀºÅ×éºÏ£¨1×Ö½ÚÉ豸ºÅ+1×Ö½Ú×Ó°åºÅ+2×Ö½ÚÒôƵͨµÀºÅ£© + BYTE byRes[48]; +}NET_DVR_AUDIO_CHAN_INFO, *LPNET_DVR_AUDIO_CHAN_INFO; + +typedef struct tagNET_DVR_AUDIO_CHAN_CFG +{ + DWORD dwSize; + BYTE sChanName[NAME_LEN]; //ÒôƵͨµÀÃû³Æ + BYTE byEnable; //ÒôƵÊÇ·ñ¿ªÆô£¬ 0-¹Ø£¬ 1-¿ª + BYTE byAudioSwitchType; //ÒôƵÇл»·½Ê½£¬1-°´Ç°¶ËÔ´·½Ê½£¬2-°´´°¿Ú½âÂëÔ´·½Ê½ + BYTE byRes[2]; + NET_DVR_PU_STREAM_CFG_V41 struAudioSrcInfo; //ÒôƵԴÐÅÏ¢ byAudioSwitchTypeΪ1ʱÓÐЧ + DWORD dwWindowNo; //×Ó´°¿ÚºÅ£¨1×Ö½ÚǽºÅ+1×Ö½Ú×Ó´°¿ÚºÅ+2×Ö½Ú´°¿ÚºÅ£©£¬byAudioSwitchTypeΪ2ʱÓÐЧ + BYTE byRes2[28]; +}NET_DVR_AUDIO_CHAN_CFG, *LPNET_DVR_AUDIO_CHAN_CFG; + +#define MAX_SUBBOARD_NUM 42 //¼¯ÖÐʽ´óÆÁÉ豸°åÊýÄ¿ +#define MAX_SINGLE_BOARD_EXCEPTION_NUM 16 //µ¥°å×î´ó²¢·¢Òì³£Êý +typedef struct tagNET_DVR_MAINBOARD_SERIAL_CFG +{ + DWORD dwSize; + BYTE bySerialWorkMode; //´®¿Ú¹¤×÷ģʽ£¬1-RS484,2-RS232 + BYTE byFunType; //´®¿Ú¹¦ÄÜ£¬1-¼üÅÌ¿ØÖÆ£¬2-ÆÁÄ»¿ØÖÆ£¬3-͸Ã÷ͨµÀģʽ 4-PTZ¿ØÖÆ 5-¾ØÕó¿ØÖÆ 6-¿ØÖÆ̨ + BYTE byDataBit;// Êý¾ÝÓм¸Î» 0£­5룬1£­6룬2£­7룬3£­8λ; + BYTE byStopBit;// ֹͣλ 0£­1룬1£­2λ; + DWORD dwBaudRate;//²¨ÌØÂÊ0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k; + BYTE byParity;// УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé; + BYTE byFlowcontrol;// 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + WORD wProtocol;//´®¿ÚЭÒ飬²»Í¬´®¿Ú¹¦ÄܶÔÓ¦´®¿ÚЭÒé²»Ò»Ñù + BYTE byVariable ; //´®¿ÚÊÇ·ñ¿É±ä£¬1-²»¿É±ä 2-¿É±ä £¨Ö»»ñÈ¡£© + BYTE byGateWayEnable; //ÊÇ·ñÓÃÓÚÍø¹Ø£¬0-²»ÓÃÓÚÍø¹Ø£¬!0ÓÃÓÚÍø¹Ø + BYTE byRes[30]; +}NET_DVR_MAINBOARD_SERIAL_CFG, *LPNET_DVR_MAINBOARD_SERIAL_CFG; + +typedef struct tagNET_DVR_SUBBOARD_INFO +{ + DWORD dwSize; + BYTE byBoardType; //ÀàÐÍ£¬0-Ö÷°å£¬1-DVI-IÊäÈ룬2-YPbPrÊäÈ룬3-BNCÊäÈ룬4-SDIÊäÈ룬 5-DVIË«Á´Â·ÊäÈ룬 6-ÆÕͨ½âÂë°åÊäÈ룬 7-DVI-IÊä³ö£¬ 8-SDIÊä³ö, 9-ÔöÇ¿ÐͽâÂë°åÊäÈ룬10-DPÊäÈ룬11-HDTVIÊäÈ룬12-HDBaseTÊä³ö£¬13-HDMIÊäÈ룬14-HDBaseT£¬15-DVI-TÊäÈ룬16-HDMIÊä³ö£¬17-HDMI-HDÊäÈë ,18-HDMI-UHDÊäÈë , 19-DP_UHDÊäÈë,0xff-δ֪ÀàÐÍ //ÀàÐÍ£¬0-Ö÷°å£¬1-DVI-IÊäÈ룬2-YPbPrÊäÈ룬3-BNCÊäÈ룬4-SDIÊäÈ룬 5-DVIË«Á´Â·ÊäÈ룬 6-ÆÕͨ½âÂë°åÊäÈ룬 7-DVI-IÊä³ö£¬ 8-SDIÊä³ö, 9-ÔöÇ¿ÐͽâÂë°åÊäÈ룬10-DPÊäÈ룬11-HDTVIÊäÈ룬12-HDBaseTÊä³ö£¬13-HDMIÊäÈ룬14-HDBaseT£¬15-DVI-TÊäÈ룬16-HDMIÊä³ö£¬17-HDMI-HDÊäÈë ,18-HDMI-UHDÊäÈë , 19-DP_UHDÊäÈë,0xff-δ֪ÀàÐÍ + BYTE byInterfaceNum; //½Ó¿ÚÊý + BYTE byStatus; //״̬£¬0-Òì³££¬ 1-Õý³£ + BYTE bySyncStatus; // ³¬¸ßÇå°åͬ²½×´Ì¬£¬0-δÆôÓÃͬ²½£¬ 1-ÆôÓÃͬ²½ + DWORD dwSlotNo; //ËùÔÚ²ÛλºÅ + BYTE byRes2[32]; +}NET_DVR_SUBBOARD_INFO, *LPNET_DVR_SUBBOARD_INFO; + +typedef struct tagNET_DVR_DEVICE_SUBBOARD_INFO +{ + DWORD dwSize; + BYTE byBackBoardType; //±³°åÀàÐÍ£¬ 1-4U£¬ 2-8U£¬ 3-13U, 0xff-δ֪ÀàÐÍ + BYTE bySoltNum; //²ÛλÊýÄ¿ + BYTE byBoardNum; //ÓÐЧÊýÄ¿ + BYTE byRes1[1]; + NET_DVR_SUBBOARD_INFO struSubBoadInfo[MAX_SUBBOARD_NUM]; //Ç°byBoardNumÏîÓÐЧ + BYTE byRes2[32]; +}NET_DVR_DEVICE_SUBBOARD_INFO, *LPNET_DVR_DEVICE_SUBBOARD_INFO; + +typedef struct tagNET_DVR_DEVICE_BOARD_EXCEPINFO +{ + DWORD dwSize; + BYTE byExceptNum; //Òì³£ÏîÊý + BYTE byRes1[3]; + BYTE byMajor[MAX_SINGLE_BOARD_EXCEPTION_NUM]; //Ö÷ÀàÐÍ + WORD wMinor[MAX_SINGLE_BOARD_EXCEPTION_NUM]; //´ÎÀàÐÍ + BYTE byRes2[32]; +}NET_DVR_DEVICE_BOARD_EXCEPINFO, *LPNET_DVR_DEVICE_BOARD_EXCEPINFO; + + +typedef struct tagNET_DVR_LINEARSCAN +{ + DWORD dwSize; + DWORD dwChan; //ͨµÀºÅ + BYTE byLinearScanType; //ÏÞλÀàÐÍ£¬0-±£Áô,1-×ó±ß½çÉèÖÃ,2-Óұ߽çÉèÖà + BYTE byRes[63]; +}NET_DVR_LINEARSCAN, *LPNET_DVR_LINEARSCAN; + +//ÂëÁ÷¸½¼ÓÐÅÏ¢ +typedef struct tagNET_DVR_STREAM_ATTACHINFO_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byStreamWithVca; //ÂëÁ÷Öеþ¼ÓÖÇÄÜÐÅÏ¢£¬¿É¹©½øÐкó¼ìË÷¡£0-²»µþ¼Ó,1-µþ¼Ó + BYTE byRes[127]; //±£Áô +}NET_DVR_STREAM_ATTACHINFO_CFG,*LPNET_DVR_STREAM_ATTACHINFO_CFG; + +typedef struct tagNET_DVR_SUBSYSTEM_NETCFG +{ + DWORD dwSize; + BYTE byDefaultRoute; //ĬÈÏ·ÓÉ£¬0±íʾstruEtherNet[0]£¬1±íʾstruEtherNet[1] + BYTE byNetworkCardNum; //É豸ʵ¼Ê¿ÉÅäÖõÄÍø¿¨ÊýÄ¿ + BYTE byRes1[2]; //±£Áô + NET_DVR_ETHERNET_MULTI struEtherNet [MAX_NETWORK_CARD]; //ÒÔÌ«Íø¿Ú + BYTE byRes2[128]; +}NET_DVR_SUBSYSTEM_NETCFG, *LPNET_DVR_SUBSYSTEM_NETCFG; + +//ÅäÖÃÇå³ý +typedef struct tagNET_DVR_CLEARCTRL +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ + BYTE byAllPreset; //Çå³ýËùÓеÄÔ¤Öõ㣺0-·ñ,1-ÊÇ + BYTE byAllPatrols; //Çå³ýËùÓеÄѲº½Â·¾¶£º0-·ñ,1-ÊÇ + BYTE byAllPatterms; //Çå³ýËùÓеĻ¨ÑùɨÃ裺0-·ñ,1-ÊÇ + BYTE byAllPrivacyMasks; //Çå³ýËùÓеÄÒþ˽¿é£º0-·ñ,1-ÊÇ + BYTE byAllPTZLimited; //Çå³ýËùÓеÄÏÞλÉèÖãº0-·ñ,1-ÊÇ + BYTE byAllScheduledTasks; //Çå³ýËùÓеĶ¨Ê±ÈÎÎñ£º0-·ñ,1-ÊÇ + BYTE byAllParkAction; //Çå³ýËùÓеÄÊØÍû£º0-·ñ,1-ÊÇ + BYTE byRes[125]; +}NET_DVR_CLEARCTRL, *LPNET_DVR_CLEARCTRL; + +//ÔÆ̨ÓÅÏÈÅäÖÃÐÅÏ¢ +typedef struct tagNET_DVR_PTZ_PRIORITIZECFG +{ + DWORD dwSize; + BYTE byPTZPrioritize; //ÔÆ̨ÓÅÏÈ£º0-Rs485£¬1-ÍøÂ磬ĬÈÏÍøÂç + BYTE byRes[3]; + DWORD dwDelay; //ÑÓʱ£º2---200Ãë + BYTE byRes1[124]; +}NET_DVR_PTZ_PRIORITIZECFG, *LPNET_DVR_PTZ_PRIORITIZECFG; + +//Á㷽λ½Ç¿ØÖÆ +typedef struct tagNET_DVR_INITIALPOSITIONCTRL +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ + BYTE byWorkMode ;//0-ÉèÖã¬1-Çå³ý + BYTE byRes[127]; +}NET_DVR_INITIALPOSITIONCTRL,*LPNET_DVR_INITIALPOSITIONCTRL; + +//Òþ˽ÕڱβÎÊý +typedef struct tagNET_DVR_PRIVACY_MASKS_COND +{ + DWORD dwSize; + DWORD dwChan; //ͨµÀºÅ + BYTE byRegionalID; //ÇøÓòIDºÅ 1¡«24 + //ɾ³ýµ±Ç°ID¶ÔÓ¦µÄÒþ˽ÕÚ±ÎÐÅÏ¢ 0-±£Áô£¬1-ɾ³ý £¨WriteOnly£© + BYTE byDelPrivacyMaskCfg; + BYTE byRes[62]; +}NET_DVR_PRIVACY_MASKS_COND, *LPNET_DVR_PRIVACY_MASKS_COND; + +typedef struct tagNET_DVR_PRIVACY_MASKS_CFG +{ + DWORD dwSize; + BYTE byEnable;//ÊÇ·ñÆôÓà 0-·ñ£¬1-ÊÇ + //Òþ˽ÕÚ±ÎÇøÓòÅäÖòÎÊýÊÇ·ñÏÔʾ 0-·ñ£¬1-ÊÇ £¨ReadOnly£© + BYTE byPrivacyMaskCfgEnable; + BYTE byColorType; //0-±£Áô,1-»Ò¡¢2-ºì¡¢3-ÂÌ¡¢4-À¶¡¢5-³È¡¢6-»Æ¡¢0xff-ÂíÈü¿Ë + BYTE byActiveZoomRatio;//ÆÁ±Î±¶ÂÊ£º1--100 + char sPrivacyMaskName[NAME_LEN/*32*/];//ÕÚµ²ÇøÓòÃû³Æ£¬Ö»Ê¹ÓÃ16¸ö×Ö½Ú + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + //µ±Ç°ÇøÓò×ø±êÊÇ·ñÓÐЧ 0-·ñ£¬1-ÊÇ £¨Õë¶Ôµ¥¸öÇøÓòÉèÖÃÇøÓò×ø±êÐÅÏ¢£¬ºÍµ¥³¡¾°ÏµĶàÇøÓòÉèÖÃÇøÓò×ø±êÐÅÏ¢£© + BYTE byCurrentRegionEnable; + //µ±Ç°±¶ÂÊʹÓÃ×ֶΠ0- byActiveZoomRatio ;1- fActiveZoomRatio(Ö§³ÖÄÜÁ¦½ÚµãcurActiveZoomRatioType) + BYTE byCurZoomRatio ; + BYTE byRes[2]; + float fActiveZoomRatio; //ÆÁ±Î±¶ÂÊ(¾«È·µ½Ð¡Êýµã1λ)£º[1.0-100.0] + BYTE byRes1[120]; +}NET_DVR_PRIVACY_MASKS_CFG, *LPNET_DVR_PRIVACY_MASKS_CFG; + +//È«¾ÖʹÄÜ +typedef struct tagNET_DVR_PRIVACY_MASKS_ENABLECFG +{ + DWORD dwSize; + BYTE byEnable;//ÆôÓÃʹÄÜ£¬0-·ñ£¬1-ÊÇ + BYTE byRes[127]; +}NET_DVR_PRIVACY_MASKS_ENABLECFG,*LPNET_DVR_PRIVACY_MASKS_ENABLECFG; + +//ÖÇÄÜÔ˶¯¸ú×ÙÅäÖÃÐÅÏ¢ +typedef struct tagNET_DVR_SMARTTRACKCFG +{ + DWORD dwSize; + BYTE byEnable;//Æô¶¯Ê¹ÄÜ 0-·ñ£¬1-ÊÇ + BYTE byRes[3]; + DWORD dwDuration;//³ÖÐøʱ¼ä£º0--300Ã룬ĬÈÏ300Ãë + BYTE byRes1[124]; +}NET_DVR_SMARTTRACKCFG,*LPNET_DVR_SMARTTRACKCFG; + +//¸ú×Ù±¶ÂÊ +typedef struct tagNET_DVR_ZOOMRATIOCTRL +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ + BYTE byRes[128]; +}NET_DVR_ZOOMRATIOCTRL,*LPNET_DVR_ZOOMRATIOCTRL; + + +//²¦Â뿪¹ØÐÅÏ¢ +typedef struct tagNET_DVR_DIAL_SWITCH_CFG +{ + DWORD dwSize; + DWORD dwSwitchState;//²¦ºÅ¿ª¹Ø״̬ + BYTE byRes[28]; +}NET_DVR_DIAL_SWITCH_CFG,*LPNET_DVR_DIAL_SWITCH_CFG; + +typedef struct tagNET_ALARM_RECORDFILE_LOSS //¼Ïñ¶ªÊ§±¨¾¯×ӽṹ +{ + NET_DVR_TIME_EX struInspectStart; //Ѳ¼ì¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struInspectEnd; //Ѳ¼ì½áÊøʱ¼ä + NET_DVR_IPADDR struIP; //¼Ïñ¶ªÊ§¶ÔӦͨµÀµÄIPµØÖ· + DWORD dwChanNo; //ͨµÀºÅ + DWORD dwIDIndex; //±àÂëÆ÷ID + BYTE sName[STREAM_ID_LEN]; //±àÂëÆ÷Ãû³Æ + NET_DVR_TIME_EX struLossStartTime; //¼Ïñ¶ªÊ§¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struLossEndTime; //¼Ïñ¶ªÊ§½áÊøʱ¼ä + DWORD dwLostNum; //¼Ïñ¶ªÊ§¸öÊý 0xffffffff±íʾȫ²¿¶ªÊ§ + BYTE byRes[240]; +} NET_ALARM_RECORDFILE_LOSS, *LPNET_ALARM_RECORDFILE_LOSS; + +typedef struct tagNET_ALARM_STREAM_EXCEPTION //È¡Á÷Òì³£±¨¾¯ ×ӽṹ +{ + NET_DVR_IPADDR struIP; //·¢ÉúÊÓƵÒ쳣ͨµÀµÄIPµØÖ· + DWORD dwChanNo; //ͨµÀºÅ + DWORD dwIDIndex; //±àÂëÆ÷ID + BYTE sName[STREAM_ID_LEN]; //±àÂëÆ÷Ãû³Æ + BYTE byExceptionCase; //Òì³£Ô­Òò£¬0-Êý¾ÝдÈëÒì³£ 1-ÍøÂç½ÓÊÕÒì³£ + BYTE byRes[307]; //±£Áô +} NET_ALARM_STREAM_EXCEPTION, *LPNET_ALARM_STREAM_EXCEPTION; + + +typedef struct tagNET_ALARM_RESOURCE_USAGE //×ÊԴʹÓñ¨¾¯ ×ӽṹ +{ + BYTE byLevel; //ʹÓÃÇé¿ö£¬ÑÏÖس̶ȵÝÔö£º 0-Õý³££¬1-Ò»¼¶¸æ¾¯ÉÏÏÞ 2-¶þ¼¶¸æ¾¯ÉÏÏÞ 3-Èý¼¶¸æ¾¯ÉÏÏÞ + BYTE byRes[491]; //±£Áô +}NET_ALARM_RESOURCE_USAGE, *LPNET_ALARM_RESOURCE_USAGE; + +typedef struct tagNET_ALARM_RECORD_EXCEPTION //¼ÏñÒì³£±¨¾¯ ×ӽṹ +{ + BYTE byReason; //Òì³£Ô­Òò 0-¼Ïñ¾íÂú 1-¼Ïñ¾íÒì³£ 2-ÎÞ¿ÉÓÃlun¾í + BYTE byRes1[3]; //±£Áô + BYTE sVolumeName[MAX_VOLUMENAME_LEN]; + DWORD dwVolumeID; //¼Ïñ¾íID£¨Ó²Å̺ţ© + BYTE byRes[452]; //±£Áô +}NET_ALARM_RECORD_EXCEPTION, *LPNET_ALARM_RECORD_EXCEPTION; + +typedef union tagNET_ALARM_CVR_SUBINFO_UNION //CVR±¨¾¯×ӽṹ +{ + BYTE byLen[492]; //ÁªºÏÌ峤¶È + NET_ALARM_RECORDFILE_LOSS struRecordLost; //¼Ïñ¶ªÊ§ + NET_ALARM_STREAM_EXCEPTION struStreamException; //È¡Á÷Òì³£ + NET_ALARM_RESOURCE_USAGE struResourceUsage; //×ÊԴʹÓà + NET_ALARM_RECORD_EXCEPTION struRecordException; //¼ÏñÒì³£ +}NET_ALARM_CVR_SUBINFO_UNION, *LPNET_ALARM_CVR_SUBINFO_UNION; + +#define MAX_VARIABLE_DATA_NUM 65535 //×î´ó¿É±äÊý¾Ý¸öÊý + +typedef struct tagNET_DVR_ALARMINFO_DEV_V40 +{ + DWORD dwAlarmType; //±¨¾¯×ÓÀàÐÍ 0-±àÂëÆ÷(ͨµÀ)ÐźÅÁ¿±¨¾¯£»1-˽Óоí¶þË𻵣»2- NVR·þÎñÍ˳ö£»3-±àÂëÆ÷״̬Òì³££»4-ϵͳʱÖÓÒì³££»5-¼Ïñ¾íÊ£ÓàÈÝÁ¿¹ýµÍ£»6-±àÂëÆ÷(ͨµÀ)Òƶ¯Õì²â±¨¾¯£» + //7-±àÂëÆ÷(ͨµÀ)ÕÚµ²±¨¾¯; 8-¼Ïñ¶ªÊ§±¨¾¯; 9-ÊÓƵʵʱ¼à²â±¨¾¯; 10-×ÊԴʹÓÃÂʸ澯; 11- CVR×Ô¶¯ÐÞ¸´Òì³££¬ 12-¼ÏñÒì³£ + NET_DVR_TIME struTime; + NET_ALARM_CVR_SUBINFO_UNION uSubAlarmInfo; //±¨¾¯ÐÅÏ¢×ӽṹ ±¨¾¯ÀàÐÍΪ8,9,10,11,12ʱ¸ÃÁªºÏÌåÓÐЧ + BYTE byRes[256]; + DWORD dwNumber; //¿É±äÊý¾Ý¸öÊý + WORD *pNO; //µ±ÀàÐÍΪ0¡¢3¡¢6¡¢7ʱ£¬¿ÉÄÜ»áÓÐͨµÀºÅ£»µ±ÀàÐÍΪ5ʱ£¬¿ÉÄÜ»áÓдÅÅ̺š£¿É±íʾµÄÖµ·¶Î§Îª0~65535 +}NET_DVR_ALARMINFO_DEV_V40, *LPNET_DVR_ALARMINFO_DEV_V40; + +typedef struct tagNET_DVR_CONTROL_START_CFG //Ò»¼ü¿ªÊ¼¿ØÖÆÐÅÏ¢ +{ + BYTE byUseDefine; //ʹÓÃ×Ô¶¨Ò壬 0-ʹÓÃĬÈÏ£¬1-ʹÓÃ×Ô¶¨Òå + BYTE byRes1; + WORD wCourseIndex; //¿Î³ÌË÷Òý + BYTE byRes[128]; +}NET_DVR_CONTROL_START_CFG, *LPNET_DVR_CONTROL_START_CFG; + +typedef struct tagNET_DVR_CONTROL_DELAY_CFG//Ò»¼üÑÓ³¤Â¼Ïñ¿ØÖÆÐÅÏ¢ +{ + BYTE byUseDefine; //ʹÓÃ×Ô¶¨Ò壬 0-ʹÓÃĬÈÏ£¬1-ʹÓÃ×Ô¶¨Òå + BYTE byRes1; + WORD wDelayTime; //¼ÏñÑÓ³¤Ê±¼ä<¼ÌÐø¼Ïñʱ¼äÒÔ´ËΪ׼>£¬µ¥Î»s + BYTE byRes[128]; +}NET_DVR_CONTROL_DELAY_CFG, *LPNET_DVR_CONTROL_DELAY_CFG; + +typedef union tagNET_DVR_CONTROL_INFO_UNION //¿ØÖÆÐÅÏ¢ÁªºÏÌå +{ + BYTE byLen[132]; //ÁªºÏÌ峤¶È + NET_DVR_CONTROL_START_CFG struStartCfg; //Ò»¼ü¿ªÊ¼ + NET_DVR_CONTROL_DELAY_CFG struDelayCfg; //Ò»¼üÑÓ³Ù +}NET_DVR_CONTROL_INFO_UNION, *LPNET_DVR_CONTROL_INFO_UNION; + +typedef struct tagNET_DVR_RECORDING_CONTROL_CFG_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + WORD wCmdType; //¿ØÖÆÃüÁîÀàÐÍ£¬0-Ò»¼ü¿ªÊ¼£¬1-Ò»¼ü½áÊø£¬2-Ò»¼üÔÝÍ££¬3-Ò»¼ü»Ö¸´£¬4-Ò»¼üÑÓ³¤,5-Ò»¼ü¿ªÊ¼ÆÁ±Î 6-Ò»¼üÍ£Ö¹ÆÁ±Î + BYTE byRes1 [2]; //±£Áô + NET_DVR_CONTROL_INFO_UNION struControlInfo; //¿ØÖÆÐÅÏ¢£¬¾ßÌåʹÓýáºÏ¿ØÖÆÃüÁîÀàÐÍ + BYTE byRes[256]; //±£Áô +}NET_DVR_RECORDING_CONTROL_CFG, *LPNET_DVR_RECORDING_CONTROL_CFG; + +typedef struct tagNET_DVR_RECORDING_HOST_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwOneKeyDelayTime; //Ò»¼ü±¾µØÑÓ³Ùʱ¼ä ¼Ïñ¼ÌÐø¼µÄʱ¼ä µ¥Î» S + BYTE byDirectedMode; //µ¼²¥Ä£Ê½£¬0-×Ô¶¯µ¼²¥£¬1ÊÖ¶¯µ¼²¥£¬2-°ë×Ô¶¯µ¼²¥ + BYTE byClassroomType; //½ÌÊÒÀàÐÍ£¬0-ÎÞЧ£¬1-Ö÷½ÌÊÒ£¬2-´Ó½ÌÊÒ + BYTE byCourseDataStorageEnabled;//¿ÎÌÃÊý¾Ýͳ¼ÆÊÇ·ñ´æ´¢ÔÚÓ²ÅÌ, 0-²»´æ´¢£¬1-´æ´¢ + BYTE byElectronicEnlargeMode;//ÊÇ·ñʹÓõç×Ó·Å´óµ¼²¥, 0-²»Ê¹Óã¬1-ʹÓà + BYTE byRes[124]; //±£Áô +}NET_DVR_RECORDING_HOST_CFG, *LPNET_DVR_RECORDING_HOST_CFG; + +typedef struct tagNET_DVR_STATISTIC_DATA_COND +{ + DWORD dwSize; + DWORD dwTypeTarget; //ͳ¼Æ¶ÔÏóÀàÐÍ£¬Ïê¼ûTARGET_TYPE + NET_DVR_TIME struStartTime;//¿ªÊ¼Í³¼Æʱ¼ä + NET_DVR_TIME struStopTime;//½áÊøͳ¼Æʱ¼ä + BYTE byRes[280]; +}NET_DVR_STATISTIC_DATA_COND, *LPNET_DVR_STATISTIC_DATA_COND; + +typedef struct tagNET_DVR_STATISTIC_DATA_CFG +{ + DWORD dwSize; + DWORD dwTypeTarget; //ͳ¼Æ¶ÔÏóÀàÐÍ£¬Ïê¼ûTARGET_TYPE + NET_DVR_TIME struStartTime;//ʼþ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;//ʼþ½áÊøʱ¼ä + BYTE byRes[300]; +}NET_DVR_STATISTIC_DATA_CFG, *LPNET_DVR_STATISTIC_DATA_CFG; + +//typedef enum +//{ +// NET_SDK_ALL_TARGET = 0, //ͳ¼ÆËùÓжÔÏó +// NET_SDK_PPT_TARGET_ALARM, //PPT±¨¾¯ +// NET_SDK_PPT_TARGET_VIEW, //PPTÊÓͼ +// NET_SDK_STU_SINGLE_ALARM, //µ¥¸öѧÉú±¨¾¯ +// NET_SDK_STU_SINGLE_VIEW, //µ¥¸öѧÉúÊÓͼ +// NET_SDK_SUT_MULT_ALARM, //¶à¸öѧÉú±¨¾¯ +// NET_SDK_STU_MULT_VIEW, //¶à¸öѧÉúÊÓͼ +// NET_SDK_STU_TEACHER_VIEW, //ʦÉú»¥¶¯ÊÓͼ +// NET_SDK_TEA_UP_DOWN_ALARM, //½ÌʦÉÏϽ²Ì¨ +// NET_SDK_TEA_START_VIEW, //½ÌʦÊÚ¿ÎÊÓͼ +// NET_SDK_BLA_WRITE_ALARM, //Êéд°åÊ鱨¾¯ +// NET_SDK_BLA_WRITE_VIEW, //Êéд°åÊéÊÓͼ +// NET_SDK_TEA_FULL_VIEW, //½Ìʦȫ¾°ÊÓͼ +// NET_SDK_TEA_START_ALARM, //½Ìʦ¿ªÊ¼Êڿα¨¾¯ +// NET_SDK_TEA_WALK_ALARM, //½Ìʦ×߶¯±¨¾¯ +// NET_SDK_TEA_LEFT_ALARM, //½ÌʦÀ뿪±¨¾¯ +// NET_SDK_TEA_RUN_ALARM, //½Ìʦ±¼Åܱ¨¾¯ +// NET_SDK_TEA_MULT_ALARM //½Ìʦ¶àÈ˱¨¾¯ +//}TARGET_TYPE; + +typedef struct tagNET_DVR_AUTO_TRACK_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_DIRECT_CONNECT_CHAN_INFO struSDIInfo[MAX_CHANNUM_V30] ; + //SDIͨµÀ£¬É豸¶Ëʵ¼ÊµÄÁ÷·µ»ØÐÎʽÊÇÄ£ÄâͨµÀ£¬¶ø¿ØÖÆÇ°¶ËʹÓÃIPͨµÀ¡£ + BYTE byCameraType[MAX_CHANNUM_V30]; //ͨµÀ½ÓÈëµÄÏà»úÀàÐÍ£¬ÖµÎª 0-ÎÞÒâÒ壬1-ÀÏʦ¸ú×Ù£¬2-ѧÉú¸ú×Ù£¬3-ÀÏʦȫ¾°£¬4-ѧÉúÈ«¾°£¬5-¶àýÌ壬6-½Ìʦ¶¨Î»,7-ѧÉú¶¨Î»,8-°åÊ鶨λ,9-°åÊéÏà»ú, 0xff-δ½ÓÈë + BYTE byRes[64]; //±£Áô +}NET_DVR_AUTO_TRACK_CFG, *LPNET_DVR_AUTO_TRACK_CFG; + +typedef struct tagNET_DVR_PUBLISH_FTP_CFG +{ + BYTE byProtocolType; //ЭÒéÀàÐÍ 0-FTP£¬1-SFTP + BYTE byRes1; //±£Áô + WORD wFTPPort; //¶Ë¿Ú + BYTE byAddress[MAX_DOMAIN_NAME]; //IP»òÕßÓòÃû,ÐèÒªÉ豸½âÎö + //½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓÐ'.'ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· + BYTE szUserName[NAME_LEN/*32*/]; //Óû§Ãû<¼ÓÃÜ> + BYTE szPassWord[PASSWD_LEN/*16*/]; //ÃÜÂë<¼ÓÃÜ> + BYTE szCustomDir[128]; //·¢²¼Ä¿Â¼,Ö§³ÖĿ¼½á¹¹ + BYTE byRes[12]; //±£Áô +} NET_DVR_PUBLISH_FTP_CFG, *LPNET_DVR_PUBLISH_FTP_CFG; + +typedef struct tagNET_DVR_PUBLISH_HTTP_CFG +{ + BYTE strUrl[256]; //·¢²¼µÄURLµØÖ·ÐÅÏ¢ +}NET_DVR_PUBLISH_HTTP_CFG, *LPNET_DVR_PUBLISH_HTTP_CFG; + +typedef struct tagNET_DVR_PUBLISH_FTP_CFG_DIR +{ + BYTE byProtocolType; //ЭÒéÀàÐÍ 0-FTP£¬1-SFTP + BYTE byRes1; //±£Áô + WORD wFTPPort; //¶Ë¿Ú + BYTE byAddress[MAX_DOMAIN_NAME]; //IP»òÕßÓòÃû,ÐèÒªÉ豸½âÎö + //½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓÐ'.'ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· + BYTE szUserName[NAME_LEN/*32*/]; //Óû§Ãû<¼ÓÃÜ> + BYTE szPassWord[PASSWD_LEN/*16*/]; //ÃÜÂë<¼ÓÃÜ> + BYTE byDirLevel; /*0 = ²»Ê¹ÓÃĿ¼½á¹¹£¬Ö±½Ó±£´æÔÚ¸ùĿ¼,1 = ʹÓÃ1¼¶Ä¿Â¼,2=ʹÓÃ2¼¶Ä¿Â¼*/ + BYTE byTopDirMode; /* Ò»¼¶Ä¿Â¼£¬0x1 = ʹÓÃÉ豸Ãû,0x2 = ʹÓÃÉ豸ºÅ,0x3 = ʹÓÃÉ豸ipµØÖ· 0xff=ʹÓÃ×Ô¶¨Òå*/ + BYTE bySubDirMode; /*¶þ¼¶Ä¿Â¼£¬0x1=ʹÓÃͨµÀÃû³Æ,0x2=ʹÓÃͨµÀºÅ£¬0x3=ʹÓÿγÌÃû³Æ£¬0x4-ʹÓÃÊÚ¿ÎÈÕÆÚ£¬0xff-ʹÓÃ×Ô¶¨Òå*/ + BYTE byRes2; + BYTE byTopCustomDir[MAX_CUSTOMDIR_LEN/*32*/];/*×Ô¶¨ÒåÒ»¼¶Ä¿Â¼*/ + BYTE bySubCustomDir[MAX_CUSTOMDIR_LEN/*32*/];/*×Ô¶¨Òå¶þ¼¶Ä¿Â¼*/ + BYTE byRes[72]; //±£Áô +}NET_DVR_PUBLISH_FTP_CFG_DIR, *LPNET_DVR_PUBLISH_FTP_CFG_DIR; + + +typedef union tagNET_DVR_PUBLISH_ADD_UNION +{ + BYTE byLen[256]; //ÁªºÏÌ峤¶È + NET_DVR_PUBLISH_HTTP_CFG struHttpCfg; //httpµØÖ·ÐÅÏ¢ + NET_DVR_PUBLISH_FTP_CFG struFtpCfg; //ftpµØÖ·ÐÅÏ¢ + NET_DVR_PUBLISH_FTP_CFG_DIR struDirFtpCfg; //°´Ä¿Â¼·½Ê½µÄFTP +}NET_DVR_PUBLISH_ADD_UNION, *LPNET_DVR_PUBLISH_ADD_UNION; + +typedef struct tagNET_DVR_CHAN_RECORD_PUBLISH_INFO //ͨµÀ¼Ïñ·¢²¼ÐÅÏ¢ +{ + BYTE byPublish; //ÊÇ·ñ·¢²¼£¬0-²»·¢²¼£¬ 1-·¢²¼ + BYTE byRes1[3]; + DWORD dwStreamType; //Ò»¼ü·¢²¼ÂëÁ÷ÀàÐÍ£¬°´Î»±íʾ + //&0x1-±íʾÖ÷ÂëÁ÷ + //&0x2-±íʾ×ÓÂëÁ÷ + //&0x4-±íʾÂëÁ÷Èý + BYTE byRes[12]; //±£Áô +}NET_DVR_RECORD_PUBLISH_INFO,*LPNET_DVR_RECORD_PUBLISH_INFO; + + +typedef struct tagNET_DVR_PUBLISH_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byPublishType; //·¢²¼·½Ê½£¬0-http,1-ftp,2-Dir FTP + BYTE byRes1[3]; //±£Áô + NET_DVR_PUBLISH_ADD_UNION struPublishAddr; //Ò»¼ü·¢²¼µØÖ·ÐÅÏ¢ + NET_DVR_RECORD_PUBLISH_INFO struChanPublish[MAX_CHANNUM_V30]; //ͨµÀ¼Ïñ·¢²¼ÐÅÏ¢ struChanPublis[0]±íʾͨµÀ1¶ÔӦ¼Ïñ·¢²¼ÐÅÏ¢ + NET_DVR_RECORD_PUBLISH_INFO struDirectChanPublish; //µ¼²¥Í¨µÀ¼Ïñ·¢²¼ÐÅÏ¢ + BYTE byUploadTime; //ÊÇ·ñÆô¶¯¶¨Ê±ftpÉÏ´«¹¦ÄÜ 0-ÎÞÒâÒ壬1-²»Æô¶¯£¬2-ÆôÓà + BYTE byTimerMode; //0-ÎÞÒâÒ壬1-°´¿Î±í¶¨Ê±ÉÏ´«×î½üÒ»½Ú¿ÎµÄ¼Ïñ£¬2-°´Ê±¼äµã·½Ê½ÉÏ´«Ç°24Сʱ¼Ïñ + BYTE byUploadStartHour; //°´Ê±¼ä¶¨Ê±ÉÏ´«Æðʼʱ¼ä ʱ + BYTE byUoploadStartMin; //°´Ê±¼ä¶¨Ê±ÉÏ´« ¿ªÊ¼Ê±¼ä ·Ö + BYTE byRes[1020]; //±£Áô +}NET_DVR_PUBLISH_CFG, *LPNET_DVR_PUBLISH_CFG; + +typedef struct tagNET_DVR_ONEKEY_PUBLISH_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byUseDefine; //ʹÓÃ×Ô¶¨Òå 0-ʹÓÃĬÈÏ·¢²¼ÅäÖÃÐÅÏ¢£¬1-ʹÓÃ×Ô¶¨Òå·¢²¼ÅäÖÃÐÅÏ¢ + BYTE byRes1[3]; + NET_DVR_RECORD_PUBLISH_INFO struChanPublish[MAX_CHANNUM_V30]; //ͨµÀ¼Ïñ·¢²¼ÐÅÏ¢ struChanPublis[0]±íʾͨµÀ1¶ÔӦ¼Ïñ·¢²¼ÐÅÏ¢ + NET_DVR_RECORD_PUBLISH_INFO struDirectChanPublish; //µ¼²¥Í¨µÀ¼Ïñ·¢²¼ÐÅÏ¢ + NET_DVR_TIME_EX struStartTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndTime; //¿Î³Ì½áÊøʱ¼ä + BYTE bySchedulePublish; //ÊÇ·ñ°´¿Î±í·¢²¼£¬0²»°´¿Î±í·¢²¼1°´¿Î±í·¢²¼ + BYTE sFileName[COURSE_NAME_LEN/*32*/]; //·¢²¼ÎļþÃû³Æ + BYTE byRes[31]; +}NET_DVR_ONEKEY_PUBLISH_CFG,*LPNET_DVR_ONEKEY_PUBLISH_CFG; + +typedef struct tagNET_DVR_COURSE_RECORDING_INFO +{ + DWORD dwSize; + char sCourseName[COURSE_NAME_LEN/*32*/]; + char sInstructorName[INSTRUCTOR_NAME_LEN/*16*/]; + char sCourseDescription[COURSE_DESCRIPTION_LEN /*256*/]; + BYTE byIndex; //¿Î³ÌË÷Òý + BYTE byRes[15]; +}NET_DVR_COURSE_RECORDING_INFO, *LPNET_DVR_COURSE_RECORDING_INFO; + +typedef struct tagNET_DVR_EACH_LESSON_INFO_ +{ + NET_DVR_SCHEDTIME struSchedTime ; //¿Î³ÌÆðֹʱ¼ä + WORD wCourseIndex ; //¿Î³ÌË÷Òý + WORD wSessionIndex ; //½Ú´Î + BYTE byRes[4] ; //±£Áô +}NET_DVR_EACH_LESSON_INFO,*LPNET_DVR_EACH_LESSON_INFO ; +// Á÷¼Ïñ״̬ +typedef struct tagNET_DVR_CURRICULUM_CFG //¿Î±í¼Æ»® °´ÄêÔÂÈÕÅäÖà +{ + DWORD dwSize ; //½á¹¹Ìå´óС + NET_DVR_EACH_LESSON_INFO struLessonInfo[MAX_TIMESEGMENT_V40/*16*/] ; //ÿ½Ú¿ÎÐÅÏ¢ + BYTE byRes[256] ; //±£Áô +}NET_DVR_CURRICULUM_CFG, *LPNET_DVR_CURRICULUM_CFG; + +typedef struct tagNET_DVR_DATE_ +{ + WORD wYear; //Äê + BYTE byMonth; //Ô + BYTE byDay; //ÈÕ +}NET_DVR_DATE,*LPNET_DVR_DATE; + +typedef struct _NET_DVR_PPT_DETECT_CFG_ +{ + DWORD dwSize ; + BYTE byEnablePPTDetect; //ÊÇ·ñÆôÓÃPPT¼ì²â + BYTE byPptDetLevel; //ÁéÃô¶È + BYTE byEnablePartScreen; //ÊÇ·ñÅäÖò¿·ÖÇøÓò + BYTE byRes1; + WORD wX; //ÇøÓò×ø±ê + WORD wY; + WORD wWidth; + WORD wHeight; + DWORD dwChangePixelNum;//ÏñËصã¼ì²âãÐÖµ[0,1000](ps : Ò»·ùͼÏñÓжàÉÙÏñËØÔڱ仯) + BYTE byRes[28]; +}NET_DVR_PPT_DETECT_CFG,*LPNET_DVR_PPT_DETECT_CFG; + +typedef struct _NET_DVR_SCREEN_SWITCH_ +{ + DWORD dwSize; + BYTE byRes[64]; //±£Áô +}NET_DVR_SCREEN_SWITCH, *LPNET_DVR_SCREEN_SWITCH; + +typedef struct _NET_DVR_PPT_CHANNEL_CFG_ +{ + DWORD dwSize ; + BYTE byChan[MAX_PPT_CHAN]; + BYTE byRes[32]; +}NET_DVR_PPT_CHANNEL_CFG,*LPNET_DVR_PPT_CHANNEL_CFG; + +typedef struct tagNET_DVR_BACKUP_RECORD_INFO +{ + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byRes[11]; + //±¸·ÝÂëÁ÷ÀàÐÍ£¬°´Î»±íʾ + //&0x1-±íʾÖ÷ÂëÁ÷ + //&0x2-±íʾ×ÓÂëÁ÷ + //&0x4-±íʾÂëÁ÷Èý + DWORD dwStreamType; +}NET_DVR_BACKUP_RECORD_INFO, *LPNET_DVR_BACKUP_RECORD_INFO; + +typedef struct tagNET_DVR_BACKUP_RECORD_PARAM +{ + DWORD dwSize ; + NET_DVR_BACKUP_RECORD_INFO struChanBackUp[MAX_CHANNUM_V30/*64*/]; //ÐèÒª±¸·ÝµÄͨµÀ,Êý×éϱê¶ÔÓ¦ÏàÓ¦µÄͨµÀºÅ + NET_DVR_BACKUP_RECORD_INFO struDirectedChanBackUp; //µ¼²¥Í¨µÀ±¸·ÝÐÅÏ¢ + BYTE byRes[256]; // ±£Áô×Ö½Ú +}NET_DVR_BACKUP_RECORD_PARAM, *LPNET_DVR_BACKUP_RECORD_PARAM; + +//ÊÒÄÚ»ú±àºÅ +typedef struct tagNET_DVR_INDOOR_UNIT_DEVICEID +{ + SHORT wFloorNumber; //²ãºÅ + WORD wRoomNumber; //·¿¼äºÅ + WORD wDevIndex; //ÊÒÄÚ»ú±àºÅ£¬0-10 + BYTE byRes[122]; //±£Áô +}NET_DVR_INDOOR_UNIT_DEVICEID,*LPNET_DVR_INDOOR_UNIT_DEVICEID; + +//ÃÅ¿Ú»ú±àºÅ +typedef struct tagNET_DVR_OUTDOOR_UNIT_DEVICEID +{ + WORD wPeriod; //ÆÚºÅ, ·¶Î§[0,9] + WORD wBuildingNumber; //Â¥ºÅ + WORD wUnitNumber; //µ¥ÔªºÅ + SHORT wFloorNumber; //²ãºÅ + WORD wDevIndex; //ÃÅ¿Ú»úÐòºÅ£¬Ã¿Ò»²ãÖÐÃÅ¿Ú»úµÄÐòºÅΨһ£¬´Ó0¿ªÊ¼ + BYTE byRes[118]; //±£Áô +}NET_DVR_OUTDOOR_UNIT_DEVICEID,*LPNET_DVR_OUTDOOR_UNIT_DEVICEID; + +//Χǽ»ú±àºÅ +typedef struct tagNET_DVR_OUTDOOR_FENCE_DEVICEID +{ + WORD wPeriod; //ÆÚºÅ, ·¶Î§[0,9] + WORD wDevIndex; //Χǽ»úÐòºÅ£¬Ã¿Ò»²ãÖÐÃÅ¿Ú»úµÄÐòºÅΨһ£¬´Ó0¿ªÊ¼ + BYTE byRes[124]; //±£Áô +}NET_DVR_OUTDOOR_FENCE_DEVICEID,*LPNET_DVR_OUTDOOR_FENCE_DEVICEID; + +//¹ÜÀí»ú±àºÅ +typedef struct tagNET_DVR_MANAGE_UNIT_DEVICEID +{ + WORD wPeriod; //Æںţ¬·¶Î§[0,9] + WORD wDevIndex; //¹ÜÀí»úÐòºÅ£¬Ã¿Ò»ÆÚÖйÜÀí»úµÄÐòºÅΨһ,´Ó0¿ªÊ¼ + BYTE byRes[124]; //±£Áô +}NET_DVR_MANAGE_UNIT_DEVICEID,*LPNET_DVR_MANAGE_UNIT_DEVICEID; + +//¿ÉÊÓ¶Ô½²É豸±àºÅÁªºÏÌå +typedef union tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION +{ + BYTE byLen[128] ; //ÁªºÏÌå´óС + NET_DVR_INDOOR_UNIT_DEVICEID struIndoorUnit; //ÊÒÄÚ»ú + NET_DVR_OUTDOOR_UNIT_DEVICEID struOutdoorUnit; //ÃÅ¿Ú»ú/ÃŽûÖÇÄÜÉ豸 + NET_DVR_MANAGE_UNIT_DEVICEID struManageUnit; //¹ÜÀí»ú + NET_DVR_OUTDOOR_FENCE_DEVICEID struFenceUnit; //Χǽ»ú + NET_DVR_OUTDOOR_UNIT_DEVICEID struVillaOutdoorUnit; //±ðÊûÃÅ¿Ú»ú + NET_DVR_OUTDOOR_UNIT_DEVICEID struAgainConfirmUnit; //¶þ´ÎÈ·ÈÏ»ú +}NET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION,*LPNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION; + +//É豸±àºÅ²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byUnitType; //É豸ÀàÐÍ£¬1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú 4-Χǽ»ú,5-±ðÊûÃÅ¿Ú»ú£¬6-¶þ´ÎÈ·ÈÏ»ú£¬7-ÃŽûÖÇÄÜÉ豸,8-4200¿Í»§¶Ë, 9-APP,10-½»»¥Öնˣ¬11-IPCÉ豸£¬12-½âÂëÆ÷É豸,13-Ä£ÄâÊÒÄÚ»ú + BYTE byIsAutoReg; //ÊÇ·ñ×Ô¶¯×¢²á£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[2]; //±£Áô + NET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION uVideoIntercomUnit; //È¡Öµ²Î¿¼byUnitType + BYTE byRes2[128]; //±£Áô +}NET_DVR_VIDEO_INTERCOM_DEVICEID_CFG,*LPNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG; + +//ȨÏÞÃÜÂëÀàÐÍ +typedef enum tagPRIVILEGE_PASSWORD_TYPE_ENUM +{ + ENUM_PRIVILEGE_PASSWORD_ENGINEERING = 1, //¹¤³ÌÃÜÂë + ENUM_PRIVILEGE_PASSWORD_SETUPALARM = 2, //²¼/³··ÀÃÜÂë + ENUM_PRIVILEGE_PASSWORD_HOUSEHOLDER_UNLOCK = 3, //»§Ö÷¿ªËøÃÜÂë + ENUM_PRIVILEGE_PASSWORD_ANTI_HIJACKING = 4, //·À½Ù³ÖÃÜÂë + ENUM_PRIVILEGE_PASSWORD_PUBLIC1 = 5, //¹«¹²ÃÜÂë1 + ENUM_PRIVILEGE_PASSWORD_PUBLIC2 = 6, //¹«¹²ÃÜÂë2 + ENUM_PRIVILEGE_PASSWORD_PUBLIC3 = 7, //¹«¹²ÃÜÂë3 + ENUM_PRIVILEGE_PASSWORD_SENDCARD = 8//·¢¿¨ÃÜÂë +}PRIVILEGE_PASSWORD_TYPE_ENUM; + +//ȨÏÞÃÜÂëÐÅÏ¢ +typedef struct tagNET_DVR_PRIVILEGE_PASSWORD_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byPwdType; //ÃÜÂëÀàÐÍ£¬²Î¿¼PRIVILEGE_PASSWORD_TYPE_ENUM + BYTE byRes1[3]; //±£Áô + BYTE byOldPassword[PASSWD_LEN]; //¾ÉÃÜÂë + BYTE byNewPassword[PASSWD_LEN]; //ÐÂÃÜÂë + BYTE byRes2[128]; //±£Áô +}NET_DVR_PRIVILEGE_PASSWORD_CFG,*LPNET_DVR_PRIVILEGE_PASSWORD_CFG; + + +//ÊÒÄÚ»ú²Ù×÷ʱ¼äÅäÖà +typedef struct tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG +{ + DWORD dwMaxMonitoringTime; //×î´ó¼àÊÓʱ¼ä£¬·¶Î§[10,60]Ãë + DWORD dwMaxRingTime; //×î´óÕñÁåʱ¼ä£¬·¶Î§[15,60]Ãë + DWORD dwCallForwardingTime; //ºô½ÐתÒƳ¬Ê±Ê±¼ä£¬·¶Î§[0,20]Ãë + DWORD dwRingDurationTime; //ÏìÁ峬ʱʱ¼ä£¬·¶Î§[30,60]Ã룬ĬÈÏ30Ãë + BYTE byRes[112];//±£Áô +}NET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG,*LPNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG; + +//ÊÒÍâ»ú²Ù×÷ʱ¼äÅäÖà +typedef struct tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG +{ + DWORD dwMaxMessageTime; //×î´óÁôÑÔʱ¼ä£¬·¶Î§[30,60]Ãë + DWORD dwMaxTalkTime; //×î´óͨ»°Ê±¼ä£¬·¶Î§[90,120]Ãë + BYTE byRes[120]; //±£Áô +}NET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG,*LPNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG; + +//¹ÜÀí»ú²Ù×÷ʱ¼äÅäÖà +typedef struct tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG +{ + DWORD dwMaxMonitoringTime; //×î´ó¼àÊÓʱ¼ä£¬·¶Î§[10,60]Ãë + DWORD dwMaxRingTime; //×î´óÕñÁåʱ¼ä£¬·¶Î§[15,60]Ãë + DWORD dwMaxTalkTime; //×î´óͨ»°Ê±¼ä£¬µ¥Î»s + BYTE byRes[116]; //±£Áô +}NET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG,*LPNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG; + +//¿ÉÊÓ¶Ô½²²Ù×÷ʱ¼äÁªºÏÌå +typedef union tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION +{ + BYTE byLen[128]; //ÁªºÏÌå´óС + NET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG struIndoorUnit; //ÊÒÄÚ»ú + NET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG struOutdoorUnit; //ÃÅ¿Ú»ú/Χǽ»ú/±ðÊûÃÅ¿Ú»ú/¶þ´ÎÈ·ÈÏ»ú + NET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG struManageUnit; //¹ÜÀí»ú +}NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION,*LPNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION; + +//¿ÉÊÓ¶Ô½²²Ù×÷ʱ¼äÅäÖà +typedef struct tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byUnitType; //É豸ÀàÐÍ£¬1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú£¬3-ÊÒÄÚ»ú£¬4-Χǽ»ú£¬5-±ðÊûÃÅ¿Ú»ú£¬6-¶þ´ÎÈ·ÈÏ»ú + BYTE byRes1[3]; //±£Áô + NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION uVideoIntercomUnit; //È¡Öµ²Î¿¼byUnitType + BYTE byRes2[128]; //±£Áô +}NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG,*LPNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG; + +//ÊÒÄÚ»ú¹ØÁªµÄÍøÂçÉ豸 +typedef struct tagNET_DVR_INDOOR_UNIT_RELATEDEV +{ + NET_DVR_IPADDR struOutdoorUnit; //Ö÷ÃÅ¿Ú»úIP + NET_DVR_IPADDR struManageUnit; //¹ÜÀí»úIP + NET_DVR_IPADDR struSIPServer; //SIP·þÎñÆ÷IP + NET_DVR_IPADDR struAgainUnit; //¶þ´ÎÈ·ÈÏ»úIP + BYTE byOutDoorType; //Ö÷ÃÅ¿Ú»úÀàÐÍ£¬0±£Áô£¬1-Ö÷µ¥ÔªÃÅ¿Ú»ú£¬2-Ö÷±ðÊûÃÅ¿Ú»ú + BYTE byOutInConnectMode; //ÃÅ¿Ú»úÓëÊÒÄÚ·Ö»ú×éÍøģʽ£º1-ÃÅ¿Ú»úÓëÊÒÄÚ·Ö»úͬһ¾ÖÓòÍø,2-ÃÅ¿Ú»úÓëÊÒÄÚ·Ö»ú²»Í¬¾ÖÓòÍø£» + BYTE byIndoorConnectMode; //ÊÒÄÚÖ÷»úÓëÊÒÄÚ·Ö»ú×éÍøģʽ£º1-ͨ¹ýÎÞÏßÍø¿¨¡¢2-ͨ¹ýÓÐÏßÍø¿¨£» + BYTE byRes1; + NET_DVR_IPADDR struIndoorUnit; //ÊÒÄÚÖ÷»úIP + BYTE byManageCenterID[32]; //±ê×¼sipģʽÏÂʹÓ㬹ÜÀíÖÐÐÄID£¬Ö§³ÖÊý×Ö£¬×Öĸ£¬@ºÍ. + BYTE byRes[268]; //±£Áô +}NET_DVR_INDOOR_UNIT_RELATEDEV,*LPNET_DVR_INDOOR_UNIT_RELATEDEV; + +//ÃÅ¿Ú»úÏà¹ØÁªµÄÍøÂçÉ豸 +typedef struct tagNET_DVR_OUTDOOR_UNIT_RELATEDEV +{ + NET_DVR_IPADDR struMainOutdoorUnit; //Ö÷ÃÅ¿Ú»úIP£¬¸±ÃÅ¿Ú»úʱÓÐЧ + NET_DVR_IPADDR struManageUnit; //¹ÜÀí»úIP + NET_DVR_IPADDR struSIPServer; //SIP·þÎñÆ÷IP£¬¸±ÃÅ¿Ú»úʱÎÞЧ + BYTE byManageCenterID[32]; //±ê×¼sipģʽÏÂʹÓ㬹ÜÀíÖÐÐÄID£¬Ö§³ÖÊý×Ö£¬×Öĸ£¬@ºÍ. + BYTE byRes[560]; //±£Áô +}NET_DVR_OUTDOOR_UNIT_RELATEDEV,*LPNET_DVR_OUTDOOR_UNIT_RELATEDEV; + +//¶þ´ÎÈ·ÈÏ»úÏà¹ØÁªµÄÍøÂçÉ豸 +typedef struct tagNET_DVR_AGAIN_RELATEDEV +{ + NET_DVR_IPADDR struSIPServer; //SIP·þÎñÆ÷IP + NET_DVR_IPADDR struCenterAddr; //ÖÐÐÄƽ̨IP + WORD wCenterPort; //ÖÐÐÄƽ̨¶Ë¿Ú + BYTE byRes1[2]; + NET_DVR_IPADDR struIndoorUnit; //ÊÒÄÚÖ÷»úIP + NET_DVR_IPADDR struAgainAddr; //Ö÷¶þ´ÎÈ·ÈÏ»úIP£¨¸±¶þ´ÎÈ·ÈÏ»úÅäÖøÃ×ֶΣ© + BYTE byRes[444];//±£Áô +}NET_DVR_AGAIN_RELATEDEV,*LPNET_DVR_AGAIN_RELATEDEV; + + +//¹ÜÀí»úÏà¹ØÁªµÄÍøÂçÉ豸 +typedef struct tagNET_DVR_MANAGE_UNIT_RELATEDEV +{ + NET_DVR_IPADDR struSIPServer; //SIP·þÎñÆ÷IP + BYTE byRes[880]; //±£Áô +}NET_DVR_MANAGE_UNIT_RELATEDEV,*LPNET_DVR_MANAGE_UNIT_RELATEDEV; + + +//¿ÉÊÓ¶Ô½²¹ØÁªÍøÂçÉ豸²ÎÊý½á¹¹Ìå +typedef union tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION +{ + DWORD dwRes[256] ; //ÁªºÏÌå´óС + NET_DVR_INDOOR_UNIT_RELATEDEV struIndoorUnit; //ÊÒÄÚ»ú + NET_DVR_OUTDOOR_UNIT_RELATEDEV struMainOutdoorUnit; //ÃÅ¿Ú»ú/Χǽ»ú/ÃŽûÖÇÄÜÉ豸 + NET_DVR_MANAGE_UNIT_RELATEDEV struManageUnit; //¹ÜÀí»ú + NET_DVR_OUTDOOR_UNIT_RELATEDEV struVillaUnit; //±ðÊûÃÅ¿Ú»ú + NET_DVR_AGAIN_RELATEDEV struAgainUnit; //¶þ´ÎÈ·ÈÏ»ú +}NET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION,*LPNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION; + +//¹ØÁªÍøÂçÉ豸²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byUnitType; //É豸ÀàÐÍ£¬1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú£¬3-ÊÒÄÚ»ú£¬4-Χǽ»ú£¬5-±ðÊûÃÅ¿Ú»ú£¬6-¶þ´ÎÈ·ÈÏ»ú£¬7-ÃŽûÖÇÄÜÉ豸 + BYTE byRes1[3]; //±£Áô + NET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION uVideoIntercomUnit; //È¡Öµ²Î¿¼byUnitType + BYTE byRes2[128]; //±£Áô +}NET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG,*LPNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG; + +typedef struct tagNET_DVR_CONTROL_GATEWAY +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwGatewayIndex; //ÃŽûÐòºÅ£¬´Ó1¿ªÊ¼ + BYTE byCommand; //²Ù×÷ÃüÁ0-¹Ø±Õ£¬1-´ò¿ª£¬2-³£¿ª£¨Í¨µÀ״̬£©£¬3-»Ö¸´£¨ÆÕͨ״̬£© + BYTE byLockType; //ËøÀàÐÍ£¬0-ÆÕͨ£¨ÒÔǰĬÈ϶¼Îª0£©,1-ÖÇÄÜËø + WORD wLockID; //ËøID£¬´Ó1¿ªÊ¼£¨Ô¶³Ì¿ªÃÅ¿Ú»úËøʱ£¬0±íʾÃÅ¿Ú»ú±¾»ú¿ØÖÆÆ÷ÉϽӵÄËø¡¢1±íʾÍâ½Ó¿ØÖÆÆ÷ÉϽӵÄËø£© + BYTE byControlSrc[NAME_LEN]; //²Ù×÷·¢ÆðÔ´ÐÅÏ¢ + BYTE byControlType; //¿ªËøÀàÐÍ£¬1-¼àÊÓ£¬2-ͨ»° + BYTE byRes3[3]; + BYTE byPassword[PASSWD_LEN]; //ËøÃÜÂ룬µ±byLockTypeΪÖÇÄÜËøʱÓÐЧ + BYTE byRes2[108]; //±£Áô +}NET_DVR_CONTROL_GATEWAY,*LPNET_DVR_CONTROL_GATEWAY; + + +//¹«¸æͼƬÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_DVR_NOTICE_PIC +{ + BYTE* pPicData; //ͼƬָÕë + DWORD dwPicDataLen; //ͼƬÊý¾Ý³¤¶È + BYTE byRes[32]; //±£Áô +}NET_DVR_NOTICE_PIC,*LPNET_DVR_NOTICE_PIC; + +//¹«¸æÊý¾Ý +typedef struct tagNET_DVR_NOTICE_DATA +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME_EX struTime; //¹«¸æʱ¼ä + BYTE byNoticeNumber[MAX_NOTICE_NUMBER_LEN]; //¹«¸æ±àºÅ + BYTE byNoticeTheme[MAX_NOTICE_THEME_LEN];//¹«¸æÖ÷Ìâ + BYTE byNoticeDetail[MAX_NOTICE_DETAIL_LEN]; //¹«¸æÏêÇé + BYTE byLevel; //¹«¸æµÈ¼¶£¬1-¹ã¸æÀàÐÅÏ¢£»2-ÎïÒµÐÅÏ¢£»3-±¨¾¯ÀàÐÅÏ¢;4-֪ͨÀàÐÅÏ¢ + BYTE byPicNum; //¹«¸æͼƬÊýÁ¿ + BYTE byRes1[2]; //±£Áô + NET_DVR_NOTICE_PIC struNoticePic[MAX_NOTICE_PIC_NUM]; //¹«¸æͼƬ + BYTE byRes2[128]; //±£Áô +}NET_DVR_NOTICE_DATA,*LPNET_DVR_NOTICE_DATA; + +//²Ù×÷ȨÏÞÑéÖ¤²ÎÊý +typedef struct tagNET_DVR_OPERATION_AUTH +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byPassword[PASSWD_LEN]; //ÑéÖ¤ÃÜÂë + BYTE byRes[128]; //±£Áô +}NET_DVR_OPERATION_AUTH,*LPNET_DVR_OPERATION_AUTH; + +//¿ªËøÀàÐÍ +typedef enum tagUNLOCK_TYPE_ENUM +{ + ENUM_UNLOCK_PASSWORD = 1, //ÃÜÂ뿪Ëø + ENUM_UNLOCK_HIJACKING = 2, //½Ù³Ö¿ªËø + ENUM_UNLOCK_CARD = 3, //Ë¢¿¨¿ªËø + ENUM_UNLOCK_HOUSEHOLDER = 4, //»§Ö÷¿ªËø + ENUM_UNLOCK_CENTER_PLATFORM = 5, //ÖÐÐÄƽ̨¿ªËø + ENUM_UNLOCK_BLUETOOTH = 6, //À¶ÑÀ¿ªËø + ENUM_UNLOCK_QR_CODE = 7, //¶þάÂ뿪Ëø + ENUM_UNLOCK_FACE = 8, //ÈËÁ³¿ªËø + ENUM_UNLOCK_FINGERPRINT = 9, //Ö¸ÎÆ¿ªËø + ENUM_UNLOCK_DYNAMIC_CODE = 10 //¶¯Ì¬È¨ÏÞÂ뿪Ëø +}UNLOCK_TYPE_ENUM; + + +//·ÀÇøÀàÐÍ£¬ºÍ²úÆ·ÏßÈ·ÈÏ£¬´Ë¶¨ÒåûÓÐʹÓã¬Ê¹ÓõÄÊÇDETECTOR_TYPE +// typedef enum tagALARM_ZONE_TYPE_ENUM +// { +// ENUM_ALARM_ZONE_SMOKE = 1, //Ñ̸Р+// ENUM_ALARM_ZONE_GAS = 2, //úÆø +// ENUM_ALARM_ZONE_INFRARED = 3, //ºìÍâ +// ENUM_ALARM_ZONE_MAGNETIC = 4, //ÃÅ´Å +// ENUM_ALARM_ZONE_MANUAL = 5 //ÊÖ¶¯ +// }ALARM_ZONE_TYPE_ENUM; + +//¿ªËø¼Ç¼ +typedef struct tagNET_DVR_UNLOCK_RECORD_INFO +{ + BYTE byUnlockType; //¿ªËø·½Ê½£¬²Î¿¼UNLOCK_TYPE_ENUM + BYTE byRes1[3]; //±£Áô + BYTE byControlSrc[NAME_LEN]; //²Ù×÷·¢ÆðÔ´ÐÅÏ¢£¬Ë¢¿¨¿ªËøʱΪ¿¨ºÅ£¬À¶ÑÀ¿ªËøʱΪөʯµÄAPPÕ˺ţ¬¶þάÂ뿪ËøʱΪ·Ã¿ÍµÄÊÖ»úºÅ£¬ÆäÓàÇé¿öÏÂΪÉ豸±àºÅ + DWORD dwPicDataLen; //ͼƬÊý¾Ý³¤¶È + BYTE* pImage; //ͼƬָÕë + DWORD dwCardUserID; //³Ö¿¨ÈËID + SHORT nFloorNumber;//Ë¢¿¨¿ªËøʱÓÐЧ£¬ÎªÂ¥²ãºÅ + WORD wRoomNumber; //²Ù×÷·¢ÆðÔ´¸½¼ÓÐÅÏ¢£¬Ë¢¿¨¿ªËøʱÓÐЧ£¬Îª·¿¼äºÅ£¬ + WORD wLockID; //£¨¶ÔÓÚÃÅ¿Ú»ú£¬0-±íʾ±¾»ú¿ØÖÆÆ÷ÉϽӵÄËø¡¢1-±íʾÍâ½Ó¿ØÖÆÆ÷ÉϽӵÄËø£© + BYTE byRes2[2]; + BYTE byLockName[LOCK_NAME_LEN]; //Ë¢¿¨¿ªËøʱÓÐЧ£¬ËøÃû³Æ£¬¶ÔÓ¦ÃŲÎÊýÅäÖÃÖÐÃÅÃû³Æ + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byMask; //ÊÇ·ñ´ø¿ÚÕÖ£º0-±£Áô£¬1-δ֪£¬2-δ´÷¿ÚÕÖ£¬3-´÷¿ÚÕÖ + BYTE byRes[135]; //±£Áô +}NET_DVR_UNLOCK_RECORD_INFO,*LPNET_DVR_UNLOCK_RECORD_INFO; + +//¹«¸æÐÅÏ¢ÔĶÁ»ØÖ´ +typedef struct tagNET_DVR_NOTICEDATA_RECEIPT_INFO +{ + BYTE byNoticeNumber[MAX_NOTICE_NUMBER_LEN]; //¹«¸æ±àºÅ + BYTE byRes[224]; //±£Áô +}NET_DVR_NOTICEDATA_RECEIPT_INFO,*LPNET_DVR_NOTICEDATA_RECEIPT_INFO; + +//ÈÏÖ¤¼Ç¼£¨É豸δʵÏÖ£© +typedef struct tagNET_DVR_AUTH_INFO +{ + BYTE byAuthResult; //ÈÏÖ¤½á¹û£º0-ÎÞЧ£¬1-ÈÏÖ¤³É¹¦£¬2-ÈÏ֤ʧ°Ü + BYTE byAuthType; //ÈÏÖ¤·½Ê½£º0-ÎÞЧ£¬1-Ö¸ÎÆ£¬2-ÈËÁ³ + BYTE byRes1[2]; //±£Áô + BYTE byCardNo[ACS_CARD_NO_LEN/*32*/]; //¿¨ºÅ + DWORD dwPicDataLen; //ͼƬÊý¾Ý³¤¶È£¨µ±ÈÏÖ¤·½Ê½byAuthTypeΪÈËÁ³Ê±ÓÐЧ£© + BYTE* pImage; //ͼƬָÕ루µ±ÈÏÖ¤·½Ê½byAuthTypeΪÈËÁ³Ê±ÓÐЧ£© + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN/*32*/]; //¹¤ºÅ£¨ÈËÔ±ID + BYTE byRes[180]; //±£Áô +}NET_DVR_AUTH_INFO, *LPNET_DVR_AUTH_INFO; + +//³µÅÆÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_UPLOAD_PLATE_INFO +{ + char sLicense[MAX_LICENSE_LEN]; //³µÅƺÅÂë + BYTE byColor; //³µÅÆÑÕÉ«£¬²Î¿¼½á¹¹VCA_PLATE_COLOR + BYTE byRes[239]; //±£Áô +}NET_DVR_UPLOAD_PLATE_INFO, *LPNET_DVR_UPLOAD_PLATE_INFO; + +typedef struct tagNET_DVR_SEND_CARD_INFO +{ + BYTE byCardNo[ACS_CARD_NO_LEN/*32*/]; //¿¨ºÅ + BYTE byRes[224]; //±£Áô +}NET_DVR_SEND_CARD_INFO, *LPNET_DVR_SEND_CARD_INFO; + +//ÃÅ´Å״̬Éϱ¨ +typedef struct tagNET_DVR_MAGNETIC_DOOR_STATUS +{ + BYTE byMagneticDoorStatus; //ÃÅ´Å״̬ 1-´ò¿ª 2-¹Ø±Õ + BYTE byRes[255]; //±£Áô +} NET_DVR_MAGNETIC_DOOR_STATUS, *LPNET_DVR_MAGNETIC_DOOR_STATUS; + +//¿ÉÊÓ¶Ô½²Ê¼þ¼Ç¼ÐÅÏ¢ÁªºÏÌå +typedef union tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON +{ + BYTE byLen[256]; //ÁªºÏÌå´óС + NET_DVR_UNLOCK_RECORD_INFO struUnlockRecord; //¿ªËø¼Ç¼ + NET_DVR_NOTICEDATA_RECEIPT_INFO struNoticedataReceipt; //¹«¸æÐÅÏ¢ÔĶÁ»ØÖ´ + NET_DVR_AUTH_INFO struAuthInfo; //ÈÏÖ¤¼Ç¼£¨É豸δʵÏÖ£© + NET_DVR_UPLOAD_PLATE_INFO struUploadPlateInfo; //³µÅÆÐÅÏ¢ÉÏ´« + NET_DVR_SEND_CARD_INFO struSendCardInfo; //ÃÅ¿Ú»ú·¢¿¨,¶ÔÓ¦É豸´¦ÓÚ·¢¿¨×´Ì¬£¬Ë¢¿¨Ê±ÉÏ´«¸Ãʼþ + NET_DVR_MAGNETIC_DOOR_STATUS struMagneticDoorStatus; //ÃÅ´Å״̬ +}NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON,*LPNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON; + +//¿ÉÊÓ¶Ô½²Ê¼þ¼Ç¼ +typedef struct tagNET_DVR_VIDEO_INTERCOM_EVENT +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME_EX struTime; //ʱ¼ä + BYTE byDevNumber[MAX_DEV_NUMBER_LEN]; //É豸±àºÅ + BYTE byEventType; //ʼþÐÅÏ¢ÀàÐÍ£¬1-¿ªËø¼Ç¼£¬2-¹«¸æÐÅÏ¢ÔĶÁ»ØÖ´£¬3-ÈÏÖ¤¼Ç¼£¬4-³µÅÆÐÅÏ¢ÉÏ´«£¬5·Ç·¨¿¨Ë¢¿¨Ê¼þ£¬6-ÃÅ¿Ú»ú·¢¿¨¼Ç¼(ÐèÒªÆô¶¯ÃÅ¿Ú»ú·¢¿¨¹¦ÄÜ£¬Ë¢¿¨Ê±²Å»áÉÏ´«¸Ãʼþ)£¬7-¿ÚÕÖ¼ì²âʼþ£¬8-ÃÅ´Å״̬¼Ç¼ + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + BYTE byRes1[2]; //±£Áô + NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON uEventInfo; //ʼþÐÅÏ¢£¬¾ßÌåÄÚÈݲο¼byEventTypeÈ¡Öµ + DWORD dwIOTChannelNo; //IOTͨµÀºÅ + BYTE byRes2[252]; //±£Áô +}NET_DVR_VIDEO_INTERCOM_EVENT,*LPNET_DVR_VIDEO_INTERCOM_EVENT; + + +//·ÀÇø±¨¾¯ÐÅÏ¢ +typedef struct tagNET_DVR_ZONE_ALARM_INFO +{ + BYTE byZoneName[NAME_LEN]; //·ÀÇøÃû³Æ + DWORD dwZonendex; //·ÀÇøºÅ + BYTE byZoneType; //·ÀÇøÀàÐÍ£¬²Î¿¼DETECTOR_TYPE + BYTE byRes[219]; //±£Áô +}NET_DVR_ZONE_ALARM_INFO,*LPNET_DVR_ZONE_ALARM_INFO; + +//Ëø±¨¾¯ÐÅÏ¢ +typedef struct tagNET_DVR_LOCK_ALARM_INFO +{ + DWORD dwLockID; //ËøID£¬´Ó0¿ªÊ¼ + BYTE byRes[252]; //±£Áô×Ö½Ú +}NET_DVR_LOCK_ALARM_INFO, *LPNET_DVR_LOCK_ALARM_INFO; + +typedef union tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION +{ + BYTE byLen[256]; //ÁªºÏÌå´óС + NET_DVR_ZONE_ALARM_INFO struZoneAlarm; //·ÀÇø±¨¾¯ + NET_DVR_LOCK_ALARM_INFO struLockAlarm; //Ëø±¨¾¯ÐÅÏ¢ +}NET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION,*LPNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION; + + +//¿ÉÊÓ¶Ô½²±¨¾¯ÐÅÏ¢ÁªºÏÌå +typedef struct tagNET_DVR_VIDEO_INTERCOM_ALARM +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_TIME_EX struTime; //±¨¾¯Ê±¼ä + BYTE byDevNumber[MAX_DEV_NUMBER_LEN]; //É豸±àºÅ + BYTE byAlarmType; //±¨¾¯ÀàÐÍ£¬1-·ÀÇø±¨¾¯£¬2-·À²ð±¨¾¯£¬3-½Ù³Ö±¨¾¯£¬4-¶à´ÎÃÜÂ뿪Ëøʧ°Ü±¨¾¯,5-ÃÅû¿ª£¬6-ÃÅû¹Ø 7-SOS ¡¢8-ͨ»°¶Ô½²£¬9-ÖÇÄÜËø½Ù³ÖÖ¸ÎƱ¨¾¯£¬ 10-ÖÇÄÜËø½Ù³ÖÃÜÂ뱨¾¯£¬11-ÖÇÄÜËøÇËÃű¨¾¯£¬12-ÖÇÄÜËøÃÅËøËø¶¨±¨¾¯£¬13-ÖÇÄÜËøµçÁ¿²»×㱨¾¯ ,14-½ûÖ¹Ãûµ¥±¨¾¯,15-ÖÇÄÜËøµôÏß + //£¬16-ÃŽû°²È«Ä£¿é·À²ð±¨¾¯£¬17-É豸¿ªÊ¼¶Ô½²£¬18-É豸ֹͣ¶Ô½², 19-È¡ÏûSOS ,20-δÅå´÷¿ÚÕÖ±¨¾¯ 21-Ïû·ÀÊäÈ뱨¾¯ 22-Ïû·ÀÊäÈë»Ö¸´ 23-ÃŴű»ÍâÁ¦´ò¿ª£¬24-ÎÀÉú¼ä±¨¾¯£¬25-È¡ÏûÎÀÉú¼ä±¨¾¯£¬26-»»Ò©ÌáÐÑ£¬27-ÈËÁ³²âα¨¾¯£¬28-È¡Ïû»»Ò©ÌáÐÑ + BYTE byRes1[3]; //±£Áô + NET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION uAlarmInfo; //±¨¾¯ÐÅÏ¢£¬¾ßÌåÄÚÈݲο¼×Ö¶ÎbyAlarmTypeÈ¡Öµ + WORD wLockID; //£¨0-±íʾÃÅ¿Ú»ú±¾»ú¿ØÖÆÆ÷ÉϽӵÄËø¡¢1-±íʾÍâ½Ó¿ØÖÆÆ÷ÉϽӵÄËø£©£¨±¨¾¯ÀàÐÍΪ5ºÍ6ʱÓÐЧ£© + BYTE byRes3[2]; //±£Áô + DWORD dwIOTChannelNo; //IOTͨµÀºÅ + BYTE byRes2[248]; //±£Áô +}NET_DVR_VIDEO_INTERCOM_ALARM,*LPNET_DVR_VIDEO_INTERCOM_ALARM; + +typedef struct tagNET_DVR_PEOPLE_REGION +{ + BYTE byID;//ÇøÓòID + BYTE byNumber;//ÇøÓòÖеÄÈËÔ±ÊýÁ¿ 0-±íʾÇøÓòÖÐûÓÐÈËÔ± + BYTE byDressType;//×Å×°ÀàÐÍ 0-δ֪£¬1-·¨ÅÛ¡¢2-»ÕÕ¡¢3-ÖÆ·þ + BYTE byRes; + NET_VCA_RECT struRegion; + DWORD dwPicLen;//¼ì²âͼƬ³¤¶È (0±íʾûÓ㤶È) + char* pPicBuffer;//¾ßÌåµÄͼƬÊý¾Ý + BYTE byRes1[24];//±£Áô(Ô¤ÁôºóÆÚÀ©Õ¹ÇøÓòÊôÐÔ) +}NET_DVR_PEOPLE_REGION,*LPNET_DVR_PEOPLE_REGION; + +typedef struct tagNET_DVR_PEOPLE_DETECTION_RESULT +{ + DWORD dwSize; + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo;//Ç°¶ËÉ豸ÐÅÏ¢ + NET_DVR_PEOPLE_REGION struPeopleRegion[MAX_PEOPLE_DETECTION_NUM/*8*/]; + /*ÈËÔ±¼ì²â±¨¾¯ÀàÐÍ + £¨0- δ֪£¬ + £¨1- ÉóѶÊÒÄÚ´ò¼Ü¶·Å¹±¨¾¯ + £¨2- ÉóѶÈËÔ±î§Ë¯¼ì²â±¨¾¯ + £¨3- ±»ÉóѶÈËÔ±ÆðÉí¼ì²â±¨¾¯ + £¨4- ÉóÅÐÈËÔ±¼ì²â£© + */ + BYTE byPeopleAlarmType; + BYTE byRes[255]; +}NET_DVR_PEOPLE_DETECTION_RESULT,*LPNET_DVR_PEOPLE_DETECTION_RESULT; + +typedef struct tagNET_DVR_SUPPLEMENTLIGHT +{ + BYTE byEnable;//ʹÄÜ 0-¹Ø£¬1-¿ª + BYTE byMode;//²¹¹âµÆģʽ 0-×Ô¶¯£¬1-¶¨Ê± + BYTE byHighBeamBrightness;//Ô¶¹âµÆÁÁ¶È[0,10] + BYTE byLowBeamBrightness;//½ü¹âµÆÁÁ¶È[0,10] + NET_DVR_SCHEDULE_DAYTIME struSchedTime;//¶¨Ê±Ê±¼ä¶Î + WORD wFilteringTime;//¹ýÂËʱ¼ä(s)[0,120] + BYTE byBrightness;//²¹¹âµÆÁÁ¶È[0,10]£¨µ±Ö§³Ö¸Ã²ÎÊýʱ£¬ byHighBeamBrightness¡¢byLowBeamBrightness²»ÉúЧ£© + BYTE bySensitivity;//²¹¹âµÆÁéÃô¶È[0,7],ĬÈÏ4£¨µ±byModeΪ×Ô¶¯Ê±ÉúЧ£© + BYTE byBrightnessRegulatMode;// ÁÁ¶Èµ÷½Úģʽ£¬0-ÊÖ¶¯£¬1-×Ô¶¯£¨µ±Îª×Ô¶¯Ê±byBrightness²»ÉúЧ£© + BYTE byMaxBrightness;//²¹¹âµÆ×î´óÁÁ¶È£¨½öÁÁ¶Èµ÷½ÚģʽΪ×Ô¶¯Ê±ÉúЧ£©£¬[0,100]£¬Ä¬ÈÏ50 + BYTE byRes[58]; +}NET_DVR_SUPPLEMENTLIGHT,*LPNET_DVR_SUPPLEMENTLIGHT; + +typedef struct tagNET_DVR_EXTERNALDEVICE +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_SUPPLEMENTLIGHT struSupplementLight;//²¹¹âµÆ½á¹¹ÐÅÏ¢ + BYTE byRes[512]; +}NET_DVR_EXTERNALDEVICE,*LPNET_DVR_EXTERNALDEVICE; +typedef struct tagNET_DVR_TEMPERATURE_TRIGGER_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChan;//ͨµÀºÅ + DWORD dwPreset;//Ô¤ÖõãºÅ + BYTE byRes[256]; +}NET_DVR_TEMPERATURE_TRIGGER_COND, *LPNET_DVR_TEMPERATURE_TRIGGER_COND; +//(Çò»úÖ§³Ö£¬Èí¼þʵÏÖ£¬²¹¹âµÆÊÇÉè¼ÆÔÚÉ豸ÄÚ²¿µÄ) +typedef struct tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byMode;//²¹¹âµÆģʽ 0-¶¨Ê±£¬1-¿ªÆô£¬2-¹Ø±Õ£¬3-×Ô¶¯£¨·Ç¹âÃô£¬Ëã·¨»­Ãæʶ±ð£© + BYTE byBrightnessLimit;//ÁÁ¶ÈÏÞÖÆ[0,100] + BYTE bySupplementLightMode;//²¹¹âµÆÀàÐÍ,0~°×¹âģʽ,1~»ìºÏģʽ + BYTE byMixedLightRegulatMode;//»ìºÏ²¹¹âµÆÁÁ¶Èµ÷½Úģʽ,0~×Ô¶¯,1~ÊÖ¶¯,µ±bySupplementLightMode = 1ʱÉúЧ + BYTE byLrLightBrightness;//ºìÍâÁÁ¶È¿ØÖÆ[0,100],µ±byMixedLightRegulatMode = 1ʱÉúЧ¡£ + BYTE byHighLrLightBrightness;// Ô¶¹âºìÍâ¹âÁÁ¶ÈÅäÖÃ[0,100],µ±byMixedLightRegulatMode = 1ʱÉúЧ + BYTE byHighBrightnessLimit;// Ô¶¹â°×¹âÁÁ¶ÈÅäÖÃ[0,100],µ±byMixedLightRegulatMode = 1ʱÉúЧ + BYTE byLowLrLightBrightness;// ½ü¹âºìÍâ¹âÁÁ¶ÈÅäÖÃ[0,100],µ±byMixedLightRegulatMode = 1ʱÉúЧ + NET_DVR_SCHEDULE_DAYTIME struSchedTime;//¶¨Ê±Ê±¼ä¶Î + BYTE byLowBrightnessLimit;//½ü¹â°×¹âÁÁ¶ÈÅäÖÃ[0,100],µ±byMixedLightRegulatMode = 1ʱÉúЧ + BYTE byWhiteLightBrightness;// °×¹âµÆÁÁ¶È + BYTE byIrLightbrightnessLimit;//»ì¹âÇò»ú,ºìÍâÁÁ¶ÈÏÞÖÆ + BYTE byWhiteLightbrightnessLimit;//»ì¹âÇò»ú,°×¹âÁÁ¶ÈÏÞÖÆ + BYTE byRes1[252]; +}NET_DVR_BUILTIN_SUPPLEMENTLIGHT,*LPNET_DVR_BUILTIN_SUPPLEMENTLIGHT; +typedef struct tagNET_DVR_OIS_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byMode; //ÊÇ·ñ¹âѧ·À¶¶£º0-¹Ø±Õ£¬1-ÆÕͨ£¬2-ר¼Ò + BYTE byOISLevel; //¹âѧ·À¶¶µÈ¼¶£¬0-µÍ£¬1-ÖУ¬2-¸ß + BYTE byOISSensitivity;//¹âѧ·À¶¶ÁéÃô¶È£¬0-µÍ£¬1-ÖУ¬2-¸ß + BYTE byRes[125]; +}NET_DVR_OIS_CFG, *LPNET_DVR_OIS_CFG; + +typedef struct tagNET_DVR_MACFILTER_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñ¿ªÆôMACµØÖ·¹ýÂË£º0-·ñ£¬1-ÊÇ + BYTE byPermissionType; //MACµØÖ·¹ýÂËÀàÐÍ£¬0-½ûÖ¹£¬1-ÔÊÐí + BYTE byRes1[2]; + BYTE szMacAddress[MAC_ADDRESS_NUM][MACADDR_LEN]; + BYTE byRes[128]; +}NET_DVR_MACFILTER_CFG, *LPNET_DVR_MACFILTER_CFG; + +typedef struct tagNET_DVR_EAGLEFOCUSING_SENCE +{ + BYTE byRuleType;//¹æÔòÀàÐÍ£¬0-Ïß + BYTE bySceneID;//³¡¾°ID£¬0-±£Áô£¬ 1ÊDZíʾ³¡¾°1,2±íʾ³¡¾°2£¬ÆäÓàÒÀ´ÎÀàÍÆ + WORD wRate;//±¶ÂÊ£¬50-100 + NET_VCA_POLYGON struRegion;// ÇøÓò·¶Î§ + BYTE bySpotNum;//Ôڱ궨ÏßÉÏÈ¡¶àÉÙ¸öµã½øÐб궨£¬3-5£¬Ä¬ÈÏ3 + BYTE byRes[127]; +}NET_DVR_EAGLEFOCUSING_SENCE, *LPNET_DVR_EAGLEFOCUSING_SENCE; + +typedef struct tagNET_DVR_EAGLEFOCUSING_CALCFG +{ + DWORD dwSize; + BYTE byEnabled;//ÊÇ·ñ¿ªÆô±ê¶¨£º0-ÖÐÖ¹±ê¶¨£¬1-¿ªÊ¼±ê¶¨£¨¸Ã½ÚµãÉèÖÃʱÓÐЧ£¬»ñȡʱÎÞЧ£© + BYTE byRes1[3]; + NET_DVR_EAGLEFOCUSING_SENCE struEagleFoucsing[MAX_SENCE_NUM/*16*/]; + BYTE byRes[512]; +}NET_DVR_EAGLEFOCUSING_CALCFG, *LPNET_DVR_EAGLEFOCUSING_CALCFG; + +typedef struct tagNET_DVR_EAGLEFOCUSING_CTRL +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ£º0-¹Ø±ÕÓ¥ÊÓ¾Û½¹£¬1-¿ªÆôÓ¥ÊÓ¾Û½¹ + BYTE byHeightCompensationEnable;//¸ß¶È²¹³¥Ê¹ÄÜ + BYTE byHeightCompensationValue;//¸ß¶È²¹³¥Öµ, ·¶Î§1-5,ĬÈÏ3,Ò»¸öÖµ´ú±í0.5Ã× + BYTE byRes[509]; +}NET_DVR_EAGLEFOCUSING_CTRL, *LPNET_DVR_EAGLEFOCUSING_CTRL; + +typedef struct tagNET_DVR_SMARTCALIBRATION_REGION +{ + BYTE byRuleID;//¹æÔò±àºÅ + BYTE byMode;//0-default Mode,1-pix Mode,2-actual Mode + BYTE byStrategy;//¹ýÂ˲ßÂÔ 0-area(Ãæ»ý),1-widthHeight(¿í¸ß) () + BYTE byPriority;//ÓÅÏȼ¶ 0-ĬÈÏÖµ, 1-µÍ£¬2-ÖУ¬3-¸ß + NET_VCA_POLYGON struMaxTargetSize;//×î´óÄ¿±ê³ß´ç + NET_VCA_POLYGON struMinTargetSize;//×îСĿ±ê³ß´ç +}NET_DVR_SMARTCALIBRATION_REGION, *LPNET_DVR_SMARTCALIBRATION_REGION; + +#define RULE_REGION_MAX 128 +typedef struct tagNET_DVR_SMARTCALIBRATION_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + /* SmartType: + 0-linedetection, + 1-fielddetection, + 2-regionEntrance, + 3-regionExiting, + 4-loitering, + 5-rapidMove, + 6-parking, + 7-unattendedBaggage, + 8-attendedBaggage + */ + BYTE bySmartType;//ÖÇÄÜÀàÐÍ + BYTE byRes[3]; + NET_DVR_SMARTCALIBRATION_REGION strRegion[RULE_REGION_MAX/*128*/]; + BYTE byRes1[128]; +}NET_DVR_SMARTCALIBRATION_CFG, *LPNET_DVR_SMARTCALIBRATION_CFG; + +typedef struct tagNET_DVR_SMARTCALIBRATION_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + /* SmartType: + 0-linedetection, + 1-fielddetection, + 2-regionEntrance, + 3-regionExiting, + 4-loitering, + 5-rapidMove, + 6-parking, + 7-unattendedBaggage, + 8-attendedBaggage + */ + BYTE bySmartType;//ÖÇÄÜÀàÐÍ + BYTE byRes[3]; + DWORD dwChannel;//ͨµÀºÅ + BYTE byRes1[128]; +}NET_DVR_SMARTCALIBRATION_COND, *LPNET_DVR_SMARTCALIBRATION_COND; + +typedef struct tagNET_DVR_SMARTCALIBRATION_REGION_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_SMARTCALIBRATION_REGION strRegion[RULE_REGION_MAX/*128*/]; + BYTE byRes1[128]; +}NET_DVR_SMARTCALIBRATION_REGION_CFG, *LPNET_DVR_SMARTCALIBRATION_REGION_CFG; + + +typedef struct tagNET_DVR_OSD_BATTERY_POWER_CFG +{ + DWORD dwSize; + NET_VCA_POINT struOSDBatteryPower;//¿ÍÁ÷ͳ¼ÆÏÔʾOSDÏÔʾ×óÉϽÇ×ø±ê + BYTE byOSDBatteryPower;//µç³ØµçÁ¿OSDµþ¼ÓÏÔʾʹÄÜ, 0-·ñ£¬1-ÊÇ + BYTE byRes[63]; +}NET_DVR_OSD_BATTERY_POWER_CFG, *LPNET_DVR_OSD_BATTERY_POWER_CFG; + +#define CARD_PARAM_CARD_VALID 0x00000001 //¿¨ÊÇ·ñÓÐЧ²ÎÊý +#define CARD_PARAM_VALID 0x00000002 //ÓÐЧÆÚ²ÎÊý +#define CARD_PARAM_CARD_TYPE 0x00000004 //¿¨ÀàÐͲÎÊý +#define CARD_PARAM_DOOR_RIGHT 0x00000008 //ÃÅȨÏÞ²ÎÊý +#define CARD_PARAM_LEADER_CARD 0x00000010 //Ê׿¨²ÎÊý +#define CARD_PARAM_SWIPE_NUM 0x00000020 //×î´óË¢¿¨´ÎÊý²ÎÊý +#define CARD_PARAM_GROUP 0x00000040 //ËùÊôȺ×é²ÎÊý +#define CARD_PARAM_PASSWORD 0x00000080 //¿¨ÃÜÂë²ÎÊý +#define CARD_PARAM_RIGHT_PLAN 0x00000100 //¿¨È¨Ï޼ƻ®²ÎÊý +#define CARD_PARAM_SWIPED_NUM 0x00000200 //ÒÑË¢¿¨´ÎÊý + +typedef struct tagNET_DVR_VALID_PERIOD_CFG +{ + BYTE byEnable; //ʹÄÜÓÐЧÆÚ£¬0-²»Ê¹ÄÜ£¬1ʹÄÜ + BYTE byBeginTimeFlag; //ÊÇ·ñÏÞÖÆÆðʼʱ¼äµÄ±êÖ¾£¬0-²»ÏÞÖÆ£¬1-ÏÞÖÆ + BYTE byEnableTimeFlag; //ÊÇ·ñÏÞÖÆÖÕֹʱ¼äµÄ±êÖ¾£¬0-²»ÏÞÖÆ£¬1-ÏÞÖÆ + BYTE byTimeDurationNo; //ÓÐЧÆÚË÷Òý,´Ó0¿ªÊ¼£¨Ê±¼ä¶Îͨ¹ýSDKÉèÖøøËø£¬ºóÐøÔÚÖÆ¿¨Ê±£¬Ö»ÐèÒª´«µÝÓÐЧÆÚË÷Òý¼´¿É£¬ÒÔ¼õÉÙÊý¾ÝÁ¿£© + NET_DVR_TIME_EX struBeginTime; //ÓÐЧÆÚÆðʼʱ¼ä + NET_DVR_TIME_EX struEndTime; //ÓÐЧÆÚ½áÊøʱ¼ä + BYTE byTimeType; //ʱ¼äÀàÐÍ£º0-É豸±¾µØʱ¼ä£¨Ä¬ÈÏ£©£¬1-UTCʱ¼ä£¨¶ÔÓÚstruBeginTime£¬struEndTime×Ö¶ÎÓÐЧ£© + BYTE byRes2[31]; +}NET_DVR_VALID_PERIOD_CFG, *LPNET_DVR_VALID_PERIOD_CFG; + +typedef struct tagNET_DVR_CARD_CFG +{ + DWORD dwSize; + DWORD dwModifyParamType; + // ÐèÒªÐ޸ĵĿ¨²ÎÊý£¬ÉèÖÿ¨²ÎÊýʱÓÐЧ£¬°´Î»±íʾ£¬Ã¿Î»´ú±íÒ»ÖÖ²ÎÊý£¬1ΪÐèÒªÐ޸ģ¬0Ϊ²»ÐÞ¸Ä + // #define CARD_PARAM_CARD_VALID 0x00000001 //¿¨ÊÇ·ñÓÐЧ²ÎÊý + // #define CARD_PARAM_VALID 0x00000002 //ÓÐЧÆÚ²ÎÊý + // #define CARD_PARAM_CARD_TYPE 0x00000004 //¿¨ÀàÐͲÎÊý + // #define CARD_PARAM_DOOR_RIGHT 0x00000008 //ÃÅȨÏÞ²ÎÊý + // #define CARD_PARAM_LEADER_CARD 0x00000010 //Ê׿¨²ÎÊý + // #define CARD_PARAM_SWIPE_NUM 0x00000020 //×î´óË¢¿¨´ÎÊý²ÎÊý + // #define CARD_PARAM_GROUP 0x00000040 //ËùÊôȺ×é²ÎÊý + // #define CARD_PARAM_PASSWORD 0x00000080 //¿¨ÃÜÂë²ÎÊý + // #define CARD_PARAM_RIGHT_PLAN 0x00000100 //¿¨È¨Ï޼ƻ®²ÎÊý + // #define CARD_PARAM_SWIPED_NUM 0x00000200 //ÒÑË¢¿¨´ÎÊý + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byCardValid; //¿¨ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚɾ³ý¿¨£¬ÉèÖÃʱÖÃΪ0½øÐÐɾ³ý£¬»ñȡʱ´Ë×Ö¶ÎʼÖÕΪ1£© + BYTE byCardType; //¿¨ÀàÐÍ£¬1-ÆÕͨ¿¨£¬2-ÌØÊâȺÌ忨£¬3-½ûÖ¹Ãûµ¥¿¨£¬4-Ѳ¸ü¿¨£¬5-вÆÈ¿¨£¬6-³¬¼¶¿¨£¬7-À´±ö¿¨£¬8-½â³ý¿¨£¬Ä¬ÈÏÆÕͨ¿¨ + BYTE byLeaderCard; //ÊÇ·ñΪÊ׿¨£¬1-ÊÇ£¬0-·ñ + BYTE byRes1; + DWORD dwDoorRight; //ÃÅȨÏÞ£¬°´Î»±íʾ£¬1ΪÓÐȨÏÞ£¬0ΪÎÞȨÏÞ£¬´ÓµÍλµ½¸ßλ±íʾ¶ÔÃÅ1-NÊÇ·ñÓÐȨÏÞ + NET_DVR_VALID_PERIOD_CFG struValid; //ÓÐЧÆÚ²ÎÊý + DWORD dwBelongGroup; //ËùÊôȺ×飬°´Î»±íʾ£¬1-ÊôÓÚ£¬0-²»ÊôÓÚ£¬´ÓµÍλµ½¸ßλ±íʾÊÇ·ñ´ÓÊôȺ×é1-N + BYTE byCardPassword[CARD_PASSWORD_LEN]; //¿¨ÃÜÂë + BYTE byCardRightPlan[MAX_DOOR_NUM][MAX_CARD_RIGHT_PLAN_NUM]; //¿¨È¨Ï޼ƻ®£¬È¡ÖµÎª¼Æ»®Ä£°å±àºÅ£¬Í¬¸öÃŲ»Í¬¼Æ»®Ä£°å²ÉÓÃȨÏÞ»òµÄ·½Ê½´¦Àí + DWORD dwMaxSwipeTime; //×î´óË¢¿¨´ÎÊý£¬0ΪÎÞ´ÎÊýÏÞÖÆ + DWORD dwSwipeTime; //ÒÑË¢¿¨´ÎÊý + WORD wRoomNumber; //·¿¼äºÅ + SHORT wFloorNumber; //²ãºÅ + BYTE byRes2[20]; +}NET_DVR_CARD_CFG, *LPNET_DVR_CARD_CFG; + +typedef struct _NET_DVR_CARD_CFG_COND +{ + DWORD dwSize; + DWORD dwCardNum; //ÉèÖûò»ñÈ¡¿¨ÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓп¨ÐÅÏ¢ + BYTE byCheckCardNo; //É豸ÊÇ·ñ½øÐп¨ºÅУÑ飬0-²»Ð£Ñ飬1-УÑé + BYTE byRes1[3]; + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ£¬±íʾÍù¾ÍµØ¿ØÖÆÆ÷Ï·¢ÀëÏß¿¨²ÎÊý£¬0´ú±íÊÇÃŽûÖ÷»ú + BYTE byRes2[2]; + DWORD dwLockID; //ËøID + BYTE byRes3[20]; +}NET_DVR_CARD_CFG_COND, *LPNET_DVR_CARD_CFG_COND; + +typedef struct _NET_DVR_CARD_CFG_SEND_DATA +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + DWORD dwCardUserId; //³Ö¿¨ÈËID + BYTE byRes[12]; +}NET_DVR_CARD_CFG_SEND_DATA, *LPNET_DVR_CARD_CFG_SEND_DATA; + +typedef struct tagNET_DVR_CARD_USER_INFO_CFG /*¶ÔÓ¦ÅäÖýṹÌå*/ +{ + DWORD dwSize; + BYTE sUsername[NAME_LEN]; /* Óû§Ãû*/ + BYTE byAssociateNetUser; //¹ØÁªµÄÍøÂçÓû§±àºÅ + BYTE byRes2[255]; //byRes2[0]--ÍøÂ籨¾¯Ö÷»úÓÃ×÷Óû§ºÅ +}NET_DVR_CARD_USER_INFO_CFG, *LPNET_DVR_CARD_USER_INFO_CFG; + +#define ACS_PARAM_DOOR_STATUS_WEEK_PLAN 0x00000001 //ÃÅ״̬Öܼƻ®²ÎÊý +#define ACS_PARAM_VERIFY_WEEK_PALN 0x00000002 //¶Á¿¨Æ÷Öܼƻ®²ÎÊý +#define ACS_PARAM_CARD_RIGHT_WEEK_PLAN 0x00000004 //¿¨È¨ÏÞÖܼƻ®²ÎÊý +#define ACS_PARAM_DOOR_STATUS_HOLIDAY_PLAN 0x00000008 //ÃÅ״̬¼ÙÈռƻ®²ÎÊý +#define ACS_PARAM_VERIFY_HOLIDAY_PALN 0x00000010 //¶Á¿¨Æ÷¼ÙÈռƻ®²ÎÊý +#define ACS_PARAM_CARD_RIGHT_HOLIDAY_PLAN 0x00000020 //¿¨È¨ÏÞ¼ÙÈռƻ®²ÎÊý +#define ACS_PARAM_DOOR_STATUS_HOLIDAY_GROUP 0x00000040 //ÃÅ״̬¼ÙÈÕ×é²ÎÊý +#define ACS_PARAM_VERIFY_HOLIDAY_GROUP 0x00000080 //¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼ÙÈÕ×é²ÎÊý +#define ACS_PARAM_CARD_RIGHT_HOLIDAY_GROUP 0x00000100 //¿¨È¨ÏÞ¼ÙÈÕ×é²ÎÊý +#define ACS_PARAM_DOOR_STATUS_PLAN_TEMPLATE 0x00000200 //ÃÅ״̬¼Æ»®Ä£°å²ÎÊý +#define ACS_PARAM_VERIFY_PALN_TEMPLATE 0x00000400 //¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼Æ»®Ä£°å²ÎÊý +#define ACS_PARAM_CARD_RIGHT_PALN_TEMPLATE 0x00000800 //¿¨È¨Ï޼ƻ®Ä£°å²ÎÊý +#define ACS_PARAM_CARD 0x00001000 //¿¨²ÎÊý +#define ACS_PARAM_GROUP 0x00002000 //Ⱥ×é²ÎÊý +#define ACS_PARAM_ANTI_SNEAK_CFG 0x00004000 //·´Ç±»Ø²ÎÊý +#define ACS_PAPAM_EVENT_CARD_LINKAGE 0x00008000 //ʼþ¼°¿¨ºÅÁª¶¯²ÎÊý +#define ACS_PAPAM_CARD_PASSWD_CFG 0x00010000 //ÃÜÂ뿪ÃÅʹÄܲÎÊý +#define ACS_PARAM_PERSON_STATISTICS_CFG 0x00020000 //ÈËÊýͳ¼Æ²ÎÊý +#define ACS_PARAM_BLOCKLIST_PICTURE 0x00040000 //½ûÖ¹Ãûµ¥Í¼Æ¬²ÎÊý +#define ACS_PARAM_ID_BLOCKLIST 0x00080000 //Éí·ÝÖ¤½ûÖ¹Ãûµ¥²ÎÊý +#define ACS_PARAM_EXAM_INFO 0x00100000 //¿¼ÊÔÐÅÏ¢²ÎÊý +#define ACS_PARAM_EXAMINEE_INFO 0x00200000 //¿¼ÉúÐÅÏ¢²ÎÊý +#define ACS_PARAM_FAILED_FACE_INFO 0x00400000 //Éý¼¶É豸ÈËÁ³½¨Ä£Ê§°Ü¼Ç¼ + +typedef struct tagNET_DVR_ACS_PARAM_TYPE +{ + DWORD dwSize; + DWORD dwParamType; //²ÎÊýÀàÐÍ£¬°´Î»±íʾ + //#define ACS_PARAM_DOOR_STATUS_WEEK_PLAN 0x00000001 //ÃÅ״̬Öܼƻ®²ÎÊý + //#define ACS_PARAM_VERIFY_WEEK_PALN 0x00000002 //¶Á¿¨Æ÷Öܼƻ®²ÎÊý + //#define ACS_PARAM_CARD_RIGHT_WEEK_PLAN 0x00000004 //¿¨È¨ÏÞÖܼƻ®²ÎÊý + //#define ACS_PARAM_DOOR_STATUS_HOLIDAY_PLAN 0x00000008 //ÃÅ״̬¼ÙÈռƻ®²ÎÊý + //#define ACS_PARAM_VERIFY_HOLIDAY_PALN 0x00000010 //¶Á¿¨Æ÷¼ÙÈռƻ®²ÎÊý + //#define ACS_PARAM_CARD_RIGHT_HOLIDAY_PLAN 0x00000020 //¿¨È¨ÏÞ¼ÙÈռƻ®²ÎÊý + //#define ACS_PARAM_DOOR_STATUS_HOLIDAY_GROUP 0x00000040 //ÃÅ״̬¼ÙÈÕ×é²ÎÊý + //#define ACS_PARAM_VERIFY_HOLIDAY_GROUP 0x00000080 //¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼ÙÈÕ×é²ÎÊý + //#define ACS_PARAM_CARD_RIGHT_HOLIDAY_GROUP 0x00000100 //¿¨È¨ÏÞ¼ÙÈÕ×é²ÎÊý + //#define ACS_PARAM_DOOR_STATUS_PLAN_TEMPLATE 0x00000200 //ÃÅ״̬¼Æ»®Ä£°å²ÎÊý + //#define ACS_PARAM_VERIFY_PALN_TEMPLATE 0x00000400 //¶Á¿¨Æ÷ÑéÖ¤·½Ê½¼Æ»®Ä£°å²ÎÊý + //#define ACS_PARAM_CARD_RIGHT_PALN_TEMPLATE 0x00000800 //¿¨È¨Ï޼ƻ®Ä£°å²ÎÊý + //#define ACS_PARAM_CARD 0x00001000 //¿¨²ÎÊý + //#define ACS_PARAM_GROUP 0x00002000 //Ⱥ×é²ÎÊý + //#define ACS_PARAM_ANTI_SNEAK_CFG 0x00004000 //·´Ç±»Ø²ÎÊý + //#define ACS_PAPAM_EVENT_CARD_LINKAGE 0x00008000 //ʼþ¼°¿¨ºÅÁª¶¯²ÎÊý + //#define ACS_PAPAM_CARD_PASSWD_CFG 0x00010000 //ÃÜÂ뿪ÃÅʹÄܲÎÊý + //#define ACS_PARAM_PERSON_STATISTICS_CFG 0x00020000 //ÈËÊýͳ¼Æ²ÎÊý + //#define ACS_PARAM_BLOCKLIST_PICTURE 0x00040000 //½ûÖ¹Ãûµ¥Í¼Æ¬²ÎÊý + //#define ACS_PARAM_ID_BLOCKLIST 0x00080000 //Éí·ÝÖ¤½ûÖ¹Ãûµ¥²ÎÊý + //#define ACS_PARAM_EXAM_INFO 0x00100000 //¿¼ÊÔÐÅÏ¢²ÎÊý + //#define ACS_PARAM_EXAMINEE_INFO 0x00200000 //¿¼ÉúÐÅÏ¢²ÎÊý + //#define ACS_PARAM_FAILED_FACE_INFO 0x00400000 //Éý¼¶É豸ÈËÁ³½¨Ä£Ê§°Ü¼Ç¼ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ[1,64],0´ú±íÃŽûÖ÷»ú + BYTE byRes[30]; +}NET_DVR_ACS_PARAM_TYPE, *LPNET_DVR_ACS_PARAM_TYPE; + +typedef struct tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byIOUseType; //ÓÃ;£¬0-½ûÓã¬1-¿ªÃÅ°´Å¥£¬2-ÃÅ״̬£¬0xff-×Ô¶¨Òå + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_VIDEO_INTERCOM_IOIN_CFG, *LPNET_DVR_VIDEO_INTERCOM_IOIN_CFG; + +typedef struct tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byIOUseType; //ÓÃ;£¬0-½ûÓã¬1-µçËø£¬0xff-×Ô¶¨Òå + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_VIDEO_INTERCOM_IOOUT_CFG, *LPNET_DVR_VIDEO_INTERCOM_IOOUT_CFG; + +typedef struct tagNET_DVR_ELEVATORCONTROL_CFG +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓÃÌÝ¿Ø£¬0-·ñ£¬1-ÊÇ + BYTE byRes1; //±£Áô + BYTE byInterfaceType; //½Ó¿ÚÀàÐÍ£¬0-ÎÞ£¬1-RS485,2-Íø¿Ú + BYTE byRS485Protocol; //RS485ЭÒéÀàÐÍ£¬0-δ֪£¬1-˽ÓУ¬0xff-×Ô¶¨Ò壬µ±byInterfaceTypeȡֵΪ1ʱÓÐЧ + BYTE byNetworkType; //Íø¿ÚЭÒéÀàÐÍ£¬0-δ֪£¬1-˽ÓУ¬0xff-×Ô¶¨Ò壬µ±byInterfaceTypeȡֵΪ2ʱÓÐЧ + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_ELEVATORCONTROL_CFG, *LPNET_DVR_ELEVATORCONTROL_CFG; + +typedef struct tagNET_DVR_ELEVATORCONTROL_CFG_V40 +{ + DWORD dwSize; // ½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓÃÌÝ¿Ø£¬0-·ñ£¬1-ÊÇ + BYTE byRes1; //±£Áô + BYTE byInterfaceType; //½Ó¿ÚÀàÐÍ£¬0-ÎÞ£¬1-RS485,2-Íø¿Ú + BYTE byRS485Protocol; //RS485ЭÒéÀàÐÍ£¬0-δ֪£¬1-˽ÓУ¬0xff-×Ô¶¨Ò壬µ±byInterfaceTypeȡֵΪ1ʱÓÐЧ + BYTE byNetworkType; //Íø¿ÚЭÒéÀàÐÍ£¬0-δ֪£¬1-˽ÓУ¬0xff-×Ô¶¨Ò壬µ±byInterfaceTypeȡֵΪ2ʱÓÐЧ + BYTE byRes2; //±£Áô + WORD wServerPort; //ÌÝ¿Ø·þÎñÆ÷¶Ë¿ÚºÅ£¬µ±Íø¿¨Ð­ÒéÀàÐÍΪ1-˽ÓРʱÓÐЧ + NET_DVR_IPADDR struServerIP; //ÌÝ¿Ø·þÎñÆ÷IP£¬µ±Íø¿¨Ð­ÒéÀàÐÍΪ1-˽ÓРʱÓÐЧ + BYTE byRes[256]; // ±£Áô×Ö½Ú +}NET_DVR_ELEVATORCONTROL_CFG_V40, *LPNET_DVR_ELEVATORCONTROL_CFG_V40; + +typedef struct tagNET_DVR_ELEVATORCONTROL_CFG_V50 +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓÃÌÝ¿Ø£¬0-·ñ£¬1-ÊÇ + BYTE byNegativeFloor; //¸ºÂ¥²ã²ãÊý + BYTE byInterfaceType; //½Ó¿ÚÀàÐÍ£¬0-ÎÞ£¬1-RS485,2-Íø¿Ú + BYTE byRS485Protocol; //RS485ЭÒéÀàÐÍ£¬0-δ֪£¬1-˽ÓУ¬0xff-×Ô¶¨Ò壬µ±byInterfaceTypeȡֵΪ1ʱÓÐЧ + BYTE byNetworkType; //Íø¿ÚЭÒéÀàÐÍ£¬0-δ֪£¬1-˽ÓУ¬0xff-×Ô¶¨Ò壬µ±byInterfaceTypeȡֵΪ2ʱÓÐЧ + BYTE byElevatorControlType; //ÌÝ¿ØÆ÷ÀàÐÍ£º0-ÎÞЧ£¬1-DS-K2201£¬2-DS-K2210£¬0xff-×Ô¶¨Òå + WORD wServerPort; //ÌÝ¿Ø·þÎñÆ÷¶Ë¿ÚºÅ£¬µ±Íø¿¨Ð­ÒéÀàÐÍΪ1-˽ÓРʱÓÐЧ + NET_DVR_IPADDR struServerIP; //ÌÝ¿Ø·þÎñÆ÷IP£¬µ±Íø¿¨Ð­ÒéÀàÐÍΪ1-˽ÓРʱÓÐЧ + BYTE sUserName[NET_DVR_LOGIN_USERNAME_MAX_LEN]; //Óû§Ãû£¬µ±Íø¿¨Ð­ÒéÀàÐÍΪ1-˽ÓРʱÓÐЧ£¨Ö»ÄÜÉèÖ㬲»ÄÜ»ñÈ¡£© + BYTE sPassword[NET_DVR_LOGIN_PASSWD_MAX_LEN]; //ÃÜÂ룬µ±Íø¿¨Ð­ÒéÀàÐÍΪ1-˽ÓРʱÓÐЧ£¨Ö»ÄÜÉèÖ㬲»ÄÜ»ñÈ¡£© + BYTE byRes[256]; //±£Áô×Ö½Ú +}NET_DVR_ELEVATORCONTROL_CFG_V50, *LPNET_DVR_ELEVATORCONTROL_CFG_V50; + +typedef struct tagNET_DVR_ROOM_CUSTOM_COND +{ + DWORD dwSize; + DWORD dwRoomNumber; //·¿¼äÊýÄ¿£¨ÉèÖÃʱÓÐЧ£© + BYTE byRes[128]; +}NET_DVR_ROOM_CUSTOM_COND, *LPNET_DVR_ROOM_CUSTOM_COND; + +typedef struct tagNET_DVR_ROOM_CUSTOM_CFG +{ + DWORD dwSize; + DWORD dwFormerRoomNo; //Ô­·¿¼äºÅ + DWORD dwCustomRoomNo; //×Ô¶¨ÒåÐòºÅ + BYTE byRes[128]; +}NET_DVR_ROOM_CUSTOM_CFG, *LPNET_DVR_ROOM_CUSTOM_CFG; + +typedef struct tagNET_DVR_ROOM_CUSTOM_STATUS +{ + DWORD dwSize; + DWORD dwFormerRoomNo; //Ô­·¿¼äºÅ + BYTE byStatus; //Ï·¢×´Ì¬£º0-ÎÞЧ£¬1-ʧ°Ü£¬2-´¦ÀíÖУ¬3-³É¹¦ + BYTE byRes[127]; +}NET_DVR_ROOM_CUSTOM_STATUS, *LPNET_DVR_ROOM_CUSTOM_STATUS; + +typedef struct tagNET_DVR_VIDEOINTERCOM_STREAM +{ + DWORD dwSize; + BYTE byVisDevID[MAX_NAMELEN]; // ¿ÉÊÓ¶Ô½²É豸±àºÅ£¬¼´³¤ºÅ£¬É豸ÀàÐÍΪIPCʱȫ²¿Îª0 + BYTE byDeviceName[NAME_LEN]; //É豸Ãû³Æ + BYTE bySourceType; //ÊÓƵԴÀàÐÍ£¬0ÎÞÒâÒ壬1-IPC¡¢2-DVR/DVS/NVR¡¢3-ÃÅ¿Ú»ú¡¢4-Χǽ»ú¡¢5-¶þ´ÎÈ·ÈÏ»ú + BYTE byRes[255]; //±£Áô +}NET_DVR_VIDEOINTERCOM_STREAM, LPNET_DVR_VIDEOINTERCOM_STREAM; + +#define UNLOCK_PASSWORD_LEN 8 //½â³ýÃÜÂ볤¶È +#define LOCAL_CONTROLLER_NAME_LEN 32//¾ÍµØ¿ØÖÆÆ÷Ãû³Æ³¤¶È +typedef struct tagNET_DVR_DOOR_CFG +{ + DWORD dwSize; + BYTE byDoorName[DOOR_NAME_LEN]; //ÃÅÃû³Æ + BYTE byMagneticType; //ÃÅ´ÅÀàÐÍ£¬0-³£±Õ£¬1-³£¿ª + BYTE byOpenButtonType; //¿ªÃÅ°´Å¥ÀàÐÍ£¬0-³£±Õ£¬1-³£¿ª + BYTE byOpenDuration; //¿ªÃųÖÐøʱ¼ä£¬1-255s£¨Â¥²ã¼ÌµçÆ÷¶¯×÷ʱ¼ä£© + BYTE byAccessibleOpenDuration; //ÌØÊâȺÌ忨¿ªÃųÖÐøʱ¼ä£¬1-255s + BYTE byMagneticAlarmTimeout; //ÃŴżì²â³¬Ê±±¨¾¯Ê±¼ä£¬0-255s£¬0±íʾ²»±¨¾¯ + BYTE byEnableDoorLock; //ÊÇ·ñÆôÓñÕÃÅ»ØËø£¬0-·ñ£¬1-ÊÇ + BYTE byEnableLeaderCard; //ÊÇ·ñÆôÓÃÊ׿¨³£¿ª¹¦ÄÜ£¬0-·ñ£¬1-ÊÇ + BYTE byLeaderCardMode; //Ê׿¨Ä£Ê½£¬0-²»ÆôÓÃÊ׿¨¹¦ÄÜ£¬1-Ê׿¨³£¿ªÄ£Ê½£¬2-Ê׿¨ÊÚȨģʽ£¨Ê¹ÓÃÁË´Ë×ֶΣ¬ÔòbyEnableLeaderCardÎÞЧ£© + DWORD dwLeaderCardOpenDuration; //Ê׿¨³£¿ª³ÖÐøʱ¼ä£¬1-1440min + BYTE byStressPassword[STRESS_PASSWORD_LEN]; //вÆÈÃÜÂë + BYTE bySuperPassword[SUPER_PASSWORD_LEN]; //³¬¼¶ÃÜÂë + BYTE byUnlockPassword[UNLOCK_PASSWORD_LEN]; //½â³ýÂëNET_DVR_LOCAL_CONTROLLER_STATUS + BYTE byUseLocalController; //Ö»¶Á£¬ÊÇ·ñÁ¬½ÓÔھ͵ؿØÖÆÆ÷ÉÏ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1; + WORD wLocalControllerID; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷ÐòºÅ£¬1-64,0´ú±íδע²á + WORD wLocalControllerDoorNumber; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷µÄÃűàºÅ£¬1-4,0´ú±íδע²á + WORD wLocalControllerStatus; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷ÔÚÏß״̬£º0-ÀëÏߣ¬1-ÍøÂçÔÚÏߣ¬2-»·Â·1ÉϵÄRS485´®¿Ú1£¬3-»·Â·1ÉϵÄRS485´®¿Ú2£¬4-»·Â·2ÉϵÄRS485´®¿Ú1£¬5-»·Â·2ÉϵÄRS485´®¿Ú2£¬6-»·Â·3ÉϵÄRS485´®¿Ú1£¬7-»·Â·3ÉϵÄRS485´®¿Ú2£¬8-»·Â·4ÉϵÄRS485´®¿Ú1£¬9-»·Â·4ÉϵÄRS485´®¿Ú2£¨Ö»¶Á£© + BYTE byLockInputCheck; //ÊÇ·ñÆôÓÃÃÅËøÊäÈë¼ì²â(1×Ö½Ú£¬0²»ÆôÓã¬1ÆôÓã¬Ä¬Èϲ»ÆôÓÃ) + BYTE byLockInputType; //ÃÅËøÊäÈëÀàÐÍ(1×Ö½Ú£¬0³£±Õ£¬1³£¿ª£¬Ä¬Èϳ£±Õ) + BYTE byDoorTerminalMode; //ÃÅÏà¹Ø¶Ë×Ó¹¤×÷ģʽ(1×Ö½Ú£¬0·À¼ô·À¶Ì£¬1ÆÕͨ£¬Ä¬ÈÏ·À¼ô·À¶Ì) + BYTE byOpenButton; //ÊÇ·ñÆôÓÿªÃÅ°´Å¥(1×Ö½Ú£¬0ÊÇ£¬1·ñ£¬Ä¬ÈÏÊÇ) + BYTE byLadderControlDelayTime; //ÌݿطÿÍÑÓ³Ùʱ¼ä£¬1-255min + BYTE byRes2[43]; +}NET_DVR_DOOR_CFG, *LPNET_DVR_DOOR_CFG; + +typedef struct tagNET_DVR_VIS_DEV_INFO +{ + DWORD dwSize; + BYTE szDevNumber[MAX_DEV_NUMBER_LEN]; //É豸±àºÅ + BYTE byRes[64]; //±£Áô +}NET_DVR_VIS_DEV_INFO,*LPNET_DVR_VIS_DEV_INFO; + +typedef struct tagNET_DVR_VIS_REGISTER_INFO +{ + DWORD dwSize; + DWORD dwID; //ID + BYTE szDevNumber[MAX_DEV_NUMBER_LEN]; //É豸±àºÅ + BYTE byMACAddr[MACADDR_LEN]; //macµØÖ· + BYTE byRes1[2]; //±£Áô + BYTE sSerialNumber[SERIALNO_LEN]; //É豸ÐòÁкŠ+ NET_DVR_IPADDR struDevIP; //É豸IPµØÖ· + NET_DVR_TIME_EX struRegisterTime; //×¢²áʱ¼ä + BYTE byRegisterType; //×¢²áÀàÐÍ£¬0-±£Áô¡¢1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú¡¢3-ÊÒÄÚ»ú¡¢4-Χǽ»ú¡¢5-±ðÊûÃÅ¿Ú»ú¡¢6-¶þ´ÎÈ·ÈÏ»ú¡¢7-8700¿Í»§¶Ë¡¢8-4200¿Í»§¶Ë + BYTE byRes[127]; //±£Áô +}NET_DVR_VIS_REGISTER_INFO,*LPNET_DVR_VIS_REGISTER_INFO; + +typedef struct tagNET_DVR_CALLER_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + WORD wBuildingNo; //Â¥ºÅ + SHORT wFloorNo; //²ãºÅ + BYTE byZoneNo; //ÆںŠ+ BYTE byUnitNo; //µ¥ÔªºÅ + BYTE byDevNo; //É豸±àºÅ + BYTE byDevType; //É豸ÀàÐÍ£¬1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú£¬3-ÊÒÄÚ»ú£¬4-Χǽ»ú£¬5-±ðÊûÃÅ¿Ú»ú£¬6-¶þ´ÎÈ·ÈÏ»ú£¬7-8700¿Í»§¶Ë£¬8-4200¿Í»§¶Ë£¬9-APP, 10- ÃÅÁå»ú£¬11-VOIP¿Í»§¶Ë£¬12-¼à¿ØµãIPCÉ豸 + BYTE byLockNum;//ËøÊýÁ¿0-°´ÕÕÀϵÄÂß¼­×ߣ¬ÆäËûÖµ-´ú±íʵ¼ÊËøµÄÊýÁ¿ + BYTE byHighDevNo; // É豸±àºÅ¸ß8λ,ÓÃÓÚÖ§³Ö1-9999µÄ·¶Î§ + BYTE byRes1[2]; // ±£Áô + BYTE byVoipNo[16]; // VOIP¿Í»§¶ËºÅÂë byDevType£ºÎª11ʱÓÐЧ + BYTE byRes[80]; // ±£Áô +}NET_DVR_CALLER_INFO,*LPNET_DVR_CALLER_INFO; + +typedef struct tagNET_DVR_CALL_STATUS +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byCallStatus; //»ñȡͨ»°×´Ì¬£¬1-ÎÞºô½Ð¡¢2-ÏìÁå¡¢3-ÕýÔÚͨ»° + BYTE byRes[127]; +}NET_DVR_CALL_STATUS, *LPNET_DVR_CALL_STATUS; + +#define MAX_SERVER_DEVICE_NUMBER 16 //×î´óÉ豸ÊýÁ¿ + +typedef struct tagNET_DVR_SERVER_DEVICE_CFG +{ + BYTE byDeviceName[NAME_LEN]; //É豸Ãû³Æ + BYTE byDeviceType; ////É豸ÀàÐÍ£¬1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú£¬3-ÊÒÄÚ»ú + BYTE byDeviceID; //ÃÅ¿Ú»ú±àºÅ + BYTE byLockNum; //ËøÊýÁ¿0-°´ÕÕÀϵÄÂß¼­×ߣ¬ÆäËûÖµ-´ú±íʵ¼ÊËøµÄÊýÁ¿ + BYTE byRes[5]; //±£Áô +}NET_DVR_SERVER_DEVICE_CFG,*LPNET_DVR_SERVER_DEVICE_CFG; + +typedef struct tagNET_DVR_SERVER_DEVICE_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwDeviceNum; //É豸Êý + NET_DVR_SERVER_DEVICE_CFG struDeviceCfg[MAX_SERVER_DEVICE_NUMBER]; //É豸ÐÅÏ¢ + BYTE byRes[200]; //±£Áô +}NET_DVR_SERVER_DEVICE_INFO,*LPNET_DVR_SERVER_DEVICE_INFO; + +typedef struct tagNET_DVR_VIDEO_CALL_PARAM +{ + DWORD dwSize; + DWORD dwCmdType; //ÐÅÁîÀàÐÍ 0-ÇëÇóºô½Ð£¬1-È¡Ïû±¾´Îºô½Ð£¬2-½ÓÌý±¾´Îºô½Ð 3-¾Ü¾ø±¾µØÀ´µçºô½Ð 4-±»½ÐÏìÁ峬ʱ 5-½áÊø±¾´Îͨ»°£¬6-É豸ÕýÔÚͨ»°ÖУ¬7-¿Í»§¶ËÕýÔÚͨ»°ÖУ¬8ÊÒÄÚ»ú²»ÔÚÏß + WORD wPeriod; //ÆÚºÅ, ·¶Î§[0,9] + WORD wBuildingNumber; //Â¥ºÅ + WORD wUnitNumber; //µ¥ÔªºÅ + SHORT wFloorNumber; //²ãºÅ + WORD wRoomNumber; //·¿¼äºÅ + WORD wDevIndex; //É豸±àºÅ + BYTE byUnitType; //É豸ÀàÐÍ£¬1-ÃÅ¿Ú»ú£¬2-¹ÜÀí»ú£¬3-ÊÒÄÚ»ú£¬4-Χǽ»ú£¬5-±ðÊûÃÅ¿Ú»ú£¬6-¶þ´ÎÈ·ÈÏ»ú£¬7-8700¿Í»§¶Ë£¬8-4200¿Í»§¶Ë£¬9-APP + BYTE byRes[115]; //±£Áô +}NET_DVR_VIDEO_CALL_PARAM,*LPNET_DVR_VIDEO_CALL_PARAM; + +#define MAX_SCREEN_ADDRESS_LEN 16 //ÌØÕ÷Âë×î´ó³¤¶È +#define MAX_DAY_TIME_POINT 8 //ÿÌì×î´óʱ¼äµã¸öÊý +#define MAX_TIME_POINT 16 //ÿÄê×î´óʱ¼äµã¸öÊý + +typedef struct tagNET_DVR_DEV_IP_INFO +{ + BYTE byUserName[NAME_LEN]; //Óû§Ãû + BYTE byPassWord[PASSWD_LEN]; //ÃÜÂë + NET_DVR_IPADDR struIPAddr; //IPµØÖ· + WORD wPort; //¶Ë¿ÚºÅ + BYTE byRes[24]; +}NET_DVR_DEV_IP_INFO, *LPNET_DVR_DEV_IP_INFO; + +typedef union tagNET_DVR_SCREEN_BASE_INFO +{ + BYTE byScreenAddress[MAX_SCREEN_ADDRESS_LEN]; //ÆÁÄ»ÌØÕ÷Â룬É豸Ìí¼Ó·½Ê½Îª0ʱÓÐЧ + NET_DVR_DEV_IP_INFO struIPInfo; //ÆÁÄ»ipµØÖ·ÐÅÏ¢ + BYTE byRes[100]; +}NET_DVR_SCREEN_BASE_INFO,*LPNET_DVR_SCREEN_BASE_INFO; + +typedef struct tagNET_DVR_SCREEN_INDEX_CFG +{ + DWORD dwSize; + BYTE byEnbale; //ʹÄÜ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byDevAddType; //É豸Ìí¼Ó·½Ê½£¬0-°´ÌØÕ÷Âë(·þÎñÆ÷ºÍÆÁĻʹÓô®¿ÚͨÐÅ)£¬1-°´IPµØÖ·(·þÎñÆ÷ºÍÆÁĻʹÓÃÍøÂçͨÐÅ) + BYTE byRes1[2]; + NET_DVR_SCREEN_BASE_INFO struScreenBaseInfo; //ÆÁÄ»É豸»ù±¾ÐÅÏ¢ + BYTE byRes[32]; +}NET_DVR_SCREEN_INDEX_CFG,*LPNET_DVR_SCREEN_INDEX_CFG; + +//Ä£ÄâÒ£¿ØÆ÷²ÎÊý +typedef struct tagNET_DVR_SIMULATE_REMOTE_CTRL +{ + BYTE byControlType; //1-µçÔ´¿ª£¬2-µçÔ´¹Ø£¬3-ÐźÅÔ´£¬4-²Ëµ¥£¬5-È·¶¨£¬6-ÉÏ£¬7-Ï£¬8-×ó£¬9-ÓÒ, 10-INFO, 11-·µ»ØÉÏÒ»²ã,12-Êý×Ö°´¼ü + BYTE byControlParam; //²Ù×÷²ÎÊý£¬²Ù×÷ÀàÐÍΪ12ʱ£¬±íʾ°´¼üÖµ(0-9)£¬ÆäËû²Ù×÷ʱ´Ë²ÎÊýÎÞЧ + BYTE byRes[14]; +}NET_DVR_SIMULATE_REMOTE_CTRL, *LPNET_DVR_SIMULATE_REMOTE_CTRL; + +//ÆÁĻάǽ²ÎÊý +typedef struct tagNET_DVR_SCREEN_WALL_CTRL +{ + BYTE byEnable; //״̬¿ª¹Ø¡£0-Ϊ¹Ø±Õ£»1-Ϊ¿ªÆô + BYTE byRes[15]; +}NET_DVR_SCREEN_WALL_CTRL, *LPNET_DVR_SCREEN_WALL_CTRL; + +//ÇøÓò·Å´ó»¹Ô­²ÎÊý +typedef struct tagNET_DVR_AREA_ZOOM_CFG +{ + BYTE byCmd; //ÇøÓò·Å´ó»¹Ô­Ö¸Á1-·Å´ó£¬2-»¹Ô­ + BYTE byRes[3]; + NET_DVR_RECTCFG struArea; //ÐèÒª·Å´óµÄÇøÓò£¬ÒÔ1920*1920×÷ΪÆÁÄ»×Ü´óС£¬»¹Ô­Ê±´Ë²ÎÊýÎÞЧ +}NET_DVR_AREA_ZOOM_CFG, *LPNET_DVR_AREA_ZOOM_CFG; + +typedef union tagNET_DVR_SCREEN_CONTROL_PARAM +{ + NET_DVR_INPUT_INTERFACE_CTRL struInputCtrl; + NET_DVR_DISPLAY_COLOR_CTRL struDisplayCtrl; + NET_DVR_DISPLAY_POSITION_CTRL struPositionCtrl; + NET_DVR_SIMULATE_REMOTE_CTRL struSimulateRemoteCrtl; //Ä£ÄâÒ£¿Ø°´¼ü + NET_DVR_SCREEN_WALL_CTRL struScreenWallCtrl; //ÆÁĻάǽ²ÎÊý + NET_DVR_AREA_ZOOM_CFG struZoomArea; //ÇøÓò·Å´ó»¹Ô­²ÎÊý + BYTE byRes[16]; +}NET_DVR_SCREEN_CONTROL_PARAM, *LPNET_DVR_SCREEN_CONTROL_PARAM; + +typedef struct tagNET_DVR_SCREEN_CONTROL +{ + DWORD dwSize; + DWORD dwCommand ; /* ¿ØÖÆ·½·¨ 1-¿ª 2-¹Ø 3-ÆÁÄ»ÊäÈëÔ´Ñ¡Ôñ 4-ÏÔʾµ¥ÔªÑÕÉ«¿ØÖÆ 5-ÏÔʾµ¥ÔªÎ»ÖÿØÖÆ*/ + BYTE byProtocol; //´®¿ÚЭÒéÀàÐÍ,1:LCD-S1,2:LCD-S2 + BYTE byRes1[3]; + NET_DVR_SCREEN_CONTROL_PARAM struControlParam; + BYTE byRes2[52]; +}NET_DVR_SCREEN_CONTROL, *LPNET_DVR_SCREEN_CONTROL; + +typedef struct tagNET_DVR_SCREEN_CONTROL_V41 +{ + DWORD dwSize; + BYTE bySerialNo; //´®¿ÚºÅ + BYTE byRes[2]; + BYTE byProtocol; // ´®¿ÚЭÒéÀàÐÍ 1-LCD-S1,2-LCD-S2,3-LCD-L1,4-LCD-DLP,5-LCD-S3,6-LCD-D20£¬7-LCD-L2,8-LCD-Z1£¬ + //9-LCD-D20/D,10-LCD-D20/S,11-LCD-D20/P,12-LCD-D20/T,13-LCD-D20/F,14-LCD-D20/DF,15-LCD-D20/FS, + //16-LCD-D20/FP,17-LCD-D20/FT,18-LCD-D5022,19-LCD-D5032,20-LCD-D5042+,21-LCD-D20/Z 0xff-ÎÞЧ£¬Ê¹ÓÃÔ¤ÏȰ󶨵ÄЭÒéÀàÐÍ + DWORD dwCommand ; /* ¿ØÖÆ·½·¨ 1-¿ª 2-¹Ø 3-ÆÁÄ»ÊäÈëÔ´Ñ¡Ôñ 4-ÏÔʾµ¥ÔªÑÕÉ«¿ØÖÆ 5-ÏÔʾµ¥ÔªÎ»ÖÿØÖÆ£¬6-Ä£ÄâÒ£¿Ø°´¼ü,7-ÏÔʾÆÁĻ״̬, + 8-ÏÔʾÆÁÄ»ÌØÕ÷Â루´ËÃüÁî¾ØÐÎÇøÓòÆðʼ×ø±êÉèΪ£¨0,0£©£¬¿í¸ß¾ùÉèΪ0xffffffff£©, 9-ÆÁĻάǽ,10-»Ö¸´ÆÁĻĬÈϲÎÊý£¬11-ÏÔʾIP£¨´ËÃüÁî¾ØÐÎÇøÓòÆðʼ×ø±êÉèΪ£¨0,0£©£¬¿í¸ß¾ùÉèΪ0xffffffff£©,12-ÆÁÄ»USBÉý¼¶ 13-ÇøÓò·Å´ó»¹Ô­*/ + NET_DVR_SCREEN_CONTROL_PARAM struControlParam; + BYTE byWallNo; // µçÊÓǽºÅ + BYTE byDevNo; //É豸ºÅ + BYTE bySubboardNo; //×Ó°åºÅ + BYTE byRes1; + NET_DVR_RECTCFG_EX struRect;//¸ù¾Ý×ø±ê½øÐмÆË㣬»ù×¼×ø±ê + BYTE byRes2[28]; +}NET_DVR_SCREEN_CONTROL_V41, *LPNET_DVR_SCREEN_CONTROL_V41; + +typedef struct tagNET_DVR_MSC_SPLICE_CFG +{ + DWORD dwSize; + BYTE bySpliceNo; //Æ´½ÓÆÁºÅ + BYTE byWallNo; //µçÊÓǽºÅ + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[1]; + NET_DVR_RECTCFG_EX struRectCfg; //ÐèÒª½øÐÐÆ´½ÓµÄÇøÓò£¬»ñÈ¡µÄʱºò´Ë²ÎÊýÌî0 + BYTE byRes2[32]; +}NET_DVR_MSC_SPLICE_CFG,*LPNET_DVR_MSC_SPLICE_CFG; + +typedef struct tagNET_DVR_MSC_SCREEN_INTERFACE_CFG +{ + DWORD dwSize; + BYTE byInterfaceType; //ÊäÈëÔ´Ë÷Òý£¬¼ûö¾Ù INPUT_INTERFACE_TYPE + BYTE byNoSignalPic; //ÎÞÐźŻ­Ãæģʽ£¬1-À¶ÆÁ£¬2-ºÚÆÁ£¬3-LOGO»­Ãæ + BYTE byRes[30]; +}NET_DVR_MSC_SCREEN_INTERFACE_CFG,*LPNET_DVR_MSC_SCREEN_INTERFACE_CFG; + +//±³¹â²ÎÊý +typedef struct tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG +{ + DWORD dwSize; + BYTE byBacklight; //±³¹â£¬0-100 + BYTE byRes[15]; +}NET_DVR_MSC_SCREEN_BACKLIGHT_CFG,*LPNET_DVR_MSC_SCREEN_BACKLIGHT_CFG; + +//»­Öл­²ÎÊý +typedef struct tagNET_DVR_MSC_SCREEN_PIP_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓû­Öл­ 0-²»ÆôÓà 1-ÆôÓà + BYTE bySubWindowSource; //×Ó»­ÃæÐźÅÔ´£¬²Î¿¼Ã¶¾ÙINPUT_INTERFACE_TYPE + BYTE bySubWindowBorderColor; //×Ó»­Ãæ±ß¿òÑÕÉ«£¬ 1-À¶É«£¬2-ºÚÉ« + BYTE byRes1; + NET_DVR_RECTCFG_EX struPosition; //×Ó»­ÃæλÖã¬ÆÁÄ»×Ü´óСΪ1920*1920 + BYTE byRes2[16]; +}NET_DVR_MSC_SCREEN_PIP_CFG,*LPNET_DVR_MSC_SCREEN_PIP_CFG; + +typedef struct tagNET_DVR_SCREEN_WORK_STATE +{ + DWORD dwSize; + BYTE byFanStatus;//·çÉÈ״̬£¬0-¹Ø£¬1-¿ª + BYTE byFanExceptionStatus; //·çÉÈÒ쳣״̬£¬0-²»Ö§³Ö£¬1-Õý³££¬2-Òì³£ + BYTE byRes1[2]; + DWORD dwWorkingHours; //ÀÛ»ý¹¤×÷ʱ³¤£¬µ¥Î»£ºÐ¡Ê± + BYTE byVersion[VERSION_LEN];//Èí¼þ°æ±¾ºÅ + int iTemperature; //°å¿¨Î¶ȣ¬¾«È·µ½¸ö룬µ¥Î»£ºÉãÊÏ¶È + BYTE byTempState; //°å¿¨Î¶È״̬£¬0-²»Ö§³Ö£¬1-Õý³££¬2-Òì³£ + BYTE byRes[31]; +}NET_DVR_SCREEN_WORK_STATE,*LPNET_DVR_SCREEN_WORK_STATE; + +//¿ª»úlogo²ÎÊý +typedef struct tagNET_DVR_BOOT_LOGO_CFG +{ + DWORD dwSize; + BYTE byEnable; //¿ª»úÊÇ·ñÏÔʾlogo,0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byRes[31]; +}NET_DVR_BOOT_LOGO_CFG,*LPNET_DVR_BOOT_LOGO_CFG; +//ÒôƵ²ÎÊý +typedef struct tagNET_DVR_LCD_AUDIO_CFG +{ + DWORD dwSize; + BYTE byMute; //ÊÇ·ñ¾²Òô£¬0-·ñ£¬1-ÊÇ + BYTE byVolume; //ÒôÁ¿´óС£¬0-100 + char byBalance; //ÉùµÀƽºâ£¬-50-+50 + BYTE byRes[33]; +}NET_DVR_LCD_AUDIO_CFG, *LPNET_DVR_LCD_AUDIO_CFG; + +//ÆÁÄ»²ÎÊýÁªºÏÌå +typedef union tagNET_DVR_MSC_SCREEN_PARAM +{ + NET_DVR_MSC_SCREEN_INTERFACE_CFG struInterfaceCfg; //ÊäÈëÔ´²ÎÊý + NET_DVR_SCREEN_FAN_WORK_MODE_CFG struFanWorkMode; //·çÉȹ¤×÷ģʽ²ÎÊý + NET_DVR_SCREEN_VGA_CFG struVgaCfg; //VGAÐźŲÎÊý + NET_DVR_SCREEN_MENU_CFG struMenuCfg; //ÆÁÄ»²Ëµ¥²ÎÊý + NET_DVR_VIDEO_OUT_CFG struOutEffectCfg; //ÏÔʾЧ¹û²ÎÊý + NET_DVR_COLOR_TEMPERATURE_CFG struColorTemperatureCfg; //ɫβÎÊý + NET_DVR_ADC_CFG struAdcCfg; //ADC²ÎÊý + NET_DVR_SCREEN_EDGE_CFG struScreenEdgeCfg; //ÆÁÄ»±ßÔµ²ÎÊý + NET_DVR_MSC_SCREEN_BACKLIGHT_CFG struBacklight; //±³¹â²ÎÊý + NET_DVR_MSC_SCREEN_PIP_CFG struPicInPicCfg; //»­Öл­²ÎÊý + NET_DVR_DEFOG_LCD struDefog; //È¥Îí²ÎÊý + NET_DVR_SCREEN_WORK_STATE struWorkState; //ÆÁÄ»¹¤×÷״̬ + NET_DVR_BOOT_LOGO_CFG struBootLogoCfg; //¿ªÊ¼ÏÔʾlogo²ÎÊý + NET_DVR_LCD_AUDIO_CFG struAudioCfg; //ÒôƵ²ÎÊý + BYTE byRes[256]; +}NET_DVR_MSC_SCREEN_PARAM,*LPNET_DVR_MSC_SCREEN_PARAM; + +typedef struct tagNET_DVR_MSC_SCREEN_PARAM_CFG +{ + DWORD dwSize; + BYTE byParamType; //²ÎÊýÀàÐÍ£¬1-ÊäÈëÔ´²ÎÊý£¬2-·çÉȹ¤×÷ģʽ²ÎÊý£¬3-VGAÐźŲÎÊý£¬4-ÆÁÄ»²Ëµ¥²ÎÊý£¬5-ÏÔʾЧ¹û²ÎÊý£¬6-ɫβÎÊý£¬7-ADC²ÎÊý£¬8-ÆÁÄ»±ßÔµ²ÎÊý£¬9-±³¹â²ÎÊý£¬10-»­Öл­²ÎÊý£¬11-͸Îí²ÎÊý£¬12-ÆÁÄ»¹¤×÷״̬£¨Ö»ÄÜ»ñÈ¡£©£¬13-¿ª»úLOGOÊÇ·ñÏÔʾ²ÎÊý 14-ÒôƵ²ÎÊý + BYTE byRes1[3]; + NET_DVR_MSC_SCREEN_PARAM struParam; //ÆÁÄ»²ÎÊý + BYTE byRes2[32]; +}NET_DVR_MSC_SCREEN_PARAM_CFG,*LPNET_DVR_MSC_SCREEN_PARAM_CFG; + +typedef struct tagNET_DVR_MSC_SCREEN_REMOTE_CFG +{ + DWORD dwSize; + BYTE byWallNo; //µçÊÓǽºÅ + BYTE byRes1[3]; + NET_DVR_RECTCFG_EX struRectCfg; //ÆÁÄ»ÇøÓò + NET_DVR_MSC_SCREEN_PARAM_CFG struScreenParam; //ÅäÖõÄÆÁÄ»²ÎÊý + BYTE byRes2[32]; +}NET_DVR_MSC_SCREEN_REMOTE_CFG,*LPNET_DVR_MSC_SCREEN_REMOTE_CFG; + +typedef struct tagNET_DVR_MSC_SCREEN_PARAM_COND +{ + DWORD dwSize; + BYTE byWallNo; //µçÊÓǽºÅ + BYTE byParamType; //²ÎÊýÀàÐÍ£¬1-ÊäÈëÔ´²ÎÊý£¬2-·çÉȹ¤×÷ģʽ²ÎÊý£¬3-VGAÐźŲÎÊý£¬4-ÆÁÄ»²Ëµ¥²ÎÊý£¬5-ÏÔʾЧ¹û²ÎÊý£¬6-ɫβÎÊý£¬7-ADC²ÎÊý£¬8-ÆÁÄ»±ßÔµ²ÎÊý£¬9-±³¹â²ÎÊý£¬10-»­Öл­²ÎÊý£¬11-͸Îí²ÎÊý£¬12-ÆÁÄ»¹¤×÷״̬£¨Ö»ÄÜ»ñÈ¡£©£¬13-¿ª»úLOGOÊÇ·ñÏÔʾ²ÎÊý 14-ÒôƵ²ÎÊý + BYTE byRes1[2]; + NET_DVR_RECTCFG_EX struRectCfg; //ÆÁÄ»ÇøÓò + BYTE byRes2[32]; +}NET_DVR_MSC_SCREEN_PARAM_COND,*LPNET_DVR_MSC_SCREEN_PARAM_COND; + +typedef struct tagNET_DVR_SWITCH_DAY_TIME +{ + BYTE byEnable; //ÊÇ·ñÆôÓøÃʱ¼äµã,0-²»ÆôÓã¬1-ÆôÓà + BYTE bySwitchType; //¿ª¹Ø»úÀàÐÍ£¬0-¹Ø»ú£¬1-¿ª»ú + BYTE byRes1[2]; + NET_DVR_DAYTIME struTimePoint; //¿ª¹Ø»úʱ¼äµã + BYTE byRes2[8]; +}NET_DVR_SWITCH_DAY_TIME,*LPNET_DVR_SWITCH_DAY_TIME; + +typedef struct tagNET_DVR_SWITCH_TIME_POINT +{ + BYTE byEnable; //ÊÇ·ñÆôÓøÃʱ¼äµã,0-²»ÆôÓã¬1-ÆôÓà + BYTE bySwitchType; //¿ª¹Ø»úÀàÐÍ£¬0-¹Ø»ú£¬1-¿ª»ú + BYTE byRes1[2]; + NET_DVR_SYSTEM_TIME struTimePoint; //¿ª¹Ø»úʱ¼äµã + BYTE byRes2[16]; +}NET_DVR_SWITCH_TIME_POINT,*LPNET_DVR_SWITCH_TIME_POINT; + +typedef struct tagNET_DVR_TIME_SWITCH_CFG +{ + DWORD dwSize; + NET_DVR_SWITCH_DAY_TIME struSwitchDayTime[MAX_DAYS][MAX_DAY_TIME_POINT]; //ÖÜ¿ª¹Ø»ú¼Æ»® + NET_DVR_SWITCH_TIME_POINT struSwitchTimePoint[MAX_TIME_POINT]; //°´Ê±¼äµã¿ª¹Ø»ú²ÎÊý + BYTE byRes1[3]; + BYTE byEnable;//ÊÇ·ñÆôÓö¨Ê±¿ª¹Ø»ú,0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes[60]; +}NET_DVR_TIME_SWITCH_CFG,*LPNET_DVR_TIME_SWITCH_CFG; + +typedef struct tagNET_DVR_VIDEO_WALL_AREA +{ + DWORD dwSize; + BYTE byWallNo; //µçÊÓǽºÅ + BYTE byRes1[3]; + NET_DVR_RECTCFG_EX struRect; //ÆÁÄ»·¶Î§ + BYTE byRes2[32]; +}NET_DVR_VIDEO_WALL_AREA, *LPNET_DVR_VIDEO_WALL_AREA; + +typedef struct tagNET_DVR_DELAY_TIME +{ + DWORD dwSize; + DWORD dwDelayTime; //ÑÓʱʱ¼ä£¬0-3000£¬µ¥Î»£ºms + BYTE byRes[32]; +}NET_DVR_DELAY_TIME,*LPNET_DVR_DELAY_TIME; + +//Ë«Ä¿±ê¶¨ÀàÐÍ +typedef enum _BV_CALIBRATION_TYPE_ENUM_ +{ + ENUM_BV_CALIBRATION_NONE = 0, //δ±ê¶¨ + ENUM_BV_CALIBRATION_DIRECT = 1, //Ë«Ä¿Ö±½Ó±ê¶¨ + ENUM_BV_CALIBRATION_SAMPLE = 2, //Ë«Ä¿Ñù±¾±ê¶¨ +} BV_CALIBRATION_TYPE_ENUM; + + +//Ñù±¾±ê¶¨µã +typedef struct tagNET_DVR_BV_SAMPLE_CALIB_POINT +{ + BYTE byCalibPtID; //±ê¶¨µãID£¬·¶Î§[1,5]¡£±íʾ´ËµãÔÚË«Ä¿±ê¶¨¹ý³ÌÖеÄÐòºÅ + BYTE byRes1[3]; //±£Áô + NET_VCA_POINT struPoint; //±ê¶¨µã×ø±ê + BYTE byRes2[16]; //±£Áô +}NET_DVR_BV_SAMPLE_CALIB_POINT,*LPET_DVR_BV_SAMPLE_CALIB_POINT; + +//¿ªÊ¼Ñù±¾±ê¶¨ÊäÈë²ÎÊý +typedef struct tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM +{ + DWORD dwCameraHeight; //ÉãÏñ»ú¸ß¶È£¬µ¥Î»cm + DWORD dwHumanHeight; //ÈËÌåÉí¸ß£¬µ¥Î»cm + BYTE byRes[248]; //±£Áô +}NET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM,*LPNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM; + +//ÉèÖÃÑù±¾±ê¶¨ÊäÈë²ÎÊý +typedef struct tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM +{ + NET_DVR_BV_SAMPLE_CALIB_POINT struCalibPoint; //±ê¶¨µã¡£¼´µ±ÈËÔ±±£³ÖÖ±Á¢ÐÐ×ߣ¬ÈËÁ³³öÏÖÔÚÌض¨»­ÃæÇøÓòÖÐʱ£¬´Ëµã±íʾ¶ÔÏóÁ½ÑÛÁ¬ÏßµÄÖе㡣 + BYTE byRes[228]; //±£Áô +}NET_DVR_BV_SAMPLE_CALIB_SET_PARAM,*LPNET_DVR_BV_SAMPLE_CALIB_SET_PARAM; + +//½áÊøÑù±¾±ê¶¨ÊäÈë²ÎÊý +typedef struct tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM +{ + BYTE byRes[256]; //±£Áô +}NET_DVR_BV_SAMPLE_CALIB_END_PARAM,*LPNET_DVR_BV_SAMPLE_CALIB_END_PARAM; + +//Ñù±¾±ê¶¨ÊäÈë²ÎÊýÁªºÏÌå +typedef union tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION +{ + BYTE byRes[256]; //±£Áô + NET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM struCalibBegin; //¿ªÊ¼±ê¶¨ÊäÈë²ÎÊý + NET_DVR_BV_SAMPLE_CALIB_SET_PARAM struCalibSet; //ÉèÖñ궨ÊäÈë²ÎÊý + NET_DVR_BV_SAMPLE_CALIB_END_PARAM struCalibEnd; //½áÊø±ê¶¨ÊäÈë²ÎÊý +}NET_DVR_BV_SAMPLE_CALIB_PARAM_UNION,*LPNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION; + +//Ñù±¾±ê¶¨ÃüÁîö¾Ù +typedef enum _BV_SAMPLE_CALIB_CMD_ENUM +{ + ENUM_BV_SAMPLE_CALIB_BEGIN = 1, //¿ªÊ¼±ê¶¨ + ENUM_BV_SAMPLE_CALIB_SETTING = 2, //ÉèÖòÎÊý + ENUM_BV_SAMPLE_CALIB_END = 3 //½áÊø±ê¶¨ +}BV_SAMPLE_CALIB_CMD_ENUM; + +//Ñù±¾±ê¶¨½á¹¹Ìå +typedef struct tagNET_DVR_BV_SAMPLE_CALIBRATION +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byCommand; //±ê¶¨ÃüÁ²Î¼ûBV_SAMPLE_CALIB_CMD _ENUM + BYTE byRes1[3]; //±£Áô + NET_DVR_BV_SAMPLE_CALIB_PARAM_UNION uCalibParam; //±ê¶¨ÊäÈë²ÎÊý£¬È¡ÖµÒÀÀµÓÚ×Ö¶ÎbyCommand + BYTE byRes2[256] ; //±£Áô +}NET_DVR_BV_SAMPLE_CALIBRATION,*LPNET_DVR_BV_SAMPLE_CALIBRATION; + + +//Ë«Ä¿Ñù±¾±ê¶¨ÐÅÏ¢ +typedef struct tagNET_DVR_BV_SAMPLE_CALIB_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwCameraHeight; //ÉãÏñ»ú¸ß¶È£¬µ¥Î»cm + float fPitchAngle; //ÉãÏñ»ú¸©ÊӽǶÈ[0¡ã, 60¡ã], + float fInclineAngle; //ÉãÏñ»úÇãб½Ç¶È[-20¡ã,20¡ã] + NET_DVR_BV_SAMPLE_CALIB_POINT struCalibPoint[MAX_SAMPLE_NUM]; //±ê¶¨µã×é + NET_DVR_BV_SAMPLE_CALIB_POINT struCalibPointEx[MAX_SAMPLE_NUM_EX/*7*/]; //±ê¶¨µã×éÀ©Õ¹ + BYTE byRes[60]; //±£Áô +}NET_DVR_BV_SAMPLE_CALIB_CFG,*LPNET_DVR_BV_SAMPLE_CALIB_CFG; + +//˫ĿͼÏñУÕý²ÎÊý½á¹¹Ìå +typedef struct tagNET_DVR_BINOC_RECTIFY_PARAM +{ + float fCamInternalMatrix[3][3]; //Ïà»úÄڲξØÕ󣬰üÀ¨½¹¾à¼°Ö÷µã×ø±ê + float fDistCoeffs[8]; //¾µÍ·»û±äϵÊý + float fRotateMatrix[3][3]; //УÕýºóµÄÐýת¾ØÕó + float fProjectMatrix[3][4]; //УÕýºóµÄͶӰ¾ØÕó + BYTE byRes[64]; //±£Áô +}NET_DVR_BINOC_RECTIFY_PARAM, *LPNET_DVR_BINOC_RECTIFY_PARAM; + +//×óÓÒÏà»úУÕý²ÎÊý +typedef struct _tagNET_DVR_BV_CORRECT_PARAM +{ + DWORD dwSize; //½á¹¹´óС + float fReprojectMatrix[4][4]; //ÖØͶӰ¾ØÕó + NET_DVR_BINOC_RECTIFY_PARAM struLCamParam; //×óÏà»úУÕý²ÎÊý + NET_DVR_BINOC_RECTIFY_PARAM struRCamParam; //ÓÒÏà»úУÕý²ÎÊý + BYTE byLensType; //¾µÍ·½¹¾àÀàÐÍ£¬0-δ֪,1-8mm,2-12mm,3-16mm,4-25mm,5-35mm,6-50mm,7-4mm,8-6mm,9-2.0mm,10-2.8mm,11-4.3mm + BYTE byRes1[3]; //±£Áô + /*RotateMatrix ÊÇË«Ä¿±ê¶¨ºó×óÏà»úÏà¶ÔÓÚÓÒÏà»úµÄÐýת¾ØÕó, + TransMatrixÊÇƽÒƾØÕó, + RotateMatrixºÍTransMatrixÁªºÏÆðÀ´ÃèÊöµÄÊÇ×óÏà»úÏà¶ÔÓÚÓÒÏà»úµÄλÖùØϵ*/ + float fRotateMatrix[3][3]; //Ðýת¾ØÕó + float fTransMatrix[3]; //ƽÒƾØÕó + DWORD dwOriImgWidth; //ԭʼ±ê¶¨Í¼ÏñµÄ¿í£¨Èç¹ûÊÇ1920*1080·Ö±æÂʵÄͼÏñ£¬ÔòΪ1920£© + DWORD dwOriImgHeight; //ԭʼ±ê¶¨Í¼ÏñµÄ¸ß£¨Èç¹ûÊÇ1920*1080·Ö±æÂʵÄͼÏñ£¬ÔòΪ1080£© + BYTE byRes[196]; //±£Áô +} NET_DVR_BV_CORRECT_PARAM,*LPNET_DVR_BV_CORRECT_PARAM; + +//Êä³öÊÓƵÀàÐÍ +typedef struct tagNET_DVR_OUTPUT_VIDEO_TYPE +{ + DWORD dwSize; //½á¹¹´óС + BYTE byType; //Êä³öÊÓƵÀàÐÍ£¬1-Æ´½Óͼ£¬2-Éî¶Èͼ + BYTE byRes[63]; //±£Áô +}NET_DVR_OUTPUT_VIDEO_TYPE,*LPNET_DVR_OUTPUT_VIDEO_TYPE; + +#define MAX_CHECK_485CHAN 64 //485×Ô¼ìÉ豸ͨµÀºÅ¸öÊý + +typedef struct tagNET_DVR_DEVICE_SELF_CHECK_STATE +{ + DWORD dwSize; + DWORD dwRS485Chan[MAX_CHECK_485CHAN];//RS485ͨ¶ÏÇé¿öÓÐÎÊÌâµÄͨµÀºÅ£¬Öµ±íʾͨµÀºÅ£¬Î»±íʾ²ÛλºÅ + DWORD dwSensorChan[4];//Ä£ÄâÁ¿ÎÞЧµÄͨµÀºÅ£¬°´Î»±íʾ + BYTE byRes[32]; // ±£Áô×Ö½Ú +}NET_DVR_DEVICE_SELF_CHECK_STATE, *LPNET_DVR_DEVICE_SELF_CHECK_STATE; + +//ÉèÖÃÍêÈ«»ñÈ¡³ö³§Öµ +typedef struct tagNET_DVR_COMPLETE_RESTORE_INFO_ +{ + DWORD dwSize ; //½á¹¹Ì峤¶È + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_COMPLETE_RESTORE_INFO, *LPNET_DVR_COMPLETE_RESTORE_INFO; + +typedef struct tagNET_DVR_UPLOAD_PICTURE_INFO +{ + DWORD dwSize; + DWORD dwChannel; //ͼƬ¶ÔÓ¦µÄͨµÀºÅ + BYTE byPictureType;//ͼƬ¸ñʽ,0-bmp£¬1-jpeg£¬2-PNG 3-SWF 4-GIF + BYTE byRes1[3]; + NET_DVR_TIME_V30 struTime; //ͼƬÉú³Éʱ¼ä + char* sPictureBuffer;//ͼƬ»º³åÇø + DWORD dwPictureLength;//ͼƬ³¤¶È + DWORD dwPicMangeNo; //ͼƬ¹ÜÀíºÅ + BYTE sPicName[NAME_LEN]; //ͼƬÃû³Æ + BYTE byUseType; //ͼƬʹÓÃÀàÐÍ£º0-ÆÁ±£Í¼Æ¬ 1-¿ª»úlogoͼƬ + BYTE byRes[91]; +}NET_DVR_UPLOAD_PICTURE_INFO,*LPNET_DVR_UPLOAD_PICTURE_INFO; + +#define MAX_UPLOADFILE_URL_LEN 240 + +typedef struct tagNET_DVR_UPLOAD_FILE_RET +{ + BYTE sUrl[MAX_UPLOADFILE_URL_LEN] ; //url + BYTE byRes[260]; +} NET_DVR_UPLOAD_FILE_RET,*LPNET_DVR_UPLOAD_FILE_RET; + +typedef struct tagNET_DVR_FACE_EXTRA_INFO +{ + NET_VCA_RECT struVcaRect[MAX_FACE_PIC_NUM]; //ÈËÁ³×Óͼ×ø±êÐÅÏ¢ + BYTE byRes[64]; +}NET_DVR_FACE_EXTRA_INFO, *LPNET_DVR_FACE_EXTRA_INFO; +typedef union tagNET_DVR_PIC_EXTRA_INFO_UNION +{ + BYTE byUnionLen[544]; //ÁªºÏÌ峤¶È£¬ÎÞʵ¼ÊÒâÒå + NET_DVR_FACE_EXTRA_INFO struFaceExtraInfo; //ÈËÁ³Õì²âÐÅÏ¢ +}NET_DVR_PIC_EXTRA_INFO_UNION, *LPNET_DVR_PIC_EXTRA_INFO_UNION; + +typedef struct tagNET_DVR_FIND_PICTURE_V40 //²éÕÒ½á¹û½á¹¹Ìå +{ + char sFileName[PICTURE_NAME_LEN];//ͼƬÃû + NET_DVR_TIME struTime;//ͼƬµÄʱ¼ä + DWORD dwFileSize;//ͼƬµÄ´óС + char sCardNum[CARDNUM_LEN_V30]; //¿¨ºÅ + BYTE byPlateColor ;//²Î¿¼½á¹¹ VCA_PLATE_COLOR + BYTE byVehicleLogo;//²Î¿¼½á¹¹ VLR_VEHICLE_CLASS + BYTE byFileType ; //ÎļþÀàÐÍ£¬ :0¶¨Ê±×¥Í¼1 Òƶ¯Õì²âץͼ 2 ±¨¾¯×¥Í¼3 ±¨¾¯ | Òƶ¯Õì²âץͼ 4 ±¨¾¯ & Òƶ¯Õì²âץͼ 6 ÊÖ¶¯×¥Í¼ ,9-ÖÇÄÜͼƬ,10- PIR±¨¾¯£¬11- ÎÞÏß±¨¾¯£¬12- ºô¾È±¨¾¯, 0xa Ô¤ÀÀʱ½Øͼ£¬0xd ÈËÁ³Õì²â, 0xe Ô½½çÕì²â£¬0xf ÈëÇÖÇøÓòÕì²â£¬0x10 ³¡¾°±ä¸üÕì²â, 0x11-É豸±¾µØ»Ø·Åʱ½Øͼ, 0x12-ÖÇÄÜÕì²â, 0x32-·ÀÇø±¨¾¯, 0x33-½ô¼±ÇóÖú, 0x34-ÒµÎñ×Éѯ + BYTE byRecogResult ;//ʶ±ð½á¹û²Î¿¼½á¹¹VTR_RESULT + char sLicense[MAX_LICENSE_LEN/*16*/]; //³µÅƺÅÂë + BYTE byEventSearchStatus; //Á¬ÐøͼƬ±íʾͬһ²éÕÒ½á¹ûµÄʱºò£¬0-±íʾºóÃæûÓÐͼƬÐÅÏ¢£¬1-±íʾºóÃ滹ÓÐͼƬÐÅÏ¢¡£×ܹ²Í¼Æ¬ÐÅÏ¢°üÀ¨×îºóÒ»ÕÅ״̬Ϊ0µÄͼƬ¡£ + BYTE byRes1[2]; // ±£Áô×Ö½Ú + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + float fFaceSnapTemperature; // ÈËÁ³×¥ÅÄζÈÐÅÏ¢£¬¾«È·µ½Ð¡Êýµãºó1λ £¬(¸¡µãÊý + 100£© * 10 È¡ÕýÊý´«Ê䣩£¬µ¥Î»¹Ì¶¨ÎªÉãÊ϶ȣ¨¡æ£©¡£µ±byFileTypeΪ0x25-ÈËÁ³×¥ÅÄʱÓÐЧ£¬ÆäÓàÇé¿öϸÃ×Ö¶ÎΪ0Öµ + BYTE byRes[68]; // ±£Áô×Ö½Ú + NET_DVR_PIC_EXTRA_INFO_UNION uPicExtraInfo; //ͼƬ¸½¼þÐÅÏ¢ +}NET_DVR_FIND_PICTURE_V40,*LPNET_DVR_FIND_PICTURE_V40; + +typedef struct tagNET_DVR_FIND_PICTURE_V50 //²éÕÒ½á¹û½á¹¹Ìå +{ + char sFileName[PICTURE_NAME_LEN];//ͼƬÃû + NET_DVR_TIME struTime;//ͼƬµÄʱ¼ä + DWORD dwFileSize;//ͼƬµÄ´óС + char sCardNum[CARDNUM_LEN_V30]; //¿¨ºÅ + BYTE byPlateColor;//²Î¿¼½á¹¹ VCA_PLATE_COLOR + BYTE byVehicleLogo;//²Î¿¼½á¹¹ VLR_VEHICLE_CLASS + BYTE byFileType; //ÎļþÀàÐÍ£¬ :0¶¨Ê±×¥Í¼1 Òƶ¯Õì²âץͼ 2 ±¨¾¯×¥Í¼3 ±¨¾¯ | Òƶ¯Õì²âץͼ 4 ±¨¾¯ & Òƶ¯Õì²âץͼ 6 ÊÖ¶¯×¥Í¼ ,9-ÖÇÄÜͼƬ,10- PIR±¨¾¯£¬11- ÎÞÏß±¨¾¯£¬12- ºô¾È±¨¾¯,\ + 0xa Ô¤ÀÀʱ½Øͼ£¬0xd ÈËÁ³Õì²â, 0xe Ô½½çÕì²â£¬0xf ÈëÇÖÇøÓòÕì²â£¬0x10 ³¡¾°±ä¸üÕì²â, 0x11-É豸±¾µØ»Ø·Åʱ½Øͼ, 0x12-ÖÇÄÜÕì²â, 0x70-ͨµÀ¶¨Ê±×¥Í¼ + BYTE byRecogResult;//ʶ±ð½á¹û²Î¿¼½á¹¹VTR_RESULT + char sLicense[MAX_LICENSE_LEN/*16*/]; //³µÅƺÅÂë + BYTE byEventSearchStatus; //Á¬ÐøͼƬ±íʾͬһ²éÕÒ½á¹ûµÄʱºò£¬0-±íʾºóÃæûÓÐͼƬÐÅÏ¢£¬1-±íʾºóÃ滹ÓÐͼƬÐÅÏ¢¡£×ܹ²Í¼Æ¬ÐÅÏ¢°üÀ¨×îºóÒ»ÕÅ״̬Ϊ0µÄͼƬ¡£ + NET_DVR_ADDRESS struAddr; //ͼƬËùÔڵĵØÖ·ÐÅÏ¢£¬Í¼Æ¬ÏÂÔØʱÓõ½ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14 + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30,0, 30, 45 + BYTE byRes[253]; // ±£Áô×Ö½Ú + NET_DVR_PIC_EXTRA_INFO_UNION uPicExtraInfo; //ͼƬ¸½¼þÐÅÏ¢ +}NET_DVR_FIND_PICTURE_V50, *LPNET_DVR_FIND_PICTURE_V50; + + +typedef struct tagNET_DVR_THUMBNAILS_COND +{ + DWORD dwSize; // ½á¹¹Ìå´óС + NET_DVR_STREAM_INFO struStreamInfo; //Á÷ÐÅÏ¢ + BYTE bySearchDataType; // ²éÕÒÊý¾ÝÀàÐÍ 0-IÖ¡Êý¾Ý£¨CVR һ·µÄÇé¿öÏ£¬1s×î¶à28¸öIÖ¡£©£¬1-ͼƬÊý¾Ý + BYTE byRes[3]; // ±£Áô×Ö½Ú + NET_DVR_TIME_V30 struStartTime; //²éÕÒ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struStopTime; // ²éÕÒ½áÊøʱ¼ä + DWORD dwIntervalTime; //¼ä¸ôʱ¼ä£¬µ¥Î»Ã룬·¶Î§£º0~24*60*60£¬Èô²éÕÒ½áÊøʱ¼äµÈÓÚ²éÕÒ¿ªÊ¼Ê±¼ä£¬ÔòÌî0£¬ÌîÆäËûÖµÎÞЧ + BYTE byRes1[512]; // ±£Áô×Ö½Ú +}NET_DVR_THUMBNAILS_COND, *LPNET_DVR_THUMBNAILS_COND; + +typedef struct tagNET_DVR_THUMBNAILS_RESULT //²éÕÒ½á¹û½á¹¹Ìå +{ + BYTE byResultDataType; // ²éÕÒ½á¹ûÊý¾ÝÀàÐÍ0-IÖ¡Êý¾Ý£¨CVR һ·µÄÇé¿öÏ£¬1s×î¶à28¸öIÖ¡£©£¬1-ϵͳͷÊý¾Ý£¬ 2-ͼƬÊý¾Ý + BYTE byIFrameType; // IÖ¡ÀàÐÍ£¬0-Êý¾ÝÖ¡£¬1-²Î¿¼Ö¡£¨±¾Êý¾ÝÖ»ÐèËÍÈë²¥·Å¿â£¬µ«ÊDz»ÐèҪתΪͼƬÏÔʾ£© + BYTE byRes1[2]; // ±£Áô×Ö½Ú + NET_DVR_TIME_SEARCH struTime; //Êý¾Ýʱ¼ä + BYTE byRes[252]; // ±£Áô×Ö½Ú + DWORD dwFileSize; //Êý¾Ý´óС + char* pBuffer; //Êý¾ÝÐÅÏ¢(Êý¾ÝÀàÐͺÍÌõ¼þ½á¹¹ÌåÖÐNET_DVR_THUMBNAILS_RESULT µÄ×ֶΠbyResultDataType ÖµÏà¹Ø) +}NET_DVR_THUMBNAILS_RESULT, *LPNET_DVR_THUMBNAILS_RESULT; + +typedef struct tagNET_DVR_REGIONENTRANCE_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byAlarmConfidence; // ±¨¾¯ÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRecordConfidence; // ¼ÏñÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRes[60]; //±£Áô +}NET_DVR_REGIONENTRANCE_REGION, *LPNET_DVR_REGIONENTRANCE_REGION; + +typedef struct tagNET_DVR_REGION_ENTRANCE_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byEnableHumanMisinfoFilter;// ÆôÓÃÈËÌåÈ¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableVehicleMisinfoFilter;// ÆôÓóµÁ¾È¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[1]; + NET_DVR_REGIONENTRANCE_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_REGION_ENTRANCE_DETECTION,*LPNET_DVR_REGION_ENTRANCE_DETECTION; + +typedef struct tagNET_DVR_SMART_REGION_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + DWORD dwRegion; //ÇøÓòIDºÅ +}NET_DVR_SMART_REGION_COND, *LPNET_DVR_SMART_REGION_COND; + +typedef struct tagNET_DVR_ENTRANCE_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byDetectionTarget; + BYTE byAlarmConfidence; //±¨¾¯ÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRecordConfidence; //¼ÏñÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRes[60]; //±£Áô +}NET_DVR_ENTRANCE_REGION, *LPNET_DVR_ENTRANCE_REGION; + +typedef struct tagNET_DVR_DENSEFOGDETECTION_CFG +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[0,100] + BYTE byRes[258]; +}NET_DVR_DENSEFOGDETECTION_CFG, *LPNET_DVR_DENSEFOGDETECTION_CFG; + +typedef struct tagNET_DVR_EVENT_TRIGGER +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_HANDLEEXCEPTION_V41 struHandleException; //Òì³£´¦Àí·½Ê½ + DWORD dwRelRecordChan[MAX_CHANNUM_V40]; //ʵ¼Ê´¥·¢Â¼ÏñͨµÀ£¬°´Öµ±íʾ£¬²ÉÓýô´ÕÐÍÅÅÁУ¬´Óϱê0¿ªÊ¼Ë³Ðò¶ÁÈ¡£¬ÖмäÓöµ½0xffffffffÔòºóÐøÎÞЧ¡£ + NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; //ÆôÓõÄÔ¤ÖõãÐÅÏ¢ + NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; //ÆôÓÃѲº½¹¦ÄÜͨµÀµÄÐÅÏ¢ + NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; //µ÷ÓÃÔÆ̨¹ì¼£µÄͨµÀÐÅÏ¢ + BYTE byDirection;//´¥·¢·½Ïò£º0-±£Áô£»1-È«²¿£»2-ÕýÏò£»3-·´Ïò + BYTE byRes2[255]; +}NET_DVR_EVENT_TRIGGER,*LPNET_DVR_EVENT_TRIGGER; + +typedef struct tagNET_DVR_EVENT_SCHEDULE +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + NET_DVR_SCHEDTIME struHolidayAlarmTime[MAX_TIMESEGMENT_V30]; /*¼ÙÈÕ²¼·Àʱ¼ä*/ + BYTE bySceneID[MAX_DAYS][MAX_TIMESEGMENT_V30];//³¡¾°ºÅ,Ä¿Ç°Ö§³Ö1~4³¡¾°£¬0ΪÎÞЧ¡£¸Ã³¡¾°ºÅÓë²¼·Àʱ¼äÖÐÿ¸öʱ¼ä¶ÎÒ»Ò»¶ÔÓ¦¡£ + BYTE byRes[72]; +}NET_DVR_EVENT_SCHEDULE,*LPNET_DVR_EVENT_SCHEDULE; + +typedef struct tagNET_DVR_ANR_ARMING_HOST +{ + DWORD dwSize;//sizeof(NET_DVR_ANR_ ARMING_HOST) + NET_DVR_IPADDR struANRArmingHostIpAddr; //¶ÏÍøÐø´«µÄÖ÷»úIPµØÖ· + WORD wANRAlarmHostPort; //¶ÏÍøÐø´«µÄÖ÷»ú²¼·À¶Ë¿ÚºÅ + BYTE byANRAlarmType;//¶ÏÍøÐø´«Á¬½ÓÀàÐÍ£¬ 0-SDK˽ÓжÏÍøÐø´«Á¬½Ó£¬1-ehome¶ÏÍøÐø´«Á¬½Ó + BYTE byConfirmMechanismEnabled;// ÊÇ·ñ¿ªÆôÈ·ÈÏ»úÖÆ·½Ê½²¼·ÀÁ¬½Ó£¬0-±£Áô£¬1-ûÓпªÆô 2-¿ªÆô + BYTE byRes[512]; //±£Áô×Ö½Ú +}NET_DVR_ANR_ARMING_HOST, *LPNET_DVR_ANR_ARMING_HOST; + +typedef struct tagNET_DVR_REGIONEXITING_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byAlarmConfidence; //±¨¾¯ÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRecordConfidence; //¼ÏñÖÃÐŶÈ, 0-µÍ,1-½ÏµÍ,2-½Ï¸ß,3-¸ß + BYTE byRes[60]; //±£Áô +}NET_DVR_REGIONEXITING_REGION, *LPNET_DVR_REGIONEXITING_REGION; + +typedef struct tagNET_DVR_REGION_EXITING_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byEnableHumanMisinfoFilter;// ÆôÓÃÈËÌåÈ¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableVehicleMisinfoFilter;// ÆôÓóµÁ¾È¥Îó±¨ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[1]; + NET_DVR_REGIONEXITING_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_REGION_EXITING_DETECTION,*LPNET_DVR_REGION_EXITING_DETECTION; + +typedef struct tagNET_DVR_LOITERING_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byTimeThreshold; //ʱ¼äãÐÖµ£¬·¶Î§[0-10]£¬µ¥Î»£ºs + BYTE byRes[62]; //±£Áô +}NET_DVR_LOITERING_REGION, *LPNET_DVR_LOITERING_REGION; + +typedef struct tagNET_DVR_LOITERING_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_LOITERING_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_LOITERING_DETECTION,*LPNET_DVR_LOITERING_DETECTION; + +typedef struct tagNET_DVR_GROUPDETECTION_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE byObjectOccup; //Õ¼±È£¬·¶Î§[1-100] + BYTE bySensitivityLevel; //ÁéÃô¶È£¬·¶Î§1-100£¬Ä¬ÈÏ65 + BYTE byDurationTime; //³ÖÐøʱ¼ä£¬·¶Î§1-600Ã룬ĬÈÏ3Ãë + BYTE byFilterTime; //¹ýÂËʱ¼ä£¬·¶Î§1-10·ÖÖÓ£¨±íʾ£¬´¥·¢±¨¾¯ºó£¬ÔÚ´Ëʱ¼äÄÚ²»ÔÙ´¥·¢±¨¾¯£© + BYTE byMinTriggerNumber; //×îµÍ´¥·¢ÈËÊý£¬·¶Î§2-50ÈË£¬Ä¬ÈÏ5ÈË + BYTE byLinkageTime; //Áª¶¯Çò»ú¼ì²âʱ¼ä£¬·¶Î§5-30Ã룬ĬÈÏ5Ã루ǹ»ú´¥·¢ºó£¬Áª¶¯Çò»úתµ½´¥·¢±¨¾¯µÄλÖúóÍ£ÁôµÄʱ¼ä£¬¸ÃÅäÖò»Çø·Öǹ»úÇò»úÊÇ·ñͬһ¸öÕË»§µÇ¼£¬¿ÉÒÔ²»Í¬£© + BYTE byRes[58]; //±£Áô +}NET_DVR_GROUPDETECTION_REGION, *LPNET_DVR_GROUPDETECTION_REGION; +typedef struct tagNET_DVR_POS_HIDDEN_INFORMATION +{ + char szKeyWord[KEY_WORD_NUM/*3*/][KEY_WORD_LEN/*128*/]; + BYTE byRes[128]; +}NET_DVR_POS_HIDDEN_INFORMATION, *LPNET_DVR_POS_HIDDEN_INFORMATION; + +typedef struct tagNET_DVR_HIDDEN_INFORMATION_CFG +{ + DWORD dwSize; + BYTE byFuncType;//0-Pos¹¦ÄÜ + BYTE Res1[3]; + NET_DVR_POS_HIDDEN_INFORMATION struPosInfo; + BYTE byRes[1024]; +}NET_DVR_HIDDEN_INFORMATION_CFG, *LPNET_DVR_HIDDEN_INFORMATION_CFG; + +typedef struct tagNET_DVR_GROUP_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_GROUPDETECTION_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_GROUP_DETECTION,*LPNET_DVR_GROUP_DETECTION; + +typedef struct tagNET_DVR_RAPIDMOVE_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + /* + ¼ì²âÄ¿±ê£¬¿ÉÖ§³Ö¶àÑ¡£¬¾ßÌ嶨ÒåΪ£º + 0~ËùÓÐÄ¿±ê£¨±íʾ²»Ëø¶¨¼ì²âÄ¿±ê£¬ËùÓÐÄ¿±ê¶¼½«½øÐмì²â£© + 0x01 ~ ÈË£¬ + 0x02 ~ ³µ£¬ + 0x04 ~ ÆäËû£¬ + ¸Ã×Ö¶ÎÖ§³Ö¶àÑ¡£¬°´Î»È¡Öµ£¬ÀýÈç3±íʾ1+2. + */ + BYTE byDetectionTarget; + BYTE byRes[62]; //±£Áô +}NET_DVR_RAPIDMOVE_REGION, *LPNET_DVR_RAPIDMOVE_REGION; + +typedef struct tagNET_DVR_RAPIDMOVE_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_RAPIDMOVE_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_RAPIDMOVE_DETECTION,*LPNET_DVR_RAPIDMOVE_DETECTION; + +typedef struct tagNET_DVR_PARKING_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byTimeThreshold; //ʱ¼äãÐÖµ£¬·¶Î§[0-10]£¬µ¥Î»£ºs + BYTE byRes[62]; //±£Áô +}NET_DVR_PARKING_REGION, *LPNET_DVR_PARKING_REGION; + +typedef struct tagNET_DVR_PARKING_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_PARKING_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_PARKING_DETECTION,*LPNET_DVR_PARKING_DETECTION; + +typedef struct tagNET_DVR_UNATTENDED_BAGGAGE_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byTimeThreshold; //ʱ¼äãÐÖµ£¬·¶Î§[0-10]£¬µ¥Î»£ºs + WORD wTimeThreshold;//ʱ¼äãÐÖµ£¬·¶Î§[5-3600], µ¥Î»£ºs + BYTE byTimeThresholdMode;//(ֻд×ֶΣ¬ÓÃÓÚ¼æÈÝÇøÓò)0-×Ö¶ÎbyTimeThresholdÉúЧ£¬1-×Ö¶ÎwTimeThresholdÉúЧ + BYTE byRes[59]; //±£ÁôÁô +}NET_DVR_UNATTENDED_BAGGAGE_REGION, *LPNET_DVR_UNATTENDED_BAGGAGE_REGION; + +typedef struct tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_UNATTENDED_BAGGAGE_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_UNATTENDED_BAGGAGE_DETECTION,*LPNET_DVR_UNATTENDED_BAGGAGE_DETECTION; + +typedef struct tagNET_DVR_ATTENDED_BAGGAGE_REGION +{ + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1-100] + BYTE byTimeThreshold; //ʱ¼äãÐÖµ£¬·¶Î§[0-10]£¬µ¥Î»£ºs + WORD wTimeThreshold;//ʱ¼äãÐÖµ£¬·¶Î§[5-3600], µ¥Î»£ºs + BYTE byTimeThresholdMode;//(ֻд×ֶΣ¬ÓÃÓÚ¼æÈÝÇøÓò)0-×Ö¶ÎbyTimeThresholdÉúЧ£¬1-×Ö¶ÎwTimeThresholdÉúЧ + BYTE byRes[59]; //±£Áô +}NET_DVR_ATTENDED_BAGGAGE_REGION, *LPNET_DVR_ATTENDED_BAGGAGE_REGION; + +typedef struct tagNET_DVR_ATTENDED_BAGGAGE_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_ATTENDED_BAGGAGE_REGION struRegion[MAX_REGION_NUM]; + BYTE byRes2[128]; +}NET_DVR_ATTENDED_BAGGAGE_DETECTION,*LPNET_DVR_ATTENDED_BAGGAGE_DETECTION; + +typedef struct tagNET_DVR_REGION_CLIP_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + DWORD dwStreamType; //ÂëÁ÷ÀàÐÍ£º0- Ö÷ÂëÁ÷£¬1- ×ÓÂëÁ÷£¬2- µÚÈýÂëÁ÷ + BYTE byRes[8]; +}NET_DVR_REGION_CLIP_COND, *LPNET_DVR_REGION_CLIP_COND; + +typedef struct tagNET_DVR_REGION_CLIP_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + WORD wResolutionWidth; //·Ö±æÂʵij¤ + WORD wResolutionHeight; //·Ö±æÂʵĿí + NET_VCA_POLYGON struRegion[MAX_REGION_NUM]; + BYTE byRes2[64]; +}NET_DVR_REGION_CLIP_CFG, *LPNET_DVR_REGION_CLIP_CFG; + +#define MAX_DIALNUM_LENGTH 32 +typedef struct tagNET_DVR_WIRELESSDIAL_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñÆôÓÃÎÞÏß²¦ºÅ£º0-·ñ£¬1- ÊÇ + BYTE byDialMode; // 0-×Ô¶¯£¨Auto£©¡¢1-ÊÖ¶¯£¨Manual£©£¬Ä¬ÈÏ×Ô¶¯£¬ÊÖ¶¯Ä£Ê½Ï¿ÉÉèÖò¦ºÅ¼Æ»®¡¢ÏÂÏßʱ¼ä¡¢ÊÖ¶¯²¦ºÅ + BYTE byNetworkMode; //0-×Ô¶¯£¬1-4GÓÅÏÈ£¬2-3GÓÅÏÈ£¬3-ÊÖ¶¯Çл»2G£¬4-ÊÖ¶¯Çл»3G£¬5-ÊÖ¶¯Çл»4G£¬6-ÓÐÏßÓÅÏÈ + BYTE byRes1; + BYTE byDialNum[MAX_DIALNUM_LENGTH]; //²¦ºÅºÅÂë + BYTE byUserName[NAME_LEN]; //Óû§Ãû + BYTE byPassword[NAME_LEN]; //ÃÜÂë + BYTE byAPNName[NAME_LEN]; //APN + BYTE byUIMCardNum[NAME_LEN]; //ÊÖ»úºÅÂë + BYTE byVerifProtocol; // 0-×Ô¶¯£¨Auto£©£¬1-CHAP£¬2-PAP + BYTE byRes2; + WORD wMTU; //MTU + DWORD dwOffineTime; //ÏÂÏßʱ¼ä£¬30-65535£¬µ¥Î»Ã룬ÊÖ¶¯Ä£Ê½ÏÂÓÐЧ + BYTE byNetAPN[NAME_LEN]; //˽ÓÐרÍøAPN×Ö¶ÎÅäÖà + BYTE byEnabled4G; //ÊÇ·ñ¿ªÆô4G¹¦ÄÜ£º0-·ñ£¬1- ÊÇ + BYTE byEnabledDNS; //ÊÇ·ñ¿ªÆôDNS¹¦ÄÜ£º0-·ñ£¬1- ÊÇ + BYTE byRes3[30]; +}NET_DVR_WIRELESSDIAL_CFG, *LPNET_DVR_WIRELESSDIAL_CFG; + +typedef struct tagNET_DVR_WIRELESSDIAL_SCHEDULE +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; /*²¼·Àʱ¼ä*/ + NET_DVR_SCHEDTIME struHolidayAlarmTime[MAX_TIMESEGMENT_V30]; //¼ÙÈÕ²¼·Àʱ¼ä¶Î + BYTE byRes[128]; +}NET_DVR_WIRELESSDIAL_SCHEDULE,*LPNET_DVR_WIRELESSDIAL_SCHEDULE; + +#define MAX_LENGTH_32 32 +typedef struct tagNET_DVR_WIRELESSDIAL_STATUS +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byRealtimeMode[MAX_LENGTH_32]; //ʵʱģʽ(CDMA 1x¡¢EVDO¡¢HYBRID¡¢GSM¡¢GPRS¡¢EDGE¡¢WCDMA¡¢HSDPA¡¢HSUPA¡¢HSPA¡¢TDSCDMA¡¢TD-LTE¡¢FDD-LTE) + BYTE byUIMStatus[MAX_LENGTH_32]; /*UIM״̬(UNKNOWN-δ֪,VALID-ÓÐЧ,NOVALID-ÎÞЧ,ROAM-ÂþÓÎ,NOEXIST-²»´æÔÚ, + WRONGPINCODE-PINÂë´íÎó,NONETWORKSERVICE-ÎÞÍøÂç·þÎñ, + ONLYSUPPORTEMERGENCYCALL-ÍøÂç½öÖ§³Ö½ô¼±ºô½Ð£¬PINCODELOCKED¡ªPINÂëËø¶¨*/ + DWORD dwSignalQuality; //ÐźÅÖÊÁ¿£¬1-5 + BYTE byDialStatus[MAX_LENGTH_32]; /*²¦ºÅ״̬Âë(disconnect-²¦ºÅ¶Ï¿ª,dialing-ÕýÔÚ²¦ºÅ,success-²¦ºÅ³É¹¦,shmError-²¦ºÅÒì³£, + certificationFailure-ÈÏ֤ʧ°Ü,invalidDialingCharacters-²¦ºÅ×Ö·ûÎÞЧ, + networkTimeout ¨CÍøÂ糬ʱ,wirelessModemError¡ªÎÞÏßÄ£¿é´íÎó,SIMError---SIM¿¨´íÎó,,networkError-ÍøÂç´íÎó£¬unknown ¨Cδ֪´íÎó)*/ + NET_DVR_IPADDR struIpAddr; //IPµØÖ· + NET_DVR_IPADDR struIPMask; //ÑÚÂëµØÖ· + NET_DVR_IPADDR struGatewayIPMask; //Íø¹ØµØÖ· + NET_DVR_IPADDR struDnsServerIpAddr; //DNSµØÖ· + BYTE byRes[256]; +}NET_DVR_WIRELESSDIAL_STATUS,*LPNET_DVR_WIRELESSDIAL_STATUS; + +typedef struct tagNET_DVR_WIRELESSDIAL_CONNECT +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwInterface; //Íø¿¨±àºÅ£¬1,2¡­¡­ + BYTE byEnableConnect; //ÊÇ·ñÁ¬Íø£¬0-¶ÏÍø£¬1-Á¬Íø + BYTE byRes[255]; +}NET_DVR_WIRELESSDIAL_CONNECT_PARAM,*LPNET_DVR_WIRELESSDIAL_CONNECT_PARAM; + + +typedef struct tagNET_DVR_LITESTORAGE +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable; /*ʹÄÜ 0-²»ÆôÓÃ,1-ÆôÓÃ*/ + BYTE byStorageTime;/*´æ´¢Ê±¼ä 1-30 ĬÈÏ7Ìì*/ + BYTE byLevel; //µÈ¼¶²ÎÊý£¬0-ÎÞЧֵ£¨±£Áô£©£¬1-µÍ£¬2-ÖÐ(ĬÈÏ)£¬3-¸ß£» + BYTE byRes; + float fCapacity;//¿ÉÓÃSD¿¨Â¼Ïñ¿Õ¼ä£¬Ö»¶Á + BYTE byDefLowStorageTime;// µÍģʽÏÂÍƼöÌìÊý Ö»¶Á + BYTE byDefMediumStorageTime; // ÖÐģʽÏÂÍƼöÌìÊý Ö»¶Á + BYTE byDefHighStorageTime; // ¸ßģʽÏÂÍƼöÌìÊý Ö»¶Á + BYTE byRes1[61]; +}NET_DVR_LITESTORAGE,*LPNET_DVR_LITESTORAGE; + +typedef struct tagNET_DVR_CALIBRATION +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_VCA_POLYGON struRegion;//±ê¶¨ÇøÓò + BYTE byRes[64]; +}NET_DVR_CALIBRATION,*LPNET_DVR_CALIBRATION; + +typedef struct tagNET_DVR_STD_CONFIG +{ + void* lpCondBuffer; //[in]Ìõ¼þ²ÎÊý(½á¹¹Ìå¸ñʽ),ÀýÈçͨµÀºÅµÈ.¿ÉÒÔΪNULL + DWORD dwCondSize; //[in] lpCondBufferÖ¸ÏòµÄÄÚ´æ´óС + void* lpInBuffer; //[in]ÊäÈë²ÎÊý(½á¹¹Ìå¸ñʽ),ÉèÖÃʱ²»ÎªNULL£¬»ñȡʱΪNULL + DWORD dwInSize; //[in] lpInBufferÖ¸ÏòµÄÄÚ´æ´óС + void* lpOutBuffer; //[out]Êä³ö²ÎÊý(½á¹¹Ìå¸ñʽ),»ñȡʱ²»ÎªNULL,ÉèÖÃʱΪNULL + DWORD dwOutSize; //[in] lpOutBufferÖ¸ÏòµÄÄÚ´æ´óС + void* lpStatusBuffer; //[out]·µ»ØµÄ״̬²ÎÊý(XML¸ñʽ),»ñÈ¡³É¹¦Ê±²»»á¸³Öµ,Èç¹û²»ÐèÒª,¿ÉÒÔÖÃNULL + DWORD dwStatusSize; //[in] lpStatusBufferÖ¸ÏòµÄÄÚ´æ´óС + void* lpXmlBuffer; //[in/out]byDataType = 1ʱÓÐЧ,xml¸ñʽÊý¾Ý + DWORD dwXmlSize; //[in/out]lpXmlBufferÖ¸ÏòµÄÄÚ´æ´óС,»ñȡʱͬʱ×÷ΪÊäÈëºÍÊä³ö²ÎÊý£¬»ñÈ¡³É¹¦ºó»áÐ޸Ļáʵ¼Ê³¤¶È£¬ÉèÖÃʱ±íʾʵ¼Ê³¤¶È£¬¶ø²»ÊÇÕû¸öÄÚ´æ´óС + BYTE byDataType; //[in]ÊäÈë/Êä³ö²ÎÊýÀàÐÍ,0-ʹÓýṹÌåÀàÐÍlpInBuffer/lpOutBufferÓÐЧ,1-ʹÓÃXMLÀàÐÍlpXmlBufferÓÐЧ + BYTE byRes[23]; +}NET_DVR_STD_CONFIG,*LPNET_DVR_STD_CONFIG; + +typedef struct DWORDtagNET_DVR_STD_ABILITY +{ + void* lpCondBuffer; //[in]Ìõ¼þ²ÎÊý(Âë×Ö¸ñʽ),ÀýÈçͨµÀºÅµÈ.¿ÉÒÔΪNULL + DWORD dwCondSize; //[in] dwCondSizeÖ¸ÏòµÄÄÚ´æ´óС + void* lpOutBuffer; //[out]Êä³ö²ÎÊý(XML¸ñʽ),²»ÎªNULL + DWORD dwOutSize; //[in] lpOutBufferÖ¸ÏòµÄÄÚ´æ´óС + void* lpStatusBuffer; //[out]·µ»ØµÄ״̬²ÎÊý(XML¸ñʽ),»ñÈ¡³É¹¦Ê±²»»á¸³Öµ,Èç¹û²»ÐèÒª,¿ÉÒÔÖÃNULL + DWORD dwStatusSize; //[in] lpStatusBufferÖ¸ÏòµÄÄÚ´æ´óС + DWORD dwRetSize; //[out]»ñÈ¡µ½µÄÊý¾Ý³¤¶È(lpOutBuffer»òÕßlpStatusBufferÖ¸ÏòµÄʵ¼ÊÊý¾Ý³¤¶È) + BYTE byRes[32]; //±£Áô×Ö½Ú +}NET_DVR_STD_ABILITY,*LPNET_DVR_STD_ABILITY; + +typedef struct tagNET_DVR_STD_CONTROL +{ + void* lpCondBuffer; //[in]Ìõ¼þ²ÎÊý(Âë×Ö¸ñʽ),ÀýÈçͨµÀºÅµÈ.¿ÉÒÔΪNULL + DWORD dwCondSize; //[in] dwCondSizeÖ¸ÏòµÄÄÚ´æ´óС + void* lpStatusBuffer; //[out]·µ»ØµÄ״̬²ÎÊý(XML¸ñʽ),»ñÈ¡³É¹¦Ê±²»»á¸³Öµ,Èç¹û²»ÐèÒª,¿ÉÒÔÖÃNULL + DWORD dwStatusSize; //[in] lpStatusBufferÖ¸ÏòµÄÄÚ´æ´óС + void* lpXmlBuffer; //[in/out]byDataType = 1ʱÓÐЧ,xml¸ñʽÊý¾Ý + DWORD dwXmlSize; //[in/out]lpXmlBufferÖ¸ÏòµÄÄÚ´æ´óС,»ñȡʱͬʱ×÷ΪÊäÈëºÍÊä³ö²ÎÊý£¬»ñÈ¡³É¹¦ºó»áÐ޸Ļáʵ¼Ê³¤¶È£¬ÉèÖÃʱ±íʾʵ¼Ê³¤¶È£¬¶ø²»ÊÇÕû¸öÄÚ´æ´óС + BYTE byDataType; //[in]ÊäÈë/Êä³ö²ÎÊýÀàÐÍ,0-ʹÓýṹÌåÀàÐÍlpCondBufferÓÐЧ,1-ʹÓÃXMLÀàÐÍlpXmlBufferÓÐЧ + BYTE byRes[55]; +}NET_DVR_STD_CONTROL, *LPNET_DVR_STD_CONTROL; + +#define MAX_FILE_PATH_LEN 256 //Îļþ·¾¶³¤¶È +typedef struct tagNET_DVR_MIME_UNIT +{ + //¸ñʽÈçÏ + //Content-Disposition: form-data; name="upload"; filename="C:\Users\test\Desktop\11.txt" + //Content-Type: text/plain + char szContentType[32]; //¶ÔÓ¦Content-Type + char szName[MAX_FILE_PATH_LEN]; //¶ÔÓ¦name×ֶΠ+ char szFilename[MAX_FILE_PATH_LEN]; //¶ÔÓ¦filename×ֶΠ+ DWORD dwContentLen; //ContentµÄ³¤¶È£¬´óСÏÞÖÆ512KÒÔÄÚ + char* pContent; //Êý¾ÝÖ¸Õë + BYTE bySelfRead; // 0-Íâ½ç´«ÈëÎļþ 1-ÄÚ²¿¶ÁÈ¡Êý¾Ý£¨Í¨¹ýszFilename´«µÝÍêÕû·¾¶£©£¬Ï·¢Êý¾Ýʱ¸Ã×Ö¶ÎÉúЧ£¬»ñÈ¡Êý¾ÝʱÎÞЧ + BYTE byRes[15]; +}NET_DVR_MIME_UNIT, *LPNET_DVR_MIME_UNIT; + +typedef struct tagNET_DVR_MIME_DATA +{ + BYTE byContentType; //ÎļþÀàÐÍ 0-ÎÞЧ, 1-json, 2-bmp + BYTE byRes1[3]; //±£Áô + void *lpContent; //ÎļþÄÚÈÝ£¬Èç¹ûÖ¸ÕëΪ¿Õ£¬±íʾÎÞÎļþ + DWORD dwContentSize; //ÎļþÄÚÈÝ´óС£¬´óСÏÞÖÆΪ512kÒÔÄÚ + char sContentID[32]; //±íµ¥¸ñʽÖÐContent-IDÍ·ÓòµÄÖµ£¬ÓëISAPI±¨ÎÄÖÐÌض¨½ÚµãÖµÒ»Ò»¶ÔÓ¦ + BYTE byRes[512]; //±£Áô +}NET_DVR_MIME_DATA, *LPNET_DVR_MIME_DATA; + +typedef struct tagNET_DVR_XML_CONFIG_INPUT +{ + DWORD dwSize; //½á¹¹Ìå´óС + void* lpRequestUrl; //ÇëÇóÐÅÁ×Ö·û´®¸ñʽ + DWORD dwRequestUrlLen; //ÇëÇóÐÅÁ¶È£¬×Ö·û´®³¤¶È + void* lpInBuffer; //ÊäÈë²ÎÊý»º³åÇø£¬XML¸ñʽ + DWORD dwInBufferSize; //ÊäÈë²ÎÊý»º³åÇø´óС + DWORD dwRecvTimeOut; //½ÓÊÕ³¬Ê±Ê±¼ä£¬µ¥Î»£ºms£¬Ìî0ÔòʹÓÃĬÈϳ¬Ê±5s + BYTE byForceEncrpt; //ÊÇ·ñÇ¿ÖƼÓÃÜ£¬0-·ñ£¬1-ÊÇ + BYTE byNumOfMultiPart; //0-ÎÞЧ£¬ÆäËûÖµ±íʾ±¨ÎķֶθöÊý£¬·ÇÁãʱlpInBuffer´«ÈëµÄÊÇNET_DVR_MIME_UNIT½á¹¹ÌåÊý×éµÄÖ¸Õ룬¸ÃÖµ¼´´ú±í½á¹¹Ìå¸öÊý + BYTE byMIMEType; //0-ÎÞЧ£¬1-±íʾʹÓÃNET_DVR_MIME_UNIT½á¹¹Ì壬2-±íʾʹÓÃNET_DVR_MIME_DATA½á¹¹Ì壬¸Ã×ֶνöÔÚbyNumOfMultiPartÓÐЧʱÉúЧ + BYTE byRes1; + DWORD dwSendTimeOut; //·¢Ëͳ¬Ê±Ê±¼ä£¬µ¥Î»£ºms£¬Ìî0ÔòʹÓÃĬÈϳ¬Ê±5s + BYTE byRes[24]; +}NET_DVR_XML_CONFIG_INPUT, *LPNET_DVR_XML_CONFIG_INPUT; + +typedef struct tagNET_DVR_XML_CONFIG_OUTPUT +{ + DWORD dwSize; //½á¹¹Ìå´óС + void* lpOutBuffer; //Êä³ö²ÎÊý»º³åÇø£¬XML¸ñʽ + DWORD dwOutBufferSize; //Êä³ö²ÎÊý»º³åÇø´óС(ÄÚ´æ´óС) + DWORD dwReturnedXMLSize; //ʵ¼ÊÊä³öµÄXMLÄÚÈÝ´óС + void* lpStatusBuffer; //·µ»ØµÄ״̬²ÎÊý(XML¸ñʽ),»ñÈ¡ÃüÁî³É¹¦Ê±²»»á¸³Öµ,Èç¹û²»ÐèÒª,¿ÉÒÔÖÃNULL + DWORD dwStatusSize; //״̬»º³åÇø´óС(ÄÚ´æ´óС) +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + void* lpDataBuffer; //µ±byNumOfMultiPart>0ʱ£¬ÅäºÏ±¨ÎĽṹÌåʹÓ㬴æ·Å͸´«Êý¾ÝÄÚÈÝ£¬Í¨¹ýNET_DVR_MIME_UNITµÄdwContentLenÆ«ÒÆ·ÃÎÊ +#else + void* lpDataBuffer; //µ±byNumOfMultiPart>0ʱ£¬ÅäºÏ±¨ÎĽṹÌåʹÓ㬴æ·Å͸´«Êý¾ÝÄÚÈÝ£¬Í¨¹ýNET_DVR_MIME_UNITµÄdwContentLenÆ«ÒÆ·ÃÎÊ + BYTE byRes2[4]; +#endif + BYTE byNumOfMultiPart; //0-ÎÞЧ¡£ ÆäËûÖµ±íʾ±¨ÎķֶθöÊý£¬·ÇÁãʱlpInBuffer´«ÈëµÄÊÇNET_DVR_MIME_UNIT½á¹¹ÌåÊý×éµÄÖ¸Õ룬¸ÃÖµ¼´´ú±í½á¹¹Ìå¸öÊý¡£ + BYTE byRes[23]; +}NET_DVR_XML_CONFIG_OUTPUT, *LPNET_DVR_XML_CONFIG_OUTPUT; + +typedef struct tagNET_DVR_FORM_DATA_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + void *lpBuffer; //Êý¾Ý»º³åÇø£¬Ö¸ÏòNET_DVR_MIME_DATA½á¹¹ÌåÊý×é + DWORD dwBufferSize; //Êý¾Ý»º³åÇø´óС + BYTE byNumOfMultiPart; // 0-ÎÞЧ£¬ÆäËûÖµ±íʾ±¨ÎķֶθöÊý£¬·ÇÁãʱlpBuffer´«ÈëµÄÊÇNET_DVR_MIME_DATA½á¹¹ÌåÊý×éµÄÖ¸Õ룬¸ÃÖµ¼´´ú±í½á¹¹Ìå¸öÊý£¬ÏÞÖÆ×î¶àΪ3¸ö + BYTE byRes[67]; //±£Áô +}NET_DVR_FORM_DATA_CFG, *LPNET_DVR_FORM_DATA_CFG; + +typedef struct tagNET_DVR_JSON_DATA_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + void *lpJsonData; //JSON±¨ÎÄ + DWORD dwJsonDataSize; //JSON±¨ÎÄ´óС + void *lpPicData; //ͼƬÄÚÈÝ + DWORD dwPicDataSize; //ͼƬÄÚÈÝ´óС + DWORD dwInfraredFacePicSize; //ºìÍâÈËÁ³Í¼Æ¬Êý¾Ý´óС£¬µÈÓÚ0ʱ£¬´ú±íÎÞÈËÁ³Í¼Æ¬Êý¾Ý(µ±JSON±¨ÎÄΪµ±ResponseStatus£¨JSON£©±¨ÎÄʱ£¬¸Ã×Ö¶ÎÎÞÒâÒ壻µ±Inbound Data£¨JSON£©±¨ÎÄÖÐûÓÐinfraredFaceURLʱ£¬¸Ã×Ö¶ÎÐèÒª´øÉ϶þ½øÖÆͼƬÄÚÈÝ£© + void* lpInfraredFacePicBuffer; //ºìÍâÈËÁ³Í¼Æ¬Êý¾Ý»º´æ + BYTE byRes[248]; //±£Áô +}NET_DVR_JSON_DATA_CFG, *LPNET_DVR_JSON_DATA_CFG; + +typedef struct tagNET_DVR_SIMPLE_DAYTIME +{ + BYTE byHour; //ʱ + BYTE byMinute; //·Ö + BYTE bySecond; //Ãë + BYTE byRes; +}NET_DVR_SIMPLE_DAYTIME, *LPNET_DVR_SIMPLE_DAYTIME; + +typedef struct tagNET_DVR_TIME_SEGMENT +{ + NET_DVR_SIMPLE_DAYTIME struBeginTime; //¿ªÊ¼Ê±¼äµã + NET_DVR_SIMPLE_DAYTIME struEndTime; //½áÊøʱ¼äµã +}NET_DVR_TIME_SEGMENT, *LPNET_DVR_TIME_SEGMENT; + +typedef struct tagNET_DVR_SINGLE_PLAN_SEGMENT +{ + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬1-ʹÄÜ£¬0-²»Ê¹ÄÜ + BYTE byDoorStatus; //ÃÅ״̬ģʽ£¨ÌÝ¿Øģʽ£©£¬0-ÎÞЧ£¬1-ÐÝÃߣ¬2-³£¿ª×´Ì¬£¨×ÔÓÉ£©£¬3-³£±Õ״̬£¨½ûÓã©£¬4-ÆÕͨ״̬£¨ÃÅ״̬¼Æ»®Ê¹Óã© + BYTE byVerifyMode; //ÑéÖ¤·½Ê½£¬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-ÈËÁ³»òË¢¿¨»òÃÜÂë»òºçĤ + BYTE byRes[5]; + NET_DVR_TIME_SEGMENT struTimeSegment; //ʱ¼ä¶Î²ÎÊý +}NET_DVR_SINGLE_PLAN_SEGMENT, *LPNET_DVR_SINGLE_PLAN_SEGMENT; + +typedef struct tagNET_DVR_WEEK_PLAN_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬1-ʹÄÜ£¬0-²»Ê¹ÄÜ + BYTE byRes1[3]; + NET_DVR_SINGLE_PLAN_SEGMENT struPlanCfg[MAX_DAYS][MAX_TIMESEGMENT_V30]; //Öܼƻ®²ÎÊý + BYTE byRes2[16]; +}NET_DVR_WEEK_PLAN_CFG, *LPNET_DVR_WEEK_PLAN_CFG; + +typedef struct tagNET_DVR_HOLIDAY_PLAN_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬1-ʹÄÜ£¬0-²»Ê¹ÄÜ + BYTE byRes1[3]; + NET_DVR_DATE struBeginDate; //¼ÙÈÕ¿ªÊ¼ÈÕÆÚ + NET_DVR_DATE struEndDate; //¼ÙÈÕ½áÊøÈÕÆÚ + NET_DVR_SINGLE_PLAN_SEGMENT struPlanCfg[MAX_TIMESEGMENT_V30]; //ʱ¼ä¶Î²ÎÊý + BYTE byRes2[16]; +}NET_DVR_HOLIDAY_PLAN_CFG, *LPNET_DVR_HOLIDAY_PLAN_CFG; + +typedef struct tagNET_DVR_HOLIDAY_PLAN_COND +{ + DWORD dwSize; + DWORD dwHolidayPlanNumber; //¼ÙÈռƻ®±àºÅ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ[1,64] + BYTE byRes[106]; +}NET_DVR_HOLIDAY_PLAN_COND, *LPNET_DVR_HOLIDAY_PLAN_COND; + +typedef struct tagNET_DVR_WEEK_PLAN_COND +{ + DWORD dwSize; + DWORD dwWeekPlanNumber; //Öܼƻ®±àºÅ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ[1,64] + BYTE byRes[106]; +}NET_DVR_WEEK_PLAN_COND, *LPNET_DVR_WEEK_PLAN_COND; + +typedef struct tagNET_DVR_HOLIDAY_GROUP_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬1-ÆôÓã¬0-²»ÆôÓà + BYTE byRes1[3]; + BYTE byGroupName[HOLIDAY_GROUP_NAME_LEN]; //¼ÙÈÕ×éÃû³Æ + DWORD dwHolidayPlanNo[MAX_HOLIDAY_PLAN_NUM]; //¼ÙÈռƻ®±àºÅ£¬¾ÍÇ°Ìî³ä£¬Óö0ÎÞЧ + BYTE byRes2[32]; +}NET_DVR_HOLIDAY_GROUP_CFG, *LPNET_DVR_HOLIDAY_GROUP_CFG; + +typedef struct tagNET_DVR_HOLIDAY_GROUP_COND +{ + DWORD dwSize; + DWORD dwHolidayGroupNumber; //¼ÙÈÕ×é±àºÅ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ[1,64] + BYTE byRes[106]; +}NET_DVR_HOLIDAY_GROUP_COND, *LPNET_DVR_HOLIDAY_GROUP_COND; + +typedef struct tagNET_DVR_PLAN_TEMPLATE +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬1-ÆôÓã¬0-²»ÆôÓà + BYTE byRes1[3]; + BYTE byTemplateName[TEMPLATE_NAME_LEN]; //Ä£°åÃû³Æ + DWORD dwWeekPlanNo; //Öܼƻ®±àºÅ£¬0ΪÎÞЧ + DWORD dwHolidayGroupNo[MAX_HOLIDAY_GROUP_NUM]; //¼ÙÈÕ×é±àºÅ£¬¾ÍÇ°Ìî³ä£¬Óö0ÎÞЧ + BYTE byRes2[32]; +}NET_DVR_PLAN_TEMPLATE, *LPNET_DVR_PLAN_TEMPLATE; + +typedef struct tagNET_DVR_PLAN_TEMPLATE_COND +{ + DWORD dwSize; + DWORD dwPlanTemplateNumber; //¼Æ»®Ä£°å±àºÅ£¬´Ó1¿ªÊ¼£¬×î´óÖµ´ÓÃŽûÄÜÁ¦¼¯»ñÈ¡ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ[1,64]£¬0ÎÞЧ + BYTE byRes[106]; +}NET_DVR_PLAN_TEMPLATE_COND, *LPNET_DVR_PLAN_TEMPLATE_COND; + +typedef struct tagNET_DVR_DOOR_STATUS_PLAN +{ + DWORD dwSize; + DWORD dwTemplateNo; //¼Æ»®Ä£°å±àºÅ£¬Îª0±íʾȡÏû¹ØÁª£¬»Ö¸´Ä¬ÈÏ״̬£¨ÆÕͨ״̬£© + BYTE byRes[64]; +}NET_DVR_DOOR_STATUS_PLAN, *LPNET_DVR_DOOR_STATUS_PLAN; + +typedef struct tagNET_DVR_CARD_READER_PLAN +{ + DWORD dwSize; + DWORD dwTemplateNo; //¼Æ»®Ä£°å±àºÅ£¬Îª0±íʾȡÏû¹ØÁª£¬»Ö¸´Ä¬ÈÏ״̬£¨Ë¢¿¨¿ªÃÅ£© + BYTE byRes[64]; +}NET_DVR_CARD_READER_PLAN, *LPNET_DVR_CARD_READER_PLAN; + +typedef struct _tagNET_DVR_GROUP_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; + NET_DVR_VALID_PERIOD_CFG struValidPeriodCfg; //Ⱥ×éÓÐЧÆÚ²ÎÊý + BYTE byGroupName[GROUP_NAME_LEN]; //Ⱥ×éÃû³Æ + BYTE byRes2[32]; +}NET_DVR_GROUP_CFG, *LPNET_DVR_GROUP_CFG; + +typedef struct tagNET_DVR_GROUP_COMBINATION_INFO +{ + BYTE byEnable; //ÊÇ·ñÆôÓøÃȺ×é×éºÏ + BYTE byMemberNum; //Ë¢¿¨³ÉÔ±ÊýÁ¿ + BYTE bySequenceNo; //Ⱥ×éË¢¿¨´ÎÐòºÅ + BYTE byRes; + DWORD dwGroupNo; //Ⱥ×é±àºÅ,0xffffffff±íʾԶ³Ì¿ªÃÅ£¬0xfffffffe±íʾ³¬¼¶ÃÜÂë +}NET_DVR_GROUP_COMBINATION_INFO, *LPNET_DVR_GROUP_COMBINATION_INFO; + +typedef struct tagNET_DVR_MULTI_CARD_GROUP_CFG +{ + BYTE byEnable; //ÊÇ·ñÆôÓøöàÖØ¿¨×é²ÎÊý£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableOfflineVerifyMode; //ÊÇ·ñÆôÓÃÖ÷»úÀëÏßʱÑéÖ¤·½Ê½£¨³¬¼¶ÃÜÂë´úÌæÔ¶³Ì¿ªÃÅ£© + BYTE byRes1[2]; + DWORD dwTemplateNo; //ÆôÓöàÖØ¿¨¹¦Äܵļƻ®Ä£°å±àºÅ + NET_DVR_GROUP_COMBINATION_INFO struGroupCombination[GROUP_COMBINATION_NUM]; //Ⱥ×é×éºÏ²ÎÊý +}NET_DVR_MULTI_CARD_GROUP_CFG, *LPNET_DVR_MULTI_CARD_GROUP_CFG; + +typedef struct tagNET_DVR_MULTI_CARD_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓöàÖØ¿¨¹¦ÄÜ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE bySwipeIntervalTimeout; //Ë¢¿¨¼ä¸ô³¬Ê±Ê±¼ä£¬1-255s£¬Ä¬ÈÏ10s + BYTE byRes1[2]; + NET_DVR_MULTI_CARD_GROUP_CFG struGroupCfg[MULTI_CARD_GROUP_NUM]; //Ⱥ×éË¢¿¨²ÎÊý + BYTE byRes2[32]; +}NET_DVR_MULTI_CARD_CFG, *LPNET_DVR_MULTI_CARD_CFG; + +typedef struct tagNET_DVR_GROUP_COMBINATION_INFO_V50 +{ + BYTE byEnable; //ÊÇ·ñÆôÓøÃȺ×é×éºÏ + BYTE byMemberNum; //Ë¢¿¨³ÉÔ±ÊýÁ¿ + BYTE bySequenceNo; //Ⱥ×éË¢¿¨´ÎÐòºÅ + BYTE byRes; + DWORD dwGroupNo; //Ⱥ×é±àºÅ,0xffffffff±íʾԶ³Ì¿ªÃÅ£¬0xfffffffe±íʾ³¬¼¶ÃÜÂë +}NET_DVR_GROUP_COMBINATION_INFO_V50, *LPNET_DVR_GROUP_COMBINATION_INFO_V50; + +typedef struct tagNET_DVR_MULTI_CARD_GROUP_CFG_V50 +{ + BYTE byEnable; //ÊÇ·ñÆôÓøöàÖØ¿¨×é²ÎÊý£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnableOfflineVerifyMode; //ÊÇ·ñÆôÓÃÖ÷»úÀëÏßʱÑéÖ¤·½Ê½£¨³¬¼¶ÃÜÂë´úÌæÔ¶³Ì¿ªÃÅ£©£¬1-ÆôÓã¬0-²»ÆôÓà + BYTE byRes1[2]; + DWORD dwTemplateNo; //ÆôÓöàÖØ¿¨¹¦Äܵļƻ®Ä£°å±àºÅ + NET_DVR_GROUP_COMBINATION_INFO_V50 struGroupCombination[GROUP_COMBINATION_NUM]; //Ⱥ×é×éºÏ²ÎÊý +}NET_DVR_MULTI_CARD_GROUP_CFG_V50, *LPNET_DVR_MULTI_CARD_GROUP_CFG_V50; + +typedef struct tagNET_DVR_MULTI_CARD_CFG_V50 +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓöàÖØ¿¨¹¦ÄÜ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE bySwipeIntervalTimeout; //Ë¢¿¨¼ä¸ô³¬Ê±Ê±¼ä£¬1-255s£¬Ä¬ÈÏ10s + BYTE byRes1[2]; + NET_DVR_MULTI_CARD_GROUP_CFG_V50 struGroupCfg[NET_SDK_MULTI_CARD_GROUP_NUM_20]; //Ⱥ×éË¢¿¨²ÎÊý + BYTE byRes2[32]; +}NET_DVR_MULTI_CARD_CFG_V50, *LPNET_DVR_MULTI_CARD_CFG_V50; + +//2014-12-03 T1²âÊÔ״̬½á¹¹Ìå +typedef struct +{ + DWORD dwSize;//½á¹¹Ìå´óС + WORD wPort; //¶Ë¿ÚºÅ + //(É豸ͨ¹ý¶Ë¿Ú¿ØÖÆ£¨¶Ë¿ÚºÅÉ豸¶Ë¹Ì¶¨£¬Éϲ㲻×öÅäÖã©£¬¿ªÊ¼µ¥¶ÀsocketÁ¬½Ó£¬µ¥¶À½»»¥T1²âÊÔÄÚÈÝ£¬×ßXML¸ñʽ) + //0- ¹Ø±Õ(¹Ø±ÕÉ豸µÄÁ¬½ÓỊ̈߳¬ÊͷŶ˿Ú)£¬1- ¿ªÆô(É豸ÄÚ²¿µ¥¶ÀÆðÁ¬½ÓÏß³Ì) + BYTE byPortState; + BYTE byRes[61]; //±£Áô +}NET_DVR_T1TEST_PARAMCFG,*LPNET_DVR_T1TEST_PARAMCFG; + +#define CARD_PARAM_CARD_VALID 0x00000001 //¿¨ÊÇ·ñÓÐЧ²ÎÊý +#define CARD_PARAM_VALID 0x00000002 //ÓÐЧÆÚ²ÎÊý +#define CARD_PARAM_CARD_TYPE 0x00000004 //¿¨ÀàÐͲÎÊý +#define CARD_PARAM_DOOR_RIGHT 0x00000008 //ÃÅȨÏÞ²ÎÊý +#define CARD_PARAM_LEADER_CARD 0x00000010 //Ê׿¨²ÎÊý +#define CARD_PARAM_SWIPE_NUM 0x00000020 //×î´óË¢¿¨´ÎÊý²ÎÊý +#define CARD_PARAM_GROUP 0x00000040 //ËùÊôȺ×é²ÎÊý +#define CARD_PARAM_PASSWORD 0x00000080 //¿¨ÃÜÂë²ÎÊý +#define CARD_PARAM_RIGHT_PLAN 0x00000100 //¿¨È¨Ï޼ƻ®²ÎÊý +#define CARD_PARAM_SWIPED_NUM 0x00000200 //ÒÑË¢¿¨´ÎÊý +#define CARD_PARAM_EMPLOYEE_NO 0x00000400 //¹¤ºÅ +#define CARD_PARAM_NAME 0x00000800 //ÐÕÃû +#define CARD_PARAM_DEPARTMENT_NO 0x00001000 //²¿ÃűàºÅ +#define CARD_SCHEDULE_PLAN_NO 0x00002000 //ÅÅ°à¼Æ»®±àºÅ +#define CARD_SCHEDULE_PLAN_TYPE 0x00004000 //ÅÅ°à¼Æ»®ÀàÐÍ +#define CARD_ROOM_NUMBER 0x00008000 //·¿¼äºÅ +#define CARD_SIM_NO 0x00010000 //SIM¿¨ºÅ£¨ÊÖ»úºÅ£© +#define CARD_FLOOR_NUMBER 0x00020000 //Â¥²ãºÅ +#define CARD_USER_TYPE 0x00040000 //Óû§ÀàÐÍ + +typedef struct tagNET_DVR_ANTI_SNEAK_CFG +{ + DWORD dwSize; + BYTE byEnable; //ʹÄÜ·´Ç±»Ø¹¦ÄÜ£¬1-ʹÄÜ£¬0-²»Ê¹ÄÜ + BYTE byRes1[3]; + DWORD dwStartCardReaderNo; //·´Ç±»ØÆðʼ¶Á¿¨Æ÷±àºÅ + BYTE byRes2[64]; +}NET_DVR_ANTI_SNEAK_CFG, *LPNET_DVR_ANTI_SNEAK_CFG; + +typedef struct tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñ¼ÓÈ뷴DZ»Ø·¾¶£¬1-¼ÓÈ룬0-²»¼ÓÈë + BYTE byRes1[3]; + DWORD dwFollowUpCardReader[MAX_SNEAK_PATH_NODE]; //ºóÐø¶Á¿¨Æ÷±àºÅ£¬Îª0±íʾ²»¹Ø×¢Æðʼ¶Á¿¨Æ÷±àºÅ + BYTE byRes2[32]; +}NET_DVR_CARD_READER_ANTI_SNEAK_CFG, *LPNET_DVR_CARD_READER_ANTI_SNEAK_CFG; + +typedef struct tagNET_DVR_PHONE_DOOR_RIGHT_CFG +{ + DWORD dwSize; + BYTE byOpenRight[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÓпªÃÅȨÏÞ£¬-ÎÞȨÏÞ£¬-ÓÐȨÏÞ + BYTE byCloseRight[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÓйØÃÅȨÏÞ£¬-ÎÞȨÏÞ£¬-ÓÐȨÏÞ + BYTE byNormalOpenRight[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÓг£¿ªÈ¨ÏÞ£¬-ÎÞȨÏÞ£¬-ÓÐȨÏÞ + BYTE byNormalCloseRight[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÓг£±ÕȨÏÞ£¬-ÎÞȨÏÞ£¬-ÓÐȨÏÞ + BYTE byArmRight[MAX_ALARMHOST_ALARMIN_NUM]; //°´Êý×é±íʾ,ÊÇ·ñÓв¼·ÀȨÏÞ£¬-ÎÞȨÏÞ£¬-ÓÐȨÏÞ + BYTE byDisarmRight[MAX_ALARMHOST_ALARMIN_NUM]; //°´Êý×é±íʾ,ÊÇ·ñÓг··ÀȨÏÞ£¬-ÎÞȨÏÞ£¬-ÓÐȨÏÞ + BYTE byRes[256]; //±£Áô +}NET_DVR_PHONE_DOOR_RIGHT_CFG,*LPNET_DVR_PHONE_DOOR_RIGHT_CFG; + +typedef struct tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓöàÃÅ»¥Ëø¹¦ÄÜ£¬1-ÆôÓã¬0-²»ÆôÓà + BYTE byRes1[3]; + DWORD dwMultiDoorGroup[MAX_MULTI_DOOR_INTERLOCK_GROUP][MAX_INTER_LOCK_DOOR_NUM]; //¶àÃÅ»¥Ëø×é²ÎÊý£¬È¡ÖµÎªÃűàºÅ + BYTE byRes2[64]; +}NET_DVR_MULTI_DOOR_INTERLOCK_CFG, *LPNET_DVR_MULTI_DOOR_INTERLOCK_CFG; + +typedef struct tagNET_DVR_CARD_READER_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬1-ʹÄÜ£¬0-²»Ê¹ÄÜ + BYTE byCardReaderType; //¶Á¿¨Æ÷ÀàÐÍ£¬1-DS-K110XM/MK/C/CK£¬2-DS-K192AM/AMP£¬3-DS-K192BM/BMP£¬4-DS-K182AM/AMP£¬5-DS-K182BM/BMP£¬6-DS-K182AMF/ACF£¬7-Τ¸ù»ò485²»ÔÚÏß,8- DS-K1101M/MK£¬9- DS-K1101C/CK£¬10- DS-K1102M/MK/M-A + //11- DS-K1102C/CK£¬12- DS-K1103M/MK£¬13- DS-K1103C/CK£¬14- DS-K1104M/MK£¬15- DS-K1104C/CK£¬16- DS-K1102S/SK/S-A£¬17- DS-K1102G/GK£¬18- DS-K1100S-B£¬19- DS-K1102EM/EMK£¬20- DS-K1102E/EK£¬ + //21- DS-K1200EF£¬22- DS-K1200MF£¬23- DS-K1200CF£¬24- DS-K1300EF£¬25- DS-K1300MF£¬26- DS-K1300CF£¬27- DS-K1105E£¬28- DS-K1105M£¬29- DS-K1105C£¬30- DS-K182AMF£¬31- DS-K196AMF£¬32-DS-K194AMP + //33-DS-K1T200EF/EF-C/MF/MF-C/CF/CF-C,34-DS-K1T300EF/EF-C/MF/MF-C/CF/CF-C£¬35-DS-K1T105E/E-C/M/M-C/C/C-C£¬36-DS-K1T803F/MF/SF/EF£¬37-DS-K1A801F/MF/SF/EF,38-DS-K1107M/MK,39-DS-K1107E/EK, + //40-DS-K1107S/SK,41-DS-K1108M/MK,42-DS-K1108E/EK,43-DS-K1108S/SK,44-DS-K1200F,45-DS-K1S110-I,46-DS-K1T200M-PG/PGC,47-DS-K1T200M-PZ/PZC,48-DS-K1109H + BYTE byOkLedPolarity; //OK LED¼«ÐÔ£¬0-Òõ¼«£¬1-Ñô¼« + BYTE byErrorLedPolarity; //Error LED¼«ÐÔ£¬0-Òõ¼«£¬1-Ñô¼« + BYTE byBuzzerPolarity; //·äÃùÆ÷¼«ÐÔ£¬0-Òõ¼«£¬1-Ñô¼« + BYTE bySwipeInterval; //Öظ´Ë¢¿¨¼ä¸ôʱ¼ä£¬µ¥Î»£ºÃë + BYTE byPressTimeout; //°´¼ü³¬Ê±Ê±¼ä£¬µ¥Î»£ºÃë + BYTE byEnableFailAlarm; //ÊÇ·ñÆôÓöÁ¿¨Ê§°Ü³¬´Î±¨¾¯£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byMaxReadCardFailNum; //×î´ó¶Á¿¨Ê§°Ü´ÎÊý + BYTE byEnableTamperCheck; //ÊÇ·ñÖ§³Ö·À²ð¼ì²â£¬0-disable £¬1-enable + BYTE byOfflineCheckTime; //µôÏß¼ì²âʱ¼ä µ¥Î»Ãë + BYTE byFingerPrintCheckLevel; //Ö¸ÎÆʶ±ðµÈ¼¶£¬1-1/10ÎóÈÏÂÊ£¬2-1/100ÎóÈÏÂÊ£¬3-1/1000ÎóÈÏÂÊ£¬4-1/10000ÎóÈÏÂÊ£¬5-1/100000ÎóÈÏÂÊ£¬6-1/1000000ÎóÈÏÂÊ£¬7-1/10000000ÎóÈÏÂÊ£¬8-1/100000000ÎóÈÏÂÊ£¬9-3/100ÎóÈÏÂÊ£¬10-3/1000ÎóÈÏÂÊ£¬11-3/10000ÎóÈÏÂÊ£¬12-3/100000ÎóÈÏÂÊ£¬13-3/1000000ÎóÈÏÂÊ£¬14-3/10000000ÎóÈÏÂÊ£¬15-3/100000000ÎóÈÏÂÊ£¬16-Automatic Normal,17-Automatic Secure,18-Automatic More Secure + BYTE byUseLocalController; //Ö»¶Á£¬ÊÇ·ñÁ¬½ÓÔھ͵ؿØÖÆÆ÷ÉÏ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1; + WORD wLocalControllerID; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷ÐòºÅ£¬1-64,0´ú±íδע²á + WORD wLocalControllerReaderID; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷µÄ¶Á¿¨Æ÷ID£¬0´ú±íδע²á + WORD wCardReaderChannel; //Ö»¶Á£¬¶Á¿¨Æ÷ͨÐÅͨµÀºÅ£¬0Τ¸ù»òÀëÏߣ¬1-RS485A,2-RS485B + BYTE byRes[16]; +}NET_DVR_CARD_READER_CFG, *LPNET_DVR_CARD_READER_CFG; + +typedef struct tagNET_DVR_CARD_READER_CFG_V50 +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬1-ʹÄÜ£¬0-²»Ê¹ÄÜ + BYTE byCardReaderType; //¶Á¿¨Æ÷ÀàÐÍ£¬1-DS-K110XM/MK/C/CK£¬2-DS-K192AM/AMP£¬3-DS-K192BM/BMP£¬4-DS-K182AM/AMP£¬5-DS-K182BM/BMP£¬6-DS-K182AMF/ACF£¬7-Τ¸ù»ò485²»ÔÚÏߣ¬8- DS-K1101M/MK£¬9- DS-K1101C/CK£¬10- DS-K1102M/MK/M-A£¬11- DS-K1102C/CK£¬12- DS-K1103M/MK£¬13- DS-K1103C/CK£¬14- DS-K1104M/MK£¬15- DS-K1104C/CK£¬16- DS-K1102S/SK/S-A£¬17- DS-K1102G/GK£¬18- DS-K1100S-B£¬19- DS-K1102EM/EMK£¬20- DS-K1102E/EK£¬21- DS-K1200EF£¬22- DS-K1200MF£¬23- DS-K1200CF£¬24- DS-K1300EF£¬25- DS-K1300MF£¬26- DS-K1300CF£¬27- DS-K1105E£¬28- DS-K1105M£¬29- DS-K1105C£¬30- DS-K182AMF£¬31- DS-K196AMF£¬32-DS-K194AMP£¬33-DS-K1T200EF/EF-C/MF/MF-C/CF/CF-C,34-DS-K1T300EF/EF-C/MF/MF-C/CF/CF-C£¬35-DS-K1T105E/E-C/M/M-C/C/C-C,36-DS-K1T803F/F-M/F-S/F-E,37-DS-K1A801F/F-M/F-S/F-E,38-DS-K1107M/MK,39-DS-K1107E/EK,40-DS-K1107S/SK,41-DS-K1108M/MK,42-DS-K1108E/EK,43-DS-K1108S/SK,44-DS-K1200F,45-DS-K1S110-I,46-DS-K1T200M-PG/PGC,47-DS-K1T200M-PZ/PZC,48-DS-K1109H + BYTE byOkLedPolarity; //OK LED¼«ÐÔ£¬0-Òõ¼«£¬1-Ñô¼« + BYTE byErrorLedPolarity; //Error LED¼«ÐÔ£¬0-Òõ¼«£¬1-Ñô¼« + BYTE byBuzzerPolarity; //·äÃùÆ÷¼«ÐÔ£¬0-Òõ¼«£¬1-Ñô¼« + BYTE bySwipeInterval; //Öظ´Ë¢¿¨¼ä¸ôʱ¼ä£¬µ¥Î»£ºÃë + BYTE byPressTimeout; //°´¼ü³¬Ê±Ê±¼ä£¬µ¥Î»£ºÃë + BYTE byEnableFailAlarm; //ÊÇ·ñÆôÓöÁ¿¨Ê§°Ü³¬´Î±¨¾¯£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byMaxReadCardFailNum; //×î´ó¶Á¿¨Ê§°Ü´ÎÊý + BYTE byEnableTamperCheck; //ÊÇ·ñÖ§³Ö·À²ð¼ì²â£¬0-disable £¬1-enable + BYTE byOfflineCheckTime; //µôÏß¼ì²âʱ¼ä µ¥Î»Ãë + BYTE byFingerPrintCheckLevel; //Ö¸ÎÆʶ±ðµÈ¼¶£¬1-1/10ÎóÈÏÂÊ£¬2-1/100ÎóÈÏÂÊ£¬3-1/1000ÎóÈÏÂÊ£¬4-1/10000ÎóÈÏÂÊ£¬5-1/100000ÎóÈÏÂÊ£¬6-1/1000000ÎóÈÏÂÊ£¬7-1/10000000ÎóÈÏÂÊ£¬8-1/100000000ÎóÈÏÂÊ£¬9-3/100ÎóÈÏÂÊ£¬10-3/1000ÎóÈÏÂÊ£¬11-3/10000ÎóÈÏÂÊ£¬12-3/100000ÎóÈÏÂÊ£¬13-3/1000000ÎóÈÏÂÊ£¬14-3/10000000ÎóÈÏÂÊ£¬15-3/100000000ÎóÈÏÂÊ£¬16-Automatic Normal,17-Automatic Secure,18-Automatic More Secure£¨Ä¿Ç°ÃŽû²»Ö§³Ö£© + BYTE byUseLocalController; //Ö»¶Á£¬ÊÇ·ñÁ¬½ÓÔھ͵ؿØÖÆÆ÷ÉÏ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1; + WORD wLocalControllerID; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷ÐòºÅ, byUseLocalController=1ʱÓÐЧ£¬1-64,0´ú±íδע²á + WORD wLocalControllerReaderID; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷µÄ¶Á¿¨Æ÷ID£¬byUseLocalController=1ʱÓÐЧ£¬0´ú±íδע²á + WORD wCardReaderChannel; //Ö»¶Á£¬¶Á¿¨Æ÷ͨÐÅͨµÀºÅ£¬byUseLocalController=1ʱÓÐЧ£¬0Τ¸ù»òÀëÏߣ¬1-RS485A,2-RS485B + BYTE byFingerPrintImageQuality; //Ö¸ÎÆͼÏñÖÊÁ¿£¬0-ÎÞЧ£¬1-µÍÖÊÁ¿(V1)£¬2-ÖеÈÖÊÁ¿(V1)£¬3-¸ßÖÊÁ¿(V1)£¬4-×î¸ßÖÊÁ¿(V1)£¬5-µÍÖÊÁ¿(V2)£¬6-ÖеÈÖÊÁ¿(V2)£¬7-¸ßÖÊÁ¿(V2)£¬8-×î¸ßÖÊÁ¿(V2) + BYTE byFingerPrintContrastTimeOut; //Ö¸ÎƶԱȳ¬Ê±Ê±¼ä£¬0-ÎÞЧ£¬·¶Î§1-20´ú±í:1s-20s£¬0xff-ÎÞÏÞ´ó + BYTE byFingerPrintRecogizeInterval; //Ö¸ÎÆÁ¬Ðøʶ±ð¼ä¸ô£¬0-ÎÞЧ£¬·¶Î§1-10´ú±í:1s-10s£¬0xff-ÎÞÑÓ³Ù + BYTE byFingerPrintMatchFastMode; //Ö¸ÎÆÆ¥Åä¿ìËÙģʽ£¬0-ÎÞЧ£¬·¶Î§1-5´ú±í:¿ìËÙģʽ1-¿ìËÙģʽ5£¬0xff-×Ô¶¯ + BYTE byFingerPrintModuleSensitive; //Ö¸ÎÆÄ£×éÁéÃô¶È£¬0-ÎÞЧ£¬·¶Î§1-8´ú±í£ºÁéÃô¶È¼¶±ð1-ÁéÃô¶È¼¶±ð8 + BYTE byFingerPrintModuleLightCondition; //Ö¸ÎÆÄ£×é¹âÏßÌõ¼þ£¬0-ÎÞЧ£¬1-ÊÒÍ⣬2-ÊÒÄÚ + BYTE byFaceMatchThresholdN; //ÈËÁ³±È¶Ô·§Öµ£¬·¶Î§0-100 + BYTE byFaceQuality; //ÈËÁ³ÖÊÁ¿£¬·¶Î§0-100 + BYTE byFaceRecogizeTimeOut; //ÈËÁ³Ê¶±ð³¬Ê±Ê±¼ä£¬·¶Î§1-20´ú±í£º1s-20s£¬0xff-ÎÞÏÞ´ó + BYTE byFaceRecogizeInterval; //ÈËÁ³Á¬Ðøʶ±ð¼ä¸ô£¬0-ÎÞЧ£¬·¶Î§1-10´ú±í£º1s-10s£¬0xff-ÎÞÑÓ³Ù + WORD wCardReaderFunction; //Ö»¶Á£¬¶Á¿¨Æ÷ÖÖÀ࣬°´Î»±íʾ£ºµÚ1λ-Ö¸ÎÆ£¬µÚ¶þλ-ÈËÁ³£¬µÚÈýλ-Ö¸¾²Âö£¬µÚËÄλ-ºçĤ + BYTE byCardReaderDescription[CARD_READER_DESCRIPTION]; //¶Á¿¨Æ÷ÃèÊö + WORD wFaceImageSensitometry; //Ö»¶Á£¬ÈËÁ³Í¼ÏñÆعâ¶È£¬·¶Î§0-65535 + BYTE byLivingBodyDetect; //ÕæÈ˼ì²â£¬0-ÎÞЧ£¬1-²»ÆôÓã¬2-ÆôÓà + BYTE byFaceMatchThreshold1; //ÈËÁ³1:1Æ¥Åä·§Öµ£¬·¶Î§0-100 + WORD wBuzzerTime; //·äÃùʱ¼ä£¬·¶Î§0s-5999s£¨0-´ú±í³¤Ãù£© + BYTE byFaceMatch1SecurityLevel; //ÈËÁ³1:1ʶ±ð°²È«µÈ¼¶£¬0-ÎÞЧ£¬1-Ò»°ã£¬2-½ÏÇ¿£¬3-¼«Ç¿ + BYTE byFaceMatchNSecurityLevel; //ÈËÁ³1:Nʶ±ð°²È«µÈ¼¶£¬0-ÎÞЧ£¬1-Ò»°ã£¬2-½ÏÇ¿£¬3-¼«Ç¿ + BYTE byEnvirMode;//ÈËÁ³Ê¶±ð»·¾³Ä£Ê½£¬0-ÎÞЧ£¬1-ÊÒÄÚ£¬2-ÆäËû£» + BYTE byLiveDetLevelSet;//»îÌå¼ì²âãÐÖµµÈ¼¶ÉèÖã¬0-ÎÞЧ£¬1-µÍ£¬2-ÖУ¬3-¸ß£» + BYTE byLiveDetAntiAttackCntLimit;//»îÌå¼ì²â·À¹¥»÷´ÎÊý£¬ 0-ÎÞЧ£¬1-255´Î£¨¿Í»§¶Ë¡¢É豸ͳһ´ÎÊýÏÞÖÆ£¬¸ù¾ÝÄÜÁ¦¼¶ÏÞÖÆ£©£» + BYTE byEnableLiveDetAntiAttack;//»îÌå¼ì²â·À¹¥»÷ʹÄÜ£¬0-ÎÞЧ£¬1-²»ÆôÓã¬2-ÆôÓà + BYTE bySupportDelFPByID;//Ö»¶Á£¬¶Á¿¨Æ÷ÊÇ·ñÖ§³Ö°´ÊÖÖ¸IDɾ³ýÖ¸ÎÆ£¬0-ÎÞЧ£¬1-²»Ö§³Ö£¬2-Ö§³Ö + BYTE byFaceContrastMotionDetLevel;//ÈËÁ³±È¶ÔʱÒƶ¯Õì²â¼¶±ð£¬0-ÎÞЧ£¬1-µÍ£¬2-ÖУ¬3-¸ß£¬0xff-½ûÓà + BYTE byDayFaceMatchThresholdN; //°×ÌìÈËÁ³1:NÆ¥Åä·§Öµ£¬·¶Î§0-100 + BYTE byNightFaceMatchThresholdN; //Ò¹ÍíÈËÁ³1:NÆ¥Åä·§Öµ£¬·¶Î§0-100 + BYTE byFaceRecogizeEnable; //ÈËÁ³Ê¶±ðʹÄÜ£º0-ÎÞЧ£¬1-¿ªÆô£¬2-¹Ø±Õ + BYTE byBlockListMatchThreshold; //½ûÖ¹Ãûµ¥Æ¥Åä·§Öµ£¬·¶Î§0-100 + BYTE byRes3; + BYTE byDefaultVerifyMode; //Ö»¶Á£¬¶Á¿¨Æ÷ĬÈÏÑéÖ¤·½Ê½£¨³ö³§Ä¬ÈÏ£©£¬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-Ë¢¿¨»òÖ¸ÎÆ»òÃÜÂë + DWORD dwFingerPrintCapacity;//Ö»¶Á£¬Ö¸ÎÆÈÝÁ¿ + DWORD dwFingerPrintNum;//Ö»¶Á£¬ÒÑ´æÔÚÖ¸ÎÆÊýÁ¿ + BYTE byEnableFingerPrintNum;//Ö»¶Á£¬Ö¸ÎÆÈÝÁ¿Ê¹ÄÜ£º0-²»Ê¹ÄÜ£¬1-ʹÄÜ£¨Ö»Óе±¸Ã×Ö¶ÎΪ1-ʹÄÜʱ£¬dwFingerPrintCapacityºÍdwFingerPrintNum²ÅÓÐЧ£© + BYTE byEnableReverseCardNo; //¿¨ºÅ·­×ªÊ¹ÄÜ 0-²»Ê¹ÄÜ1-ʹÄÜ + BYTE byRes2[2]; + DWORD dwIndependSwipeIntervals;//ÈËÔ±ÈÏÖ¤¼ä¸ô£¨Ã¿¸öÈ˵¥¶À¼ÆËã¼ä¸ô£¬Çø±ðÓÚÖظ´ÈÏÖ¤¼ä¸ô£©£» + BYTE byRes[224]; +}NET_DVR_CARD_READER_CFG_V50, *LPNET_DVR_CARD_READER_CFG_V50; + +typedef struct tagNET_DVR_FAILED_FACE_COND +{ + DWORD dwSize; + BYTE byRes[128]; //±£Áô +}NET_DVR_FAILED_FACE_COND, *LPNET_DVR_FAILED_FACE_COND; + +typedef struct tagNET_DVR_FAILED_FACE_INFO +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + BYTE byErrorCode; //½¨Ä£Ê§°ÜÏêϸ´íÎó,0-ÎÞЧ£¬1-¶ÁÈ¡Îļþʧ°Ü£¬2-´ò¿ªÎļþʧ°Ü£¬3-ÄÚ´æ²»×㣬4-×¢²áÈËÁ³Ê§°Ü£¬5-ÑÛ¼ä¾à̫С£¬6-¿¨È¨ÏÞ²»´æÔÚ + BYTE byRes1[3]; + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byRes[92]; +}NET_DVR_FAILED_FACE_INFO, *LPNET_DVR_FAILED_FACE_INFO; + +typedef struct tagNET_DVR_FACE_PARAM_COND +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ£¨ÉèÖÃʱ¸Ã²ÎÊý¿É²»ÉèÖã© + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //ÈËÁ³µÄ¶Á¿¨Æ÷ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ£¨ÉèÖÃʱ¸Ã²ÎÊý¿É²»ÉèÖã© + DWORD dwFaceNum; //ÉèÖûò»ñÈ¡ÈËÁ³ÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓÐÈËÁ³ÐÅÏ¢ + BYTE byFaceID; //ÈËÁ³±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-2 0xff±íʾ¸Ã¿¨ËùÓÐÈËÁ³£¨ÉèÖÃʱ¸Ã²ÎÊý¿É²»ÉèÖã© + BYTE byRes[127]; //±£Áô +}NET_DVR_FACE_PARAM_COND, *LPNET_DVR_FACE_PARAM_COND; + +typedef struct tagNET_DVR_FACE_PARAM_CFG +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + DWORD dwFaceLen; //ÈËÁ³Êý¾Ý³¤¶È£¬É豸¶Ë·µ»ØµÄ¼´¼ÓÃܺóµÄÊý¾Ý + char* pFaceBuffer; //ÈËÁ³Êý¾ÝÖ¸Õë + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //ÐèҪϷ¢ÈËÁ³µÄ¶Á¿¨Æ÷£¬°´Êý×é±íʾ£¬´ÓµÍλµ½¸ßλ±íʾ£¬0-²»Ï·¢¸Ã¶Á¿¨Æ÷£¬1-Ï·¢µ½¸Ã¶Á¿¨Æ÷ + BYTE byFaceID; //ÈËÁ³±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-2 + BYTE byFaceDataType; //ÈËÁ³Êý¾ÝÀàÐÍ£º0-Ä£°å£¨Ä¬ÈÏ£©£¬1-ͼƬ + BYTE byRes[126]; +}NET_DVR_FACE_PARAM_CFG, *LPNET_DVR_FACE_PARAM_CFG; + +typedef struct tagNET_DVR_FACE_PARAM_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + BYTE byCardReaderRecvStatus[MAX_CARD_READER_NUM_512]; //ÈËÁ³¶Á¿¨Æ÷״̬£¬°´×Ö½Ú±íʾ£¬0-ʧ°Ü£¬1-³É¹¦£¬2-ÖØÊÔ»òÈËÁ³ÖÊÁ¿²î£¬3-ÄÚ´æÒÑÂú(ÈËÁ³Êý¾ÝÂú)£¬4-ÒÑ´æÔÚ¸ÃÈËÁ³£¬5-·Ç·¨ÈËÁ³ID + //,6-Ëã·¨½¨Ä£Ê§°Ü£¬7-δÏ·¢¿¨È¨ÏÞ£¬8-䶨Ò壨±£Áô£©£¬9-ÈËÑÛ¼ä¾àС¾àС£¬10-ͼƬÊý¾Ý³¤¶ÈСÓÚ1KB£¬11-ͼƬ¸ñʽ²»·û£¨png/jpg/bmp£©,12-ͼƬÏñËØÊýÁ¿³¬¹ýÉÏÏÞ£¬13-ͼƬÏñËØÊýÁ¿µÍÓÚÏÂÏÞ£¬14-ͼƬÐÅϢУÑéʧ°Ü£¬15-ͼƬ½âÂëʧ°Ü£¬16-ÈËÁ³¼ì²âʧ°Ü£¬17-ÈËÁ³ÆÀ·Öʧ°Ü + BYTE byErrorMsg[ERROR_MSG_LEN]; //Ï·¢´íÎóÐÅÏ¢£¬µ±byCardReaderRecvStatusΪ4ʱ£¬±íʾÒÑ´æÔÚÈËÁ³¶ÔÓ¦µÄ¿¨ºÅ + DWORD dwCardReaderNo; //ÎƶÁ¿¨Æ÷±àºÅ£¬¿ÉÓÃÓÚÏ·¢´íÎó·µ»Ø + BYTE byTotalStatus; //Ï·¢×ܵÄ״̬£¬0-µ±Ç°ÈËÁ³Î´ÏÂÍêËùÓжÁ¿¨Æ÷£¬1-ÒÑÏÂÍêËùÓжÁ¿¨Æ÷(ÕâÀïµÄËùÓÐÖ¸µÄÊÇÃŽûÖ÷»úÍùËùÓеĶÁ¿¨Æ÷Ï·¢ÁË£¬²»¹Ü³É¹¦Óë·ñ) + BYTE byFaceID; //ÈËÁ³±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-2 + BYTE byRes[130]; +}NET_DVR_FACE_PARAM_STATUS, *LPNET_DVR_FACE_PARAM_STATUS; + +typedef struct tagNET_DVR_FACE_PARAM_BYCARD +{ + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //ÈËÁ³µÄ¶Á¿¨Æ÷ÐÅÏ¢£¬°´Êý×é±íʾ + BYTE byFaceID[MAX_FACE_NUM]; //ÐèҪɾ³ýµÄÈËÁ³±àºÅ£¬°´Êý×éϱֵ꣬±íʾ0-²»É¾³ý£¬1-ɾ³ý¸ÃÈËÁ³ + BYTE byRes1[42]; //±£Áô +}NET_DVR_FACE_PARAM_BYCARD, *LPNET_DVR_FACE_PARAM_BYCARD; + +typedef struct tagNET_DVR_FACE_PARAM_BYREADER +{ + DWORD dwCardReaderNo; //°´Öµ±íʾ£¬ÈËÁ³¶Á¿¨Æ÷±àºÅ + BYTE byClearAllCard; //ÊÇ·ñɾ³ýËùÓп¨µÄÈËÁ³ÐÅÏ¢£¬0-°´¿¨ºÅɾ³ýÈËÁ³ÐÅÏ¢£¬1-ɾ³ýËùÓп¨µÄÈËÁ³ÐÅÏ¢ + BYTE byRes1[3]; //±£Áô + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + BYTE byRes[548]; //±£Áô +}NET_DVR_FACE_PARAM_BYREADER, *LPNET_DVR_FACE_PARAM_BYREADER; + +typedef union tagNET_DVR_DEL_FACE_PARAM_MODE +{ + BYTE uLen[588]; //ÁªºÏÌ峤¶È + NET_DVR_FACE_PARAM_BYCARD struByCard; //°´¿¨ºÅµÄ·½Ê½É¾³ý + NET_DVR_FACE_PARAM_BYREADER struByReader; //°´¶Á¿¨Æ÷µÄ·½Ê½É¾³ý +}NET_DVR_DEL_FACE_PARAM_MODE, *LPNET_DVR_DEL_FACE_PARAM_MODE; + +typedef struct tagNET_DVR_FACE_PARAM_CTRL +{ + DWORD dwSize; + BYTE byMode; //ɾ³ý·½Ê½£¬0-°´¿¨ºÅ·½Ê½É¾³ý£¬1-°´¶Á¿¨Æ÷ɾ³ý + BYTE byRes1[3]; //±£Áô + NET_DVR_DEL_FACE_PARAM_MODE struProcessMode; //´¦Àí·½Ê½ + BYTE byRes[64]; //±£Áô +}NET_DVR_FACE_PARAM_CTRL, *LPNET_DVR_FACE_PARAM_CTRL; + +typedef struct tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND +{ + DWORD dwSize; + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ(·Ö¿ØÆ÷ÐòºÅ),Ϊ0±íʾËùÓÐ + BYTE byRes[306]; +}NET_DVR_LOCAL_CONTROLLER_STATUS_COND, *LPNET_DVR_LOCAL_CONTROLLER_STATUS_COND; + +typedef struct tagNET_DVR_LOCAL_CONTROLLER_STATUS +{ + DWORD dwSize; + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ(·Ö¿ØÆ÷ÐòºÅ) + BYTE byLocalAntiDismantleStatus; //¾ÍµØ¿ØÖÆÆ÷·À²ð״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byPowerSupplyStatus; //É豸¹©µç״̬£¬1-½»Á÷µç¹©µç£¬2-Ðîµç³Ø¹©µç + WORD wBatteryVoltage; //Ðîµç³Øµçѹֵ£¬Êµ¼ÊÖµ³Ë10£¬µ¥Î»£º·üÌØ + BYTE byBatteryLowVoltage; //Ðîµç³ØÊÇ·ñ´¦ÓÚµÍѹ״̬£¬0-·ñ£¬1-ÊÇ + BYTE byFireAlarm; //Ïû·À±¨¾¯£¬0-Õý³££¬1-¶Ì½Ó±¨¾¯£¬2-¶Ï¿ª±¨¾¯ + BYTE bySerialNumber[SERIALNO_LEN]; //É豸ÐòÁкŠ+ BYTE byMagneticStatus[MAX_DOOR_NUM];// ÃÅ´Å״̬£º0Õý³£¹Ø±Õ£¬1Õý³£¿ªÆô£¬2ÆÆ»µ¶Ì·±¨¾¯£¬3ÆÆ»µ¶Ï·±¨¾¯£¬4Òì³£±¨¾¯ + BYTE byDoorLockStatus[MAX_DOOR_NUM]; //ÃÅËø״̬£¬0Õý³£¹Ø±Õ£¬1Õý³£¿ªÆô£¬2ÆÆ»µ¶Ì·±¨¾¯£¬3ÆÆ»µ¶Ï·±¨¾¯£¬4Òì³£±¨¾¯ + BYTE byCardReaderOnlineStatus[MAX_CARD_READER_NUM]; //¶Á¿¨Æ÷ÔÚÏß״̬£¬0-²»ÔÚÏߣ¬1-ÔÚÏß + WORD wLocalControllerStatus; //Ö»¶Á£¬¾ÍµØ¿ØÖÆÆ÷ÔÚÏß״̬(·Ö¿ØÆ÷ÔÚÏß״̬)£º0-ÀëÏߣ¬1-ÍøÂçÔÚÏߣ¬2-»·Â·1ÉϵÄRS485´®¿Ú1£¬3-»·Â·1ÉϵÄRS485´®¿Ú2£¬4-»·Â·2ÉϵÄRS485´®¿Ú1£¬5-»·Â·2ÉϵÄRS485´®¿Ú2£¬6-»·Â·3ÉϵÄRS485´®¿Ú1£¬7-»·Â·3ÉϵÄRS485´®¿Ú2£¬8-»·Â·4ÉϵÄRS485´®¿Ú1£¬9-»·Â·4ÉϵÄRS485´®¿Ú2£¨Ö»¶Á£© + BYTE byRes2[122]; +}NET_DVR_LOCAL_CONTROLLER_STATUS, *LPNET_DVR_LOCAL_CONTROLLER_STATUS; + +typedef struct tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG +{ + DWORD dwSize; + BYTE byLocalControllerName[LOCAL_CONTROLLER_NAME_LEN]; //¾ÍµØ¿ØÖÆÆ÷Ãû³Æ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ + WORD wDevPort; // É豸¶Ë¿ÚºÅ + NET_DVR_IPADDR struDevIP; // É豸IPµØÖ· + NET_DVR_IPADDR struSubnetMask; // É豸×ÓÍøÑÚÂë + NET_DVR_IPADDR struGateway; // É豸Íø¹Ø + BYTE bySearchProgress; //ËÑË÷½ø¶È£¬0±íʾδ¿ªÊ¼£¬100±íʾͬ²½Íê³É + BYTE byEffectData;//ÊÇ·ñΪÓÐЧÊý¾Ý,0±íʾÓÐЧ£¬1±íʾÉ豸ֻ·µ»ØËÑË÷½ø¶È£¬×÷ΪÐÄÌø°ü + BYTE byRes[302]; +}NET_DVR_ONLINE_LOCAL_CONTROLLER_CFG, *LPNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG; + +typedef struct tagNET_DVR_ACS_WORK_STATUS +{ + DWORD dwSize; + BYTE byDoorLockStatus[MAX_DOOR_NUM]; //ÃÅËø״̬£¬0-¹Ø£¬1-¿ª + BYTE byDoorStatus[MAX_DOOR_NUM]; //ÃÅ״̬£¬1-ÐÝÃߣ¬2-³£¿ª×´Ì¬£¬3-³£±Õ״̬£¬4-ÆÕͨ״̬ + BYTE byMagneticStatus[MAX_DOOR_NUM]; //ÃÅ´Å״̬£¬0-±ÕºÏ£¬1-¿ªÆô + BYTE byCaseStatus[MAX_CASE_SENSOR_NUM]; ////ʼþ´¥·¢Æ÷״̬£¬0-ÎÞÊäÈ룬1-ÓÐÊäÈë + WORD wBatteryVoltage; //Ðîµç³Øµçѹֵ£¬Êµ¼ÊÖµ³Ë10£¬µ¥Î»£º·üÌØ + BYTE byBatteryLowVoltage; //Ðîµç³ØÊÇ·ñ´¦ÓÚµÍѹ״̬£¬0-·ñ£¬1-ÊÇ + BYTE byPowerSupplyStatus; //É豸¹©µç״̬£¬1-½»Á÷µç¹©µç£¬2-Ðîµç³Ø¹©µç + BYTE byMultiDoorInterlockStatus; //¶àÃÅ»¥Ëø״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byAntiSneakStatus; //·´Ç±»Ø״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byHostAntiDismantleStatus; //Ö÷»ú·À²ð״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byIndicatorLightStatus; //ָʾµÆ״̬£¬0-µôÏߣ¬1-ÔÚÏß + BYTE byCardReaderOnlineStatus[MAX_CARD_READER_NUM]; //¶Á¿¨Æ÷ÔÚÏß״̬£¬0-²»ÔÚÏߣ¬1-ÔÚÏß + BYTE byCardReaderAntiDismantleStatus[MAX_CARD_READER_NUM]; //¶Á¿¨Æ÷·À²ð״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byCardReaderVerifyMode[MAX_CARD_READER_NUM]; //¶Á¿¨Æ÷µ±Ç°ÑéÖ¤·½Ê½£¬1-Ë¢¿¨£¬2-Ë¢¿¨+ÃÜÂ룬3-Ë¢¿¨£¬4-Ë¢¿¨»òÃÜÂë + BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM];//±¨¾¯ÊäÈë¿Ú²¼·À״̬£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ²¼·À״̬ + BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; //±¨¾¯ÊäÈë¿Ú±¨¾¯×´Ì¬£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Úµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Úµ±Ç°Óб¨¾¯ + BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; //±¨¾¯Êä³ö¿Ú״̬£¬0-¶ÔÓ¦±¨¾¯Êä³ö¿ÚÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯Êä³ö¿ÚÓб¨¾¯ + DWORD dwCardNum; //ÒÑÌí¼ÓµÄ¿¨ÊýÁ¿ + BYTE byRes2[32]; +}NET_DVR_ACS_WORK_STATUS, *LPNET_DVR_ACS_WORK_STATUS; + +typedef struct tagNET_DVR_ACS_WORK_STATUS_V50 +{ + DWORD dwSize; + BYTE byDoorLockStatus[MAX_DOOR_NUM_256]; //ÃÅËø״̬(¼ÌµçÆ÷¿ªºÏ״̬)£¬0-Õý³£¹Ø£¬1-Õý³£¿ª£¬2-¶Ì·±¨¾¯£¬3-¶Ï·±¨¾¯£¬4-Òì³£±¨¾¯ + BYTE byDoorStatus[MAX_DOOR_NUM_256]; //ÃÅ״̬(Â¥²ã״̬)£¬1-ÐÝÃߣ¬2-³£¿ª×´Ì¬(×ÔÓÉ)£¬3-³£±Õ״̬(½ûÓÃ)£¬4-ÆÕͨ״̬(ÊÜ¿Ø) + BYTE byMagneticStatus[MAX_DOOR_NUM_256]; //ÃÅ´Å״̬£¬0-Õý³£¹Ø£¬1-Õý³£¿ª£¬2-¶Ì·±¨¾¯£¬3-¶Ï·±¨¾¯£¬4-Òì³£±¨¾¯ + BYTE byCaseStatus[MAX_CASE_SENSOR_NUM]; //ʼþ´¥·¢Æ÷״̬£¬0-ÎÞÊäÈ룬1-ÓÐÊäÈë + WORD wBatteryVoltage; //Ðîµç³Øµçѹֵ£¬Êµ¼ÊÖµ³Ë10£¬µ¥Î»£º·üÌØ + BYTE byBatteryLowVoltage; //Ðîµç³ØÊÇ·ñ´¦ÓÚµÍѹ״̬£¬0-·ñ£¬1-ÊÇ + BYTE byPowerSupplyStatus; //É豸¹©µç״̬£¬1-½»Á÷µç¹©µç£¬2-Ðîµç³Ø¹©µç + BYTE byMultiDoorInterlockStatus; //¶àÃÅ»¥Ëø״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byAntiSneakStatus; //·´Ç±»Ø״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byHostAntiDismantleStatus; //Ö÷»ú·À²ð״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byIndicatorLightStatus; //ָʾµÆ״̬£¬0-µôÏߣ¬1-ÔÚÏß + BYTE byCardReaderOnlineStatus[MAX_CARD_READER_NUM_512]; //¶Á¿¨Æ÷ÔÚÏß״̬£¬0-²»ÔÚÏߣ¬1-ÔÚÏß + BYTE byCardReaderAntiDismantleStatus[MAX_CARD_READER_NUM_512]; //¶Á¿¨Æ÷·À²ð״̬£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byCardReaderVerifyMode[MAX_CARD_READER_NUM_512]; //¶Á¿¨Æ÷µ±Ç°ÑéÖ¤·½Ê½£¬1-ÐÝÃߣ¬2-Ë¢¿¨+ÃÜÂ룬3-Ë¢¿¨£¬4-Ë¢¿¨»òÃÜÂë + BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM];//±¨¾¯ÊäÈë¿Ú²¼·À״̬£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ³··À״̬£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Ú´¦ÓÚ²¼·À״̬ + BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; //°´Î»±íʾ±¨¾¯ÊäÈë¿Ú±¨¾¯×´Ì¬£¬0-¶ÔÓ¦±¨¾¯ÊäÈë¿Úµ±Ç°ÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯ÊäÈë¿Úµ±Ç°Óб¨¾¯ + BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; //°´Î»±íʾ±¨¾¯Êä³ö¿Ú״̬£¬0-¶ÔÓ¦±¨¾¯Êä³ö¿ÚÎÞ±¨¾¯£¬1-¶ÔÓ¦±¨¾¯Êä³ö¿ÚÓб¨¾¯ + DWORD dwCardNum; //ÒÑÌí¼ÓµÄ¿¨ÊýÁ¿ + BYTE byFireAlarmStatus; //Ïû·À±¨¾¯×´Ì¬ÏÔʾ£º0-Õý³£¡¢1-¶Ì·±¨¾¯¡¢2-¶Ï¿ª±¨¾¯ + BYTE byBatteryChargeStatus; //µç³Ø³äµç״̬£º0-ÎÞЧ£»1-³äµçÖУ»2-δ³äµç + BYTE byMasterChannelControllerStatus; //Ö÷ͨµÀ¿ØÖÆÆ÷ÔÚÏß״̬£º0-ÎÞЧ£»1-²»ÔÚÏߣ»2-ÔÚÏß + BYTE bySlaveChannelControllerStatus; //´ÓͨµÀ¿ØÖÆÆ÷ÔÚÏß״̬£º0-ÎÞЧ£»1-²»ÔÚÏߣ»2-ÔÚÏß + BYTE byAntiSneakServerStatus; //·´Ç±»Ø·þÎñÆ÷״̬£º0-ÎÞЧ£¬1-δÆôÓã¬2-Õý³££¬3-¶Ï¿ª + BYTE byRes3[3]; + DWORD dwAllowFaceNum; //ÒÑÌí¼ÓµÄÔÊÐíÃûµ¥ÈËÁ³ÊýÁ¿£¨Í¨¹ýÄÜÁ¦¼¯Åжϣ© + DWORD dwBlockFaceNum; //ÒÑÌí¼ÓµÄ½ûÖ¹Ãûµ¥ÈËÁ³ÊýÁ¿£¨Í¨¹ýÄÜÁ¦¼¯Åжϣ© + BYTE byRes2[108]; +}NET_DVR_ACS_WORK_STATUS_V50, *LPNET_DVR_ACS_WORK_STATUS_V50; + +typedef struct tagNET_DVR_CASE_SENSOR_CFG +{ + DWORD dwSize; + BYTE byHostBuzzer; //´¥·¢Ö÷»ú·äÃùÆ÷£¬0-²»´¥·¢£¬1-´¥·¢ + BYTE byRes1[3]; + BYTE byCardReaderBuzzer[MAX_CARD_READER_NUM]; //´¥·¢¶Á¿¨Æ÷·äÃùÆ÷£¬1-´¥·¢£¬0-²»´¥·¢ + BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; //¹ØÁª´¥·¢µÄ±¨¾¯Êä³ö£¬1-¹ØÁª£¬0-²»¹ØÁª + BYTE byDoorOpen[MAX_DOOR_NUM]; //¶ÔÃÅ1-N¹ØÁªÃÅ´ò¿ª£¬0-²»¹ØÁª£¬1-¹ØÁª£¨¼´´ò¿ª£© + BYTE byDoorClose[MAX_DOOR_NUM]; //¶ÔÃÅ1-N¹ØÁªÃŹرգ¬0-²»¹ØÁª£¬1-¹ØÁª£¨¼´¹Ø±Õ£© + BYTE byRes2[64]; +}NET_DVR_CASE_SENSOR_CFG, *LPNET_DVR_CASE_SENSOR_CFG; + +typedef enum _ENUM_UPGRADE_TYPE +{ + ENUM_UPGRADE_DVR = 0, //ÆÕͨÉ豸Éý¼¶ + ENUM_UPGRADE_ADAPTER = 1, //DVRÊÊÅäÆ÷Éý¼¶ + ENUM_UPGRADE_VCALIB = 2, //ÖÇÄÜ¿âÉý¼¶ + ENUM_UPGRADE_OPTICAL = 3, //¹â¶Ë»úÉý¼¶ + ENUM_UPGRADE_ACS = 4, //ÃŽûϵͳÉý¼¶ + ENUM_UPGRADE_AUXILIARY_DEV = 5,//¸¨ÖúÉ豸Éý¼¶ + ENUM_UPGRADE_LED = 6, //LED·¢ËÍ¿¨ºÍ½ÓÊÕ¿¨Éý¼¶ + ENUM_UPGRADE_INTELLIGENT = 7, //ÖÐÐÄÖÇÄÜÉ豸Éý¼¶ + ENUM_UPGRADE_CUSTOM = 8 //×Ô¶¨ÒåURL ISAPIµÇ½ÓÐЧ +}ENUM_UPGRADE_TYPE; + +typedef struct tagNET_DVR_ACS_EVENT_INFO +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ£¬Îª0ÎÞЧ + BYTE byCardType; //¿¨ÀàÐÍ£¬1-ÆÕͨ¿¨£¬2-ÌØÊâȺÌ忨£¬3-½ûÖ¹Ãûµ¥¿¨£¬4-Ѳ¸ü¿¨£¬5-вÆÈ¿¨£¬6-³¬¼¶¿¨£¬7-À´±ö¿¨£¬8-½â³ý¿¨£¬Îª0ÎÞЧ + BYTE byAllowListNo; //ÔÊÐíÃûµ¥µ¥ºÅ,1-8£¬Îª0ÎÞЧ + BYTE byReportChannel; //±¨¸æÉÏ´«Í¨µÀ£¬1-²¼·ÀÉÏ´«£¬2-ÖÐÐÄ×é1ÉÏ´«£¬3-ÖÐÐÄ×é2ÉÏ´«£¬Îª0ÎÞЧ + BYTE byCardReaderKind; //¶Á¿¨Æ÷ÊôÓÚÄÄÒ»À࣬0-ÎÞЧ£¬1-IC¶Á¿¨Æ÷£¬2-Éí·ÝÖ¤¶Á¿¨Æ÷£¬3-¶þάÂë¶Á¿¨Æ÷,4-Ö¸ÎÆÍ· + DWORD dwCardReaderNo; //¶Á¿¨Æ÷±àºÅ£¬Îª0ÎÞЧ + DWORD dwDoorNo; //ÃűàºÅ(Â¥²ã±àºÅ)£¬Îª0ÎÞЧ£¨µ±½ÓµÄÉ豸ΪÈËԱͨµÀÉ豸ʱ£¬ÃÅ1Ϊ½ø·½Ïò£¬ÃÅ2Ϊ³ö·½Ïò£© + DWORD dwVerifyNo; //¶àÖØ¿¨ÈÏÖ¤ÐòºÅ£¬Îª0ÎÞЧ + DWORD dwAlarmInNo; //±¨¾¯ÊäÈëºÅ£¬Îª0ÎÞЧ + DWORD dwAlarmOutNo; //±¨¾¯Êä³öºÅ£¬Îª0ÎÞЧ + DWORD dwCaseSensorNo; //ʼþ´¥·¢Æ÷±àºÅ + DWORD dwRs485No; //RS485ͨµÀºÅ£¬Îª0ÎÞЧ + DWORD dwMultiCardGroupNo; //Ⱥ×é±àºÅ + WORD wAccessChannel; //ÈËԱͨµÀºÅ + BYTE byDeviceNo; //É豸±àºÅ£¬Îª0ÎÞЧ + BYTE byDistractControlNo;//·Ö¿ØÆ÷±àºÅ£¬Îª0ÎÞЧ + DWORD dwEmployeeNo; //¹¤ºÅ£¬Îª0ÎÞЧ + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷±àºÅ£¬0-ÃŽûÖ÷»ú£¬1-64´ú±í¾ÍµØ¿ØÖÆÆ÷ + BYTE byInternetAccess; //Íø¿ÚID£º£¨1-ÉÏÐÐÍø¿Ú1,2-ÉÏÐÐÍø¿Ú2,3-ÏÂÐÐÍø¿Ú1£© + BYTE byType; //·ÀÇøÀàÐÍ£¬0:¼´Ê±·ÀÇø,1-24Сʱ·ÀÇø,2-ÑÓʱ·ÀÇø ,3-ÄÚ²¿·ÀÇø£¬4-Ô¿³×·ÀÇø 5-»ð¾¯·ÀÇø 6-Öܽç·ÀÇø 7-24СʱÎÞÉù·ÀÇø 8-24Сʱ¸¨Öú·ÀÇø£¬9-24СʱÕ𶯷ÀÇø,10-ÃŽû½ô¼±¿ªÃÅ·ÀÇø£¬11-ÃŽû½ô¼±¹ØÃÅ·ÀÇø 0xff-ÎÞ + BYTE byMACAddr[MACADDR_LEN]; //ÎïÀíµØÖ·£¬Îª0ÎÞЧ + BYTE bySwipeCardType;//Ë¢¿¨ÀàÐÍ£¬0-ÎÞЧ£¬1-¶þάÂë + BYTE byMask; //ÊÇ·ñ´ø¿ÚÕÖ£º0-±£Áô£¬1-δ֪£¬2-²»´÷¿ÚÕÖ£¬3-´÷¿ÚÕÖ + DWORD dwSerialNo; //ʼþÁ÷Ë®ºÅ£¬Îª0ÎÞЧ + BYTE byChannelControllerID; //ͨµÀ¿ØÖÆÆ÷ID£¬Îª0ÎÞЧ£¬1-Ö÷ͨµÀ¿ØÖÆÆ÷£¬2-´ÓͨµÀ¿ØÖÆÆ÷ + BYTE byChannelControllerLampID; //ͨµÀ¿ØÖÆÆ÷µÆ°åID£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byChannelControllerIRAdaptorID; //ͨµÀ¿ØÖÆÆ÷ºìÍâת½Ó°åID£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byChannelControllerIREmitterID; //ͨµÀ¿ØÖÆÆ÷ºìÍâ¶ÔÉäID£¬Îª0ÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byHelmet;//¿ÉÑ¡£¬ÊÇ·ñ´÷°²È«Ã±£º0-±£Áô£¬1-δ֪£¬2-²»´÷°²È«, 3-´÷°²È«Ã± + BYTE byRes[3]; +}NET_DVR_ACS_EVENT_INFO, *LPNET_DVR_ACS_EVENT_INFO; + +typedef struct tagNET_DVR_ACS_EVENT_INFO_EXTEND +{ + DWORD dwFrontSerialNo; //ʼþÁ÷Ë®ºÅ£¬Îª0ÎÞЧ£¨Èô¸Ã×Ö¶ÎΪ0£¬Æ½Ì¨¸ù¾ÝdwSerialNoÅжÏÊÇ·ñ¶ªÊ§Ê¼þ£»Èô¸Ã×ֶβ»Îª0£¬Æ½Ì¨¸ù¾Ý¸Ã×ֶκÍdwSerialNo×ֶι²Í¬ÅжÏÊÇ·ñ¶ªÊ§Ê¼þ£©£¨Ö÷ÒªÓÃÓÚ½â¾ö±¨¾¯¶©Ôĺóµ¼ÖÂdwSerialNo²»Á¬ÐøµÄÇé¿ö£© + BYTE byUserType; //ÈËÔ±ÀàÐÍ£º0-ÎÞЧ£¬1-ÆÕͨÈË£¨Ö÷ÈË£©£¬2-À´±ö£¨·Ã¿Í£©£¬3-½ûÖ¹Ãûµ¥ÈË£¬4-¹ÜÀíÔ± + BYTE byCurrentVerifyMode; //¶Á¿¨Æ÷µ±Ç°ÑéÖ¤·½Ê½£º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-ÈËÁ³»òË¢¿¨»òÃÜÂë»òºçĤ + BYTE byCurrentEvent; //ÊÇ·ñΪʵʱʼþ£º0-ÎÞЧ£¬1-ÊÇ£¨ÊµÊ±Ê¼þ£©£¬2-·ñ£¨ÀëÏßʼþ£© + BYTE byPurePwdVerifyEnable; //É豸ÊÇ·ñÖ§³Ö´¿ÃÜÂëÈÏÖ¤£¬ 0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£©£¨¶ÔÓÚÉ豸À´Ëµ£¬Èç¹ûʹÓÃÁ˹¤ºÅ£¨ÈËÔ±ID£©×ֶΣ¬byEmployeeNoÒ»¶¨Òª´«µÝ£¬Èç¹ûbyEmployeeNo¿Éת»»ÎªdwEmployeeNo£¬ÄÇô¸Ã×Ö¶ÎÒ²Òª´«µÝ£»¶ÔÓÚÉϲãƽ̨»ò¿Í»§¶ËÀ´Ëµ£¬ÓÅÏȽâÎöbyEmployeeNo×ֶΣ¬Èç¸Ã×Ö¶ÎΪ¿Õ£¬ÔÙ¿¼ÂǽâÎödwEmployeeNo×ֶΣ© + BYTE byAttendanceStatus; //¿¼ÇÚ״̬£º0-䶨Òå,1-Éϰ࣬2-Ï°࣬3-¿ªÊ¼ÐÝÏ¢£¬4-½áÊøÐÝÏ¢£¬5-¿ªÊ¼¼Ó°à£¬6-½áÊø¼Ó°à + BYTE byStatusValue; //¿¼ÇÚ״ֵ̬ + BYTE byRes2[2]; + BYTE byUUID[NET_SDK_UUID_LEN/*36*/]; //UUID£¨¸Ã×ֶνöÔÚ¶Ô½Óөʯƽ̨¹ý³ÌÖвŻáʹÓã© + BYTE byDeviceName[NET_DEV_NAME_LEN]; //É豸ÐòÁкŠ+ BYTE byRes[24]; +}NET_DVR_ACS_EVENT_INFO_EXTEND, *LPNET_DVR_ACS_EVENT_INFO_EXTEND; + +//À©Õ¹½á¹¹ÌåÐÅÏ¢V20 +typedef struct tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20 +{ + BYTE byRemoteCheck; //ÊÇ·ñÐèÒªÔ¶³ÌºËÑ飨0-ÎÞЧ£¬1-²»ÐèÒª£¨Ä¬ÈÏ£©£¬2-ÐèÒª£© + BYTE byThermometryUnit; //²âε¥Î»£¨0-ÉãÊ϶ȣ¨Ä¬ÈÏ£©£¬1-»ªÊ϶ȣ¬2-¿ª¶ûÎÄ£© + BYTE byIsAbnomalTemperature; //ÈËÁ³×¥ÅIJâÎÂÊÇ·ñζÈÒì³££º1-ÊÇ£¬0-·ñ + BYTE byRes2; + float fCurrTemperature; //ÈËÁ³Î¶ȣ¨¾«È·µ½Ð¡Êýµãºóһ룩 + NET_VCA_POINT struRegionCoordinates; //ÈËÁ³Î¶È×ø±ê + DWORD dwQRCodeInfoLen; //¶þάÂëÐÅÏ¢³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + DWORD dwVisibleLightDataLen; //ÈȳÉÏñÏà»ú¿É¼û¹âͼƬ³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + DWORD dwThermalDataLen; //ÈȳÉÏñͼƬ³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pQRCodeInfo; //¶þάÂëÐÅÏ¢Ö¸Õë + char *pVisibleLightData; //ÈȳÉÏñÏà»ú¿É¼û¹âͼƬָÕë + char *pThermalData; //ÈȳÉÏñͼƬָÕë + BYTE byAttendanceLabel[64]; //¿¼ÇÚ×Ô¶¨ÒåÃû³Æ + WORD wXCoordinate; //x×ø±ê£¬ÈËÁ³¿ò×óÉϽÇÏà¶ÔÓÚͼƬµÄ¹éÒ»»¯×ø±ê£¬·¶Î§0-1000 + WORD wYCoordinate; //y×ø±ê£¬ÈËÁ³¿ò×óÉϽÇÏà¶ÔÓÚͼƬµÄ¹éÒ»»¯×ø±ê£¬·¶Î§0-1000 + WORD wWidth; //ÈËÁ³¿ò¿í¶È£¬·¶Î§0-1000 + WORD wHeight; //ÈËÁ³¿ò¸ß¶È£¬·¶Î§0-1000 + BYTE byHealthCode; //½¡¿µÂë״̬, 0-±£Áô, 1-δÇëÇó, 2-δÉêÁì, 3-ÂÌÂë, 4-»ÆÂë, 5-ºìÂë, 6-ÎÞ´ËÈËÔ±, 7-ÆäËû´íÎóÐÅÏ¢£¨Èç½Ó¿ÚÒì³£µ¼Ö²éѯʧ°Ü£©, 8-²éѯ½¡¿µÂ볬ʱ + BYTE byNADCode; //ºËËá¼ì²â½á¹û, 0-±£Áô, 1-δ²éѯµ½ºËËá¼ì²â½á¹û, 2-ºËËá¼ì²âÒõÐÔ£¨´ú±íÕý³££©, 3-ºËËá¼ì²âÑôÐÔ£¨´ú±íÈ·Õ, 4-ºËËá¼ì²âÓÐЧÆÚÒѹý + BYTE byTravelCode; //Ðг̱àÂë, 0-±£Áô, 1-14ÌìÄÚÒ»Ö±ÔÚµ±µØ, 2-14ÌìÄÚÀ뿪¹ýµ±µØ, 3-14ÌìÄÚµ½¹ýÒßÇø, 4-ÆäËû + BYTE byVaccineStatus; //´òÒßÃç״̬, 0-±£Áô, 1-δ´òÒßÃç, 2-²¿·Ö×¢ÉäÒßÃç, 3-´ò¹ýÒßÃç + BYTE byRes[948]; +}NET_DVR_ACS_EVENT_INFO_EXTEND_V20, *LPNET_DVR_ACS_EVENT_INFO_EXTEND_V20; + +typedef struct tagNET_DVR_ACS_ALARM_INFO +{ + DWORD dwSize; + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¬²Î¿¼ºê¶¨Òå + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¬²Î¿¼ºê¶¨Òå + NET_DVR_TIME struTime; //ʱ¼ä + BYTE sNetUser[MAX_NAMELEN] ;//ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr ;//Ô¶³ÌÖ÷»úµØÖ· + NET_DVR_ACS_EVENT_INFO struAcsEventInfo; //Ïêϸ²ÎÊý + DWORD dwPicDataLen; //ͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pPicData; + WORD wInductiveEventType; //¹éÄÉʼþÀàÐÍ£¬0-ÎÞЧ£¬¿Í»§¶ËÅжϸÃֵΪ·Ç0Öµºó£¬±¨¾¯ÀàÐÍͨ¹ý¹éÄÉʼþÀàÐÍÇø·Ö£¬·ñÔòͨ¹ýÔ­Óб¨¾¯Ö÷´ÎÀàÐÍ£¨dwMajor¡¢dwMinor£©Çø·Ö + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + BYTE byRes1; //±£Áô×Ö½Ú + DWORD dwIOTChannelNo; //IOTͨµÀºÅ + char *pAcsEventInfoExtend; //byAcsEventInfoExtendΪ1ʱ£¬±íʾָÏòÒ»¸öNET_DVR_ACS_EVENT_INFO_EXTEND½á¹¹Ìå + BYTE byAcsEventInfoExtend; //pAcsEventInfoExtendÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ + BYTE byTimeType; //ʱ¼äÀàÐÍ£º0-É豸±¾µØʱ¼ä£¬1-UTCʱ¼ä£¨struTimeµÄʱ¼ä£© + BYTE byRes2; //±£Áô×Ö½Ú + BYTE byAcsEventInfoExtendV20; //pAcsEventInfoExtendV20ÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ + char *pAcsEventInfoExtendV20; //byAcsEventInfoExtendV20Ϊ1ʱ£¬±íʾָÏòÒ»¸öNET_DVR_ACS_EVENT_INFO_EXTEND_V20½á¹¹Ìå + BYTE byRes[4]; +}NET_DVR_ACS_ALARM_INFO, *LPNET_DVR_ACS_ALARM_INFO; + +#define JUDGE_MAX_VIDEOOUT_NUM 9 + +typedef struct tagNET_DVR_AUDIO_ACTIVATION_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byRes1[3]; + DWORD dwChanNo; //ÓïÒô¼¤ÀøµÄÊÓƵͨµÀºÅ + BYTE bySensitivity; //ÁéÃô¶È 1-100£¬ÁéÃô¶ÈÔ½¸ß£¬±íʾ½ÏµÍµÄÒôÁ¿¾ÍÄÜʹÄܸÃÒôƵÊäÈ뼤Àø¹¦ÄÜ£»ÁéÃô¶ÈÔ½µÍ£¬±íʾÐèÒª½Ï¸ßµÄÒôÁ¿²ÅÄÜʹÄܸÃÒôƵÊäÈëµÄ¼¤Àø¹¦ÄÜ + BYTE byPriority; //ÓÅÏȼ¶ 0-ÓÅÏȼ¶0£¬1-ÓÅÏȼ¶1£¬ ÖµÔ½´ó¼¶±ðÔ½¸ß + WORD wDelayTime; //ÓïÒô¼¤Àø½áÊø»­ÃæÇл»ÑÓ³Ùʱ¼ä£¬µ¥Î»s, ³¬Ê±ºó×Ô¶¯»Øµ½Ô¤Öõã1¶ÔÓ¦µÄ»­Ãæ + BYTE byRes2; //±£Áô + BYTE byEnablePreset; //ÊÇ·ñÆôÓÃÔ¤Öõã + WORD wPreset; //Ô¤Öõã + WORD wBase; /*»ù×¼µã±àºÅ*/ + BYTE byRes3[2]; + BYTE byVoChanNo[JUDGE_MAX_VIDEOOUT_NUM]; //ÓïÒô¼¤ÀøÊÇ·ñÊä³öµ½ÊÓƵÊä³ö¿Ú¡£Öµ0±íʾ²»Êä³ö£¬1-±íʾÊä³ö¡£Ï±ê±íʾͨµÀ˳ÐòÈçÏ£º0-VGA1,1-VGA2, 2-VGA3,3-VGA4,4-VGA5~10,5-HDMI1,6-HDMI2 + BYTE byRes[255]; //±£Áô +}NET_DVR_AUDIO_ACTIVATION_CFG,*LPNET_DVR_AUDIO_ACTIVATION_CFG; + +typedef struct tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byIROutPort; //ºìÍâÊä³öË÷Òý£¬1-ºìÍâÊä³ö¿Ú1£¬2-ºìÍâÊä³ö¿Ú2 + BYTE byIRCmdIndex; //ºìÍâѧÂëÃüÁî¶ÔÓ¦µÄË÷Òý£» + BYTE byRes[254]; //±£Áô +}NET_DVR_INFRARED_OUTPUT_CTRL_CFG, *LPNET_DVR_INFRARED_OUTPUT_CTRL_CFG; + +#define MAX_IR_CMD_NAME_LEN 32 //ºìÍâÊä³öÃüÁîÃû³Æ³¤¶È +#define MAX_IR_CMD_NUM 32 //ºìÍâÃüÁî¸öÊý + +typedef struct tagNET_DVR_INFRARED_CMD_INFO //ºìÍâÃüÁîÃû³ÆÐÅÏ¢ +{ + char sCmdName[MAX_IR_CMD_NAME_LEN]; //ºìÍâÃüÁîÃû³Æ + BYTE byRes[8]; //±£Áô +} NET_DVR_INFRARED_CMD_INFO,*LPNET_DVR_INFRARED_CMD_INFO; + + +typedef struct tagNET_DVR_INFRARED_LEARN_CODE_CFG_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE sIROutName[MAX_IR_CMD_NAME_LEN]; //ºìÍâÊä³ö¿ÚÃû³Æ + NET_DVR_INFRARED_CMD_INFO struIRCmdInfo[MAX_IR_CMD_NUM]; //ºìÍâÃüÁî×ÓÐÅÏ¢ + BYTE byRes[256]; +} NET_DVR_INFRARED_CMD_NAME_CFG,*LPNET_DVR_INFRARED_CMD_NAME_CFG; + +typedef enum tagIR_LEARN_SEND_DATA_TYPE_ENUM +{ + ENUM_SENDDATA = 0x0, //·¢ËÍÊý¾Ý + ENUM_SEND_LEARN_IR_CMD_START, //·¢ËͺìÍâѧÂë + ENUM_SEND_LEARN_IR_CMD_END = 0x2 //ºìÍâѧÂë½áÊø +}IR_LEARN_SEND_DATA_TYPE_ENUM; + + +typedef struct tagNET_DVR_INFRARED_LEARN_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byIROutPort; //ºìÍâÊä³öË÷Òý£¬1-ºìÍâÊä³ö¿Ú1£¬2-ºìÍâÊä³ö¿Ú2 + BYTE byIRCmdIndex; //ºìÍâѧÂëÃüÁî¶ÔÓ¦µÄË÷Òý + BYTE byRes[30]; //±£Áô +} NET_DVR_INFRARED_LEARN_INFO, *LPNET_DVR_INFRARED_LEARN_INFO; + +typedef struct tagNET_DVR_INFRARED_LEARN_END +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE bySaveLearnInfo; //±£´æѧÂëÐÅÏ¢£¬0-±£´æ£¬1-²»±£´æ + BYTE byRes[255]; +} NET_DVR_INFRARED_LEARN_END,*LPNET_DVR_INFRARED_LEARN_END; + +#define MAX_VIDEOIN_TYPE_NUM 10 //×î´óÖ§³ÖµÄÊÓƵÊäÈëÔ´ÀàÐÍ + +typedef struct tagNET_DVR_VIDEOIN_TYPE_INFO +{ + WORD wInType; //ÊäÈëÔ´ÀàÐÍ 0-SDI,1-VGA, 2-HDMI,3-IP,4-PIP + WORD wInNum; //Ö§³ÖµÄÊäÈë¸öÊý + WORD wStartNo; //ÊäÈë¶ÔÓ¦µÄÆðʼºÅ + BYTE byRes[6]; +}NET_DVR_VIDEOIN_TYPE_INFO, *LPNET_DVR_VIDEOIN_TYPE_INFO; + +typedef struct tagNET_DVR_TRIAL_SYSTEM_INFO +{ + DWORD dwSize ; //½á¹¹Ìå´óС + BYTE byVideoInTypeNum ; //ÊÓƵÊäÈëÔ´ÀàÐ͸öÊý + BYTE byRes1[3]; + NET_DVR_VIDEOIN_TYPE_INFO struVideoIn[MAX_VIDEOIN_TYPE_NUM] ; //ÊÓƵÊäÈëÔ´ + BYTE byRes[512 ] ; //±£Áô +} NET_DVR_TRIAL_SYSTEM_INFO, *LPNET_DVR_TRIAL_SYSTEM_INFO; + +typedef struct tagNET_DVR_CASE_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byCaseNo[CASE_NO_LEN]; //°¸¼þ±àºÅ + BYTE byCaseName[CASE_NAME_LEN]; //°¸¼þÃû³Æ£» + BYTE byLitigant1[LITIGANT_LEN]; //µ±ÊÂÈË1£» + BYTE byLitigant2[LITIGANT_LEN]; //µ±ÊÂÈË2£» + BYTE byChiefJudge[CHIEF_JUDGE_LEN];//ÉóÅг¤ + BYTE byCaseType; //°¸¼þÀàÐÍ£»1-ÐÌÊ°¸¼þ¡¢2-ÃñÊ°¸¼þ¡¢3- sCaseTypeCustomÉúЧ + BYTE byShowCaseInfoTime; /* °¸¼þÐÅÏ¢ÏÔʾʱ¼ä,µ¥Î»Ãë, È¡Öµ·¶Î§1~30*/ + BYTE byRes1[2]; //±£Áô + char sCaseTypeCustom[NET_SDK_CASETYPE_LEN/*32*/];//×Ô¶¨Òå°¸¼þÀàÐÍ + BYTE byRes[220]; //±£Áô +}NET_DVR_CASE_INFO, *LPNET_DVR_CASE_INFO; + +#define MICROPHONE_NUM 16 +#define FAN_NUM 8 +#define FPGA_NUM 8 +#define MAIN_BOARD 8 +#define LOCAL_INPUT_NUM 24 +#define LAMP_STATE_NAME 32 +#define LAMP_NAME 32 +#define FILE_NAME_LEN 32 +typedef struct _NET_DVR_REMOTE_PLAY_ +{ + DWORD dwSize; + BYTE byFileName[FILE_NAME_LEN]; //ÐèÒª²¥·ÅµÄÎļþÃû³Æ + BYTE byVideoOut[7]; //²¥·ÅÊä³ö¿Ú + BYTE byRes1[5]; + BYTE byType; // 0-ÎÞÒâÒ壬1-¿ªÊ¼²¥·Å£¬2-Í£Ö¹²¥·Å + BYTE byRes[31]; //±£Áô +}NET_DVR_REMOTE_PLAY, *LPNET_DVR_REMOTE_PLAY; + +typedef struct _NET_DVR_TRIAL_MICROPHONE_STATUS +{ + DWORD dwSize ; + BYTE byMicrophoneStatus [MICROPHONE_NUM];//Âó¿Ë·ç״̬ϱê±íʾÂó¿Ë·çºÅ0-¹©µç£¬1-²»¹©µç + BYTE byRes[32] ; //±£Áô +}NET_DVR_TRIAL_MICROPHONE_STATUS, *LPNET_DVR_TRIAL_MICROPHONE_STATUS; + +typedef struct _NET_DVR_TRIAL_HOST_STATUS +{ + DWORD dwSize ; + DWORD dwFanSpeed [FAN_NUM];//·çÉÈתËÙ + WORD wMainBoardTemp[MAIN_BOARD]; //Ö÷°åÎÂ¶È + BYTE byFpgaTempWarn [FPGA_NUM]; //Êý×é0-Ö÷°åζÈÔÝÎÞ±¨¾¯×´Ì¬£¬Êý×é1-FPGAζȱ¨¾¯×´Ì¬Î»£¬1-´¦ÓÚ±¨¾¯×´Ì¬ 0-´¦ÓÚÎÞ±¨¾¯×´Ì¬ + BYTE byRes[32] ; //±£Áô +}NET_DVR_TRIAL_HOST_STATUS, *LPNET_DVR_TRIAL_HOST_STATUS; + +typedef struct _NET_DVR_LOCAL_INPUT_INFO_ +{ + DWORD dwSize; + BYTE byChannelName[NAME_LEN] ; //ͨµÀÃû³Æ + BYTE byRes[32] ; //±£Áô +}NET_DVR_LOCAL_INPUT_INFO, *LPNET_DVR_LOCAL_INPUT_INFO; + +typedef struct tagNET_DVR_LAMP_STATUS +{ + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byRes1[3]; + BYTE byLampName[LAMP_NAME]; //Lamp Ãû³Æ£¬±¨¾¯Êä³ö3¡¢4¿ÚΪLamp1¡£±¨¾¯5¡¢6Êä³ö¿ÚΪlamp2¡£ + BYTE byLampState1[LAMP_STATE_NAME]; //״̬1¶ÔÓ¦Ãû³Æ£¬ + BYTE byLampState2[LAMP_STATE_NAME]; //״̬2¶ÔÓ¦Ãû³Æ + BYTE byLampState3[LAMP_STATE_NAME]; //״̬3¶ÔÓ¦Ãû³Æ + BYTE byRes[32]; +}NET_DVR_LAMP_STATUS,*LPNET_DVR_LAMP_STATUS; + +typedef struct _NET_DVR_LAMP_OUT +{ + DWORD dwSize; + NET_DVR_LAMP_STATUS struLampInfo[2]; //Êý×é0-±íʾlamp1,Êý×é1±íÊölamp2 + BYTE byRes[256]; //±£Áô +}NET_DVR_LAMP_OUT, *LPNET_DVR_LAMP_OUT; + +typedef struct _NET_DVR_LAMP_CONTROL +{ + DWORD dwSize ; + BYTE byLampNo ; //Lamp±àºÅ£¬¶ÔÓ¦ÅäÖÃLampÊý×éϱê + BYTE byLampStateNo ; //Lamp״̬±àºÅ 0-ÎÞÒâÒ壬1-״̬1, 2-״̬2£¬ 3-״̬3 ¶ÔÓ¦LAMPÊä³ö¿ÚÅäÖÃ״̬ + BYTE byRes[14] ; //±£Áô +}NET_DVR_LAMP_CONTROL, *LPNET_DVR_LAMP_CONTROL; + + +//ʵʱÐÅÏ¢ +typedef struct tagNET_DVR_TPS_PARAM +{ + BYTE byStart; // ¿ªÊ¼Âë + BYTE byCMD; // ÃüÁîºÅ£¬01-½øÈëÖ¸Á02-À뿪ָÁ03-Óµ¶Â״ָ̬Áî(Ϊ03ʱ£¬Ö»ÓÐbyLaneStateºÍbyQueueLenÓÐЧ)£¬04-¶àÏßȦ״̬£¨Îª04ʱ£¬wLoopStateºÍwStateMaskÓÐЧ£¬±íʾbyLane³µµÀÉ϶à¸öÏßȦµÄ¹ý³µ×´Ì¬£© + WORD wSpaceHeadway; //³µÍ·¼ä¾à£¬ÒÔÃ×À´¼ÆËã + WORD wDeviceID; // É豸ID + WORD wDataLen; // Êý¾Ý³¤¶È + BYTE byLane; // ¶ÔÓ¦³µµÀºÅ + BYTE bySpeed; // ¶ÔÓ¦³µËÙ£¨KM/H£© + BYTE byLaneState; // ³µµÀ״̬£»0-ÎÞ״̬£¬1-³©Í¨£¬2-Óµ¼·£¬3-¶ÂÈû + BYTE byQueueLen; // ¶ÂÈû״̬ÏÂÅŶӳ¤¶È£¨±ÈÈç50Ã×£© + WORD wLoopState; //ÏßȦ״̬£¬µÚ¼¸Î»±íʾ¼¸ºÅÏßȦ״̬¡£×´Ì¬1-µ½´ï£¬0-À뿪£¬ÏßȦ±àºÅ´Ó¾µÍ·Óɽüµ½Ô¶ÒÀ´ÎÔö´ó£¬Óû§ÔÚ½âÎöʱÓÅÏȽâÎö³µµÀºÅ£¬ÔÙ½âÎöÏßȦºÅ£¬µ¥¸ö³µµÀµÄÏßȦºÅÊÇΨһµÄ¡£ + WORD wStateMask; //ÏßȦ״̬ÑÚÂ룬ÑÚÂëλΪ1¶ÔÓ¦wLoopState״̬λÓÐЧ£¬Îª0±íʾÎÞЧ + DWORD dwDownwardFlow; //µ±Ç°³µµÀ ´ÓÉϵ½Ï³µÁ÷Á¿ + DWORD dwUpwardFlow; //µ±Ç°³µµÀ ´Óϵ½ÉϳµÁ÷Á¿ + BYTE byJamLevel; //Óµ¶ÂµÈ¼¶£¬µ±byLaneStateΪ3ʱÓÐЧ£¬1-Çá¶È£¬2-Öжȣ¬3-ÖØ¶È + BYTE byVehicleDirection; //0-δ֪£¬1-ÓÉÉ϶øÏ£¬2-ÓÉ϶øÉÏ + BYTE byJamFlow; //Óµ¶ÂÐÂÔöÁ÷Á¿£¬Ã¿ÐÂÔöÒ»Á¾³µ¾ÍÉϱ¨Ò»´ÎÀۼƳµÁ¾µÄÐÅÏ¢ + BYTE byChannelizationLane; //Çþ»¯³µµÀºÅ£¨Çþ»¯±íʾ£¬³µµÀÊýÁ¿±ä»¯µÄÇé¿ö£¬Ò»°ãΪ·¿Ú³µµÀµÄÊýÄ¿£© + BYTE byVehicleType; //³µÐÍʶ±ð£º0- δ֪£¬1- ¿Í³µ(´óÐÍ)£¬2- »õ³µ(´óÐÍ)£¬3- ½Î³µ(СÐÍ)£¬4- ·Ç»ú¶¯³µ + BYTE byRes1[5]; //±£Áô + WORD wTimeHeadway; // ³µÍ·Ê±¾à£¬ÒÔÃë¼ÆËã +}NET_DVR_TPS_PARAM, *LPNET_DVR_TPS_PARAM; + +//TPSʵʱ¹ý³µÊý¾ÝÉÏ´« +typedef struct tagNET_DVR_TPS_REAL_TIME_INFO +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChan;//ͨµÀºÅ + NET_DVR_TIME_V30 struTime; //¼ì²âʱ¼ä + NET_DVR_TPS_PARAM struTPSRealTimeInfo;// ½»Í¨²ÎÊýͳ¼ÆÐÅÏ¢ +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE* pAddInfoBuffer; +#else + /*¸½¼ÓÐÅÏ¢Ö¸Õë,Ö¸ÏòNET_DVR_TPS_ADDINFO½á¹¹Ìå*/ + BYTE* pAddInfoBuffer; + BYTE byRes2[4]; +#endif + /*¸½¼ÓÐÅÏ¢±êʶ£¨¼´ÊÇ·ñÓÐNET_DVR_TPS_ADDINFO½á¹¹Ì壩,0-ÎÞ¸½¼ÓÐÅÏ¢, 1-Óи½¼ÓÐÅÏ¢¡£*/ + BYTE byAddInfoFlag; + BYTE byRes1[3]; // ±£Áô + DWORD dwDeviceIDEx; // É豸IDÀ©Õ¹ + BYTE byRes[8]; // ±£Áô +}NET_DVR_TPS_REAL_TIME_INFO, *LPNET_DVR_TPS_REAL_TIME_INFO; + +//ͳ¼ÆÐÅÏ¢ +typedef struct tagNET_DVR_TPS_LANE_PARAM +{ + BYTE byLane; // ¶ÔÓ¦³µµÀºÅ + BYTE bySpeed; // ³µµÀ¹ý³µÆ½¾ùËÙ¶È + WORD wArrivalFlow; //µ½´ïÁ÷Á¿ + DWORD dwLightVehicle; // СÐͳµÊýÁ¿ + DWORD dwMidVehicle; // ÖÐÐͳµÊýÁ¿ + DWORD dwHeavyVehicle; // ÖØÐͳµÊýÁ¿ + DWORD dwTimeHeadway; // ³µÍ·Ê±¾à£¬ÒÔÃë¼ÆËã + DWORD dwSpaceHeadway; // ³µÍ·¼ä¾à£¬ÒÔÃ×À´¼ÆËã + float fSpaceOccupyRation; // ¿Õ¼äÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆËã,¸¡µãÊý*1000 + float fTimeOccupyRation; // ʱ¼äÕ¼ÓÐÂÊ£¬°Ù·Ö±È¼ÆËã,¸¡µãÊý*1000 + BYTE byStoppingTimes; //ƽ¾ùÍ£³µ´ÎÊý + BYTE byQueueLen; // ¶ÂÈû״̬ÏÂÅŶӳ¤¶È£¨±ÈÈç50Ã×£© + BYTE byFlag; //ÉÏ´«±êʶ£¬0-±íʾT1ʱ¼äµÄͳ¼Æ½á¹û,1-±íʾT2ʱ¼äµÄͳ¼Æ + BYTE byVehicelNum; //ÇøÓò³µÁ¾Êý + WORD wDelay; //ƽ¾ùÑÓÎó + BYTE byRes1[6]; // ±£Áô + DWORD dwNonMotor; // ·Ç»ú¶¯³µÊýÁ¿ +}NET_DVR_TPS_LANE_PARAM, *LPNET_DVR_TPS_LANE_PARAM; + +typedef struct tagNET_DVR_PANORAMA_LINKAGE +{ + DWORD dwSize; + BYTE byEnable;//0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[127]; +}NET_DVR_PANORAMA_LINKAGE, *LPNET_DVR_PANORAMA_LINKAGE; + +// ½»Í¨²ÎÊýͳ¼ÆÐÅÏ¢ +typedef struct tagNET_DVR_TPS_STATISTICS_PARAM +{ + BYTE byStart; // ¿ªÊ¼Âë + BYTE byCMD; // ÃüÁîºÅ£¬ 08-¶¨Ê±³É×éÊý¾ÝÖ¸Áî + BYTE byRes[2]; // Ô¤Áô×Ö½Ú + WORD wDeviceID; // É豸ID + WORD wDataLen; // Êý¾Ý³¤¶È + BYTE byTotalLaneNum; // ÓÐЧ³µµÀ×ÜÊý + BYTE byRes2[3]; + DWORD dwDeviceIDEx; // É豸IDÀ©Õ¹ + BYTE byRes1[8]; + NET_DVR_TIME_V30 struStartTime; //ͳ¼Æ¿ªÊ¼Ê±¼ä + DWORD dwSamplePeriod; //ͳ¼Æʱ¼ä,µ¥Î»Ãë + NET_DVR_TPS_LANE_PARAM struLaneParam[MAX_TPS_RULE/*8*/]; +}NET_DVR_TPS_STATISTICS_PARAM, *LPNET_DVR_TPS_STATISTICS_PARAM; + +//TPSͳ¼Æ¹ý³µÊý¾ÝÉÏ´« +typedef struct tagNET_DVR_TPS_STATISTICS_INFO +{ + DWORD dwSize; // ½á¹¹Ìå´óС + DWORD dwChan ;//ͨµÀºÅ + NET_DVR_TPS_STATISTICS_PARAM struTPSStatisticsInfo;// ½»Í¨²ÎÊýͳ¼ÆÐÅÏ¢ + DWORD dwJsonLen;//Json±¨¾¯ÐÅÏ¢³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE* pJsonBuf; +#else + // Json±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäJSON¶ÔÓ¦µ½EventNotificationAlert Json Block + BYTE* pJsonBuf; + BYTE byRes2[4]; +#endif + BYTE byJsonInfoFlag; //ÊÇ·ñÓÐJson͸´«Êý¾Ý£¬0-ÎÞ£¬1-ÓÐ + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE byRes[114]; //±£Áô +}NET_DVR_TPS_STATISTICS_INFO, *LPNET_DVR_TPS_STATISTICS_INFO; + +#define DPC_CORRECT 1 //УÕý +#define DPC_CORRECT_CANCEL 2 //È¡ÏûУÕý +#define DPC_CROSS_DISPALY_OPEN 3 //»µµã¼ì²âÊ®×Ö²æÏÔʾ¿ªÆô +#define DPC_CROSS_DISPALY_CLOSE 4 //»µµã¼ì²âÊ®×Ö²æÏÔʾ¹Ø±Õ +#define DPC_POINT 5 //»µµãУÕý×ø±ê +#define DPC_UP 6 //»µµãУÕý×ø±êµãÏòÉÏÆ«ÒÆ +#define DPC_DOWN 7 //»µµãУÕý×ø±êµãÏòÏÂÆ«ÒÆ +#define DPC_RIGHT 8 //»µµãУÕý×ø±êµãÏòÓÒÆ«ÒÆ +#define DPC_LEFT 9 //»µµãУÕý×ø±êµãÏò×óÆ«ÒÆ +#define DPC_ALL_CORRECT 10 //ËùÓлµµãУÕý +#define DPC_SAVE 11 //»µµã±£´æ + +typedef struct tagNET_DVR_DPC_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + WORD wCtrlType ;//²Î¿¼ºê¶¨Òå + /* + ÊÖ¶¯Ð£Õý£ºÄ¬ÈÏΪÊÖ¶¯Ð£Õýģʽ£¬Ê¹ÓÃwCtrlType²Ù×÷ÀàÐͽøÐÐÊÖ¶¯Ð£Õý¡£ + ×Ô¶¯Ð£Õý£ºÉ豸½«×Ô¶¯½øÐÐУÕý£¬ÎÞÐèÔÙ½øÐÐÊÖ¶¯Ð£Õý£¬´ËʱwCtrlType¡¢struPoint²ÎÊýÎÞЧ¡£ + */ + BYTE byDPCMode;//»µµãУÕýģʽ£º0-ÊÖ¶¯Ð£Õý£¬1-×Ô¶¯Ð£Õý + BYTE byRes; + NET_VCA_POINT struPoint; /*ÊäÈëµÄͼÏñƽÃæ×ø±ê£¬¹éÒ»»¯µ½0-1*/ + BYTE byRes1[64]; +}NET_DVR_DPC_PARAM, *LPNET_DVR_DPC_PARAM; + +//·Ç¾ùÔÈÐÔУÕý(FFC)ÊÖ¶¯Ä£Ê½ +typedef struct tagNET_DVR_FFC_MANUAL_INFO +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_FFC_MANUAL_INFO, *LPNET_DVR_FFC_MANUAL_INFO; + +//·Ç¾ùÔÈÐÔУÕý(FFC)±³¾°²¹³¥ +typedef struct tagNET_DVR_FFC_BACKCOMP_INFO +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_FFC_BACKCOMP_INFO, *LPNET_DVR_FFC_BACKCOMP_INFO; + +//´æ´¢·þÎñÆ÷¿ª¹Ø״̬ +typedef struct tagNET_DVR_STORAGE_SERVER_SWITCH_CFG +{ + DWORD dwSize; + /*´æ´¢Í¼Æ¬¿ª¹Ø£»°´Î»±íʾ£¬0-¹Ø±Õ£¬1-¿ªÆô + Êý×é0-Òƶ¯Õì²âץͼ(Ôݲ»Ö§³Ö) + Êý×é1-±¨¾¯×¥Í¼(Ôݲ»Ö§³Ö) + ¡­¡­ + */ + BYTE byPicEnable[MAX_PIC_SWITCH_STORAGE_SERVER]; + /*´æ´¢¸½¼ÓÐÅÏ¢¿ª¹Ø£»°´Î»±íʾ£¬0-¹Ø±Õ£¬1-¿ªÆô + Êý×é0-ÈȶÈͼ(Ôݲ»Ö§³Ö) + Êý×é1-¿ÍÁ÷Á¿(Ôݲ»Ö§³Ö) + ¡­¡­ + */ + BYTE byAddInfoEnable[MAX_INFO_SWITCH_STORAGE_SERVER]; + BYTE byRes[324]; +} NET_DVR_STORAGE_SERVER_SWITCH_CFG, +*LPNET_DVR_STORAGE_SERVER_SWITCH_CFG; + +//Ç¿ÖÆֹͣȡ֤ +typedef struct tagNET_DVR_FORCESTOP_FORENSICS_CFG +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_FORCESTOP_FORENSICS_CFG, *LPNET_DVR_FORCESTOP_FORENSICS_CFG; + +typedef struct tagNET_DVR_DEC_VCA_ALARM +{ + DWORD dwSize; + DWORD dwDisplayNo; //²úÉúÖÇÄܱ¨¾¯µÄÏÔʾͨµÀºÅ + BYTE bySubWinNo; //²úÉúÖÇÄܱ¨¾¯µÄ×Ó´°¿ÚºÅ + BYTE byRes1[3]; + NET_DVR_TIME_V30 struTime; //²úÉú±¨¾¯Ê±¼ä + NET_DVR_PU_STREAM_CFG_V41 struSourceInfo; //ÂëÁ÷Ô´ÐÅÏ¢ + BYTE *byAlarmPic; //±¨¾¯Í¼Æ¬»º³åÇø + DWORD dwAlarmPicSize; //±¨¾¯Í¼Æ¬´óС£¬µ¥Î»£º×Ö½Ú + BYTE byRes2[64]; +}NET_DVR_DEC_VCA_ALARM, *LPNET_DVR_DEC_VCA_ALARM; + +typedef struct tagNET_DVR_DEC_VCA_ALARM_LOGO +{ + BYTE byEnableLogo; //ÊÇ·ñµþ¼ÓÖÇÄܱ¨¾¯logo£¬0-²»µþ¼Ó£¬·Ç0-µþ¼Ó + BYTE byFlash; //ÊÇ·ñÉÁ˸£¬0-²»ÉÁ˸£¬·Ç0-ÉÁ˸ + WORD wFlashTime; //ÉÁ˸ʱ¼ä£¬µ¥Î»£ºÃ룬ȡֵ·¶Î§´Ó½âÂëÆ÷ÄÜÁ¦¼¯»ñÈ¡ + DWORD dwLogoX; //logo X×ø±ê£¬½âÂë´°¿Ú×Ü´óС£º1920*1920 + DWORD dwLogoY; //logo Y×ø±ê + BYTE byRes[32]; +}NET_DVR_DEC_VCA_ALARM_LOGO, *LPNET_DVR_DEC_VCA_ALARM_LOGO; + +typedef struct tagNET_DVR_DEC_VCA_ALARM_PIC +{ + BYTE byUploadPic; //ÖÇÄܱ¨¾¯Ê±ÊÇ·ñÉÏ´«±¨¾¯Í¼Æ¬£¬0-²»ÉÏ´«£¬·Ç0-ÉÏ´« + BYTE byOverlayTargetInfo; //±¨¾¯Í¼Æ¬ÊÇ·ñµþ¼ÓÄ¿±êÐÅÏ¢£¬0-²»µþ¼Ó£¬·Ç0-µþ¼Ó + BYTE byOverlayRuleInfo; //±¨¾¯Í¼Æ¬ÊÇ·ñµþ¼ÓÖÇÄܹæÔòÐÅÏ¢£¬0-²»µþ¼Ó£¬·Ç0-µþ¼Ó + BYTE byPicQuality; //ͼƬÖÊÁ¿ÏµÊý 0-×îºÃ 1-½ÏºÃ 2-Ò»°ã + /*ͼƬ´óС ¿ÉÒÔͨ¹ýÄÜÁ¦¼¯»ñÈ¡ + 0-CIF£¬ 1-QCIF£¬ 2-D1£¬ 3-UXGA(1600x1200), 4-SVGA(800x600),5-HD720p(1280x720)£¬ + 6-VGA£¬ 7-XVGA£¬ 8-HD900p£¬ 9-HD1080£¬ 10-2560*1920£¬ + 11-1600*304£¬ 12-2048*1536£¬ 13-2448*2048, 14-2448*1200£¬ 15-2448*800£¬ + 16-XGA(1024*768), 17-SXGA(1280*1024),18-WD1(960*576/960*480), 19-1080i, 20-576*576£¬ + 21-1536*1536, 22-1920*1920, 23-320*240, 24-720*720, 25-1024*768, + 26-1280*1280, 27-1600*600, 28-2048*768, 0xff-Auto(ʹÓõ±Ç°ÂëÁ÷·Ö±æÂÊ)*/ + BYTE byPicSize; + BYTE byRes[27]; +}NET_DVR_DEC_VCA_ALARM_PIC, *LPNET_DVR_DEC_VCA_ALARM_PIC; + +typedef struct tagNET_DVR_DEC_VCA_ALARM_CFG +{ + DWORD dwSize; + NET_DVR_DEC_VCA_ALARM_LOGO struAlarmLogo; //ÖÇÄܱ¨¾¯logoµþ¼Ó²ÎÊý + NET_DVR_DEC_VCA_ALARM_PIC struAlarmPic; //ÖÇÄܱ¨¾¯Í¼Æ¬²ÎÊý + BYTE byRes[64]; +}NET_DVR_VCA_ALARM_CFG, *LPNET_DVR_DEC_VCA_ALARM_CFG; + +#define MAX_OSD_LEN 64 //Êä³ö¿ÚOSD³¤¶È +typedef struct tagNET_DVR_OUTPUT_PIC_INFO +{ + DWORD dwSize; + BYTE sPicName[NAME_LEN];//ͼƬÃû³Æ + BYTE byUsed; //ÊÇ·ñÒÑ´æÔÚ£¬0-²»´æÔÚ£¬1-´æÔÚ + BYTE byRes[31]; +}NET_DVR_OUTPUT_PIC_INFO,*LPNET_DVR_OUTPUT_PIC_INFO; + +typedef struct tagNET_DVR_OUTPUT_PIC_CFG +{ + DWORD dwSize; + DWORD dwOutputPicNo; //ͼƬÐòºÅ + BYTE byEnable; //logoÊÇ·ñÏÔʾ£¬1-ÏÔʾ£¬0-Òþ²Ø + BYTE byRes1[3]; + NET_DVR_RECTCFG_EX struRect;//logoλÖã¬Êä³ö¿Ú·¶Î§×Ü´óСΪ1920*1920 + BYTE byFlash; //ÊÇ·ñÉÁ˸1-ÉÁ˸£¬0-²»ÉÁ˸ + BYTE byTranslucent; //ÊÇ·ñ°ë͸Ã÷1-°ë͸Ã÷£¬0-²»°ë͸Ã÷ + BYTE byRes2[2]; //±£Áô + DWORD dwOutputPicWinNo; //Êä³ö¿ÚͼƬ´°¿ÚºÅ£¨1×Ö½ÚÉ豸ºÅ+1×Ö½ÚÊä³ö¿ÚºÅ+2×Ö½ÚÊä³ö¿ÚͼƬ´°¿ÚºÅ£©,»ñÈ¡È«²¿Ê±ÓÐЧ + BYTE byRes3[28]; +}NET_DVR_OUTPUT_PIC_CFG,*LPNET_DVR_OUTPUT_PIC_CFG; + +typedef struct tagNET_DVR_OUTPUT_OSD_CFG +{ + DWORD dwSize; + BYTE byEnable; //OSDÊÇ·ñÏÔʾ£¬0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byFontSize; //×ÖÌå´óС£¬1-´ó£¬2-ÖУ¬3-С + BYTE byOSDColor; //OSDÑÕÉ«ÅäÖã¬0-ĬÈÏ£¬ 1-ºÚ£¬2-°×£¬3-ºì£¬4-ÂÌ£¬5-À¶ + BYTE byRes1[1]; + BYTE byOsdContent[MAX_OSD_LEN]; //OSDÄÚÈÝ + NET_DVR_RECTCFG_EX struRect;//OSDλÖã¬Êä³ö¿Ú·¶Î§×Ü´óСΪ1920*1920 + DWORD dwOsdWinNo; //Êä³ö¿ÚOSD´°¿ÚºÅ£¨1×Ö½ÚÉ豸ºÅ+1×Ö½ÚÊä³ö¿ÚºÅ+2×Ö½ÚOSD´°¿ÚºÅ£©£¬»ñÈ¡ËùÓÐʱÓÐЧ + BYTE byRes2[32]; //±£Áô +}NET_DVR_OUTPUT_OSD_CFG,*LPNET_DVR_OUTPUT_OSD_CFG; + +typedef struct tagNET_DVR_CHAN_RELATION_RESOURCE +{ + DWORD dwSize; + DWORD dwDisplayChan; //ÏÔʾͨµÀºÅ£¨1×Ö½ÚÉ豸ºÅ+1×Ö½Ú±£Áô+2×Ö½ÚÏÔʾͨµÀºÅ£© + BYTE byRelateAudio; //ÊÇ·ñ¹ØÁª×Ó´°¿ÚÒôƵ + BYTE byRes1[3]; + DWORD dwSubWinNo; //¹ØÁªÒôƵµÄ×Ó´°¿ÚºÅ£¨1×Ö½ÚµçÊÓǽºÅ+1×Ö½Ú×Ó´°¿ÚºÅ+2×Ö½Ú´°¿ÚºÅ£© + DWORD dwChannel; //±àÂëͨµÀºÅ£¬»ñÈ¡È«²¿Ê±ÓÐЧ + BYTE byRes2[32]; +}NET_DVR_CHAN_RELATION_RESOURCE, *LPNET_DVR_CHAN_RELATION_RESOURCE; + +typedef struct tagNET_DVR_ALARM_CHAN_ABLITITY +{ + DWORD dwSize; + BYTE bySensorChan[64];//Ä£ÄâÁ¿Í¨µÀ ϱê±íʾͨµÀºÅ 0-±íʾ²»Ö§³Ö£¬1-±íʾ֧³Ö + BYTE byAlarmInChan[64];//±¨¾¯ÊäÈëͨµÀ ϱê±íʾͨµÀºÅ 0-±íʾ²»Ö§³Ö£¬1-±íʾ֧³Ö + BYTE byAlarmOutChan[64];//±¨¾¯Êä³öͨµÀ ϱê±íʾͨµÀºÅ 0-±íʾ²»Ö§³Ö£¬1-±íʾ֧³Ö + BYTE by485Chan[64];//485ͨµÀ ϱê±íʾͨµÀºÅ 0-±íʾ²»Ö§³Ö£¬1-±íʾ֧³Ö + BYTE byRes[128]; +}NET_DVR_ALARM_CHAN_ABLITITY, *LPNET_DVR_ALARM_CHAN_ABLITITY; + +typedef struct +{ + DWORD dwSize; + BYTE byOutScale[8];//ϱê±íʾÖ÷¸¨¿ÚºÅ£¬0-±íʾ²»Ö§³Ö£¬1-±íʾ12V£¬2-±íʾ24V + BYTE byRes[16]; +}NET_DVR_OUT_SCALE_CFG, *LPNET_DVR_OUT_SCALE_CFG; + +typedef struct tagNET_DVR_MONITOR_LOCATION_COND +{ + DWORD dwSize; + DWORD dwChan; + /* + 0 ±íʾ¹ØÁª ×¥ÅÄMPRģʽ£¨¶àÖ¡´¥·¢×¥ÅÄ IPCʹÓã© + 1 ±íʾ¹ØÁª ×¥ÅÄ HVT ģʽ£¨»ì¿¨IPCʹÓã© + */ + BYTE byRelateType; + BYTE byRes[63]; //±£Áô +}NET_DVR_MONITOR_LOCATION_COND, *LPNET_DVR_MONITOR_LOCATION_COND; + +typedef struct tagNET_DVR_MONITOR_LOCATION_CFG +{ + DWORD dwSize; + BYTE byMonitoringSiteID[MAX_ID_LEN/*48*/]; //¼à²âµã±àºÅ + BYTE byDeviceID[MAX_ID_LEN/*48*/]; //É豸±àºÅ + BYTE byDirectionNo; //¼à²â·½Ïò±àºÅ,0-ÎÞ,1-ÉÏÐÐ,2-ÏÂÐÐ,3-Ë«Ïò,4-Óɶ«ÏòÎ÷,5-ÓÉÄÏÏò±±,6-ÓÉÎ÷Ïò¶«,7-Óɱ±ÏòÄÏ,8-ÆäËû + BYTE byRes1[3]; //±£Áô + BYTE byMonitorInfo[MONITORSITE_ID_LEN/*48*/]; //¼à²âµãÐÅÏ¢ÃèÊö + BYTE byRes[128]; //±£Áô +}NET_DVR_MONITOR_LOCATION_CFG, *LPNET_DVR_MONITOR_LOCATION_CFG; + +typedef struct tagNET_DVR_REMOTECONTROL_COND +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_REMOTECONTROL_COND, *LPNET_DVR_REMOTECONTROL_COND; + +typedef struct tagNET_DVR_REMOTECONTROL_STATUS_ +{ + DWORD dwSize; //½á¹¹´óС + BYTE byAlarmStatus;//²¼·À״̬£¬0-±£Áô,1-³··À,2-²¼·À + BYTE byRes[3]; + WORD wAlarmDealyTime;//²¼·ÀÑÓ³Ùʱ¼ä£¬µ¥Î»s + WORD wDisAlarmDealyTime;//³··ÀÑÓ³Ùʱ¼ä£¬µ¥Î»s + BYTE byRes1[64]; +} NET_DVR_REMOTECONTROL_STATUS, *LPNET_DVR_REMOTECONTROL_STATUS; + +typedef struct tagNET_DVR_SECURITY_CFG +{ + DWORD dwSize; + BYTE byCommuMode;//˽ÓÐЭÒéͨÐÅģʽ£¬0-¼æÈÝģʽ£¬1-°²È«Ä£Ê½ + BYTE byRes1[2]; + BYTE byWebAuthentication; //webÈÏÖ¤ÅäÖà 0-digest¡¢1-basic¡¢2-digest/basic;ĬÈÏbasicÈÏÖ¤ + BYTE byRtspAuthentication; //rtspÈÏÖ¤ÅäÖà 0-disable¡¢1-basic¡¢2-digest¡¢3-digest/basic;ĬÈÏbasicÈÏÖ¤ + BYTE byTelnetServer; //telnetÉèÖà 0¡«½ûÓã¬1¡«ÆôÓà + BYTE bySSHServer; //SSHÉèÖà 0¡«½ûÓÃ(ĬÈÏ)£¬1¡«ÆôÓà + BYTE byIllegalLoginLock; //¿ªÆôµÇ½Ëø¶¨, 0-ÆôÓã¨Ä¬ÈÏ£©£¬1-½ûÓà + BYTE byStreamEncryption; //ÂëÁ÷¼ÓÃÜ 0-²»¼ÓÃÜ£¬1-¼ÓÃÜ + BYTE byAntiAttack; //ÊÇ·ñ¿ªÆô·À¹¥»÷¹¦ÄÜ£¬0- ²»ÆôÓã¬1-ÆôÓÃ(socketÑÓʱ5s¹Ø±Õ) + BYTE byRes[26]; +}NET_DVR_SECURITY_CFG,*LPNET_DVR_SECURITY_CFG; + +typedef struct tagNET_DVR_PASSWORD_MANAGE_CFG +{ + DWORD dwSize; + BYTE byRes[3]; + BYTE byLockCount; //¶ÔÓ¦Óû§Ãû»òIP±»¼¸´ÎÁ¬ÐøµÄ´íÎóÃÜÂëµÇ¼ºó£¬¶Ô¸ÃÓû§½øÐÐËø¶¨£¬0-²»Ëø¶¨£¬ÆäËûֵΪËø¶¨µÄ´ÎÊý¡£ ĬÈÏΪ0£¬ÀýÈç1±íʾ´íÎóµÇ¼1´ÎÒÔºó¾ÍËø¶¨¸ÃÓû§Ãû¡£ + DWORD dwLockTime; //Ëø¶¨Ê±¼ä£¬±íʾ´íÎóºóËø¶¨µÄʱ¼ä£¬µ¥Î»£ºÃë¡£²»ÄÜΪ0£¬byLockCount²»Îª0ʱ£¬dwLockTime²ÅÓÐЧ + BYTE byRes1[128]; //4×Ö½Ú¶ÔÆë +} NET_DVR_PASSWORD_MANAGE_CFG,*LPNET_DVR_PASSWORD_MANAGE_CFG; + + +typedef struct tagNET_DVR_UNLOCK_INFO +{ + DWORD dwSize; + BYTE byUnlockType; //0-ÎÞЧ£¬ 1-°´IP½âËø£¬2-½âËøËùÓÐIP + BYTE byIPVersion; //1-IPV4£¬2-IPV6£¬µ±byUnlockTypeΪ1ʱ£¬¸Ã²ÎÊýÓÐЧ + BYTE byRes1[2]; + NET_DVR_IPADDR struIPAddr; //IPµØÖ· + BYTE byRes[64]; +} NET_DVR_UNLOCK_INFO,*LPNET_DVR_UNLOCK_INFO; + +typedef struct tagNET_DVR_LOCKED_INFO +{ + DWORD dwSize; + BYTE byIPType; //IPÀàÐÍ 0-ÎÞЧ£¬1-IPV4£¬2-IPV6 + BYTE byRes1[3]; + NET_DVR_IPADDR struIPAddress; + BYTE byRes[20]; +} NET_DVR_LOCKED_INFO,*LPNET_DVR_LOCKED_INFO; + + +typedef struct tagNET_DVR_VEHICLE_PARA +{ + BYTE sLicense[MAX_LICENSE_LEN]; + /*¹ú¼ÒË÷ÒýÖµ + 0-Ëã·¨¿â²»Ö§³ÖÅÆʶ¹ú¼Ò£¬1-½Ý¿Ë¹²ºÍ¹ú(CZ - Czech Republic)£¬2-·¨¹ú(FRA - France)£¬ + 3-µÂ¹ú(DE - Germany),4-Î÷°àÑÀ(E - Spain), 5-Òâ´óÀû(IT - Italy)£¬6-ºÉÀ¼(NL - Netherlands)£¬7-²¨À¼(PL - Poland)£¬8-˹Âå·¥¿Ë(SVK - Slovakia), 9-°×¶íÂÞ˹(BY - Belorussia), 10-Ħ¶û¶àÍß(MDA - Moldova)£¬11-¶íÂÞ˹(RU - Russia)£¬12-ÎÚ¿ËÀ¼(UA - Ukraine), + 169-¼ÓÄôó(Canada), 172-ÃÀ¹ú(US), 227-°Ä´óÀûÑÇ(Australia), 0xfe-ÎÞ·¨Ê¶±ð + */ + BYTE byCountry; // ¹ú¼ÒË÷ÒýÖµ + + BYTE byRes[239]; +}NET_DVR_VEHICLE_PARA, *LPNET_DVR_VEHICLE_PARA; + +typedef struct tagNET_DVR_FACE_PIC_DATA_INFO +{ + DWORD dwImageLen; //ͼƬ´óС + NET_VCA_RECT struVcaRect; //×ÓͼÔÚ´óͼÖеÄ×ø±êλÖ㬹éÒ»»¯×ø±ê + DWORD dwFaceScore; //ÏàËƶȣ¬È¡Öµ·¶Î§0-100 + BYTE byVcaRectOnly; //ÊÇ·ñÖ»ÉÏ´«×ø±ê£º0-·ñ£»1-ÊÇ + BYTE byRes1[3]; + DWORD dwPID; //ͼƬID + DWORD dwFaceSearchNum;// ËÑË÷ÈËÁ³ÇøÓò¸öÊý + NET_VCA_RECT struMultiVcaRect[NET_DVR_MAX_FACE_SEARCH_NUM];//£¨¶à¸ö£©×ÓͼÔÚ´óͼÖеÄ×ø±êλÖ㬹éÒ»»¯×ø±ê, byVcaRectOnly=1ʱÆôÓ㬽ô´ÕÅÅÁÐ + BYTE byRes[136]; + BYTE *pImage; //ÆäÖÐͼƬҪÇóΪjpg¸ñʽ +}NET_DVR_FACE_PIC_DATA_INFO, *LPNET_DVR_FACE_PIC_DATA_INFO; + +typedef struct tagNET_DVR_BEHAVIOUR_COND +{ + DWORD dwSearchType; //ËÑË÷ÀàÐÍ + //&0x1 - ´©Ô½¾¯½äÏß + //&0x2 - ÇøÓòÈëÇÖ + //&0x4 - ÎïÆ·ÒÅÁô + //&0x8 - ÎïÆ·ÄÃÈ¡ + //&0x10 - ½øÈëÇøÓò + //&0x20 - À뿪ÇøÓò + //&0x40 - ·Ç·¨Í£³µ + //&0x80 - ÅÇ»² + //&0x100 -ÈËÔ±¾Û¼¯ + //&0x200 - ¿ìËÙÒƶ¯ + //&0x400 - Àë¸Ú¼ì²â + //&0x800 - ÈËÊý±ä»¯ + //&0x1000 - ¾çÁÒÔ˶¯ + //&0x2000 - ÈËÔ±±¼ÅÜ + //&0x4000 - ÈËÔ±µ¹µØ + //&0x8000 - ÈËÔ±ÖÍÁô + //&0x10000 ¨C̬ÊÆ·ÖÎö + //&0x20000 ¨C ÍæÊÖ»ú + BYTE byHumanMisinfo;// Ö»»ñÈ¡ÈËÌåÎó±¨ÐÅÏ¢ 0-·ñ£¬1-ÊÇ + BYTE byRes[251]; //±£Áô +}NET_DVR_BEHAVIOUR_COND, *LPNET_DVR_BEHAVIOUR_COND; + + +typedef union tagNET_DVR_SMARTSEARCH_PIC_UNION +{ + BYTE byLen[256]; //ÁªºÏÌ峤¶È + NET_DVR_VEHICLE_PARA struVehiclePara; //³µÁ¾¼ì²âÐÅÏ¢ + NET_VCA_HUMAN_FEATURE struHumaFeature; //ÈËÁ³ÊôÐÔ + NET_DVR_FACE_PIC_DATA_INFO struHumaPic; //¸ù¾ÝÈËÁ³×ÓͼÐÅÏ¢²éѯ£¨ÓÃÓÚÔ¶³ÌͼƬµÄÒÔͼË÷ͼ¹¦ÄÜ£© + NET_DVR_BEHAVIOUR_COND struBehaviourCond; //ÐÐΪ·ÖÎöËÑË÷Ìõ¼þ +}NET_DVR_SMARTSEARCH_PIC_UNION,*LPNET_DVR_SMARTSEARCH_PIC_UNION; + +typedef struct tagNET_DVR_SMART_SEARCH_PIC_PARA //ÖÇÄÜͼƬËÑË÷½á¹¹Ìå size 344 +{ + DWORD dwChanNo; //ͨµÀºÅ + DWORD byStreamID[STREAM_ID_LEN] ; //Á÷IDÐÅÏ¢£¬ÓëdwChanNoÏà±È£¬ÓÅÏȼ¶½Ï¸ß£¬¼´µ±byStreamID²»Îª¿Õʱ£¬ÔòʹÓÃÁ÷ID£¬Îª¿ÕµÄÇé¿öÏÂʹÓÃdwChanNo×ֶΠ+ NET_DVR_TIME_EX struStartTime; //¼Ïñ¿ªÊ¼µÄʱ¼ä + NET_DVR_TIME_EX struEndTime; //¼ÏñÍ£Ö¹µÄʱ¼ä + WORD wSearchType; //ÖÇÄܲéÕÒÀàÐÍ 0-³µÁ¾¼ìË÷ £¬1-ÈËÁ³ÊôÐÔ£¬ 2-ÒÔͼË÷ͼ £¬3-ÐÐΪ·ÖÎö + BYTE byRes1[2]; + NET_DVR_SMARTSEARCH_PIC_UNION uSmartSearchCond; //ÖÇÄܲéÕÒÌõ¼þ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cStartTimeDifferenceH; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cStartTimeDifferenceM; //¿ªÊ¼Ê±¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceH; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ÕýÊý±íʾ¶«Ê±Çø + char cStopTimeDifferenceM; //½áÊøʱ¼äÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes[59]; +}NET_DVR_SMART_SEARCH_PIC_PARA, *LPNET_DVR_SMART_SEARCH_PIC_PARA; + +//ÈËÌåÌØÕ÷ʶ±ð½á¹û +typedef struct tagNET_DVR_FACE_SUB_PIC_INFO +{ + DWORD dwSimilarity; //ÏàËÆ¶È 0-100 + NET_VCA_RECT struVcaRect; //ÈËÁ³ÇøÓò£¬¹éÒ»»¯×ø±ê + BYTE byRes2[236]; //±£Áô +}NET_DVR_FACE_SUB_PIC_INFO ,*LPNET_DVR_FACE_SUB_PIC_INFO; + + +typedef struct tagNET_DVR_BEHAVIOR_INFO +{ + NET_VCA_RECT struVcaRect; + WORD wPeopleNum; //ÇøÓòÈËÊý£¬½öͼƬÀàÐÍ£¨NET_DVR_SMART_SEARCH_PIC_RET ÖÐwPicType£©ÎªÌ¬ÊÆ·ÖÎöʱÓÐЧ + BYTE byRes2[238]; //±£Áô +}NET_DVR_BEHAVIOR_INFO ,*LPNET_DVR_BEHAVIOR_INFO; + +typedef union tagNET_DVR_PIC_FEATURE_UNION +{ + BYTE byLen[256]; //ÁªºÏÌ峤¶È + NET_DVR_PLATE_INFO struPlateInfo; //³µÁ¾¼ìË÷ÐÅÏ¢ + NET_DVR_FACE_SUB_PIC_INFO struFaceSubInfo; //ÈËÁ³×ÓͼÐÅÏ¢ + NET_DVR_BEHAVIOR_INFO struBehavior; //ÐÐΪ·ÖÎö¶ÔÓ¦µÄ×ÓͼÐÅÏ¢ +}NET_DVR_PIC_FEATURE_UNION,*LPNET_DVR_PIC_FEATURE_UNION; + +typedef struct tagNET_DVR_SMART_SEARCH_PIC_RET +{ + char sFileName[PICTURE_NAME_LEN];//ÎļþÃû + NET_DVR_TIME_EX struTime; //ͼƬµÄץͼʱ¼ä + DWORD dwFileSize; //ÎļþµÄ´óС + WORD wPicType; //ͼƬÀàÐÍ 0-³µÁ¾¼ìË÷ £¬1-ÈËÁ³ÊôÐÔ£¬ 2-ÒÔͼË÷ͼ £¬3-´©Ô½¾¯½äÏߣ¬4-ÇøÓòÈëÇÖ£¬ 5-ÎïÆ·ÒÅÁô£¬ 6-ÎïÆ·ÄÃÈ¡£¬ 7-½øÈëÇøÓò£¬ 8-À뿪ÇøÓò£¬ 9-·Ç·¨Í£³µ£¬10-ÅÇ»²£¬11-ÈËÔ±¾Û¼¯£¬12-¿ìËÙÒƶ¯,13-ÈËÔ±±¼ÅÜ£¬14-¾çÁÒÔ˶¯£¬15-ÈËÔ±µ¹µØ£¬16-ÈËÊýÒì³££¬17-Àë¸Ú¼ì²â£¬18-ÈËÔ±ÖÍÁô£¬19-̬ÊÆ·ÖÎö 20-ÍæÊÖ»ú + BYTE byRes1[2]; //±£Áô + NET_DVR_PIC_FEATURE_UNION uPicFeature; //ͼƬÊôÐÔ + BYTE byISO8601; //ÊÇ·ñÊÇ8601µÄʱ¼ä¸ñʽ£¬¼´Ê±²î×Ö¶ÎÊÇ·ñÓÐЧ0-ʱ²îÎÞЧ£¬ÄêÔÂÈÕʱ·ÖÃëΪÉ豸±¾µØʱ¼ä 1-ʱ²îÓÐЧ + char cTimeDifferenceH; //ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ ÕýÊý±íʾ¶«Ê±Çø + char cTimeDifferenceM; //ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 0, 30, 45£¬ÕýÊý±íʾ¶«Ê±Çø + BYTE byRes[29]; +}NET_DVR_SMART_SEARCH_PIC_RET, *LPNET_DVR_SMART_SEARCH_PIC_RET; + +typedef struct tagNET_DVR_T1TEST_SEND_DATA_BUZZER +{ + BYTE byHearSound; //ÊÇ·ñÌýµ½ÉùÒô 0-δÌýµ½£¬1-Ìýµ½ + BYTE byRes[31]; //±£Áô +}NET_DVR_T1TEST_SEND_DATA_BUZZER,*LPNET_DVR_T1TEST_SEND_DATA_BUZZER; + + +typedef union NET_DVR_T1TEST_DATA_UNION +{ + BYTE byUnionLen[32]; + NET_DVR_T1TEST_SEND_DATA_BUZZER struBuzzer; //·äÃùÆ÷ + NET_DVR_TIME_V30 struCurTime; //µ±Ç°PC»úʱ¼ä +}NET_DVR_T1TEST_DATA_UNION,*LPNET_DVR_T1TEST_DATA_UNION; + + +typedef struct tagNET_DVR_T1TEST_SEND_DATA +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byDataType; //Êý¾ÝÀàÐÍ 0-·äÃùÆ÷£¬1-pc±¾µØʱ¼ä + BYTE byRes1[3]; + NET_DVR_T1TEST_DATA_UNION uSendData; //·¢Ë͵ÄÊý¾ÝÄÚÈÝ + BYTE byRes[64]; +}NET_DVR_T1TEST_SEND_DATA,*LPNET_DVR_T1TEST_SEND_DATA; + +typedef struct tagNET_DVR_PIC_MODEL_CFG //ͼÏñ½¨Ä£²ÎÊýÅäÖà +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byRes[63]; +}NET_DVR_PIC_MODEL_CFG, *LPNET_DVR_PIC_MODEL_CFG; + +typedef struct tagNET_DVR_MOUSE_EVENT_PARAM //Êó±êÐÅÏ¢ÅäÖà +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byMouseEvent; //Êó±êʼþÀàÐÍ£¬ 0-Êó±ê×ó¼üµ¥»÷£¬1-Êó±ê×ó¼üË«»÷£¬2-Êó±êÓÒ¼ü£¬3-¹öÂÖÉϹö£¬4-¹öÂÖϹö + BYTE byRes1[3]; //±£Áô + NET_VCA_POINT struPoint; //Êó±êµãλÖÃ×ø±ê£¬¹éÒ»»¯´¦Àí + BYTE byRes[64]; //±£Áô +}NET_DVR_MOUSE_EVENT_PARAM, *LPNET_DVR_MOUSE_EVENT_PARAM; + +typedef struct tagNET_DVR_AUTO_LIMIT_WAVE_CFG +{ + BYTE byFBCEnable; //FBC¿ª¹Ø 0-²»¿ªÆô£¬1-¿ªÆô + BYTE byMode; //ģʽ, 0-¿ìËÙ, 1-ÆÕͨ,2-ÂýËÙ + BYTE byFilterQValue; //×ÔÊÊÓ¦Â˲¨Æ÷QÖµ£¬µ¥Î»Oct, 0-1/40,1-1/10, ĬÈÏֵΪ1/40 Oct + BYTE byStaticFilterNum; //¾²Ì¬Â˲¨Æ÷ÊýÁ¿£¬È¡Öµ·¶Î§0-12 + BYTE byRes[16]; +}NET_DVR_AUTO_LIMIT_WAVE_CFG,*LPNET_DVR_AUTO_LIMIT_WAVE_CFG; + +typedef struct _NET_DVR_DSP_PARAMETER_CFG +{ + BYTE byFBCEnable; //FBC¿ª¹Ø 0-²»¿ªÆô£¬1-¿ªÆô + BYTE byVolume; //ÊäÈëÒôÁ¿ È¡Öµ·¶Î§0~255 + BYTE byRes[22]; +}NET_DVR_DSP_PARAMETER_CFG, *LPNET_DVR_DSP_PARAMETER_CFG; + + +typedef struct tagNET_DVR_MIX_AUDIOIN_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwHighPassFilter; //¸ßͨÂ˲¨Æ÷ È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼ + DWORD dwNoiseMargin; //ÔëÉùÃÅÏÞ£¬È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼ + NET_DVR_AUTO_LIMIT_WAVE_CFG struLimitWave; //×Ô¶¯ÏÞ²¨¿ØÖƲÎÊý£¬µ±ÒôƵÊäÈëԴΪmacInʱÓÐЧ + NET_DVR_DSP_PARAMETER_CFG struDSPParameter; //Êý×ÖÐźŴ¦ÀíоƬ²ÎÊý + BYTE byRes[40]; +}NET_DVR_MIX_AUDIOIN_CFG,*LPNET_DVR_MIX_AUDIOIN_CFG; + +typedef struct tagNET_DVR_MIX_AUDIOOUT_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byModulatorEnbale; //ÊÇ·ñÆôÓÃÏàλµ÷ÖÆÆ÷ + BYTE byPostFilter; //Post Filter¿ª¹Ø£¬0-¹Ø±Õ£¬1-¿ªÆô£¬Ä¬ÈÏ¿ªÆô + BYTE byLimitPressure; //Êä³öѹÏÞ¿ª¹Ø 0-¹Ø±Õ£¬1-¿ªÆô£¬Ä¬ÈÏ¿ªÆô + BYTE byRes1; //±£Áô + WORD wModulatorValue; //Ïàλµ÷ÖÆÁ¿ È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼£¬Ä¬ÈÏ10 + WORD wTriggerTime; //ѹÏÞ´¥·¢Ê±¼ä£¬È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼ + WORD wFreeTime; //ѹÏÞÊÍ·Åʱ¼ä£¬È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼ + BYTE byCompressThreshold; //ѹËõÃÅÏÞ 0-1X,1-2X,2-4X,3-8X X±íʾ±¶£¬±ÈÈç2X±íʾ2±¶ + BYTE byCompressMode; //ѹËõ·½Ê½£¬0-ӲѹËõ£¬1-ÈíѹËõ£¬Ä¬ÈÏΪӲѹËõ + BYTE byCompressRate; //ѹËõÂÊ + BYTE byRecoveryGain; //»Ø¸´ÔöÒæ 0-1X,1-2X,2-4X,3-8X + BYTE byOutputGain; //Êä³öÔöÒæ 0 ~100£¨¸ºÖµ£© + BYTE byOutputMute; //Êä³ö¾²Òô£¬0-¹Ø±Õ£¬1-¿ªÆô + int iOutputGainEx; //Êä³öÔöÒæÀ©Õ¹£¬·µ»ØÕýֵΪ·Å´ó£¬¸ºÖµÎªËõС + BYTE bySoundQualityHanding; //ÒôÖÊ´¦Àí£¬0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[55]; +}NET_DVR_MIX_AUDIOOUT_CFG,*LPNET_DVR_MIX_AUDIOOUT_CFG; + +#define MAX_AUDIOOUT_PRO_TYPE 8 //ÒôƵÊä³ö´¦Àí·½Ê½ +typedef struct tagNET_DVR_VOLUME_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + WORD wVolume[MAX_AUDIOOUT_PRO_TYPE]; //ÒôÁ¿´óС È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼ + BYTE byPhantomPowerSupply; //ÊÇ·ñʹÓûÃÏóµçÔ´¹©µç(ÒôƵÊäÈëͨµÀΪMICʱÓÐЧ)£¬0-ÎÞÒâÒ壬1-²»¹©µç£¬2-¹©µç + BYTE byEnableAEC; //ÊÇ·ñÆôÓÃÈ«¾ÖµÄ»ØÉùÏû³ý,0-²»ÆôÓã¬1-ÆôÓà + WORD wTalkVolume; //Ö§³Ö¶Ô½²µÄÉ豸£¬¶Ô½²Ê±ÒôÁ¿´óС + BYTE byEnableFBC[MAX_AUDIOOUT_PRO_TYPE]; //ÊÇ·ñÆôÓÃFBC(Ð¥½ÐÒÖÖÆ),0-²»ÆôÓã¬1-ÆôÓà + WORD wVolumeEx[MAX_AUDIOOUT_PRO_TYPE]; //ÒôÁ¿´óСÀ©Õ¹ È¡Öµ·¶Î§ 0-127, ¾ßÌåË÷Òý´ú±íº¬ÒåÒÔÄÜÁ¦¼¯Îª×¼ + BYTE byRes[4]; //±£Áô +}NET_DVR_VOLUME_CFG,*LPNET_DVR_VOLUME_CFG; + +typedef struct tagNET_DVR_VIDEOOUT_RESOLUTION_CFG //ÊÓƵÊä³ö¿Ú·Ö±æÂÊÅäÖà +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byResolution; //·Ö±æÂÊ 0-1024x768, 1-1280x720, 2-1280x1024, 3-1680x1050, 4-1920x1080, 5-3840*2160 + BYTE byRes[63]; +}NET_DVR_VIDEOOUT_RESOLUTION_CFG, *LPNET_DVR_VIDEOOUT_RESOLUTION_CFG; + +typedef struct tagNET_DVR_ADDR_DOMAIN_INFO +{ + BYTE szDomainAddr[MAX_DOMAIN_NAME]; /* Ö÷»úIPµØÖ·»òÕßÓòÃû,ÐèÒªÉ豸½âÎö,½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓÐ'.'ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· */ + WORD wPort; + BYTE byRes[2]; +}NET_DVR_ADDR_DOMAIN_INFO,*LPNET_DVR_ADDR_DOMAIN_INFO; + +#define MAX_CENTERNUM_V40 6 //±¨¾¯ÖÐÐĵØÖ·¸öÊý + +//±¨¾¯ÖÐÐÄÍøÂçÅäÖà +typedef struct tagNET_DVR_ALARMCENTER_NETCFG +{ + DWORD dwSize; + BYTE byAuxiliaryAlarmAddr[MAX_DOMAIN_NAME]; /* ¸¨±¨¾¯Ö÷»úIPµØÖ·»òÕßÓòÃû,ÐèÒªÉ豸½âÎö,½âÎö·½Ê½ÎªÓÐ×Öĸ´æÔÚÇÒÓС¯.¡¯ÔòÈÏΪÊÇÓòÃû,·ñÔòΪIPµØÖ· */ + WORD wAuxiliaryAlarmPort; /* ¸¨±¨¾¯Ö÷»ú¶Ë¿ÚºÅ */ + NET_DVR_ADDR_DOMAIN_INFO struHostAddr[MAX_CENTERNUM_V40]; //±¨¾¯ÖÐÐĵØÖ·ÐÅÏ¢ + BYTE byRes[172]; +}NET_DVR_ALARMCENTER_NETCFG, *LPNET_DVR_ALARMCENTER_NETCFG; + +//±¨¾¯Áª¶¯²ÎÊý½á¹¹ +typedef struct tagNET_DVR_ALARM_LINKAGE_PARAM +{ + DWORD dwSize; + WORD wChanRec; //Áª¶¯Â¼ÏñµÄNVRͨµÀ£¬°´Î»±íʾ£¬ÀýÈç×îµÍλ±íʾͨµÀ1£¬×î¸ßλ±íʾͨµÀ16£¬¶þ½øÖÆλµÄÖµ£º0-²»Â¼Ïñ£¬1-¼Ïñ + BYTE byRes1[2]; + WORD wRecTime[MAX_LINKAGE_CHAN_NUM]; //¼ÏñµÄʱ¼ä£¬°´×Ö½Ú±íʾ£¬ÀýÈçbyRecTime[0]±íʾͨµÀ1µÄ¼Ïñʱ¼ä£¬byRecTime[15]±íʾͨµÀ16µÄ¼Ïñʱ¼ä + WORD wChanPic; //Áª¶¯×¥Í¼µÄNVRͨµÀ£¬°´Î»±íʾ£¬ÀýÈç×îµÍλ±íʾͨµÀ1£¬×î¸ßλ±íʾͨµÀ16£¬¶þ½øÖÆλµÄÖµ£º0-²»×¥Í¼£¬1-ץͼ + BYTE byRes2[2]; + BYTE byPicNum[MAX_LINKAGE_CHAN_NUM]; //ץͼµÄ¸öÊý£¬°´×Ö½Ú±íʾ£¬ÀýÈçbyPicNum[0]±íʾͨµÀ1µÄץͼ¸öÊý£¬byPicNum[15]±íʾͨµÀ16µÄץͼ¸öÊý + BYTE byTriggerEnabled[ALARMHOST_ALARMOUT_NUM];//±äÁ¿Áª¶¯´¥·¢Æ÷£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE bySensorJointAlarmOut[ALARMHOST_ALARMOUT_NUM];//Ò£ÐÅÖµ°´ÀàÐÍÁª¶¯´¥·¢Æ÷£¬¸ÃֵΪbyTriggerEnabledµÄÀ©³ä¡£Êý×éϱê±íʾ´¥·¢Æ÷ºÅ£¬Êý×éÔªËصÄÖµ°´Î»±íʾ±¨¾¯ÀàÐÍ£¬¸÷¸öÀàÐͼäÊÇ"»ò"µÄ¹Øϵ¡£ÀàÐÍÖµ¶¨Ò壺1bit0-ÏÞ1£»bit1-ÏÞ2£»bit2-ÏÞ3£»bit3-ÏÞ4£»bit4-¹ÊÕÏ + BYTE byRes3[128]; //±£Áô +}NET_DVR_ALARM_LINKAGE_PARAM, *LPNET_DVR_ALARM_LINKAGE_PARAM; + + +//À×´ïµ÷ÊÔ±¨¾¯ÉÏ´« ×¥ÅÄ»ú4.0ÐÂÔö +typedef struct tagNET_DVR_ALARM_RADARINFO +{ + DWORD dwSize; + DWORD dwRadarTriggerTimeSecond;//À×´ï´¥·¢Ê±¼ä£¬Ãë + DWORD dwRadarTriggerTimeMSecond;//À×´ï´¥·¢Ê±¼ä£¬ºÁÃë + DWORD dwVedioTriggerTimeSecond;//ÊÓƵ´¥·¢Ê±¼ä£¬Ãë + DWORD dwVedioTriggerTimeMSecond;//ÊÓƵ´¥·¢Ê±¼ä£¬ºÁÃë + DWORD dwVedioRadarDiffTimeMSecond;//À×´ïÊÓƵ´¥·¢Ê±¼ä²î£¬ºÁÃë + DWORD dwRadarSpeed;//À×´ïËÙ¶È + BYTE byRes[16]; +} NET_DVR_ALARM_RADARINFO, *LPNET_DVR_ALARM_RADARINFO; + +#define MAX_FINGER_PRINT_LEN 768 //×î´óÖ¸ÎƳ¤¶È +typedef struct tagNET_DVR_FINGER_PRINT_CFG +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + DWORD dwFingerPrintLen; //Ö¸ÎÆÊý¾Ý³¤¶È + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //ÐèҪϷ¢Ö¸ÎƵĶÁ¿¨Æ÷£¬°´Êý×é±íʾ£¬0-²»Ï·¢¸Ã¶Á¿¨Æ÷£¬1-Ï·¢µ½¸Ã¶Á¿¨Æ÷ + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 + BYTE byFingerType; //Ö¸ÎÆÀàÐÍ 0-ÆÕָͨÎÆ£¬1-вÆÈÖ¸ÎÆ + BYTE byRes1[30]; + BYTE byFingerData[MAX_FINGER_PRINT_LEN]; //Ö¸ÎÆÊý¾ÝÄÚÈÝ + BYTE byRes[64]; +}NET_DVR_FINGER_PRINT_CFG,*LPNET_DVR_FINGER_PRINT_CFG; + +typedef struct tagNET_DVR_FINGER_PRINT_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byCardReaderRecvStatus[MAX_CARD_READER_NUM_512]; //Ö¸ÎƶÁ¿¨Æ÷״̬£¬°´×Ö½Ú±íʾ£¬0-ʧ°Ü£¬1-³É¹¦£¬2-¸ÃÖ¸ÎÆÄ£×é²»ÔÚÏߣ¬3-ÖØÊÔ»òÖ¸ÎÆÖÊÁ¿²î£¬4-ÄÚ´æÒÑÂú£¬5-ÒÑ´æÔÚ¸ÃÖ¸ÎÆ£¬6-ÒÑ´æÔÚ¸ÃÖ¸ÎÆID£¬7-·Ç·¨Ö¸ÎÆID£¬8-¸ÃÖ¸ÎÆÄ£×éÎÞÐèÅäÖà + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 + BYTE byFingerType; //Ö¸ÎÆÀàÐÍ 0-ÆÕָͨÎÆ£¬1-вÆÈÖ¸ÎÆ + BYTE byTotalStatus; //Ï·¢×ܵÄ״̬£¬0-µ±Ç°Ö¸ÎÆδÏÂÍêËùÓжÁ¿¨Æ÷£¬1-ÒÑÏÂÍêËùÓжÁ¿¨Æ÷(ÕâÀïµÄËùÓÐÖ¸µÄÊÇÃŽûÖ÷»úÍùËùÓеĶÁ¿¨Æ÷Ï·¢ÁË£¬²»¹Ü³É¹¦Óë·ñ) + BYTE byRes1; + BYTE byErrorMsg[ERROR_MSG_LEN]; //Ï·¢´íÎóÐÅÏ¢£¬µ±byCardReaderRecvStatusΪ5ʱ£¬±íʾÒÑ´æÔÚÖ¸ÎƶÔÓ¦µÄ¿¨ºÅ + DWORD dwCardReaderNo; //·Ç0±íʾ´íÎóÐÅÏ¢byErrMsgÓÐЧ£¬ÆäÖµ´ú±íbyErrMsg¶ÔÓ¦µÄ¶Á¿¨Æ÷±àºÅ£¨¾ßÌåʲô´íÎó²é¿´byCardReaderRecvStatus¶ÔÓ¦±àºÅµÄÖµ£©¡£0ʱ±íʾÎÞ´íÎóÐÅÏ¢ + BYTE byRes[24]; +}NET_DVR_FINGER_PRINT_STATUS,*LPNET_DVR_FINGER_PRINT_STATUS; + + +typedef struct tagNET_DVR_FINGER_PRINT_INFO_COND +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //Ö¸ÎƵĶÁ¿¨Æ÷ÐÅÏ¢£¬°´Êý×é±íʾ + DWORD dwFingerPrintNum; //ÉèÖûò»ñÈ¡¿¨ÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓп¨ÐÅÏ¢ + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª-10 0xff±íʾ¸Ã¿¨ËùÓÐÖ¸ÎÆ + BYTE byCallbackMode; //É豸»Øµ÷·½Ê½£¬0-É豸ËùÓжÁ¿¨Æ÷ÏÂÍêÁË·¶Î§£¬1-ÔÚʱ¼ä¶ÎÄÚÏÂÁ˲¿·ÖÒ²·µ»Ø + BYTE byRes1[26]; //±£Áô +}NET_DVR_FINGER_PRINT_INFO_COND,*LPNET_DVR_FINGER_PRINT_INFO_COND; + +typedef struct tagNET_DVR_FINGER_PRINT_CFG_V50 +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + DWORD dwFingerPrintLen; //Ö¸ÎÆÊý¾Ý³¤¶È + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //ÐèҪϷ¢Ö¸ÎƵĶÁ¿¨Æ÷£¬°´Êý×é±íʾ£¬´ÓµÍλµ½¸ßλ±íʾ£¬0-²»Ï·¢¸Ã¶Á¿¨Æ÷£¬1-Ï·¢µ½¸Ã¶Á¿¨Æ÷ + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 + BYTE byFingerType; //Ö¸ÎÆÀàÐÍ 0-ÆÕָͨÎÆ£¬1-вÆÈÖ¸ÎÆ£¬2-Ѳ¸üÖ¸ÎÆ£¬3-³¬¼¶Ö¸ÎÆ£¬4-½â³ýÖ¸ÎÆ + BYTE byRes1[30]; + BYTE byFingerData[MAX_FINGER_PRINT_LEN]; //Ö¸ÎÆÊý¾ÝÄÚÈÝ + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byLeaderFP[MAX_DOOR_NUM_256]; //¶ÔÃÅÊÇ·ñÓÐÊ×´ÎÈÏÖ¤¹¦ÄÜ£¨°´×Ö½Ú±íʾ£©£º0-ÎÞÊ×´ÎÈÏÖ¤¹¦ÄÜ£¬1-ÓÐÊ×´ÎÈÏÖ¤¹¦ÄÜ + BYTE byRes[128]; +}NET_DVR_FINGER_PRINT_CFG_V50, *LPNET_DVR_FINGER_PRINT_CFG_V50; + +typedef struct tagNET_DVR_FINGER_PRINT_STATUS_V50 +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byCardReaderRecvStatus[MAX_CARD_READER_NUM_512]; //Ö¸ÎƶÁ¿¨Æ÷״̬£¬°´×Ö½Ú±íʾ£¬0-ʧ°Ü£¬1-³É¹¦£¬2-¸ÃÖ¸ÎÆÄ£×é²»ÔÚÏߣ¬3-ÖØÊÔ»òÖ¸ÎÆÖÊÁ¿²î£¬4-ÄÚ´æÒÑÂú£¬5-ÒÑ´æÔÚ¸ÃÖ¸ÎÆ£¬6-ÒÑ´æÔÚ¸ÃÖ¸ÎÆID£¬7-·Ç·¨Ö¸ÎÆID£¬8-¸ÃÖ¸ÎÆÄ£×éÎÞÐèÅäÖã¬10-Ö¸ÎƶÁ¿¨Æ÷°æ±¾¹ýµÍ£¨ÎÞ·¨Ö§³Ö¹¤ºÅ£© + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 + BYTE byFingerType; //Ö¸ÎÆÀàÐÍ 0-ÆÕָͨÎÆ£¬1-вÆÈÖ¸ÎÆ£¬2-Ѳ¸üÖ¸ÎÆ£¬3-³¬¼¶Ö¸ÎÆ£¬4-½â³ýÖ¸ÎÆ + BYTE byTotalStatus; //Ï·¢×ܵÄ״̬£¬0-µ±Ç°Ö¸ÎÆδÏÂÍêËùÓжÁ¿¨Æ÷£¬1-ÒÑÏÂÍêËùÓжÁ¿¨Æ÷(ÕâÀïµÄËùÓÐÖ¸µÄÊÇÃŽûÖ÷»úÍùËùÓеĶÁ¿¨Æ÷Ï·¢ÁË£¬²»¹Ü³É¹¦Óë·ñ) + BYTE byRecvStatus; //Ö÷»ú´íÎó״̬£º0-³É¹¦£¬1-ÊÖÖ¸±àºÅ´íÎó£¬2-Ö¸ÎÆÀàÐÍ´íÎó£¬3-¿¨ºÅ´íÎ󣨿¨ºÅ¹æ¸ñ²»·ûºÏÉ豸ҪÇ󣩣¬4-Ö¸ÎÆδ¹ØÁª¹¤ºÅ»ò¿¨ºÅ£¨¹¤ºÅ»ò¿¨ºÅ×Ö¶ÎΪ¿Õ£©£¬5-¹¤ºÅ²»´æÔÚ£¬6-Ö¸ÎÆÊý¾Ý³¤¶ÈΪ0£¬7-¶Á¿¨Æ÷±àºÅ´íÎó£¬8-¹¤ºÅ´íÎó + BYTE byErrorMsg[ERROR_MSG_LEN]; //Ï·¢´íÎóÐÅÏ¢£¬µ±byCardReaderRecvStatusΪ5ʱ£¬±íʾÒÑ´æÔÚÖ¸ÎƶÔÓ¦µÄ¿¨ºÅ + DWORD dwCardReaderNo; //µ±byCardReaderRecvStatusΪ5ʱ£¬±íʾÒÑ´æÔÚÖ¸ÎƶÔÓ¦µÄÖ¸ÎƶÁ¿¨Æ÷±àºÅ£¬¿ÉÓÃÓÚÏ·¢´íÎ󷵻ء£0ʱ±íʾÎÞ´íÎóÐÅÏ¢ + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byErrorEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //Ï·¢´íÎóÐÅÏ¢£¬µ±byCardReaderRecvStatusΪ5ʱ£¬±íʾÒÑ´æÔÚÖ¸ÎƶÔÓ¦µÄ¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byRes[128]; +}NET_DVR_FINGER_PRINT_STATUS_V50, *LPNET_DVR_FINGER_PRINT_STATUS_V50; + +typedef struct tagNET_DVR_FINGER_PRINT_INFO_COND_V50 +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ£¨¸Ã×ֶλñȡʱÓÐЧ£¬ÉèÖÃʱÎÞЧ£© + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //Ö¸ÎƵĶÁ¿¨Æ÷ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + DWORD dwFingerPrintNum; //ÉèÖûò»ñÖ¸ÎÆÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓÐÖ¸ÎÆÐÅÏ¢ + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 0xff±íʾ¸Ã¿¨ËùÓÐÖ¸ÎÆ + BYTE byCallbackMode; //É豸»Øµ÷·½Ê½£¬0-É豸ËùÓжÁ¿¨Æ÷ÏÂÍêÁË·µ»Ø£¬1-ÔÚʱ¼ä¶ÎÄÚÏÂÁ˲¿·ÖÒ²·µ»Ø + BYTE byRes2[2]; //±£Áô + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byRes1[128]; //±£Áô +}NET_DVR_FINGER_PRINT_INFO_COND_V50, *LPNET_DVR_FINGER_PRINT_INFO_COND_V50; + +typedef struct tagNET_DVR_FINGER_PRINT_BYCARD +{ + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //Ö¸ÎƵĶÁ¿¨Æ÷ÐÅÏ¢£¬°´Êý×é±íʾ + BYTE byFingerPrintID[MAX_FINGER_PRINT_NUM/*10*/]; //ÐèÒª»ñÈ¡µÄÖ¸ÎÆÐÅÏ¢£¬°´Êý×éϱֵ꣬±íʾ0-²»É¾³ý£¬1-ɾ³ý¸ÃÖ¸ÎÆ + BYTE byRes1[34]; //±£Áô +}NET_DVR_FINGER_PRINT_BYCARD,*LPNET_DVR_FINGER_PRINT_BYCARD; + +typedef struct tagNET_DVR_FINGER_PRINT_BYREADER +{ + DWORD dwCardReaderNo; //°´Öµ±íʾ£¬Ö¸ÎƶÁ¿¨Æ÷±àºÅ + BYTE byClearAllCard; //ÊÇ·ñɾ³ýËùÓп¨µÄÖ¸ÎÆÐÅÏ¢£¬0-°´¿¨ºÅɾ³ýÖ¸ÎÆÐÅÏ¢£¬1-ɾ³ýËùÓп¨µÄÖ¸ÎÆÐÅÏ¢ + BYTE byRes1[3]; //±£Áô + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byRes[548]; //±£Áô +}NET_DVR_FINGER_PRINT_BYREADER,*LPNET_DVR_FINGER_PRINT_BYREADER; + +typedef union tagNET_DVR_DEL_FINGER_PRINT_MODE +{ + BYTE uLen[588]; //ÁªºÏÌ峤¶È + NET_DVR_FINGER_PRINT_BYCARD struByCard; //°´¿¨ºÅµÄ·½Ê½É¾³ý + NET_DVR_FINGER_PRINT_BYREADER struByReader; //°´¶Á¿¨Æ÷µÄ·½Ê½É¾³ý +}NET_DVR_DEL_FINGER_PRINT_MODE,*LPNET_DVR_DEL_FINGER_PRINT_MODE; + +typedef struct tagNET_DVR_FINGER_PRINT_INFO_CTRL +{ + DWORD dwSize; + BYTE byMode; //ɾ³ý·½Ê½£¬0-°´¿¨ºÅ·½Ê½É¾³ý£¬1-°´¶Á¿¨Æ÷ɾ³ý + BYTE byRes1[3]; //±£Áô + NET_DVR_DEL_FINGER_PRINT_MODE struProcessMode; //´¦Àí·½Ê½ + BYTE byRes[64]; //±£Áô +}NET_DVR_FINGER_PRINT_INFO_CTRL,*LPNET_DVR_FINGER_PRINT_INFO_CTRL; + +typedef struct tagNET_DVR_FINGER_PRINT_BYCARD_V50 +{ + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; //Ö¸ÎƵĶÁ¿¨Æ÷ÐÅÏ¢£¬°´Î»±íʾ + BYTE byFingerPrintID[MAX_FINGER_PRINT_NUM/*10*/]; //ÐèҪɾ³ýµÄÊÖÖ¸±àºÅ£¬°´Êý×éϱֵ꣬±íʾ0-²»É¾³ý£¬1-ɾ³ý¸ÃÖ¸ÎÆ + BYTE byRes1[2]; + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© +}NET_DVR_FINGER_PRINT_BYCARD_V50, *LPNET_DVR_FINGER_PRINT_BYCARD_V50; + +typedef struct tagNET_DVR_FINGER_PRINT_BYREADER_V50 +{ + DWORD dwCardReaderNo; //°´Öµ±íʾ£¬Ö¸ÎƶÁ¿¨Æ÷±àºÅ + BYTE byClearAllCard; //ÊÇ·ñɾ³ýËùÓп¨µÄÖ¸ÎÆÐÅÏ¢£¬0-°´¿¨ºÅ£¨ÈËÔ±ID£©É¾³ýÖ¸ÎÆÐÅÏ¢£¬1-ɾ³ýËùÓп¨£¨ÈËÔ±ID£©µÄÖ¸ÎÆÐÅÏ¢ + BYTE byRes1[3]; //±£Áô + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byRes[516]; //±£Áô +}NET_DVR_FINGER_PRINT_BYREADER_V50, *LPNET_DVR_FINGER_PRINT_BYREADER_V50; + +typedef union tagNET_DVR_DEL_FINGER_PRINT_MODE_V50 +{ + BYTE uLen[588]; //ÁªºÏÌ峤¶È + NET_DVR_FINGER_PRINT_BYCARD_V50 struByCard; //°´¿¨ºÅ£¨ÈËÔ±ID£©µÄ·½Ê½É¾³ý + NET_DVR_FINGER_PRINT_BYREADER_V50 struByReader; //°´¶Á¿¨Æ÷µÄ·½Ê½É¾³ý +}NET_DVR_DEL_FINGER_PRINT_MODE_V50, *LPNET_DVR_DEL_FINGER_PRINT_MODE_V50; + +typedef struct tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50 +{ + DWORD dwSize; + BYTE byMode; //ɾ³ý·½Ê½£¬0-°´¿¨ºÅ£¨ÈËÔ±ID£©·½Ê½É¾³ý£¬1-°´¶Á¿¨Æ÷ɾ³ý + BYTE byRes1[3]; //±£Áô + NET_DVR_DEL_FINGER_PRINT_MODE_V50 struProcessMode; //´¦Àí·½Ê½ + BYTE byRes[64]; //±£Áô +}NET_DVR_FINGER_PRINT_INFO_CTRL_V50, *LPNET_DVR_FINGER_PRINT_INFO_CTRL_V50; + +typedef struct tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50 +{ + DWORD dwSize; + DWORD dwCardReaderNo; //°´Öµ±íʾ£¬Ö¸ÎƶÁ¿¨Æ÷±àºÅ + BYTE byStatus; //״̬£º0-ÎÞЧ£¬1-´¦ÀíÖУ¬2-ɾ³ýʧ°Ü£¬3-³É¹¦ + BYTE byRes[63]; //±£Áô +}NET_DVR_FINGER_PRINT_INFO_STATUS_V50, *LPNET_DVR_FINGER_PRINT_INFO_STATUS_V50; + +typedef enum _ACS_DEV_SUBEVENT_ENUM_ +{ + EVENT_ACS_HOST_ANTI_DISMANTLE = 0, //Ö÷»ú·À²ð±¨¾¯ + EVENT_ACS_OFFLINE_ECENT_NEARLY_FULL, //ÀëÏßʼþÂú90%±¨¾¯ + EVENT_ACS_NET_BROKEN, //ÍøÂç¶Ï¿ª + EVENT_ACS_NET_RESUME , //ÍøÂç»Ö¸´ + EVENT_ACS_LOW_BATTERY, //Ðîµç³ØµçѹµÍ + EVENT_ACS_BATTERY_RESUME, //Ðîµç³Øµçѹ»Ö¸´Õý³£ + EVENT_ACS_AC_OFF, //½»Á÷µç¶Ïµç + EVENT_ACS_AC_RESUME, //½»Á÷µç»Ö¸´ + EVENT_ACS_SD_CARD_FULL, //SD¿¨´æ´¢Âú±¨¾¯ + EVENT_ACS_LINKAGE_CAPTURE_PIC, //Áª¶¯×¥ÅÄʼþ±¨¾¯ + EVENT_ACS_IMAGE_QUALITY_LOW, //ÈËÁ³Í¼Ïñ»­ÖÊµÍ + EVENT_ACS_FINGER_PRINT_QUALITY_LOW, //Ö¸ÎÆͼÏñ»­ÖÊµÍ + EVENT_ACS_BATTERY_ELECTRIC_LOW, //µç³ØµçѹµÍ(½öÈËÁ³É豸ʹÓÃ) + EVENT_ACS_BATTERY_ELECTRIC_RESUME, //µç³Øµçѹ»Ö¸´Õý³£(½öÈËÁ³É豸ʹÓÃ) + EVENT_ACS_FIRE_IMPORT_SHORT_CIRCUIT, //Ïû·ÀÊäÈë¶Ì·±¨¾¯ + EVENT_ACS_FIRE_IMPORT_BROKEN_CIRCUIT, //Ïû·ÀÊäÈë¶Ï·±¨¾¯ + EVENT_ACS_FIRE_IMPORT_RESUME, //Ïû·ÀÊäÈë»Ö¸´ + EVENT_ACS_MASTER_RS485_LOOPNODE_BROKEN, //Ö÷¿ØRS485»·Â·½Úµã¶Ï¿ª + EVENT_ACS_MASTER_RS485_LOOPNODE_RESUME, //Ö÷¿ØRS485»·Â·½Úµã»Ö¸´ + EVENT_ACS_LOCAL_CONTROL_OFFLINE, //¾ÍµØ¿ØÖÆÆ÷µôÏß + EVENT_ACS_LOCAL_CONTROL_RESUME, //¾ÍµØ¿ØÖÆÆ÷µôÏ߻ָ´ + EVENT_ACS_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN, //¾ÍµØÏÂÐÐRS485»·Â·¶Ï¿ª + EVENT_ACS_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME, //¾ÍµØÏÂÐÐRS485»·Â·»Ö¸´ + EVENT_ACS_DISTRACT_CONTROLLER_ONLINE, //·Ö¿ØÆ÷ÔÚÏß + EVENT_ACS_DISTRACT_CONTROLLER_OFFLINE, //·Ö¿ØÆ÷ÀëÏß + EVENT_ACS_FIRE_BUTTON_TRIGGER, //Ïû·À°´Å¥´¥·¢ + EVENT_ACS_FIRE_BUTTON_RESUME, //Ïû·À°´Å¥»Ö¸´ + EVENT_ACS_MAINTENANCE_BUTTON_TRIGGER, //ά»¤°´Å¥´¥·¢ + EVENT_ACS_MAINTENANCE_BUTTON_RESUME, //ά»¤°´Å¥»Ö¸´ + EVENT_ACS_EMERGENCY_BUTTON_TRIGGER, //½ô¼±°´Å¥´¥·¢ + EVENT_ACS_EMERGENCY_BUTTON_RESUME, //½ô¼±°´Å¥»Ö¸´ + EVENT_ACS_RES, + EVENT_ACS_SUBMARINEBACK_COMM_BREAK, //Ó뷴DZ»Ø·þÎñÆ÷ͨÐŶϿª + EVENT_ACS_SUBMARINEBACK_COMM_RESUME, //Ó뷴DZ»Ø·þÎñÆ÷ͨÐŻָ´ + EVENT_ACS_REMOTE_ACTUAL_GUARD, //Ô¶³Ìʵʱ²¼·À + EVENT_ACS_REMOTE_ACTUAL_UNGUARD, //Ô¶³Ìʵʱ³··À + EVENT_ACS_MOTOR_SENSOR_EXCEPTION, //µç»ú»ò´«¸ÐÆ÷Òì³£ + EVENT_ACS_CAN_BUS_EXCEPTION, //CAN×ÜÏßÒì³£ + EVENT_ACS_CAN_BUS_RESUME, //CAN×ÜÏ߻ָ´ + EVENT_ACS_GATE_TEMPERATURE_OVERRUN, //Õ¢»úÇ»Ìåζȳ¬ÏÞ + EVENT_ACS_IR_EMITTER_EXCEPTION, //ºìÍâ¶ÔÉäÒì³£ + EVENT_ACS_IR_EMITTER_RESUME, //ºìÍâ¶ÔÉä»Ö¸´ + EVENT_ACS_LAMP_BOARD_COMM_EXCEPTION, //µÆ°åͨÐÅÒì³£ + EVENT_ACS_LAMP_BOARD_COMM_RESUME, //µÆ°åͨÐŻָ´ + EVENT_ACS_IR_ADAPTOR_BOARD_COMM_EXCEPTION, //ºìÍâת½Ó°åͨÐÅÒì³£ + EVENT_ACS_IR_ADAPTOR_BOARD_COMM_RESUME, //ºìÍâת½Ó°åͨÐŻָ´ + EVENT_ACS_CHANNEL_CONTROLLER_DESMANTLE_ALARM, //ͨµÀ¿ØÖÆÆ÷·À²ð±¨¾¯ + EVENT_ACS_CHANNEL_CONTROLLER_DESMANTLE_RESUME, //ͨµÀ¿ØÖÆÆ÷·À²ð±¨¾¯»Ö¸´ + EVENT_ACS_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM, //ͨµÀ¿ØÖÆÆ÷Ïû·ÀÊäÈ뱨¾¯ + EVENT_ACS_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME, //ͨµÀ¿ØÖÆÆ÷Ïû·ÀÊäÈ뱨¾¯»Ö¸´ + EVENT_ACS_STAY_EVENT, //¶ºÁôʼþ + EVENT_ACS_LEGAL_EVENT_NEARLY_FULL, //ÀëÏߺϷ¨Ê¼þÂú90%±¨¾¯ + EVENT_ACS_FIRE_IMPORT_ALARM = 52, //Ïû·ÀÊäÈ뱨¾¯ + EVENT_ACS_NOMASK_ALARM, //δ´ø¿ÚÕÖ±¨¾¯ + EVENT_ACS_FIREMATRIX_EVENT, //Ïû·À¾ØÕóʼþÉÏ´« + EVENT_ACS_HEALTH_INFO_ABNORMAL_LOCK, //½¡¿µÐÅÏ¢Òì³£Ëø¶¨ + EVENT_ACS_HEALTH_INFO_ABNORMAL_UNLOCK, //½¡¿µÐÅÏ¢Òì³£½âËø + EVENT_ACS_IPC_EVENT //IPCʼþÉÏ´« +}ACS_DEV_SUBEVENT_ENUM; + +typedef enum _ACS_ALARM_SUBEVENT_ENUM_ +{ + EVENT_ACS_ALARMIN_SHORT_CIRCUIT = 0, //·ÀÇø¶Ì·±¨¾¯ + EVENT_ACS_ALARMIN_BROKEN_CIRCUIT, //·ÀÇø¶Ï·±¨¾¯ + EVENT_ACS_ALARMIN_EXCEPTION, //·ÀÇøÒì³£±¨¾¯ + EVENT_ACS_ALARMIN_RESUME, //·ÀÇø±¨¾¯»Ö¸´ + EVENT_ACS_CASE_SENSOR_ALARM, //ʼþÊäÈ뱨¾¯ + EVENT_ACS_CASE_SENSOR_RESUME //ʼþÊäÈë»Ö¸´ +}ACS_ALARM_SUBEVENT_ENUM; + +typedef enum _ACS_DOOR_SUBEVENT_ENUM_ +{ + EVENT_ACS_LEADER_CARD_OPEN_BEGIN = 0, //Ê׿¨¿ªÃÅ¿ªÊ¼ + EVENT_ACS_LEADER_CARD_OPEN_END, //Ê׿¨¿ªÃŽáÊø + EVENT_ACS_ALWAYS_OPEN_BEGIN , //³£¿ª×´Ì¬¿ªÊ¼ + EVENT_ACS_ALWAYS_OPEN_END, //³£¿ª×´Ì¬½áÊø + EVENT_ACS_ALWAYS_CLOSE_BEGIN, //³£¹Ø״̬¿ªÊ¼ + EVENT_ACS_ALWAYS_CLOSE_END, //³£¹Ø״̬½áÊø + EVENT_ACS_LOCK_OPEN, //ÃÅËø´ò¿ª + EVENT_ACS_LOCK_CLOSE, //ÃÅËø¹Ø±Õ + EVENT_ACS_DOOR_BUTTON_PRESS, //¿ªÃÅ°´Å¥°´Ï + EVENT_ACS_DOOR_BUTTON_RELEASE, //¿ªÃÅ°´Å¥·Å¿ª + EVENT_ACS_DOOR_OPEN_NORMAL, //Õý³£¿ªÃÅ£¨ÃÅ´Å£© + EVENT_ACS_DOOR_CLOSE_NORMAL , //Õý³£¹ØÃÅ£¨ÃÅ´Å£© + EVENT_ACS_DOOR_OPEN_ABNORMAL, //ÃÅÒì³£´ò¿ª£¨ÃÅ´Å£© + EVENT_ACS_DOOR_OPEN_TIMEOUT, //ÃÅ´ò¿ª³¬Ê±£¨ÃÅ´Å£© + EVENT_ACS_REMOTE_OPEN_DOOR, //Ô¶³Ì¿ªÃÅ + EVENT_ACS_REMOTE_CLOSE_DOOR, //Ô¶³Ì¹ØÃÅ + EVENT_ACS_REMOTE_ALWAYS_OPEN, //Ô¶³Ì³£¿ª + EVENT_ACS_REMOTE_ALWAYS_CLOSE, //Ô¶³Ì³£¹Ø + EVENT_ACS_NOT_BELONG_MULTI_GROUP, //¿¨²»ÊôÓÚ¶àÖØÈÏ֤Ⱥ×é + EVENT_ACS_INVALID_MULTI_VERIFY_PERIOD, //¿¨²»ÔÚ¶àÖØÈÏ֤ʱ¼ä¶ÎÄÚ + EVENT_ACS_MULTI_VERIFY_SUPER_RIGHT_FAIL, //¶àÖØÈÏ֤ģʽ³¬¼¶ÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_MULTI_VERIFY_REMOTE_RIGHT_FAIL, //¶àÖØÈÏ֤ģʽԶ³ÌÈÏ֤ʧ°Ü + EVENT_ACS_MULTI_VERIFY_SUCCESS, //¶àÖØÈÏÖ¤³É¹¦ + EVENT_ACS_MULTI_VERIFY_NEED_REMOTE_OPEN, //¶àÖضàÖØÈÏÖ¤ÐèÒªÔ¶³Ì¿ªÃÅ + EVENT_ACS_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS, //¶àÖØÈÏÖ¤³¬¼¶ÃÜÂëÈÏÖ¤³É¹¦Ê¼þ + EVENT_ACS_MULTI_VERIFY_REPEAT_VERIFY_FAIL, //¶àÖØÈÏÖ¤Öظ´ÈÏ֤ʧ°Ü + EVENT_ACS_MULTI_VERIFY_TIMEOUT, //¶àÖØÈÏÖ¤³¬Ê±Ê§°Ü + EVENT_ACS_REMOTE_CAPTURE_PIC, //Ô¶³Ì×¥ÅÄ + EVENT_ACS_DOORBELL_RINGING, //ÃÅÁåÏì + EVENT_ACS_SECURITY_MODULE_DESMANTLE_ALARM, //ÃÅ¿Ø°²È«Ä£¿é·À²ð±¨¾¯ + EVENT_ACS_CALL_CENTER, //ºô½ÐÖÐÐÄʼþ + EVENT_ACS_FIRSTCARD_AUTHORIZE_BEGIN, //Ê׿¨ÊÚȨ¿ªÊ¼ + EVENT_ACS_FIRSTCARD_AUTHORIZE_END, //Ê׿¨ÊÚȨ½áÊø + EVENT_ACS_DOORLOCK_INPUT_SHORT_CIRCUIT, //ÃÅËøÊäÈë¶Ì·±¨¾¯ + EVENT_ACS_DOORLOCK_INPUT_BROKEN_CIRCUIT, //ÃÅËøÊäÈë¶Ï·±¨¾¯ + EVENT_ACS_DOORLOCK_INPUT_EXCEPTION, //ÃÅËøÊäÈëÒì³£±¨¾¯ + EVENT_ACS_DOORCONTACT_INPUT_SHORT_CIRCUIT, //ÃÅ´ÅÊäÈë¶Ì·±¨¾¯ + EVENT_ACS_DOORCONTACT_INPUT_BROKEN_CIRCUIT, //ÃÅ´ÅÊäÈë¶Ï·±¨¾¯ + EVENT_ACS_DOORCONTACT_INPUT_EXCEPTION, //ÃÅ´ÅÊäÈëÒì³£±¨¾¯ + EVENT_ACS_OPENBUTTON_INPUT_SHORT_CIRCUIT, //¿ªÃÅ°´Å¥ÊäÈë¶Ì·±¨¾¯ + EVENT_ACS_OPENBUTTON_INPUT_BROKEN_CIRCUIT, //¿ªÃÅ°´Å¥ÊäÈë¶Ï·±¨¾¯ + EVENT_ACS_OPENBUTTON_INPUT_EXCEPTION, //¿ªÃÅ°´Å¥ÊäÈëÒì³£±¨¾¯ + EVENT_ACS_DOORLOCK_OPEN_EXCEPTION, //ÃÅËøÒì³£´ò¿ª + EVENT_ACS_DOORLOCK_OPEN_TIMEOUT, //ÃÅËø´ò¿ª³¬Ê± + EVENT_ACS_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE, //Ê׿¨Î´ÊÚȨ¿ªÃÅʧ°Ü + EVENT_ACS_CALL_LADDER_RELAY_BREAK, //ºôÌݼ̵çÆ÷¶Ï¿ª + EVENT_ACS_CALL_LADDER_RELAY_CLOSE, //ºôÌݼ̵çÆ÷±ÕºÏ + EVENT_ACS_AUTO_KEY_RELAY_BREAK, //×Ô¶¯°´¼ü¼ÌµçÆ÷¶Ï¿ª + EVENT_ACS_AUTO_KEY_RELAY_CLOSE, //×Ô¶¯°´¼ü¼ÌµçÆ÷±ÕºÏ + EVENT_ACS_KEY_CONTROL_RELAY_BREAK, //°´¼üÌݿؼ̵çÆ÷¶Ï¿ª + EVENT_ACS_KEY_CONTROL_RELAY_CLOSE, //°´¼üÌݿؼ̵çÆ÷±ÕºÏ + EVENT_ACS_REMOTE_VISITOR_CALL_LADDER, //·Ã¿ÍºôÌÝ + EVENT_ACS_REMOTE_HOUSEHOLD_CALL_LADDER, //ס»§ºôÌÝ + EVENT_ACS_LEGAL_MESSAGE, //ºÏ·¨¶ÌÐÅ + EVENT_ACS_ILLEGAL_MESSAGE, //·Ç·¨¶ÌÐÅ + EVENT_ACS_TRAILING, //βËæͨÐÐ + EVENT_ACS_REVERSE_ACCESS, //·´Ïò´³Èë + EVENT_ACS_FORCE_ACCESS, //ÍâÁ¦³åײ + EVENT_ACS_CLIMBING_OVER_GATE, //·­Ô½ + EVENT_ACS_PASSING_TIMEOUT, //ͨÐг¬Ê± + EVENT_ACS_INTRUSION_ALARM, //Îó´³±¨¾¯ + EVENT_ACS_FREE_GATE_PASS_NOT_AUTH, //Õ¢»ú×ÔÓÉͨÐÐʱδÈÏ֤ͨ¹ý + EVENT_ACS_DROP_ARM_BLOCK, //°Ú±Û±»×èµ² + EVENT_ACS_DROP_ARM_BLOCK_RESUME, //°Ú±Û×èµ²Ïû³ý + EVENT_ACS_REMOTE_CONTROL_CLOSE_DOOR, //Ò£¿ØÆ÷¹ØÃÅ + EVENT_ACS_REMOTE_CONTROL_OPEN_DOOR, //Ò£¿ØÆ÷¿ªÃÅ + EVENT_ACS_REMOTE_CONTROL_ALWAYS_OPEN_DOOR //Ò£¿ØÆ÷³£¿ªÃÅ +}ACS_DOOR_SUBEVENT_ENUM; + +typedef enum _ACS_CARD_READER_SUBEVENT_ENUM_ +{ + EVENT_ACS_STRESS_ALARM = 0, //вÆȱ¨¾¯ + EVENT_ACS_CARD_READER_DESMANTLE_ALARM, //¶Á¿¨Æ÷·À²ð±¨¾¯ + EVENT_ACS_LEGAL_CARD_PASS, //ºÏ·¨¿¨ÈÏ֤ͨ¹ý + EVENT_ACS_CARD_AND_PSW_PASS, //Ë¢¿¨¼ÓÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_CARD_AND_PSW_FAIL, //Ë¢¿¨¼ÓÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_CARD_AND_PSW_TIMEOUT, //Ë¢¿¨¼ÓÃÜÂëÈÏÖ¤³¬Ê± + EVENT_ACS_CARD_MAX_AUTHENTICATE_FAIL, //¶Á¿¨Æ÷ÈÏ֤ʧ°Ü³¬´Î + EVENT_ACS_CARD_NO_RIGHT, //¿¨Î´·ÖÅäȨÏÞ + EVENT_ACS_CARD_INVALID_PERIOD, //¿¨µ±Ç°Ê±¶ÎÎÞЧ + EVENT_ACS_CARD_OUT_OF_DATE, //¿¨ºÅ¹ýÆÚ + EVENT_ACS_INVALID_CARD, //ÎÞ´Ë¿¨ºÅ + EVENT_ACS_ANTI_SNEAK_FAIL, //·´Ç±»ØÈÏ֤ʧ°Ü + EVENT_ACS_INTERLOCK_DOOR_NOT_CLOSE, //»¥ËøÃÅδ¹Ø±Õ + EVENT_ACS_FINGERPRINT_COMPARE_PASS, //Ö¸ÎƱȶÔͨ¹ý + EVENT_ACS_FINGERPRINT_COMPARE_FAIL, //Ö¸ÎƱȶÔʧ°Ü + EVENT_ACS_CARD_FINGERPRINT_VERIFY_PASS, //Ë¢¿¨¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý + EVENT_ACS_CARD_FINGERPRINT_VERIFY_FAIL, //Ë¢¿¨¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü + EVENT_ACS_CARD_FINGERPRINT_VERIFY_TIMEOUT, //Ë¢¿¨¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± + EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_PASS, //Ë¢¿¨¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL, //Ë¢¿¨¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT, //Ë¢¿¨¼ÓÖ¸ÎƼÓÃÜÂëÈÏÖ¤³¬Ê± + EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_PASS, //Ö¸ÎƼÓÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_FAIL, //Ö¸ÎƼÓÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_TIMEOUT, //Ö¸ÎƼÓÃÜÂëÈÏÖ¤³¬Ê± + EVENT_ACS_FINGERPRINT_INEXISTENCE, //Ö¸ÎƲ»´æÔÚ + EVENT_ACS_FACE_VERIFY_PASS, //ÈËÁ³ÈÏ֤ͨ¹ý + EVENT_ACS_FACE_VERIFY_FAIL, //ÈËÁ³ÈÏ֤ʧ°Ü + EVENT_ACS_FACE_AND_FP_VERIFY_PASS, //ÈËÁ³¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý + EVENT_ACS_FACE_AND_FP_VERIFY_FAIL, //ÈËÁ³¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü + EVENT_ACS_FACE_AND_FP_VERIFY_TIMEOUT, //ÈËÁ³¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± + EVENT_ACS_FACE_AND_PW_VERIFY_PASS, //ÈËÁ³¼ÓÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_FACE_AND_PW_VERIFY_FAIL, //ÈËÁ³¼ÓÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_FACE_AND_PW_VERIFY_TIMEOUT, //ÈËÁ³¼ÓÃÜÂëÈÏÖ¤³¬Ê± + EVENT_ACS_FACE_AND_CARD_VERIFY_PASS, //ÈËÁ³¼ÓË¢¿¨ÈÏ֤ͨ¹ý + EVENT_ACS_FACE_AND_CARD_VERIFY_FAIL, //ÈËÁ³¼ÓË¢¿¨ÈÏ֤ʧ°Ü + EVENT_ACS_FACE_AND_CARD_VERIFY_TIMEOUT, //ÈËÁ³¼ÓË¢¿¨ÈÏÖ¤³¬Ê± + EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_PASS, //ÈËÁ³¼ÓÃÜÂë¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý + EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_FAIL, //ÈËÁ³¼ÓÃÜÂë¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü + EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT, //ÈËÁ³¼ÓÃÜÂë¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± + EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_PASS, //ÈËÁ³¼ÓË¢¿¨¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý + EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_FAIL, //ÈËÁ³¼ÓË¢¿¨¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü + EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_TIMEOUT, //ÈËÁ³¼ÓË¢¿¨¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± + EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_PASS, //¹¤ºÅ¼ÓÖ¸ÎÆÈÏ֤ͨ¹ý + EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_FAIL, //¹¤ºÅ¼ÓÖ¸ÎÆÈÏ֤ʧ°Ü + EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT, //¹¤ºÅ¼ÓÖ¸ÎÆÈÏÖ¤³¬Ê± + EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS, //¹¤ºÅ¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL, //¹¤ºÅ¼ÓÖ¸ÎƼÓÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT, //¹¤ºÅ¼ÓÖ¸ÎƼÓÃÜÂëÈÏÖ¤³¬Ê± + EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_PASS, //¹¤ºÅ¼ÓÈËÁ³ÈÏ֤ͨ¹ý + EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_FAIL, //¹¤ºÅ¼ÓÈËÁ³ÈÏ֤ʧ°Ü + EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT, //¹¤ºÅ¼ÓÈËÁ³ÈÏÖ¤³¬Ê± + EVENT_ACS_FACE_RECOGNIZE_FAIL, //ÈËÁ³Ê¶±ðʧ°Ü + EVENT_ACS_EMPLOYEENO_AND_PW_PASS, //¹¤ºÅ¼ÓÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_EMPLOYEENO_AND_PW_FAIL, //¹¤ºÅ¼ÓÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_EMPLOYEENO_AND_PW_TIMEOUT, //¹¤ºÅ¼ÓÃÜÂëÈÏÖ¤³¬Ê± + EVENT_ACS_HUMAN_DETECT_FAIL, //ÕæÈ˼ì²âʧ°Ü + EVENT_ACS_PEOPLE_AND_ID_CARD_COMPARE_PASS, //ÈËÖ¤±È¶Ôͨ¹ý + EVENT_ACS_PEOPLE_AND_ID_CARD_COMPARE_FAIL, //ÈËÖ¤±È¶Ôʧ°Ü + EVENT_ACS_DOOR_OPEN_OR_DORMANT_FAIL, //ÃÅ״̬³£±Õ»òÐÝÃß״̬ÈÏ֤ʧ°Ü + EVENT_ACS_AUTH_PLAN_DORMANT_FAIL, //ÈÏÖ¤¼Æ»®ÐÝÃßģʽÈÏ֤ʧ°Ü + EVENT_ACS_CARD_ENCRYPT_VERIFY_FAIL, //¿¨¼ÓÃÜУÑéʧ°Ü + EVENT_ACS_SUBMARINEBACK_REPLY_FAIL, //·´Ç±»Ø·þÎñÆ÷Ó¦´ðʧ°Ü + EVENT_ACS_PASSWORD_MISMATCH, //ÃÜÂ벻ƥÅä + EVENT_ACS_EMPLOYEE_NO_NOT_EXIST, //¹¤ºÅ²»´æÔÚ + EVENT_ACS_COMBINED_VERIFY_PASS, //×éºÏÈÏ֤ͨ¹ý + EVENT_ACS_COMBINED_VERIFY_TIMEOUT, //×éºÏÈÏÖ¤³¬Ê± + EVENT_ACS_VERIFY_MODE_MISMATCH, //ÈÏÖ¤·½Ê½²»Æ¥Åä + EVENT_ACS_PSW_ERROR_OVER_TIMES, //ÃÜÂëÈÏÖ¤³¬´Î 67 + EVENT_ACS_PSW_VERIFY_PASS, //ÃÜÂëÈÏ֤ͨ¹ý + EVENT_ACS_PSW_VERIFY_FAIL, //ÃÜÂëÈÏ֤ʧ°Ü + EVENT_ACS_ORCODE_VERIFY_PASS, //¶þάÂëÈÏ֤ͨ¹ý + EVENT_ACS_ORCODE_VERIFY_FAIL, //¶þάÂëÈÏ֤ʧ°Ü + EVENT_ACS_HOUSEHOLDER_AUTHORIZE_PASS, //»§Ö÷ÊÚȨÈÏ֤ͨ¹ý + EVENT_ACS_BLUETOOTH_VERIFY_PASS, //À¶ÑÀÈÏ֤ͨ¹ý + EVENT_ACS_BLUETOOTH_VERIFY_FAIL, //À¶ÑÀÈÏ֤ʧ°Ü 74 + EVENT_ACS_INFORMAL_MIFARE_CARD_VERIFY_FAIL, //·ÇÕý¹æMifare¿¨ÈÏ֤ʧ°Ü + EVENT_ACS_CPU_CARD_ENCRYPT_VERIFY_FAIL, //CPU¿¨¼ÓÃÜУÑéʧ°Ü + EVENT_ACS_NFC_DISABLE_VERIFY_FAIL, //NFC¹¦ÄܹرÕÑé֤ʧ°Ü + EVENT_ACS_EM_CARD_RECOGNIZE_NOT_ENABLED, //EM¿¨Ê¶±ðδÆôÓà + EVENT_ACS_M1_CARD_RECOGNIZE_NOT_ENABLED, //M1¿¨Ê¶±ðδÆôÓà + EVENT_ACS_CPU_CARD_RECOGNIZE_NOT_ENABLED, //CPU¿¨Ê¶±ðδÆôÓà + EVENT_ACS_ID_CARD_RECOGNIZE_NOT_ENABLED, //Éí·Ý֤ʶ±ðδÆôÓà + EVENT_ACS_CARD_SET_SECRET_KEY_FAIL, //¿¨¹à×°ÃÜԿʧ°Ü + EVENT_ACS_DESFIRE_CARD_ENCRYPT_VERIFY_FAIL, //Desfire¿¨¼ÓÃÜУÑéʧ°Ü + EVENT_ACS_DESFIRE_CARD_RECOGNIZE_NOT_ENABLED, //Desfire¿¨Ê¶±ðδÆôÓà + EVENT_ACS_IRIS_VERIFY_PASS, //ºçĤÈÏ֤ͨ¹ý + EVENT_ACS_IRIS_VERIFY_FAIL, //ºçĤÈÏ֤ʧ°Ü + EVENT_ACS_IRIS_BIOASSAY_FAIL, //ºçĤ»îÌå¼ì²âʧ°Ü + EVENT_ACS_FELICA_CARD_RECOGNIZE_NOT_ENABLED, //Felica¿¨Ê¶±ðδÆôÓà + EVENT_ACS_ORCODE_RECOGNIZE_PASS, //¶þάÂëʶ±ð³É¹¦£¨´¿¶þάÂëʼþ£¬²»´øÈκÎÈÏÖ¤£© + EVENT_ACS_VP_ANTI_SPOOFING_FAIL, //ÉùÎÆ»îÌå¼ì²âʧ°Ü + EVENT_ACS_VP_VERIFY_FAIL //ÉùÎÆÈÏ֤ʧ°Ü +}ACS_CARD_READER_SUBEVENT_ENUM; + +typedef struct tagNET_DVR_EVENT_LINKAGE_INFO +{ + WORD wMainEventType; //ʼþÖ÷ÀàÐÍ£¬0-É豸ʼþ£¬1-±¨¾¯ÊäÈëʼþ£¬2-ÃÅʼþ£¬3-¶Á¿¨Æ÷ʼþ + WORD wSubEventType; //ʼþ´ÎÀàÐÍ + BYTE byRes[28]; +}NET_DVR_EVENT_LINKAGE_INFO,*LPNET_DVR_EVENT_LINKAGE_INFO; + +typedef union tagNET_DVR_EVETN_CARD_LINKAGE_UNION +{ + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + NET_DVR_EVENT_LINKAGE_INFO struEventLinkage; //ʼþÁª¶¯Ê±²ÎÊý + BYTE byMACAddr[MACADDR_LEN]; //ÎïÀíMACµØÖ· + BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; //¹¤ºÅ£¨ÈËÔ±ID£© +}NET_DVR_EVETN_CARD_LINKAGE_UNION,*LPNET_DVR_EVETN_CARD_LINKAGE_UNION; + +typedef struct tagNET_DVR_EVENT_CARD_LINKAGE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byProMode; //Áª¶¯·½Ê½£¬0-ʼþ£¬1-¿¨ºÅ + BYTE byRes1[3]; + DWORD dwEventSourceID; //ʼþÔ´ID£¬µ±Ö÷ÀàÐÍΪÉ豸ʼþʱÎÞЧ£¬ µ±Ö÷ÀàÐÍÊÇÃÅʼþʱΪÃűàºÅ;µ±Ö÷ÀàÐÍΪ¶Á¿¨Æ÷ʼþʱ£¬Îª¶Á¿¨Æ÷ID;µ±Îª±¨¾¯ÊäÈëʼþʱΪ·ÀÇø±¨¾¯ÊäÈëID»òʼþ±¨¾¯ÊäÈëID + NET_DVR_EVETN_CARD_LINKAGE_UNION uLinkageInfo; //Áª¶¯·½Ê½²ÎÊý + BYTE byAlarmout[MAX_ALARMHOST_ALARMOUT_NUM]; //¹ØÁªµÄ±¨¾¯Êä³öºÅ£¬°´Êý×é±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byRes2[32]; //±£Áô + BYTE byOpenDoor[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÁª¶¯¿ªÃÅ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byCloseDoor[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÁª¶¯¹ØÃÅ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byNormalOpen[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÁª¶¯³£¿ª£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byNormalClose[MAX_DOOR_NUM_256]; //°´Êý×é±íʾ,ÊÇ·ñÁª¶¯³£¹Ø£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byMainDevBuzzer; //Ö÷»ú·äÃùÆ÷ 0-²»Áª¶¯£¬1-Áª¶¯Êä³ö + BYTE byCapturePic; //ÊÇ·ñÁª¶¯×¥ÅÄ£¬0-²»Áª¶¯×¥ÅÄ£¬1-Áª¶¯×¥ÅÄ + BYTE byRecordVideo; //ÊÇ·ñÁª¶¯Â¼Ïñ£¬0-²»Áª¶¯Â¼Ïñ£¬1-Áª¶¯Â¼Ïñ + BYTE byRes3[29]; //±£Áô + BYTE byReaderBuzzer[MAX_CARD_READER_NUM_512]; //Áª¶¯¶Á¿¨Æ÷·äÃùÆ÷£¬°´Êý×é±íʾ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byRes[128]; //±£Áô +}NET_DVR_EVENT_CARD_LINKAGE_CFG,*LPNET_DVR_EVENT_CARD_LINKAGE_CFG; + +typedef struct tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50 +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byProMode; //Áª¶¯·½Ê½£¬0-ʼþ£¬1-¿¨ºÅ, 2-MACµØÖ· + BYTE byRes1[3]; + DWORD dwEventSourceID; //ʼþÔ´ID£¬µ±Ö÷ÀàÐÍΪÉ豸ʼþʱÎÞЧ£¬ µ±Ö÷ÀàÐÍÊÇÃÅʼþʱΪÃűàºÅ;µ±Ö÷ÀàÐÍΪ¶Á¿¨Æ÷ʼþʱ£¬Îª¶Á¿¨Æ÷ID;µ±Îª±¨¾¯ÊäÈëʼþʱΪ·ÀÇø±¨¾¯ÊäÈëID»òʼþ±¨¾¯ÊäÈëID¡£0xffffffff±íʾÁª¶¯È«²¿ + NET_DVR_EVETN_CARD_LINKAGE_UNION uLinkageInfo; //Áª¶¯·½Ê½²ÎÊý + BYTE byAlarmout[MAX_ALARMHOST_ALARMOUT_NUM]; //¹ØÁªµÄ±¨¾¯Êä³öºÅ£¬°´Î»±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byRes2[32]; //±£Áô + BYTE byOpenDoor[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯¿ªÃÅ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byCloseDoor[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯¹ØÃÅ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byNormalOpen[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯³£¿ª£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byNormalClose[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯³£¹Ø£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byMainDevBuzzer; //Ö÷»ú·äÃùÆ÷ 0-²»Áª¶¯£¬1-Áª¶¯Êä³ö + BYTE byCapturePic; //ÊÇ·ñÁª¶¯×¥ÅÄ£¬0-²»Áª¶¯×¥ÅÄ£¬1-Áª¶¯×¥ÅÄ + BYTE byRecordVideo; //ÊÇ·ñÁª¶¯Â¼Ïñ£¬0-²»Áª¶¯Â¼Ïñ£¬1-Áª¶¯Â¼Ïñ + BYTE byRes3[29]; //±£Áô + BYTE byReaderBuzzer[MAX_CARD_READER_NUM_512]; //Áª¶¯¶Á¿¨Æ÷·äÃùÆ÷£¬°´Î»±íʾ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byAlarmOutClose[MAX_ALARMHOST_ALARMOUT_NUM]; //¹ØÁª±¨¾¯Êä³ö¹Ø±Õ£¬°´×Ö½Ú±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byAlarmInSetup[MAX_ALARMHOST_ALARMIN_NUM]; //¹ØÁª·ÀÇø²¼·À£¬°´×Ö½Ú±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byAlarmInClose[MAX_ALARMHOST_ALARMIN_NUM]; //¹ØÁª·ÀÇø³··À£¬°´×Ö½Ú±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byRes[500]; //±£Áô +}NET_DVR_EVENT_CARD_LINKAGE_CFG_V50, *LPNET_DVR_EVENT_CARD_LINKAGE_CFG_V50; + +typedef struct tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51 +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byProMode; //Áª¶¯·½Ê½£¬0-ʼþ£¬1-¿¨ºÅ£¬2-MACµØÖ·£¬3-¹¤ºÅ£¨ÈËÔ±ID£© + BYTE byRes1[3]; + DWORD dwEventSourceID; //ʼþÔ´ID£¬µ±Ö÷ÀàÐÍΪÉ豸ʼþʱÎÞЧ£¬ µ±Ö÷ÀàÐÍÊÇÃÅʼþʱΪÃűàºÅ;µ±Ö÷ÀàÐÍΪ¶Á¿¨Æ÷ʼþʱ£¬Îª¶Á¿¨Æ÷ID;µ±Îª±¨¾¯ÊäÈëʼþʱΪ·ÀÇø±¨¾¯ÊäÈëID»òʼþ±¨¾¯ÊäÈëID¡£0xffffffff±íʾÁª¶¯È«²¿ + NET_DVR_EVETN_CARD_LINKAGE_UNION uLinkageInfo; //Áª¶¯·½Ê½²ÎÊý + BYTE byAlarmout[MAX_ALARMHOST_ALARMOUT_NUM]; //¹ØÁªµÄ±¨¾¯Êä³öºÅ£¬°´Î»±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byRes2[32]; //±£Áô + BYTE byOpenDoor[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯¿ªÃÅ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byCloseDoor[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯¹ØÃÅ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byNormalOpen[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯³£¿ª£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byNormalClose[MAX_DOOR_NUM_256]; //°´Î»±íʾ,ÊÇ·ñÁª¶¯³£¹Ø£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byMainDevBuzzer; //Ö÷»ú·äÃùÆ÷ 0-²»Áª¶¯£¬1-Áª¶¯Êä³ö + BYTE byCapturePic; //ÊÇ·ñÁª¶¯×¥ÅÄ£¬0-²»Áª¶¯×¥ÅÄ£¬1-Áª¶¯×¥ÅÄ + BYTE byRecordVideo; //ÊÇ·ñÁª¶¯Â¼Ïñ£¬0-²»Áª¶¯Â¼Ïñ£¬1-Áª¶¯Â¼Ïñ + BYTE byMainDevStopBuzzer; //Ö÷»úÍ£Ö¹·äÃù 0-²»Áª¶¯£¬1-Áª¶¯Êä³ö + WORD wAudioDisplayID; //Áª¶¯ÓïÒô²¥·ÅID£º0-²»Áª¶¯£¬Ä¿Ç°·¶Î§1-32 + BYTE byAudioDisplayMode; //Áª¶¯ÓïÒô²¥·Åģʽ£º0-¹Ø±Õ£¬1-µ¥´Î²¥·Å£¬2-Ñ­»·²¥·Å + BYTE byRes3[25]; //±£Áô + BYTE byReaderBuzzer[MAX_CARD_READER_NUM_512]; //Áª¶¯¶Á¿¨Æ÷·äÃùÆ÷£¬°´Î»±íʾ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byAlarmOutClose[MAX_ALARMHOST_ALARMOUT_NUM]; //¹ØÁª±¨¾¯Êä³ö¹Ø±Õ£¬°´×Ö½Ú±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byAlarmInSetup[MAX_ALARMHOST_ALARMIN_NUM]; //¹ØÁª·ÀÇø²¼·À£¬°´×Ö½Ú±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byAlarmInClose[MAX_ALARMHOST_ALARMIN_NUM]; //¹ØÁª·ÀÇø³··À£¬°´×Ö½Ú±íʾ£¬Îª0±íʾ²»¹ØÁª£¬Îª1±íʾ¹ØÁª + BYTE byReaderStopBuzzer[MAX_CARD_READER_NUM_512]; //Áª¶¯¶Á¿¨Æ÷Í£Ö¹·äÃù£¬°´×Ö½Ú±íʾ£¬0-²»Áª¶¯£¬1-Áª¶¯ + BYTE byRes[512]; //±£Áô +}NET_DVR_EVENT_CARD_LINKAGE_CFG_V51, *LPNET_DVR_EVENT_CARD_LINKAGE_CFG_V51; + +typedef struct tagNET_DVR_EVENT_CARD_LINKAGE_COND +{ + DWORD dwSize; + DWORD dwEventID; //ʼþID + WORD wLocalControllerID; //¾ÍµØ¿ØÖÆÆ÷ÐòºÅ[1,64] + BYTE byRes[106]; +}NET_DVR_EVENT_CARD_LINKAGE_COND, *LPNET_DVR_EVENT_CARD_LINKAGE_COND; + +typedef struct tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM +{ + DWORD dwSize; + DWORD dwFileSize; //Îļþ´óС£¬µ¥Î»£º×Ö½Ú£¨ÉÏ´«ÒôƵÎļþʱÓÐЧ£¬ÏÂÔØÒôƵÎļþʱÎÞЧ£© + DWORD dwAudioID; //ÒôƵID£¨0xffffffff´ú±íÉÏ´«/ÏÂÔØÈ«²¿ÒôƵÎļþ£¬Ä¿Ç°É豸½öÖ§³ÖÈ«Á¿ÉÏ´«/ÏÂÔØ£¬²»Ö§³Öµ¥¸öÒôƵIDÉÏ´«/ÏÂÔØ£© + BYTE byRes[256]; +}NET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM, *LPNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM; + +//¿Í»§±ê¶¨Îļþ½á¹¹Ìå +typedef struct tagNET_DVR_CLIENT_CALIBFILE_PARAM +{ + DWORD dwSize; + DWORD dwFileLen; //Îļþ´óС + BYTE byChannel; //ͨµÀºÅ + BYTE byFileType; //0-3200W±ê¶¨Îļþ,1-800W±ê¶¨Îļþ + BYTE byRes[22]; +}NET_DVR_CLIENT_CALIBFILE_PARAM, *LPNET_DVR_CLIENT_CALIBFILE_PARAM; + +typedef struct tagNET_DVR_RATIOSTITCHING_PARAM +{ + DWORD dwSize; + DWORD dwFileLen; //Îļþ´óС + BYTE byChannel;// ¶à¸ösenorÆ´½ÓºóͨµÀºÅ + BYTE byRes[23]; +}NET_DVR_RATIOSTITCHING_PARAM, *LPNET_DVR_RATIOSTITCHING_PARAM; + +//µçÊÓǽËزÄÎļþ +typedef struct tagNET_DVR_VIDEOWALL_MATERIAL_COND +{ + DWORD dwSize; + BYTE byWallNo; //µçÊÓǽǽºÅ£¬´Ó1¿ªÊ¼ + BYTE byWindowType; //´°¿ÚÀàÐÍ£¬0-ͼÎÄ´°¿Ú,1-×ÖÄ»´°¿Ú + BYTE byFileType; //ÎļþÀàÐÍ£¬0-ͼƬ + BYTE byRes1; //±£Áô×Ö½Ú + DWORD dwWindowNo; //´°¿Ú±àºÅ£¬´Ó1¿ªÊ¼ + DWORD dwMaterialNo; //ËزıàºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes[32]; +}NET_DVR_VIDEOWALL_MATERIAL_COND, *LPNET_DVR_VIDEOWALL_MATERIAL_COND; + +//3200W½ÃÕý±í½á¹¹Ìå +typedef struct tagNET_DVR_CORRECT_TABLE_3200W_PARAM +{ + DWORD dwSize; + DWORD dwFileLen; //Îļþ´óС + BYTE byChannel; //ͨµÀºÅ + BYTE byFileType; //0-3200W±ê¶¨Îļþ,1-800W±ê¶¨Îļþ + BYTE byRes[22]; +}NET_DVR_CORRECT_TABLE_3200W_PARAM, *LPNET_DVR_CORRECT_TABLE_3200W_PARAM; + +//ËÄͨµÀץͼÎļþ½á¹¹Ìå +typedef struct tagNET_DVR_FOUR_CAMERAS_PICTURES +{ + DWORD dwSize; + DWORD dwFileLen; //Îļþ´óС + BYTE byChannel; //ͨµÀºÅ + BYTE byRes[23]; +}NET_DVR_FOUR_CAMERAS_PICTURES, *LPNET_DVR_FOUR_CAMERAS_PICTURES; + +// µ¼³öÖ¸¶¨Ðͺű궨Îļþ½á¹¹Ìå +typedef struct tagNET_DVR_DEVTYPE_CALIBFILE_PARAM +{ + DWORD dwSize; + DWORD dwFileLen; //Îļþ³¤¶È + BYTE byChannel; //ͨµÀºÅ + BYTE byFileType; //0-3200W±ê¶¨Îļþ,1-800W±ê¶¨Îļþ + BYTE byRes[22]; +}NET_DVR_DEVTYPE_CALIBFILE_PARAM, *LPNET_DVR_DEVTYPE_CALIBFILE_PARAM; + +typedef struct tagNET_DVR_ANTI_SNEAK_HOST_INFO +{ + NET_DVR_ADDRESS struDVRIP; //Ö÷»úIPµØÖ· + BYTE byIsStartAddr; //ÊÇ·ñΪ¿ªÊ¼µØÖ·£¬0-·ñ£¬1-ÊÇ + BYTE byHostNo; //Ö÷»ú±àºÅ£¬1-8£¬Ö÷ÒªÓÃÓÚ¶Á¿¨Æ÷˳ÐòÉèÖà + BYTE byRes[34]; //±£Áô +}NET_DVR_ANTI_SNEAK_HOST_INFO,*LPNET_DVR_ANTI_SNEAK_HOST_INFO; + +typedef struct tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO +{ + BYTE byAntiSnealHostNo; //·´Ç±»ØÖ÷»ú±àºÅ + BYTE byRes[5]; //±£Áô + WORD wFollowUpCardReader; //¸Ã·´Ç±»ØÖ÷»úϵĶÁ¿¨Æ÷±àºÅ +}NET_DVR_ANTI_SNEAK_HOST_READER_INFO, *LPNET_DVR_ANTI_SNEAK_HOST_READER_INFO; + +typedef struct tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñ¼ÓÈ뷴DZ»Ø·¾¶£¬1-¼ÓÈ룬0-²»¼ÓÈë + BYTE byRes1[3]; + NET_DVR_ANTI_SNEAK_HOST_INFO struSneakHost[MAX_SNEAK_PATH_NODE]; //ºóÐøÖ÷»úµØÖ·ÐÅÏ¢ + NET_DVR_ANTI_SNEAK_HOST_READER_INFO struStartReader; //Æðʼ¶Á¿¨Æ÷±àºÅ µ±¸ÃÄÚÈÝȫΪ0ʱ£¬±íʾ²»¹Ø×¢´ÓÄĸö¶Á¿¨Æ÷¿ªÊ¼ + BYTE byRes2[128]; +}NET_DVR_ANTI_SNEAK_MULTI_HOST_CFG, *LPNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG; + +typedef struct tagNET_DVR_ANTI_SNEAK_READER_CFG +{ + BYTE byEnable; //ÊÇ·ñ¼ÓÈ뷴DZ»Ø·¾¶£¬1-¼ÓÈ룬0-²»¼ÓÈë + BYTE byAntiSnealHostNo; //·´Ç±»ØÖ÷»ú±àºÅ + WORD wReaderID; //¶Á¿¨Æ÷ID + NET_DVR_ANTI_SNEAK_HOST_READER_INFO struSneakReaderInfo[MAX_SNEAK_PATH_NODE]; //ºóÐøÖ÷»ú¶Á¿¨Æ÷±àºÅ + BYTE byRes2[8]; +}NET_DVR_ANTI_SNEAK_READER_CFG, *LPNET_DVR_ANTI_SNEAK_READER_CFG; + +typedef struct tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG +{ + DWORD dwSize; + NET_DVR_ANTI_SNEAK_READER_CFG struReaderCfg[MAX_READER_ROUTE_NUM]; //¶Á¿¨Æ÷ÐÅÏ¢ + BYTE byRes[128]; +}NET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG, *LPNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG; + +typedef struct tagNET_DVR_ACS_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byRS485Backup; //ÊÇ·ñÆôÓÃÏÂÐÐRS485ͨÐű¸·Ý¹¦ÄÜ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byShowCapPic; //ÊÇ·ñÏÔʾץÅÄͼƬ£¬ 0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byShowCardNo; //ÊÇ·ñÏÔʾ¿¨ºÅ£¬0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byShowUserInfo; //ÊÇ·ñÏÔʾÓû§ÐÅÏ¢£¬0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byOverlayUserInfo;//ÊÇ·ñµþ¼ÓÓû§ÐÅÏ¢£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byVoicePrompt; //ÊÇ·ñÆôÓÃÓïÒôÌáʾ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byUploadCapPic; //Áª¶¯×¥ÅÄÊÇ·ñÉÏ´«Í¼Æ¬£¬0-²»ÉÏ´«£¬1-ÉÏ´« + BYTE bySaveCapPic; //ÊÇ·ñ±£´æ×¥ÅÄͼƬ£¬0-²»±£´æ£¬1-±£´æ + BYTE byInputCardNo; //ÊÇ·ñÊÇ·ñÔÊÐí°´¼üÊäÈ뿨ºÅ£¬0-²»ÔÊÐí£¬1-ÔÊÐí + BYTE byEnableWifiDetect; //ÊÇ·ñÆô¶¯wifi̽Õ룬0-²»Æô¶¯£¬1-Æô¶¯ + BYTE byEnable3G4G; //3G4GʹÄÜ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byProtocol;//¶Á¿¨Æ÷ͨÐÅЭÒéÀàÐÍ£¬0-˽ÓÐЭÒ飨ĬÈÏ£©£¬1-OSDPЭÒé + BYTE byRes[500]; +}NET_DVR_ACS_CFG, *LPNET_DVR_ACS_CFG; + +typedef struct tagNET_DVR_PLATFORM_VERIFY_CFG +{ + DWORD dwSize; + DWORD dwDoorNo; //ÃűàºÅ + BYTE byResultType; //ÈÏÖ¤½á¹ûÀàÐÍ£¬0£º·Ç·¨£¬1£ººÏ·¨ + BYTE byRes1[3]; + BYTE byScreenDisplay[MAX_SCREEN_DISPLAY_LEN]; //LEDÆÁÄ»ÏÔʾ£¬ÓÃÓÚÏÔʾÈÏÖ¤Ïà¹ØÐÅÏ¢ + BYTE byRes[300]; // ±£Áô×Ö½Ú +}NET_DVR_PLATFORM_VERIFY_CFG, *LPNET_DVR_PLATFORM_VERIFY_CFG; + +typedef struct tagNET_DVR_PERSON_STATISTICS_CFG +{ + DWORD dwSize; + BYTE byEnableStatistics; //ÊÇ·ñ¿ªÆôÈËÊýͳ¼Æ£¬0£º²»¿ªÆô£»1£º¿ªÆô£» + BYTE byEnableOfflineStatistics; //ÊÇ·ñ¿ªÆôÀëÏßÈËÊýͳ¼Æ£¬0£º²»¿ªÆô£»1£º¿ªÆô£» + BYTE byCountSignalStatisticalStandard; //¼ÆÊýÐźÅͳ¼Æ±ê×¼£¬0£ºÎÞЧ£»1£ººìÍâ¼ì²âͨÐÐͳ¼Æ£»2£ºÈÏÖ¤ÊýÁ¿Í³¼Æ + BYTE byRes[605]; +}NET_DVR_PERSON_STATISTICS_CFG, *LPNET_DVR_PERSON_STATISTICS_CFG; + +typedef struct tagNET_DVR_ACS_SCREEN_DISPLAY_CFG +{ + DWORD dwSize; + DWORD dwFontSize; //×ÖÌå´óС£¬[1,10]£» + DWORD dwRowSpacing; //Ðмä¾à£¬µ¥Î»£ºÏñËص㣻 + DWORD dwColumnSpacing; //Áмä¾à£¬µ¥Î»£ºÏñËص㣻 + DWORD dwFirstRowPosition; //ÆðʼÐÐλÖÃÔÚÆÁÄ»ÄÄÒ»¸ö·Ö¿é£¬0£º0¡¢ 1£º1/8:¡¢ 2£º2/8¡¢ 3£º3/8¡¢ 4£º4/8¡¢ 5£º5/8¡¢ 6£º6/8:¡¢ 7£º7/8£» + BYTE byDegree; //×Ö·ûÏÔʾ·½Ïò½Ç¶È£¬0-0¶È£¨Õý³££©£¬1-90¶È£¨²à×Å£©£» + BYTE byScreenType; //ÆÁÄ»ÀàÐÍ£¬0-DC48270RS043_01T£¬1-DC80480B070_03T£» + BYTE byRes[306]; +}NET_DVR_ACS_SCREEN_DISPLAY_CFG, *LPNET_DVR_ACS_SCREEN_DISPLAY_CFG; + +typedef struct tagNET_DVR_GATE_TIME_CFG +{ + DWORD dwSize; + DWORD dwHoldOnALarmTime; //ÑÓÐø±¨¾¯Æ÷·äÃùʱ¼ä£¬µ¥Î»ms + DWORD dwHoldOnGateOpenTime; //Õ¢ÃÅÊÕµ½¹Ø±ÕÃüÁîÇ°¼ÌÐø±£³Ö´ò¿ª×´Ì¬Ê±¼ä£¬µ¥Î»ms + DWORD dwPostponeIntrusionAlarmTime; //ÍƳٴ¥·¢´³ÈëÆÛÆ­ÐÐΪ±¨¾¯Ê±¼ä£¬µ¥Î»ms + DWORD dwNoLaneAccessTimeLimitTime; //ͨµÀÊÕµ½ÓÐЧͨÐÐÈÏÖ¤Ðźţ¬µ«ÎÞÈËͨÐг¬Ê±±¨¾¯Ê±¼ä£¬µ¥Î»s + DWORD dwSafetyZoneStayTime; //ͨµÀÊÕµ½ÓÐЧͨÐÐÈÏÖ¤Ðźţ¬³Ë¿Íµ½´ï°²È«ÇøºóÖÍÁôͨµÀ³¬Ê±±¨¾¯Ê±¼ä£¬µ¥Î»s + BYTE byIRTriggerTimeoutTime; //ºìÍâ´¥·¢³¬Ê±Ê±¼ä£¬µ¥Î»£ºÃ루0-255£© + BYTE byRes[299]; +}NET_DVR_GATE_TIME_CFG, *LPNET_DVR_GATE_TIME_CFG; + + +typedef struct tagNET_DVR_CARD_PASSWD_CFG +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byCardPassword[CARD_PASSWORD_LEN]; //¿¨ÃÜÂë + DWORD dwErrorCode; //»ñÈ¡¿¨ÃÜÂ뿪ÃÅʹÄÜÅäÖ÷µ»ØµÄ´íÎóÂ룬³É¹¦Îª0£¬Ê§°Ü·µ»Ø´íÎóÂë + BYTE byCardValid; //¿¨ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚɾ³ý¿¨£¬ÉèÖÃʱÖÃΪ0½øÐÐɾ³ý£¬»ñȡʱ´Ë×Ö¶ÎʼÖÕΪ1£© + BYTE byRes2[23]; +}NET_DVR_CARD_PASSWD_CFG, *LPNET_DVR_CARD_PASSWD_CFG; + +typedef struct tagNET_DVR_CARD_PASSWD_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + DWORD dwErrorCode; //·¢ËÍ¿¨ÃÜÂ뿪ÃÅʹÄÜÅäÖ÷µ»ØµÄ´íÎóÂ룬³É¹¦Îª0£¬Ê§°Ü·µ»Ø´íÎóÂë + BYTE byRes2[24]; +}NET_DVR_CARD_PASSWD_STATUS, *LPNET_DVR_CARD_PASSWD_STATUS; + +//Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_VEHICLE_RECOG_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byRes[64]; +} NET_DVR_VEHICLE_RECOG_COND, *LPNET_DVR_VEHICLE_RECOG_COND; + +//²ÎÊý½á¹¹ +typedef struct tagNET_DVR_VEHICLE_RECOG_CFG +{ + DWORD dwSize; + //Êý¾ÝÁ÷Ë®ºÅ ºÍ£¨ÉÏ´«Êý¾ÝNET_DVR_VEHICLE_RECOG_RESULTÖеÄ×Ö¶ÎsDataIndex¶ÔÓ¦£© + char sDataIndex[DATA_INDEX_LEN]; + //ÈÎÎñ´¦ÀíºÅ ºÍ (ÉÏ´«Êý¾ÝNET_DVR_VEHICLE_RECOG_RESULTÖеÄ×Ö¶ÎdwTaskNo¶ÔÓ¦) + WORD wTaskNo; + BYTE byRes1[2]; + NET_VCA_RECT struPlateRect;//³µÅÆλÖà + char sLicense[MAX_LICENSE_LEN/*16*/];//³µÅƺÅÂë + /* + ³µÁ¾Í¼Æ¬¶þ´Îʶ±ð²Ù×÷ + bit0-³µÅÆʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit1-³µÁ¾ÀàÐÍʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit2-³µÉíÑÕɫʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit3-³µÁ¾Æ·ÅÆʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit4-ÕÚµ²°åʶ±ð(Ö÷¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit5-°²È«´øʶ±ð(Ö÷¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit6-ÕÚµ²°åʶ±ð(¸±¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit7-°²È«´øʶ±ð(¸±¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit8-³µÁ¾Í¼Æ¬µþ¼ÓʹÄÜ£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit9-ÉÏ´«³µÁ¾Í¼Æ¬Ê¹ÄÜ(ͨ¹ýSDK)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit10-ÉÏ´«³µÁ¾Í¼Æ¬Ê¹ÄÜ(ͨ¹ýURL)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit11-»Æ±ê³µ£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit12-´òÊÖ»ú£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit13-¹Ò¼þ£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit14-ΣÏÕÆ·³µ: 0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit15-³µÁ¾Ìì´°Õ¾È˼ì²â: 0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + */ + DWORD dwRecogOperate; + /* + ³µÁ¾Í¼Æ¬Êý¾ÝÉÏ´« + bit0-³µÅÆͼƬ£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit1-³µÁ¾Í¼Æ¬£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit2-ÈËÁ³×Óͼ(Ö÷¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit3-ÈËÁ³×Óͼ(¸±¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit4-°²È«´ø×Óͼ(Ö÷¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit5-°²È«´ø×Óͼ(¸±¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + */ + DWORD dwDataUploadType; + DWORD dwPostID;//¿¨¿ÚID¡£ + NET_DVR_TIME_V30 struPostTime;//¹ý³µÊ±¼ä + DWORD dwJsonLen; //Json͸´«Êý¾Ý³¤¶È + BYTE *pJsonBuffer;//JsonÊý¾ÝÖ¸Õë,²Î¿¼4.2.4JsonÊý¾Ý¸ñʽ + BYTE byRes[107]; + BYTE byPicDataType;//ͼƬÊý¾ÝÀàÐÍ£¬0-ͼƬÊý¾Ý£¬1-URL + //ͼƬÊý¾Ý + //µ±byPicDataType == 0µÄʱºò£¬¸Ã×Ö¶ÎÄÚµÄÊý¾ÝÎÞЧ£¬Í¼Æ¬Êý¾ÝÔڽṹÌåºóÃæ + //µ±byPicDataType == 1µÄʱºò£¬ÊÇÖ¸¶¨µÄͼƬµÄURLÐÅÏ¢ + char sPicDataPath[256]; +}NET_DVR_VEHICLE_RECOG_CFG, *LPNET_DVR_VEHICLE_RECOG_CFG; + +typedef struct tagNET_DVR_VEHICLERECOG_TASK_RESULT +{ + DWORD dwSize; + //É豸Êý¾ÝÁ÷Ë®ºÅ,ÿ´ÎÌá½»ÈÎÎñ£¬É豸»á×ÔÐÐÉú³ÉΨһµÄÁ÷Ë®ºÅ·µ»Ø¸øÉϲ㡣 + char sDevDataIndex[MAX_DEV_DATAINDEX_LEN/*64*/]; + BYTE byRes[256]; +}NET_DVR_VEHICLERECOG_TASK_RESULT, *LPNET_DVR_VEHICLERECOG_TASK_RESULT; + +//Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_VEHICLE_RECOG_TASK_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + char sDataIndex[DATA_INDEX_LEN];//Êý¾ÝÁ÷Ë®ºÅ È«0µÄʱºò±íʾ»ñÈ¡È«²¿ + WORD wTaskNo;//ÈÎÎñ´¦ÀíºÅ ֵΪ0µÄʱºò±íʾȫ²¿ÈÎÎñ + /* + ÈÎÎñ״̬ + bit0-Íê³É״̬µÄÈÎÎñ£º0-²»²éѯ£¬1-²éѯ£» + bit1-Ö´ÐÐÖеÄÈÎÎñ£º0-²»²éѯ£¬1-²éѯ£» + bit2-µÈ´ýÖеÄÈÎÎñ£º0-²»²éѯ£¬1-²éѯ£» + */ + BYTE byTask; + BYTE byRes1; + //É豸Êý¾ÝÁ÷Ë®ºÅ²éѯ,ÿ´ÎÌá½»ÈÎÎñ£¬É豸»á×ÔÐÐÉú³ÉΨһµÄÁ÷Ë®ºÅ¡£ + char sDevDataIndex[MAX_DEV_DATAINDEX_LEN/*64*/]; + BYTE byRes[60]; +}NET_DVR_VEHICLE_RECOG_TASK_COND, *LPNET_DVR_VEHICLE_RECOG_TASK_COND; + +//²ÎÊý½á¹¹ +typedef struct tagNET_DVR_VEHICLE_RECOG_TASK_INFO +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + char sDataIndex[DATA_INDEX_LEN];//Êý¾ÝÁ÷Ë®ºÅ + WORD wTaskNo;//ÈÎÎñ´¦ÀíºÅ + WORD wTaskProgress;//ÈÎÎñÖ´Ðнø¶È£¨Êµ¼Ê½ø¶È*1000£© + BYTE byTaskState;//ÈÎÎñ״̬£¬0-µÈ´ýÖУ¬1-Ö´ÐÐÖУ¬2-Íê³É + BYTE byRes1[3]; + /* + ³µÁ¾Í¼Æ¬¶þ´Îʶ±ð²Ù×÷ + bit0-³µÅÆʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit1-³µÁ¾ÀàÐÍʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit2-³µÉíÑÕɫʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit3-³µÁ¾Æ·ÅÆʶ±ð£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit4-ÕÚµ²°åʶ±ð(Ö÷¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit5-°²È«´øʶ±ð(Ö÷¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit6-ÕÚµ²°åʶ±ð(¸±¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit7-°²È«´øʶ±ð(¸±¼ÝÊ»)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit8-³µÁ¾Í¼Æ¬µþ¼ÓʹÄÜ£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit9-ÉÏ´«³µÁ¾Í¼Æ¬Ê¹ÄÜ(ͨ¹ýSDK)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit10-ÉÏ´«³µÁ¾Í¼Æ¬Ê¹ÄÜ(ͨ¹ýURL)£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit11-»Æ±ê³µ£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit12-´òÊÖ»ú£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit13-¹Ò¼þ£º0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit14-ΣÏÕÆ·³µ: 0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + bit15-³µÁ¾Ìì´°Õ¾È˼ì²â: 0-²»ÆôÓÃʶ±ð£¬1-ÆôÓÃʶ±ð£» + */ + DWORD dwRecogOperate; + DWORD dwPostID;//¿¨¿ÚID¡£ + NET_DVR_TIME_V30 struPostTime;//¹ý³µÊ±¼ä + DWORD dwJsonLen; //Json͸´«Êý¾Ý³¤¶È£¨Ô¤Áô£¬JSONÄÚÈÝÔݲ»ÊµÏÖ£© + BYTE *pJsonBuffer;//JsonÊý¾ÝÖ¸Õë, £¨Ô¤Áô£¬JSONÄÚÈÝÔݲ»ÊµÏÖ£© + BYTE byRes[104]; +}NET_DVR_VEHICLE_RECOG_TASK_INFO, *LPNET_DVR_VEHICLE_RECOG_TASK_INFO; + +typedef struct tagNET_DVR_VEHICLE_RECOG_RESULT +{ + DWORD dwSize; //½á¹¹ + //Êý¾ÝÁ÷Ë®ºÅ ºÍ£¨ÈÎÎñÌá½»NET_DVR_VEHICLE_RECOG_CFGÖеÄ×Ö¶ÎsDataIndex¶ÔÓ¦£© + char sDataIndex[DATA_INDEX_LEN]; + //ÈÎÎñ´¦ÀíºÅ ºÍ (ÈÎÎñÌá½»NET_DVR_VEHICLE_RECOG_CFGÖеÄ×Ö¶ÎwTaskNo¶ÔÓ¦) + WORD wTaskNo; + BYTE byRes[2]; + NET_VCA_RECT struPlateRect;//³µÅÆλÖà + char sLicense[MAX_LICENSE_LEN/*16*/];//³µÅƺÅÂë + BYTE byVehicleType; //³µÁ¾ÀàÐÍ£¬²Î¿¼VTR_RESULT + BYTE byColorDepth; //³µÉíÑÕÉ«Éîdz£¬²Î¿¼ 0-ÉîÉ«£¬1-dzɫ + BYTE byColor; //³µÉíÑÕÉ«, ²Î¿¼VCR_CLR_CLASS + BYTE byVehicleLogoRecog; //³µÁ¾Ö÷Æ·ÅÆ + BYTE byVehicleSubLogoRecog; //³µÁ¾×ÓÆ·ÅÆ + BYTE byPilotSafebelt;//0-±íʾδ֪,1-²»Ïµ°²È«´ø,2-ϵ°²È«´ø + BYTE byCopilotSafebelt;//0-±íʾδ֪,1-²»Ïµ°²È«´ø,2-ϵ°²È«´ø + BYTE byPilotSunVisor;//0-±íʾδ֪,1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byCopilotSunVisor;//0-±íʾδ֪, 1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byVehicleModel;// ²Î¿¼Îĵµ ³µÁ¾×ÓÆ·ÅÆÄê¿î + WORD wVehicleLogoRecog; //³µÁ¾Ö÷Æ·ÅÆ£¬²Î¿¼"³µÁ¾Ö÷Æ·ÅÆ.xlsx" + BYTE byRes1[251]; + // 0-Êý¾ÝÖ±½ÓÉÏ´«; 1-ÔÆ´æ´¢·þÎñÆ÷URLÔ­ÏȵÄͼƬÊý¾Ý±ä³ÉURLÊý¾Ý£¬Í¼Æ¬³¤¶È±ä³ÉURL³¤¶È + BYTE byDataType; + /* + ÉÏ´«Í¼Æ¬ÀàÐÍÐÅÏ¢: + bit0-³µÁ¾Í¼£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit1-³µÅÆͼ£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit2-ÈËÁ³×Óͼ(Ö÷¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit3-ÈËÁ³×Óͼ(¸±¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit4-°²È«´øʶ±ð(Ö÷¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + bit5-°²È«´øʶ±ð(¸±¼ÝÊ»)£º0-²»ÉÏ´«£¬1-ÉÏ´«£» + */ + DWORD dwPicType; //0:ÎÞͼƬÐÅÏ¢;: ³µÁ¾Í¼;:³µÅÆͼ; + BYTE *pVehicleBuffer; //³µÁ¾Í¼Æ¬Êý¾ÝÖ¸Õë + DWORD dwVehicleBufferLen ;// ³µÁ¾Í¼Æ¬Êý¾Ý³¤¶È + BYTE *pPlateBuffer; //³µÅÆͼƬÊý¾ÝÖ¸Õë + DWORD dwPlateBufferLen ;// ³µÅÆͼƬÊý¾Ý³¤¶È + BYTE *pPilotFaceBuffer; //ÈËÁ³×Óͼ(Ö÷¼ÝÊ»)ͼƬÊý¾ÝÖ¸Õë + DWORD dwPilotFaceBufferLen ;// ÈËÁ³×Óͼ(Ö÷¼ÝÊ»)ͼƬÊý¾Ý³¤¶È + BYTE *pCopilotFaceBuffer; //ÈËÁ³×Óͼ(¸±¼ÝÊ»)ͼƬÊý¾ÝÖ¸Õë + DWORD dwCopilotFaceBufferLen ;// ÈËÁ³×Óͼ(¸±¼ÝÊ»)ͼƬÊý¾Ý³¤¶È + BYTE *pPilotSafebeltBuffer; //°²È«´øʶ±ð(Ö÷¼ÝÊ»)ͼƬÊý¾ÝÖ¸Õë + DWORD dwPilotSafebeltBufferLen ;// °²È«´øʶ±ð(Ö÷¼ÝÊ»)ͼƬÊý¾Ý³¤¶È + BYTE *pCopilotSafebeltBuffer;// °²È«´øʶ±ð(¸±¼ÝÊ»)ͼƬÊý¾ÝÖ¸Õë + DWORD dwCopilotSafebeltBufferLen ;// °²È«´øʶ±ð(¸±¼ÝÊ»)ͼƬÊý¾Ý³¤¶È + NET_VCA_RECT struVehicleRect ;//³µÉí¾ØÐÎ×ø±ê + NET_VCA_RECT struPilotRect ;//Ö÷¼ÝÊ»¾ØÐÎ×ø±ê + NET_VCA_RECT struCopilotRect ;//¸±¼ÝÊ»¾ØÐÎ×ø±ê + BYTE *pJsonBuffer;//JsonÊý¾ÝÖ¸Õë,²Î¿¼JSONÊý¾Ý¸ñʽ + DWORD dwJsonBufferLen;// JsonÊý¾Ý³¤¶È + DWORD dwPostID;//¿¨¿ÚID + NET_DVR_TIME_V30 struPostTime;//¹ý³µÊ±¼ä + BYTE Res2[56]; +}NET_DVR_VEHICLE_RECOG_RESULT, *LPNET_DVR_VEHICLE_RECOG_RESULT; + +#define MAX_ZONE_LINKAGE_CHAN_NUM 4 /* ·ÀÇø¹ØÁª×î´óͨµÀÊý*/ + +typedef struct tagNET_DVR_CENTER_SERVER_CFG_ +{ + DWORD dwSize; + BYTE byAddressType; //0 - ipv4/ipv6µØÖ·£¬1 - ÓòÃû + BYTE byRes1; + WORD wServerPort; //·þÎñÆ÷¶Ë¿Ú + union + { + struct + { + BYTE szDomain[MAX_DOMAIN_NAME]; + BYTE byRes2[80]; + }struDomain; //·þÎñÆ÷ÓòÃû + struct + { + NET_DVR_IPADDR struIp; + }struAddrIP; //IPµØÖ· + }unionServer;//ʹÓÃÁªºÏÌå½á¹¹£¬Í¨¹ýbyAddressType×ֶαíʾÊÇIPµØÖ·»¹ÊÇÓòÃû + WORD wInterval; //±¨¾¯¼ä¸ôʱ¼ä,0-30s + BYTE byRes3[514]; +}NET_DVR_CENTER_SERVER_CFG,*LPNET_DVR_CENTER_SERVER_CFG; + +typedef struct tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_ +{ + BYTE byDDNSType; //ÓòÃû·þÎñÆ÷ÀàÐÍ£º0 - ÎÞЧ£¬1 - IPServer(˽ÓÐDNS)£¬2 - hiDDNS + BYTE byRes1; + WORD wDDNSPort; //ÓòÃû·þÎñÆ÷¶Ë¿ÚºÅ + BYTE byServerAddr[MAX_DOMAIN_NAME]; //ÓòÃû·þÎñÆ÷µØÖ· + BYTE byDevName[MAX_DOMAIN_NAME]; //É豸Ãû³Æ + BYTE byDevSerialNum[SERIALNO_LEN]; //É豸ÐòÁкŠ+ BYTE byAddressType; //0 - ipv4/ipv6µØÖ·£¬1 - ÓòÃû + BYTE byRes2; + WORD wDevPort; //É豸¶Ë¿ÚºÅ + union + { + struct + { + BYTE szDomain[MAX_DOMAIN_NAME]; + BYTE byRes2[80]; + }struDomain; //ÓòÃû + struct + { + NET_DVR_IPADDR struIp; + }struAddrIP; //IPµØÖ· + }unionDevAddr;//ʹÓÃÁªºÏÌå½á¹¹£¬Í¨¹ýbyAddressType×ֶαíʾÊÇIPµØÖ·»¹ÊÇÓòÃû + BYTE sUserName[NAME_LEN/*32*/]; //Óû§Ãû + BYTE sPassword[PASSWD_LEN/*16*/];//ÃÜÂë + DWORD dwChannel; //Áª¶¯Í¨µÀºÅ + BYTE byRes3[32]; +}NET_DVR_SINGLE_CHANNEL_LINKAGE_CFG,*LPNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG; + +typedef struct tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_ +{ + DWORD dwSize; + NET_DVR_SINGLE_CHANNEL_LINKAGE_CFG struLinkChannels[MAX_ZONE_LINKAGE_CHAN_NUM]; // ÿ¸ö·ÀÇø¿ÉÒÔ¹ØÁªËĸöÊÓƵͨµÀ + BYTE byRes[64]; +}NET_DVR_ZONE_CHANNEL_LINKAGE_CFG,*LPNET_DVR_ZONE_CHANNEL_LINKAGE_CFG; + +typedef struct tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG +{ + BYTE byDevSerialNo[SERIALNO_LEN]; //É豸ÐòÁкŠ+ DWORD dwChannel; //Áª¶¯Í¨µÀºÅ + BYTE byRes[64]; +}NET_DVR_SINGLE_ASSOCIATED_CHAN_CFG, *LPNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG; + +typedef struct tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG +{ + WORD wZoneNo; + BYTE byRes1[2]; + NET_DVR_SINGLE_ASSOCIATED_CHAN_CFG struSingleChanCfg[MAX_ZONE_LINKAGE_CHAN_NUM]; + BYTE byRes2[64]; +}NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG, *LPNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG; + +typedef struct tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_ +{ + DWORD dwSize; + NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG struAssociatedChanCfg[MAX_MAX_ALARMIN_NUM]; + BYTE byRes[64]; +}NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST, *LPNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST; + +typedef struct tagNET_DVR_LCD_ALARM +{ + DWORD dwSize; + DWORD dwScreenID; //ÆÁÄ»Ë÷ÒýºÅ + BYTE byOnOffLine; //ÆÁÄ»ÊÇ·ñÔÚÏߣ¬0-ÀëÏߣ¬1-ÔÚÏߣ¬µ±ÆÁÄ»ÀëÏßʱ£¬±¾½á¹¹ºóÐø²ÎÊýÎÞЧ + BYTE byTempState; //°å¿¨Î¶È״̬£¬0-Õý³££¬1-Òì³£ + BYTE byFanState; //·çÉÈ״̬£¬0-¹Ø£¬1-¿ª + BYTE byFanException; //·çÉÈÒ쳣״̬£¬0-²»Ö§³Ö 1-Õý³££¬2-Òì³£ + BYTE byTemperature; //ÆÁÄ»°å¿¨Î¶ȣ¬µ¥Î»£ºÉãÊÏ¶È + BYTE byRes[27]; +}NET_DVR_LCD_ALARM, *LPNET_DVR_LCD_ALARM; + +//´«¸ÐÆ÷ÉÏ´«ÐÅÏ¢ +typedef struct tagNET_DVR_SENSOR_INFO_UPLOAD +{ + DWORD dwSize; + NET_DVR_TIME_V30 struTime; + char szSensorName[MAX_SENSORNAME_LEN]; //´«¸ÐÆ÷Ãû³Æ + char szSensorChan[MAX_SENSORCHAN_LEN]; //´«¸ÐÆ÷ͨµÀ + BYTE byReboot; //֮ǰÊÇ·ñÖØÆô¹ý£¨Ò»°ãÊÇÖØÆôµÄºóµÄµÚÒ»ÌõÊý¾Ý´øÓÐÕâ¸ö±êÖ¾£©0-±íʾûÓÐÖØÆô£¬1-ÓйýÖØÆô + BYTE byPowerSupply;//ÊÇ·ñÕý³£¹©µç 0-²»ÔÚ¹©µç£¬1-ÕýÔÚ¹©µç + BYTE byStatusType;//É豸״̬:0:Õý³£¡¢1£ºÒì³£¡¢2¡¢±¨¾¯ + BYTE bySensorType;//²Î¿¼´«¸ÐÆ÷ö¾ÙÀàÐÍSENSOR_TYPE + float fVoltageValue;//µçѹֵ£» ¾«È·µ½0.001 + float fCurrentValue;//µçÁ÷Öµ£»¾«È·µ½0.001 + float fActualValue;//Ä£ÄâÐźÅת»»ºóµÄÊýÖµ£»¾«È·µ½0.001 + char szDescription[MAX_DESCRIPTION_LEN /* 32*/]; //ÃèÊöÐÅÏ¢;µ±É豸״̬£¨byStatusType£©Îª·Ç0ʱÉúЧ¡£ + BYTE byRes1[128]; +}NET_DVR_SENSOR_INFO_UPLOAD,*LPNET_DVR_SENSOR_INFO_UPLOAD; + +//×¥ÅÄͼƬÉÏ´« +typedef struct tagNET_DVR_CAPTURE_UPLOAD +{ + DWORD dwSize; + NET_DVR_TIME_V30 struTime; + DWORD dwChannel;//ͨµÀºÅ + char szDevName[MAX_DEVNAME_LEN_EX]; + DWORD dwPicLen;//ͼƬ³¤¶È + BYTE *pBuffer; //ͼƬÊý¾ÝÖ¸Õë + BYTE byRes[124]; +}NET_DVR_CAPTURE_UPLOAD,*LPNET_DVR_CAPTURE_UPLOAD; + +//È«¾°Áª¶¯µ½Î»ÉÏ´« +typedef struct tagNET_DVR_PANORAMIC_LINKAGE +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byType;//ͼƬÀàÐÍ£¬0-ÎÞÒâÒ壬1-È«¾°Áª¶¯µ½Î»Í¼Æ¬ + BYTE byRes1[3]; + BYTE byMACAddr[MACADDR_LEN]; //macµØÖ· + BYTE byRes2[2]; + NET_DVR_IPADDR struDevIP; //É豸IPµØÖ· + DWORD dwPicLen;//È«¾°Áª¶¯µ½Î»×¥ÅÄͼƬ³¤¶È + char *pPicBuff; //È«¾°Áª¶¯µ½Î»×¥ÅÄͼƬָÕë + BYTE byRes[128]; +}NET_DVR_PANORAMIC_LINKAGE, *LPNET_DVR_PANORAMIC_LINKAGE; + +#define MAX_MASK_AREA_NUM 8 //ÂíÈü¿ËÇøÓò¸öÊý + +typedef struct tagNET_DVR_AREA_MASK_CFG //ÇøÓòÂíÈü¿Ë +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable;//ÊÇ·ñÆôÓÃÂíÈü¿Ë 0-·ñ£¬1-ÊÇ + BYTE byMaskThick; //ÂíÈü¿Ëºñ¶È 0-±¡Â룬1-ÖÐÂ룬2-ºñÂ룬±¡ÂëµÄÇø¿é´óСΪ8*8£¬ÖÐÂë16*16£¬ºñÂë32*32¡£Ä¬ÈÏΪÖÐÂë + BYTE byAutoMask;//ÊÇ·ñÆôÓÃ×Ô¶¯ÂíÈü¿Ë 0-·ñ£¬1-ÊÇ + BYTE byRes1; + NET_VCA_RECT struRegion[MAX_MASK_AREA_NUM];//ÂíÈü¿ËÇøÓò·¶Î§ + BYTE byRes[64]; +}NET_DVR_AREA_MASK_CFG, *LPNET_DVR_AREA_MASK_CFG; + +typedef struct tagNET_DVR_AUDIO_DIACRITICAL_CFG //ÒôƵ±äÒô +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓñäÒô 0-²»ÆôÓã¬1-ÆôÓà + char byBassValue; //¸ßµÍÒôÖµ£¬·¶Î§Îª-12-12 ÖµÔ½´óÉùÒôԽϸ£¬·´Ö®Ô½Ð¡£¬0-±íʾ²»±äÒô + BYTE byRes[62]; +}NET_DVR_AUDIO_DIACRITICAL_CFG, *LPNET_DVR_AUDIO_DIACRITICAL_CFG; + +typedef struct tagNET_DVR_RESOLUTION_SWITCH +{ + DWORD dwSize; + BYTE byResolutionType;//0-all,1-20:9,2-20:6,3-ԭʼÂëÁ÷ģʽ + BYTE byRes[127]; +}NET_DVR_RESOLUTION_SWITCH, *LPNET_DVR_RESOLUTION_SWITCH; + +typedef struct tagNET_DVR_WIFI_DHCP_ADDR_CFG //wifiģʽÏÂDHCP·¶Î§ÅäÖà +{ + DWORD dwSize; + NET_DVR_IPADDR struStartAddr; //¿ªÊ¼IPµØÖ· + NET_DVR_IPADDR struEndAddr; //½áÊøIPµØÖ· + BYTE byRes[256]; +}NET_DVR_WIFI_DHCP_ADDR_CFG, *LPNET_DVR_WIFI_DHCP_ADDR_CFG; + + +typedef struct tagNET_DVR_WIFI_CLIENT_INFO //ÒôƵ±äÒô +{ + DWORD dwSize; + NET_DVR_IPADDR struAddress; //IPµØÖ· + BYTE byMACAddr [MACADDR_LEN]; + WORD wConnSpeed; //Á¬½ÓËÙ¶È µ¥Î»KB + BYTE byRSSIValue; //½ÓÊÕµ½µÄÐźÅÇ¿¶È£¬È¡ÖµÎª¸ºÖµ£¬´«Êäʱ²»´ø¸³Öµ£¬·¶Î§Îª0~-110dbm,ÖµÔ½´ó£¬´ú±íÐźÅԽǿ + BYTE byRes1; //±£Áô + WORD wBandwidth; //ÍøÂç´ø¿í µ¥Î»KB + BYTE byRes[32]; +}NET_DVR_WIFI_CLIENT_INFO, *LPNET_DVR_WIFI_CLIENT_INFO; + +typedef struct tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG //¶àÂëÁ÷¹ØÁªÍ¨µÀ +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChannel; //¹ØÁªµÄ±àÂëͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_MULTISTREAM_RELATION_CHAN_CFG, *LPNET_DVR_MULTISTREAM_RELATION_CHAN_CFG; + +typedef struct +{ + BYTE byPort; //¶Ë¿Ú + BYTE byMasterSlaveProperty; //¶Ë¿ÚÖ÷´ÓÊôÐÔ 1-Ö÷ 2-´Ó + BYTE byPortEthernetType; //¶Ë¿ÚÀàÐÍ£¬1-°ÙÕ׶˿ڣ¬2-ǧÕ×¶Ë¿Ú + BYTE byRes[9]; +}NET_DVR_RING_PORT_PROPERTY, *LPNET_DVR_RING_PORT_PROPERTY; +typedef struct +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓ㬠0-²»ÆôÓ㬠!0-ÆôÓà + BYTE byProtoType; //ЭÒéÀàÐÍ£¬ 1-¹â¶Ë»ú×éÍøЭÒé(˽ÓÐ)£¬2-×ÛºÏƽ̨×éÍøЭÒ飨˽ÓУ©£¬3-G8032ЭÒ飨¹«ÓУ© + BYTE byBandWidth; //»·Íø´ø¿íÀàÐÍ£¬1-°ÙÕ×£¬2-ǧÕ× + BYTE byRes1; //±£Áô×ֶΠ+ NET_DVR_RING_PORT_PROPERTY struRingPort[PER_RING_PORT_NUM]; //»·Íø¶Ë¿Ú + BYTE byRes2[60]; //±£Áô×ֶΠ+}NET_DVR_NS_RING_CFG, *LPNET_DVR_NS_RING_CFG; +typedef struct // +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byStatus; //»·Íø״̬£¬1-Õý³£ 2-¶Ï¿ª + BYTE byMasterSlaveProperty ; //¹âÏË°åÖ÷´ÓÊôÐÔ 1-Ö÷ 2-´Ó + BYTE byRes[62]; //±£Áô×ֶΠ+} NET_DVR_NS_RING_STATUS, *LPNET_DVR_NS_RING_STATUS; + +//»ðµã¼ì²â±¨¾¯ +typedef struct tagNET_DVR_FIREDETECTION_ALARM +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + WORD wPanPos; + WORD wTiltPos; + WORD wZoomPos; + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + BYTE byRes1; + DWORD dwPicDataLen;//±¨¾¯×¥ÅÄͼƬ³¤¶È + BYTE *pBuffer; //Êý¾ÝÖ¸Õë + NET_VCA_RECT struRect;//»ðµã¿ò + NET_VCA_POINT struPoint ;//»ðµã¿òÄÚ×î¸ßζȵã×ø±ê + WORD wFireMaxTemperature ;//»ðµã×î¸ßζÈ[300¡æ~4000¡æ] + WORD wTargetDistance ;//Ä¿±ê¾àÀë[100m ~ 10000m] + BYTE byStrategyType;//²ßÂÔÀàÐÍ£»0~ÈÎÒⱨ¾¯£¬1~Эͬ±¨¾¯£¬2~¶àϵͳ±¨¾¯£¬3~Ö¸¶¨»ðµã±¨¾¯£¬4~Ö¸¶¨ÑÌÎí±¨¾¯ + BYTE byAlarmSubType;//±¨¾¯×ÓÀàÐÍ¡£0~»ðµã¼ì²â±¨¾¯£¬1~ÑÌÎí¼ì²â±¨¾¯£¬2~Ñ̻𱨾¯ + /*ÊÇ·ñÆôÓÃPTZ×ø±êÀ©Õ¹£¬ + 0~²»ÆôÓã¬PTZ×ø±êÖµÒÔwPanPos¡¢wTiltPos¡¢wZoomPosΪ׼¡£ + 1~ÆôÓã¬PTZ×ø±êÖµÒÔstruPtzPosExΪ׼¡£µ«ÊÇÐÂÀÏPTZ¶¼Ðè·µ»Ø¡£struPtzPosExµÄÖµÐèת»¯ÎªwPanPos¡¢wTiltPos¡¢wZoomPosÖµ¡£ + */ + BYTE byPTZPosExEnable; + BYTE byRes2; + NET_PTZ_INFO struPtzPosEx;// ptz×ø±êÀ©Õ¹(Ö§³Ö¸ß¾«¶ÈPTZÖµ£¬¾«È·µ½Ð¡ÊýµãºóÈýλ) + DWORD dwVisiblePicLen;//¿É¼û¹âͼƬ³¤¶È + BYTE *pVisiblePicBuf; //¿É¼û¹âͼƬÊý¾ÝÖ¸Õë + // pSmokeBuf²ÎÊýµ±byAlarmSubType±¨¾¯×ÓÀàÐÍΪ1£¨ÑÌÎí¼ì²â±¨¾¯£©¡¢2£¨Ñ̻𱨾¯£©Ê±ÉúЧ¡£ + BYTE *pSmokeBuf; //ÑÌÎí¼ì²â±¨¾¯Êý¾ÝÖ¸Õ룬ָÏòÒ»¸öNET_DVR_SMOKEDETECTION_ALARM½á¹¹Ìå + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byRes3; + BYTE byFireScanWaitMode; //»ðµãɨÃèµÈ´ýģʽ 0-×Ô¶¯ 1-ÊÖ¶¯ + DWORD dwVisibleChannel; //¿É¼û¹âͨµÀͨµÀºÅ + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE byRes[49]; +} NET_DVR_FIREDETECTION_ALARM,*LPNET_DVR_FIREDETECTION_ALARM; + +//»ðµã¼ì²âÅäÖà +typedef struct tagNET_DVR_SMOKEDETECTION_CFG +{ + BYTE byEnable;//ʹÄÜ + BYTE bySensitivity; //¼ì²âÁéÃô¶È: 1~100ĬÈÏ50 + BYTE byPatrolSensitivity; //Ѳº½¼ì²âÁéÃô¶È: 1~100ĬÈÏ50 + BYTE byDoubleCheckSensitivity; //¶þ´Î¹ýÂËÁéÃô¶È: 1~100ĬÈÏ50 + BYTE byRes[56]; +}NET_DVR_SMOKEDETECTION_CFG, *LPNET_DVR_SMOKEDETECTION_CFG; + +typedef struct tagNET_DVR_ALARMSTRATEGY_PARAM +{ + BYTE byStrategyType;//²ßÂÔÀàÐÍ£»0~ÈÎÒⱨ¾¯£¬1~Эͬ±¨¾¯£¬2~¶àϵͳ±¨¾¯, 3~Ö¸¶¨»ðµã±¨¾¯£¬4~Ö¸¶¨ÑÌÎí±¨¾¯ + BYTE byRes[15]; +}NET_DVR_ALARMSTRATEGY_PARAM, *LPNET_DVR_ALARMSTRATEGY_PARAM; + +typedef struct tagNET_DVR_FIREDETECTION_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE bySensitivity; //¼ì²âÁéÃô¶È: 1~100ĬÈÏ5s + BYTE byFireComfirmTime;//·¢ÏÖ»ðµãµÈ´ýʱ¼ä: 0-120Ãë ĬÈÏ5s + BYTE byFireRegionOverlay;//ÂëÁ÷µþ¼Ó»ðµã¿ò: 0- ·ñ£¬1- ÊÇ + BYTE byDetectionMode;// »ðµã¼ì²âģʽ£º0~¶þ´ÎÅбð£¬1~µ¥Ö¡¼ì²â¡£ + BYTE byFireFocusMode;//»ðµã¾Û½¹Ä£Ê½£º0~×Ô¶¯Ä£Ê½,1~ Ѳº½Ä£Ê½¡£ + BYTE byFireZoomMode;//»ðµã¹âѧ±ä±¶Ä£Ê½£º0~Ϊ×Ô¶¯Ä£Ê½£¬1~ΪÊÖ¶¯Ä£Ê½¡£ + BYTE byFirezoomLevel;//»ðµã¹âѧ±ä±¶±¶ÂÊ£¬1~100¡£µ±¹âѧ±ä±¶Ä£Ê½ÎªÊÖ¶¯Ä£Ê½Ê±ÉúЧ + BYTE bySmokeFireEnabled; //ÑÌ»ð¼ì²â×ÜʹÄÜ£º0¡ª²»ÆôÓã¬1-ÆôÓà + /* + »ðµãÊÖ¶¯µÈ´ýʹÄÜ£¬Îª1ʱ´ú±í¿ªÆô¡£¿ªÆôºó£¬»ðµãµÈ´ýʱ¼ä²ÎÊýbyFireComfirmTimeÎÞЧ¡£ + ¿ªÆôºó£¬µ±É豸·¢ÏÖ»ðµãʱ£¬ÔÆ̨һֱͣÁôÔÚ·¢ÏÖ»ðµãλÖ㬿Éͨ¹ý¼ÌÐø»ðµãɨÃèÃüÁî½â³ý¸ÃµÈ´ýģʽ£¬¼ÌÐø»ðµãɨÃè¡£ + µ±»ðµãÊÖ¶¯µÈ´ýʹÄÜΪ0ʱ£¬É豸Ϊ×Ô¶¯µÈ´ýģʽ£¬¸ÃģʽÏ¿ɸù¾ÝbyFireComfirmTime×Ö¶ÎËùÅäÖõĵȴýʱ¼ä½øÐлðµãµÈ´ý£¬³¬¹ý¸ÃµÈ´ýʱ¼äºóÉ豸×Ô¶¯½øÐлðµãɨÃè¡£ + */ + BYTE byFireManualWaitEnabled;// »ðµãÊÖ¶¯µÈ´ýʹÄÜ£¬0~Ϊ×Ô¶¯µÈ´ýģʽ£¬1~ÊÖ¶¯µÈ´ýģʽ + BYTE byCancelRepeatedAlarmEnabled;// È¡ÏûÖظ´±¨¾¯Ê¹ÄÜ 0-¹Ø±Õ 1-¿ªÆô + BYTE byApplicationSceneMode;//Ó¦Ó󡾰ģʽ£º0-±£Áô£¬1-É­ÁÖ·À»ð, 2-½Õ¸ÑȼÉÕ,3-³ÇÊÐÖƸߵã, 4-ÊÒÄÚ»òÖܽç + DWORD dwInstallationHeight;// °²×°¸ß¶È + BYTE byFireSourceDetection;// »ðµãËÑË÷ģʽ 0-¶¯Ì¬»ðµã 1-ÎüÑÌģʽ + BYTE bySmokeAuxiliaryDetectionEnabled;// ÑÌÎí¸¨ÖúÅжÏÆôÓÃʹÄÜ,¼ì²âģʽÊǶþ´ÎÅбðʱÉúЧ 0-·ñ 1-ÊÇ + BYTE byverificationSensitivity; //¶þ´ÎÈ·ÈÏÁéÃô¶È£¬·¶Î§1~100s£¬Ä¬ÈÏ50s + BYTE byFireAlgorithmMode; //»ðµãË㷨ģʽ£¬0£ºÎÞЧ£¬1£ºÄ£Ê½Ê¶±ð-patternRecognition,:2£º»úÆ÷ѧϰ-machineLearning + BYTE byAgriculturalMachineryFilterEnabled; //Å©»ú¹ýÂËÄ£¿éʹÄÜ£¬0£º²»ÆôÓã¬1£ºÆôÓà + BYTE byWaterReflectionEnabled; //Ë®ÃæÑô¹â·´ÉäÄ£¿éʹÄÜ, 0£º²»ÆôÓã¬1£ºÆôÓà + BYTE byPatrolSensitivity; //Ѳº½¼ì²âÁéÃô¶È £¨Õë¶Ô»ðµã¼ì²â£©, ·¶Î§1~100s£¬Ä¬ÈÏ50s + BYTE byRes[33]; + NET_DVR_ALARMSTRATEGY_PARAM struAlarmStrategy;//±¨¾¯²ßÂÔ + NET_DVR_SMOKEDETECTION_CFG struSmokeCfg;//ÑÌÎí¼ì²âÅäÖà +}NET_DVR_FIREDETECTION_CFG,*LPNET_DVR_FIREDETECTION_CFG; + +typedef struct tagNET_DVR_THERMALPOWER_PARAM +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byPowerSwitch;//¿ª¹ØʹÄÜ£¬1Ϊ¿ªÆô£¬0Ϊ¹Ø±Õ + BYTE byRes[123]; +}NET_DVR_THERMALPOWER_PARAM, *LPNET_DVR_THERMALPOWER_PARAM; + +typedef struct tagNET_DVR_PTZABSOLUTEEX_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_PTZ_INFO struPTZCtrl;//É豸PTZFÐÅÏ¢ + DWORD dwFocalLen;//½¹¾à·¶Î§£º0-100000MM + float fHorizontalSpeed;//ˮƽת¶¯Ëٶȣº0.01-1000.00¶È/S + float fVerticalSpeed;//´¹Ö±×ª¶¯Ëٶȣº0.01-1000.00¶È/S + /*¾µÍ·±ä±¶ÅäÖÃÀàÐÍ£»absoluteZoom:ͨ¹ý±ä±¶²ÎÊý½øÐÐÅäÖã¬Ñ¡ÔñΪ¸ÃÀàÐÍʱstruPTZCtrlÖеÄfZoom²ÎÊýÉúЧ¡£focalLen:ͨ¹ý½¹¾à²ÎÊý½øÐÐÅäÖã¬Ñ¡ÔñΪ¸ÃÀàÐÍʱ£¬dwFocalLen²ÎÊýÉúЧ¡£*/ + BYTE byZoomType;// ¾µÍ·±ä±¶ÅäÖÃÀàÐÍ0~ absoluteZoom£¬1~ focalLen + BYTE byRes[123]; +}NET_DVR_PTZABSOLUTEEX_CFG, *LPNET_DVR_PTZABSOLUTEEX_CFG; + +#define MAX_PLAYLIST_NUM 50 //×î´ó²¥·ÅÁбíÊýÄ¿ +#define MAX_PLAYPLAN_NUM 50 //×î´ó²¥·Å¼Æ»®ÊýÄ¿ + +#define MAX_LEN_256 256 +#define MAX_GROUP_RECORD_NUM 10 //×î´ó¼Ç¼¸öÊý +typedef struct tagNET_DVR_AREA_MONITOR_COND +{ + DWORD dwSize; + DWORD dwAreaID; //ÇøÓòID + DWORD dwMonitorID; //µ±Ç°¿ªÊ¼»ñÈ¡µÄ¼à¿Øµã±àºÅ£¬´Ó1¿ªÊ¼ + BYTE byIsNeedGroup; //ÊÇ·ñ²éѯ¹ØÁª·Ö×éÐÅÏ¢ + BYTE byRes [127]; +}NET_DVR_AREA_MONITOR_COND,*LPNET_DVR_AREA_MONITOR_COND; + +typedef struct tagNET_DVR_DEL_MONITOR_COND +{ + DWORD dwSize; + BYTE byDelType; //ɾ³ýÀàÐÍ£¬0-ɾ³ýÖ¸¶¨ÇøÓòµÄËùÓмà¿Øµã£¬1-ɾ³ýÖ¸¶¨ÇøÓòµÄÖ¸¶¨¼à¿Øµã + DWORD dwAreaID; //ÇøÓòID + DWORD dwMonitorID; //¼à¿ØµãID£¨µ±byDelTypeΪ0ʱÎÞЧ£¬µ±byDelTypeΪ1ʱÓÐЧ£©£¬´Ó1¿ªÊ¼ + BYTE byRes[64]; +}NET_DVR_DEL_MONITOR_COND,*LPNET_DVR_DEL_MONITOR_COND; + +typedef struct tagNET_DVR_BLOCKLIST_ALARM_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byType; //Ãûµ¥±êÖ¾£º- È«²¿£¬- ÔÊÐíÃûµ¥£¬- ½ûÖ¹Ãûµ¥ + BYTE byRes1[3]; //±£Áô + DWORD dwFaceID; //ÈËÁ³Ãûµ¥ID + DWORD dwMaxSnapNum; //×î´ó×¥ÅÄÕÅÊý£¬0-±íʾ²»ÏÞÖÆ + BYTE byRes[256]; +}NET_DVR_BLOCKLIST_ALARM_COND, *LPNET_DVR_BLOCKLIST_ALARM_COND; + +typedef struct tagNET_DVR_STORAGE_RESOURCE_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwStorageID; //´Óµ±Ç°±àºÅ¿ªÊ¼»ñÈ¡Ê£Óà×ÊÔ´£¬´Ó1¿ªÊ¼ + BYTE byRes[64]; +}NET_DVR_STORAGE_RESOURCE_COND, *LPNET_DVR_STORAGE_RESOURCE_COND; + +typedef struct tagNET_DVR_BLOCKLIST_ALARM_RECORD +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwSnapFacePicID; //×¥ÅÄÈËÁ³ID + DWORD dwRegisterID; //Ãûµ¥×¢²áIDºÅ£¨Ö»¶Á£© + DWORD dwGroupNo; //·Ö×éºÅ + BYTE byRes[128]; +}NET_DVR_BLOCKLIST_ALARM_RECORD, *LPNET_DVR_BLOCKLIST_ALARM_RECORD; + +typedef struct tagNET_DVR_BLOCKLIST_GROUP_INFO //Ãûµ¥·Ö×éÐÅÏ¢ +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwGroupID; //·Ö×é±àºÅ£¨»ñȡʱÓÐЧ£¬Ìí¼ÓʱÎÞЧ£©£¬´Ó1¿ªÊ¼ + DWORD dwGroupNo; //Ãûµ¥·Ö×éºÅ + BYTE byGroupType; //·Ö×éÀàÐÍ£¬0-½ûÖ¹Ãûµ¥·Ö×飬1-ÔÊÐíÃûµ¥·Ö×é + BYTE byRes1; + WORD wThreshold; //±¨¾¯ãÐÖµ£¬È¡Öµ·¶Î§Îª0-1000 + DWORD dwListNum; //·Ö×éÃûµ¥Êý + BYTE szGroupName[NAME_LEN]; //·Ö×éÃû³Æ + BYTE szRemark[MAX_LEN_256]; + BYTE byStorageAddr[MAX_DOMAIN_NAME]; //´æ´¢IPµØÖ·ÐÅÏ¢ + WORD wStoragePort; //´æ´¢IP¶ÔÓ¦µÄ¶Ë¿ÚºÅ + BYTE byRes[126]; +}NET_DVR_BLOCKLIST_GROUP_INFO, *LPNET_DVR_BLOCKLIST_GROUP_INFO; + + +typedef struct tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwGroupRecordID; //·Ö×é¼Ç¼ID£¬Ð޸ĺͲéѯʱÓÐЧ£¬Ôö¼ÓʱÎÞЧ£¬´Ó1¿ªÊ¼ + DWORD dwGroupNo; //Ãûµ¥·Ö×éºÅ + DWORD dwFaceDBID; //ÈËÁ³¿âID + DWORD dwFaceRecordID; //ÈËÁ³¼Ç¼ID + BYTE byAlarmLevel; //±¨¾¯µÈ¼¶£¬0-high,1-medium,2-low + BYTE byRes1[3]; //±£Áô + NET_DVR_ADDR_DOMAIN_INFO struStorageAddr; //´æ´¢IPµØÖ·ÐÅÏ¢ + BYTE byRes[256]; +}NET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD,*LPNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD; + +typedef struct tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwRecordID; //´Óµ±Ç°±àºÅ¿ªÊ¼»ñÈ¡£¬´Ó1¿ªÊ¼ + BYTE byRes[64]; +}NET_DVR_BLOCKLIST_GROUP_RECORD_COND, *LPNET_DVR_BLOCKLIST_GROUP_RECORD_COND; + +typedef struct tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG //Ãûµ¥·Ö×é¼Ç¼ÐÅÏ¢ +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwRecordNum; //¼Ç¼×ܸöÊý + NET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD struRecord[MAX_GROUP_RECORD_NUM]; //¼Ç¼²ÎÊý + BYTE byRes[256]; +}NET_DVR_BLOCKLIST_GROUP_RECORD_CFG,*LPNET_DVR_BLOCKLIST_GROUP_RECORD_CFG; + +typedef struct tagNET_DVR_BLOCKLIST_GROUP_CFG //Ãûµ¥·Ö×é¼Ç¼ÐÅÏ¢ +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwGroupNum; //·Ö×é×ܸöÊý + NET_DVR_BLOCKLIST_GROUP_INFO struGroup[MAX_GROUP_RECORD_NUM]; //¼Ç¼²ÎÊý + BYTE byRes[256]; +}NET_DVR_BLOCKLIST_GROUP_CFG,*LPNET_DVR_BLOCKLIST_GROUP_CFG; + +typedef struct tagNET_DVR_BLOCKLIST_GROUP_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwGroupID; //´Óµ±Ç°±àºÅ¿ªÊ¼»ñÈ¡£¬´Ó1¿ªÊ¼ + BYTE byRes[64]; +}NET_DVR_BLOCKLIST_GROUP_COND, *LPNET_DVR_BLOCKLIST_GROUP_COND; + + + +typedef struct tagNET_DVR_SENSOR_VALUE +{ + float fMinValue; //×îСֵ£»¾«È·µ½0.001£¬ÈôΪ0xfffffffff±íʾ²éѯËùÓÐ + float fMaxValue; //×î´óÖµ£»¾«È·µ½0.001£¬ÈôΪ0xfffffffff±íʾ²éѯËùÓÐ + BYTE byRes[8]; +}NET_DVR_SENSOR_VALUE, *LPNET_DVR_SENSOR_VALUE; + +typedef struct tagNET_DVR_HISTORICAL_QUERY_PARAM //ÀúÊ·Êý¾Ý²éѯÌõ¼þ×ӽṹ +{ + NET_DVR_TIME_V30 struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//½áÊøʱ¼ä + NET_DVR_SENSOR_VALUE struVoltageValue; //µçѹ²ÎÊý; µ¥Î»·üÌØ + NET_DVR_SENSOR_VALUE struCurrentValue; //µçÁ÷²ÎÊý; µ¥Î»ºÁ°² + NET_DVR_SENSOR_VALUE struTemperatureValue;//ζȲÎÊý£¬µ¥Î»ÉãÊÏ¶È + NET_DVR_SENSOR_VALUE struHumidityValue;//ʪ¶È²ÎÊý + BYTE bySwitchStatus;//ͨµç״̬£¬ 0~δͨµç£¬1~ͨµç£¬0xff²éѯËùÓÐ + BYTE bySensorStatus; //´«¸ÐÆ÷״̬£» 0-Õý³£¡¢1-Òì³£¡¢2-±¨¾¯£»0xff²éѯËùÓÐ + BYTE byRes[66]; +}NET_DVR_HISTORICAL_QUERY_PARAM, *LPNET_DVR_HISTORICAL_QUERY_PARAM; + +typedef struct tagNET_DVR_SENSOR_COND //Ìõ¼þ½á¹¹ +{ + DWORD dwSize; + BYTE byQueryType; //²éѯ·½Ê½£»0~ʵʱÊý¾Ý²éѯ£¬1~ÀúÊ·Êý¾Ý²éѯ + BYTE byDeviceType; //É豸ÀàÐÍ;0~δ֪,1~Ä£ÄâÁ¿´«¸ÐÆ÷, 2~Éϵç¶Ë×Ó,3~Éϵç²å×ù£¬0xff±íʾ²éѯËùÓÐ + BYTE byDeviceID; //É豸ID£»Analog(Ä£ÄâÁ¿´«¸ÐÆ÷)·¶Î§£º1-8¡¢Terminal(Éϵç¶Ë×Ó)·¶Î§£º1-4¡¢Socket(Éϵç²å×ù)·¶Î§£º1-2£¬0xff±íʾ²éѯËùÓÐ + BYTE byRes1; + // INTER_HISTORICAL_QUERY_PARAM×ӽṹ£¬ÔÚbyQueryTypeΪ1ʱÉúЧ + NET_DVR_HISTORICAL_QUERY_PARAM struHistoricalQueryParam; //ÀúÊ·Êý¾Ý²éѯ²ÎÊý + BYTE byRes[64]; +}NET_DVR_SENSOR_COND,*LPNET_DVR_SENSOR_COND; + +typedef struct tagNET_DVR_SENSOR_CFG//ÅäÖýṹ +{ + DWORD dwSize; + BYTE byEnable; //µ±Ç°²éѯµÄ´«¸ÐÆ÷ÊÇ·ñʹÄÜ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ£» + BYTE byDeviceType; //É豸ÀàÐÍ;0~δ֪,1~Ä£ÄâÁ¿´«¸ÐÆ÷, 2~Éϵç¶Ë×Ó,3~Éϵç²å×ù + BYTE byDeviceID; //É豸ID£»Analog(Ä£ÄâÁ¿´«¸ÐÆ÷)·¶Î§£º1-8¡¢Terminal(Éϵç¶Ë×Ó)·¶Î§£º1-4¡¢Socket(Éϵç²å×ù)·¶Î§£º1-2 + BYTE byRes1; + NET_DVR_TIME_V30 struTime;//ʱ¼ä + BYTE byIsFirst; //ÊÇ·ñÊÇÆô¶¯ºóµÚÒ»ÌõÊý¾Ý(¼ì²âÊÇ·ñÓÐÖØÆô)£¬0-·ñ, 1-ÊÇ£» + BYTE byIsSwitchOn; //ÊÇ·ñͨµç£¬0-·ñ, 1-ÊÇ£» + BYTE bySensorStatus; //´«¸ÐÆ÷״̬£» 0-Õý³£¡¢1-Òì³£¡¢2-±¨¾¯£» + BYTE bySensorType; //´«¸ÐÆ÷ÀàÐÍ£»²ÎÕÕ SENSOR_TYPE + float fVoltage; //µçѹ£»µ¥Î»·üÌØ£¬¾«È·µ½0.001¡£ÈôΪ0xff±íʾÎÞЧֵ + float fCurrent; //µçÁ÷£»µ¥Î»ºÁ°²£¬¾«È·µ½0.001¡£ÈôΪ0xff±íʾÎÞЧֵ + float fTemperatureValue;//ζÈÖµ£»µ¥Î»ÉãÊ϶ȣ¬¾«È·µ½0.001¡£ÈôΪ0xff±íʾÎÞЧֵ + float fHumidityValue;//ʪ¶ÈÖµ£¬¾«È·µ½0.001¡£ÈôΪ0xff±íʾÎÞЧֵ + BYTE bySensorName[SENSORNAME_LEN/*32*/]; //´«¸ÐÆ÷Ãû³Æ + BYTE byDescription[MAX_SENSORDESCR_LEN/*64*/]; //´«¸ÐÆ÷Êý¾ÝµÄÃèÊöÐÅÏ¢£¬statusTypeΪÕý³£Ê±£¬description¿ÉÒÔΪ¿Õ + float fActualValue; //Ä£ÄâÐźÅת»»ºóµÄÊýÖµ£»¾«È·µ½0.0001 + BYTE byUnit[SENSORUNIT_LEN/*32*/]; //µ¥Î»×Ö·û´® + BYTE byRes[220]; +}NET_DVR_SENSOR_CFG,*LPNET_DVR_SENSOR_CFG; + +typedef struct tagNET_DVR_SENSOR_SWITCH_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byDeviceType; //É豸ÀàÐÍ;0~δ֪, 1~Éϵç¶Ë×ÓTerminal,2~Éϵç²å×ùSocket + BYTE byDeviceID; //É豸ID£»Terminal(Éϵç¶Ë×Ó)·¶Î§£º1-4¡¢Socket(Éϵç²å×ù)·¶Î§£º1-2 + BYTE bySwitch; //¿ª¹Ø£¬0-¶Ïµç, 1-Éϵ磬2-ÖØÆô + BYTE byRes[125]; +}NET_DVR_SENSOR_SWITCH_COND,*LPNET_DVR_SENSOR_SWITCH_COND; + +typedef struct tagNET_DVR_GB28181_SERVICE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byServerID[DEV_ID_LEN]; //SIP·þÎñÆ÷ID£» + WORD wPort; //SIP·þÎñÆ÷¶Ë¿ÚºÅ + BYTE byRes1[2]; //±£Áô + BYTE byAuthPasswd[PASSWD_LEN]; + DWORD dwRegisterValid; //´æ»îÆÚÖÜÆÚ£¬µ¥Î»£ºÃ룬ĬÈÏ£º3600 + BYTE byMaxHeartbeatTimeOut; //×î´óÐÄÌø³¬Ê±´ÎÊý£¬Ä¬ÈÏ£º3´Î + BYTE byAutoAddIpc; //ÊÇ·ñÆôÓÃ×Ô¶¯Ìí¼Óipc,0-²»ÆôÓã¬1-ÆôÓà + BYTE byAuthPasswdEx[MAX_PASSWD_LEN_EX]; //ÃÜÂëÀ©Õ¹Îª64룬ÉèÖÃʱ£¬byAuthPasswdExΪ·Ç¿Õ£¬´Ë²ÎÊýÓÐЧ£¬byAuthPasswdÎÞЧ£¬»ñȡʱ£¬byAuthPasswdExºÍbyAuthPasswd¶¼·µ»Ø + BYTE byRes[190]; //±£Áô +}NET_DVR_GB28181_SERVICE_CFG,*LPNET_DVR_GB28181_SERVICE_CFG; +typedef struct tagNET_DVR_ACTIVATECFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE sPassword[PASSWD_LEN]; //³õʼÃÜÂë + BYTE byLoginMode; //0-Private 1-ISAPI + BYTE byHttps; //0-²»Ê¹ÓÃhttps£¬1-ʹÓÃhttps + BYTE byRes[106]; +}NET_DVR_ACTIVATECFG,*LPNET_DVR_ACTIVATECFG; + +typedef struct tagNET_DVR_IPDEVICE_ACTIVATE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byMode; //0-°´Í¨µÀ¼¤»î£¬1-°´µØÖ·¼¤»î + BYTE bySelfDefinePassword;//ÊÇ·ñ×Ô¶¨ÒåÃÜÂë,0-·ñ,1-ÊÇ,2-ÊÇ,ÇÒΪIPCµÄ×Ô¶¨ÒåÃÜÂë + BYTE sPassword[PASSWD_LEN];//×Ô¶¨ÒåÃÜÂë + BYTE sUserName[NAME_LEN];//Óû§Ãû + BYTE byRes[78]; + union + { + BYTE byLen[512];//union´óС + struct + { + DWORD dwChannelNo;//ͨµÀºÅ + BYTE byRes[508]; + }struChannelInfo;//ͨµÀÐÅÏ¢ + struct + { + NET_DVR_IPADDR struIp;//IPµØÖ· + WORD wPort;//¶Ë¿ÚºÅ + BYTE sProtocolDesc[DESC_LEN];//ЭÒéÀàÐÍ + BYTE byMacAddr[MACADDR_LEN];//macµØÖ· + BYTE byRes[344]; + }struAddrInfo;//IPµØÖ·£¬À´×ÔNET_DVR_SADPINFO + }unActivateDeviceInfo;//ʹÓÃÁªºÏÌå½á¹¹£¬Í¨¹ýbyMode×ֶαíʾÊÇ°´Í¨µÀ»¹ÊÇ°´µØÖ· +}NET_DVR_IPDEVICE_ACTIVATE_CFG,*LPNET_DVR_IPDEVICE_ACTIVATE_CFG; + +typedef struct tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_ +{ + DWORD dwSize; + BYTE byDigitalChanPasswordStatus[MAX_CHANNUM_V30*4];//0-±£Áô,1-IPCδ¼¤»î£¬2-·çÏÕÃÜÂ룬3-ÃÜÂëÇ¿¶ÈÈõ£¬4-ÃÜÂëÇ¿¶ÈÖУ¬5-ÃÜÂëÇ¿¶ÈÇ¿;byDigitalChanPasswordStatus[0]±íʾµÚÒ»¸öÊý×ÖͨµÀ + BYTE byRes[1140]; +}NET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS, *LPNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS; + +typedef struct tagNET_DVR_CAMERACHAN_SERIALCFG +{ + DWORD dwSize; + DWORD dwBaudRate; //²¨ÌØÂÊ(bps)£¬0-50£¬1-75£¬2-110£¬3-150£¬4-300£¬5-600£¬6-1200£¬7-2400£¬8-4800£¬9-9600£¬10-19200£¬11-38400£¬12-57600£¬13-76800£¬14-115.2k + BYTE byDataBit; //Êý¾ÝÓм¸Î»£º0-5룬1-6룬2-7룬3-8λ + BYTE byStopBit; //ֹͣλ£º0-1룬1-2λ + BYTE byParity; //ÊÇ·ñУÑ飺0-ÎÞУÑ飬1-ÆæУÑ飬2-żУÑé + BYTE byFlowcontrol;// ÊÇ·ñÁ÷¿Ø£º0-ÎÞ£¬1-ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + WORD wPTZProtocol; //¿ØÇòЭÒéÀàÐÍ£¬Ë÷ÒýÖµ + BYTE byRes1[6]; + DWORD dwSerialPort; //´®¿ÚºÅ,×î¸ßλΪ0£¬±íʾǰÃæ°å´®¿Ú£¬×î¸ßλΪ1£¬±íʾºóÃæ°å´®¿Ú + BYTE bySerialAddress; //´®¿ÚµØÖ·0~255 + BYTE byRes[15]; +}NET_DVR_CAMERACHAN_SERIALCFG, *LPNET_DVR_CAMERACHAN_SERIALCFG; + +#define MAX_MATRIX_SUBBOARD_NUM 16 //×ÛºÏƽ̨×î´ó×Ó°åÊý +#define MAX_MATRIX_SUBBOARD_NUM_V51 32 //×ÛºÏƽ̨×î´ó×Ó°åÊý +#define MAX_BOARD_SUBSYSTEM_NUM 12 //ÿ¸ö×Ó°å×î´óϵͳÊý +typedef struct tagNET_DVR_SUBSYSTEM_STATUS +{ + /*×ÓϵͳÀàÐÍ£¬1-½âÂëÓÃ×Óϵͳ£¬2-±àÂëÓÃ×Óϵͳ£¬3-¼¶ÁªÊä³ö×Óϵͳ£¬4-¼¶ÁªÊäÈë×Óϵͳ£¬5-Âë·ÖÆ÷×Óϵͳ£¬6-±¨¾¯Ö÷»ú×Óϵͳ£¬7-ÖÇÄÜ×Óϵͳ£¬8-Fpga½âÂë×Óϵͳ£¬9-Fpga×Óϵͳ£¬10-תÂë×Óϵͳ£¬ + 11-X86·þÎñÆ÷×Óϵͳ£¬12-³¬¸ßÇåÊäÈë×Óϵͳ£¬13-X86ÖÐÐÄ·þÎñ°å£¬ 14- X86ÒµÎñ·þÎñ°å £¬15-¶àÏà»úÆ´½Ó×Óϵͳ£¬16-ÍøÂç¹âÏ˽»»»×Óϵͳ£¬17-X86Æ´½Ó×Óϵͳ£¬18-ÆÕͨƴ½Ó×Óϵͳ£¬19-ÒôƵ×Óϵͳ£¬0-NULL*/ + BYTE bySubSystemType; + BYTE bySubSystemNo; //×ÓϵͳºÅ£¬¼´ËùÔÚ×Ó°åÉϵıàºÅ + BYTE byOnlineStatus; //ÍøÂçÁ¬½Ó״̬£¬ 1-ÔÚÏß 2-²»ÔÚÏß + BYTE byRes[49]; +}NET_DVR_SUBSYSTEM_STATUS, *LPNET_DVR_SUBSYSTEM_STATUS; + + +typedef struct tagNET_DVR_MATRIX_SUBBOARD +{ + BYTE byBoardNo; //×Ó°åºÅ + BYTE byPcieConnectStatus; //pcieÁ¬½Ó״̬£¬ 1-Á¬½Ó 2-¶Ï¿ª + BYTE byRes[2]; + DWORD dwHardwareVersion; //×Ó°åÓ²¼þ°æ±¾ + DWORD dwPcieBandwidth; //pcie Link ´ø¿í + DWORD dwTemperature; //×Ó°åÎÂ¶È µ¥Î»£ºÉãÊÏ¶È + NET_DVR_SUBSYSTEM_STATUS struSubsystemStatus[MAX_BOARD_SUBSYSTEM_NUM]; //×Óϵͳ״̬ + BYTE byRes2[16]; +}NET_DVR_MATRIX_SUBBOARD, *LPNET_DVR_MATRIX_SUBBOARD; +typedef struct tagNET_DVR_MATRIX_STATUS +{ + DWORD dwSize; + BYTE byMainFrameType; //»úÏäÀàÐÍ 1-18U»úÏä(V1.0) 2-18U»úÏä 3-14U»úÏä 4-11U»úÏä 5-8U»úÏä 6-7U»úÏä 7-5U»úÏä + BYTE bySoltNum; //²ÛλÊý + BYTE byBoardNum; //×Ó°åÊý + BYTE byRes; + NET_DVR_MATRIX_SUBBOARD struMatrixSubboard[MAX_MATRIX_SUBBOARD_NUM]; + BYTE byRes2[48]; +}NET_DVR_MATRIX_STATUS, *LPNET_DVR_MATRIX_STATUS; + + +typedef struct tagNET_DVR_MATRIX_SUBBOARD_V50 +{ + BYTE byBoardNo; //×Ó°åºÅ + BYTE byPcieConnectStatus; //pcieÁ¬½Ó״̬£¬ 1-Á¬½Ó 2-¶Ï¿ª + BYTE byRes; + BYTE byTemperatureAlarm; //ζȱ¨¾¯£¬0-´Ë×Ö¶ÎÎÞЧ£¬1-ζÈÕý³££¬2-ζȳ¬ÉÏÏÞ±¨¾¯£¬3-ζȳ¬ÏÂÏÞ±¨¾¯ + DWORD dwHardwareVersion; //×Ó°åÓ²¼þ°æ±¾ + DWORD dwPcieBandwidth; //pcie Link ´ø¿í + DWORD dwTemperature; //×Ó°åÎÂ¶È µ¥Î»£ºÉãÊÏ¶È + NET_DVR_SUBSYSTEM_STATUS struSubsystemStatus[MAX_BOARD_SUBSYSTEM_NUM]; //×Óϵͳ״̬ + BYTE bySubboardModel[32]; //×Ó°åÐͺŠ+ BYTE byRes1[32]; +}NET_DVR_MATRIX_SUBBOARD_V50, *LPNET_DVR_MATRIX_SUBBOARD_V50; + +typedef struct tagNET_DVR_MATRIX_STATUS_V50 +{ + DWORD dwSize; + BYTE byMainFrameType; //»úÏäÀàÐÍ 1-18U»úÏä(V1.0) 2-18U»úÏä 3-14U»úÏä 4-11U»úÏä 5-8U»úÏä 6-7U»úÏä 7-5U»úÏä + BYTE bySoltNum; //²ÛλÊý + BYTE byBoardNum; //×Ó°åÊý + BYTE byLCDPanelStatus; //Òº¾§Ãæ°åÁ¬½Ó״̬£¬1-Õý³££¬2-Òì³£ + NET_DVR_MATRIX_SUBBOARD_V50 struMatrixSubboard[MAX_MATRIX_SUBBOARD_NUM]; + DWORD dwFanSequence; //·çÉȱàºÅ£¬°´Î»±íʾ£¬×îµÍλ²»Ê¹Óã¬ÀýÈç0xffffff04±íʾ±àºÅΪ1µÄ·çÉÈ£¬µ±¶ÔÓ¦·çÉȱ»ÖÃλʱ£¬dwFanConnectStatusºÍdwFanOperationStatusµÄ¶ÔӦλ²ÅÓÐЧ£¬·ñÔòÈÏΪÎ޴˱àºÅµÄ·çÉÈ + DWORD dwFanConnectStatus; //·çÉÈÁ¬½Ó״̬£¬°´Î»±íʾ£¬×îµÍλ²»Ê¹Óã¬ÀýÈç0xffffff00±íʾ±àºÅΪ1µÄ·çÉÈÁ¬½ÓÕý³££¬0xffffff04±íʾ±àºÅΪ1µÄ·çÉÈÁ¬½ÓÒì³£ + DWORD dwFanOperationStatus; //·çÉÈÔËÐÐ״̬£¬°´Î»±íʾ£¬×îµÍλ²»Ê¹Óã¬ÀýÈç0xffffff00±íʾ±àºÅΪ1µÄ·çÉÈÔËÐÐ״̬Õý³££¬0xffffff04±íʾ±àºÅΪ1µÄ·çÉÈÔËÐÐÒì³£ + BYTE byDeviceModel[32]; //É豸ÐͺŠ+ BYTE byPowerNums; //µçÔ´ÊýÁ¿ + BYTE byMainBoardNums; //Ö÷¿ØÊýÁ¿ + BYTE byHotStandbyMode; // byMainBoardNumsΪ2ʱ£¬0-¹¤×÷ÔÚM1²Û룬1-¹¤×÷ÔÚM2²Ûλ + BYTE byRes[29]; +}NET_DVR_MATRIX_STATUS_V50, *LPNET_DVR_MATRIX_STATUS_V50; + +typedef struct tagNET_DVR_MATRIX_SUBBOARD_V51 +{ + BYTE byBoardNo; //×Ó°åºÅ + BYTE byPcieConnectStatus; //pcieÁ¬½Ó״̬£¬1-Á¬½Ó£¬2-¶Ï¿ª + BYTE byRes1; + BYTE byTemperatureAlarm; //ζȱ¨¾¯£¬0-´Ë×Ö¶ÎÎÞЧ£¬1-ζÈÕý³££¬2-ζȳ¬ÉÏÏÞ±¨¾¯£¬3-ζȳ¬ÏÂÏÞ±¨¾¯ + DWORD dwHardwareVersion; //×Ó°åÓ²¼þ°æ±¾ + DWORD dwPcieBandwidth; //pcie Link´ø¿í + DWORD dwTemperature; //×Ó°åζȣ¬µ¥Î»£ºÉãÊÏ¶È + NET_DVR_SUBSYSTEM_STATUS struSubsystemStatus[MAX_BOARD_SUBSYSTEM_NUM]; //×Óϵͳ״̬ + BYTE bySubboardModel[32]; //×Ó°åÐͺŠ+ BYTE byRes2[128]; +}NET_DVR_MATRIX_SUBBOARD_V51, *LPNET_DVR_MATRIX_SUBBOARD_V51; + +typedef struct tagNET_DVR_MATRIX_STATUS_V51 +{ + DWORD dwSize; + BYTE byMainFrameType; //»úÏäÀàÐÍ 1-18U»úÏ䣨V1.0£©£¬2-18U»úÏ䣬3-14U»úÏ䣬4-11U»úÏ䣬5-8U»úÏ䣬6-7U»úÏä + BYTE bySoltNum; //²ÛλÊý + BYTE byBoardNum; //×Ó°åÊý + BYTE byLCDPanelStatus; //Òº¾§Ãæ°åÁ¬½Ó״̬£¬1-Õý³££¬2-Òì³£ + NET_DVR_MATRIX_SUBBOARD_V51 struMatrixSubboard[MAX_MATRIX_SUBBOARD_NUM_V51]; + DWORD dwFanSequence; //·çÉȱàºÅ£¬°´Î»±íʾ£¬ÀýÈç0x00000001±íʾÉ豸ֻÓÐÒ»¸ö·çÉÈ£¬±àºÅΪ1£¬0x00000101±íʾÉ豸ÓÐÁ½¸ö·çÉÈ£¬±àºÅ·Ö±ðΪ1ºÍ9£¬µ±¶ÔÓ¦·çÉȱàºÅ±»ÖÃλʱ£¬dwFanConnectStatusºÍdwFanOperationStatusµÄ¶ÔӦλ²ÅÓÐЧ£¬·ñÔòÈÏΪÎ޴˱àºÅµÄ·çÉÈ + DWORD dwFanConnectStatus; //·çÉÈÁ¬½Ó״̬£¬°´Î»±íʾ£¬ÀýÈç0x00000001±íʾ±àºÅΪ1µÄ·çÉÈÁ¬½Ó״̬Òì³££¬0x00000101±íʾ±àºÅΪ1ºÍ9µÄ·çÉÈÁ¬½Ó״̬¾ùÒì³£ + DWORD dwFanOperationStatus; //·çÉÈÔËÐÐ״̬£¬°´Î»±íʾ£¬ÀýÈç0x00000001±íʾ±àºÅΪ1µÄ·çÉÈÔËÐÐ״̬Òì³££¬0x00000101±íʾ±àºÅΪ1ºÍ9µÄ·çÉÈÔËÐÐ״̬¾ùÒì³£ + BYTE byDeviceModel[32]; //É豸ÐͺŠ+ BYTE byFanSpeed[32]; //·çÉÈתËÙ£¬°´×Ö½Ú±íʾ£¬ÀýÈçbyFanSpeed[0]±íʾ±àºÅΪ1µÄ·çÉȵÄתËÙ£¬×ªËٵȼ¶·¶Î§Îª[1,3] + BYTE byMainMemUsed; //Ö÷¿ØÄÚ´æʹÓÃÂÊ£¬µ¥Î»£º°Ù·Ö±È + BYTE byMainCpuUsed; //Ö÷¿ØCPUʹÓÃÂÊ£¬µ¥Î»£º°Ù·Ö±È + BYTE byNetwordUsed; //½»»»°åÍøÂçʹÓÃÂÊ£¬µ¥Î»£º°Ù·Ö±È + BYTE byRes1; + DWORD dwMainSoftwareVer; //Ö÷¿ØÈí¼þ°æ±¾ + BYTE byPowerNums; //µçÔ´ÊýÁ¿ + BYTE byMainBoardNums; //Ö÷¿ØÊýÁ¿ + BYTE byHotStandbyMode; // byMainBoardNumsΪ2ʱ£¬0-¹¤×÷ÔÚM1²Û룬1-¹¤×÷ÔÚM2²Ûλ + BYTE byRes2[125]; +}NET_DVR_MATRIX_STATUS_V51, *LPNET_DVR_MATRIX_STATUS_V51; + +typedef struct _NET_DVR_SUBWIND_INFO +{ + DWORD dwSize; + DWORD dwSubWndNo; //×Ó´°¿ÚºÅ + BYTE byRes[8]; +} NET_DVR_SUBWIND_INFO, *LPNET_DVR_SUBWIND_INFO; + + +typedef struct tagNET_DVR_FUSION_SCALE +{ + DWORD dwSize; + WORD wWidth; //ͼÏñÈںϿí(ºáÏòͼÏñÊýÄ¿) + WORD wHeight; //ͼÏñÈںϸß(×ÝÏòͼÏñÊýÄ¿) + BYTE byRes[32]; +}NET_DVR_FUSION_SCALE, *LPNET_DVR_FUSION_SCALE; + +typedef struct tagNET_DVR_FUSION_CFG +{ + DWORD dwSize; + BYTE byFusion; //ÊÇ·ñÈںϣ¬0-δÈںϻòÈ¡ÏûÈںϣ¬·Ç0-ÈÚºÏ + BYTE byUseHistoryMap; //ÊÇ·ñʹÓÃÀúÊ·ÈÚºÏÓ³Éä±í£¬0-²»Ê¹Ó㬷Ç0-ʹÓà + BYTE byRes[30]; +}NET_DVR_FUSION_CFG, *LPNET_DVR_FUSION_CFG; + +typedef struct tagNET_DVR_MULTIFUNCTION_SERIALCFG +{ + DWORD dwSize ; + BYTE byVariable ; //´®¿ÚÊÇ·ñ¿É±ä£¬1-²»¿É±ä 2-¿É±ä £¨Ö»»ñÈ¡£© + BYTE bySerialWorkMode; //¹¤×÷ģʽ£¬1-RS485, 2-RS232£¨Ö»ÔڿɱäÇé¿öÏ£¬Ð޸Ť×÷ģʽ£© + BYTE byFunType; //´®¿Ú¹¦ÄÜ£¬ 1-¼üÅÌ¿ØÖÆ£¬2-ÆÁÄ»¿ØÖÆ£¬3-͸Ã÷ͨµÀģʽ 4-PTZ¿ØÖÆ 5-¾ØÕó¿ØÖÆ 6-¿ØÖÆ̨ + BYTE byDataBit;// Êý¾Ýλ 0£­5룬1£­6룬2£­7룬3£­8λ; + BYTE byStopBit;// ֹͣλ 0£­1룬1£­2λ; + BYTE byParity;// УÑé 0£­ÎÞУÑ飬1£­ÆæУÑ飬2£­Å¼Ð£Ñé; + BYTE byFlowcontrol;// 0£­ÎÞ£¬1£­ÈíÁ÷¿Ø,2-Ó²Á÷¿Ø + BYTE byRes1 ; + DWORD dwBaudRate;//²¨ÌØÂÊ0£­50£¬1£­75£¬2£­110£¬3£­150£¬4£­300£¬5£­600£¬6£­1200£¬7£­2400£¬8£­4800£¬9£­9600£¬10£­19200£¬ 11£­38400£¬12£­57600£¬13£­76800£¬14£­115.2k; + WORD wProtocol; //´®¿ÚЭÒé ²»Í¬´®¿Ú¹¦ÄܶÔÓ¦´®¿ÚЭÒé²»Ò»Ñù + BYTE byRes[34]; +}NET_DVR_MULTIFUNCTION_SERIALCFG, *LPNET_DVR_MULTIFUNCTION_SERIALCFG; + +typedef struct tagNET_DVR_PTZ_3D_SPEED_CONTROL +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byPSpeed; // XÖá¿ØÖÆËÙ¶È £¨È¡Öµ1£­64£© + BYTE byTSpeed; // YÖá¿ØÖÆËÙ¶È £¨È¡Öµ1£­64£© + BYTE byZSpeed; // ZËÙ¶È + BYTE byPDirect; // P·½Ïò£¬ 1-×ó£¬ 2-ÓÒ + BYTE byTDirect; // T·½Ïò£¬ 1-ÉÏ£¬ 2-Ï + BYTE byZDirect; //Z·½Ïò£¬ 1-ZOOM+, 2-ZOOM- + BYTE byRes[18]; //±£Áô×Ö½Ú +}NET_DVR_PTZ_3D_SPEED_CONTROL, *LPNET_DVR_PTZ_3D_SPEED_CONTROL; + +//SensorÐÅÏ¢ +typedef struct tagNET_DVR_SENSOR_PARAM +{ + BYTE bySensorType;//SensorType:0-CCD,1-CMOS + BYTE byRes[31]; + float fHorWidth;//ˮƽ¿í¶È ¾«È·µ½Ð¡ÊýµãºóÁ½Î» *10000 + float fVerWidth;//´¹Ö±¿í¶È ¾«È·µ½Ð¡ÊýµãºóÁ½Î» *10000 + float fFold;//zoom=1û±äʱµÄ½¹¾à ¾«È·µ½Ð¡ÊýµãºóÁ½Î» *100 +}NET_DVR_SENSOR_PARAM,*LPNET_DVR_SENSOR_PARAM; + +//תÏòÁ÷Á¿ÐÅÏ¢ +typedef struct tagNET_DVR_TURN_DIRECTION_PARAM +{ + BYTE byLine;//תÏòÏß±àºÅ + BYTE byStatus;//תÏòÏß״̬£¬0-δ֪£¬1-½øÈ룬2-À뿪 + BYTE byRes[38]; +}NET_DVR_TURN_DIRECTION_PARAM, *LPNET_DVR_TURN_DIRECTION_PARAM; +//Í£Ö¹ÏßÐÅÏ¢ +typedef struct tagNET_DVR_STOP_LINE_PARAM +{ + BYTE byStatus;//Í£Ö¹Ïß״̬£¬0-δ֪£¬1-½øÈ룬2-À뿪 + BYTE byRes[39]; +}NET_DVR_STOP_LINE_PARAM, *LPNET_DVR_STOP_LINE_PARAM; + +//TPS¸½¼ÓÐÅÏ¢ +typedef struct tagNET_DVR_TPS_ADDINFO +{ + NET_DVR_LLPOS_PARAM struFirstLLPos;//³µÁ÷Á¿µÚÒ»Á¾³µµÄ¾­Î³¶ÈλÖÃÐÅÏ¢(byLaneState=3ÇÒbyQueueLen>0ʱ²Å·µ»Ø) + NET_DVR_LLPOS_PARAM struLastLLPos;//³µÁ÷Á¿×îºóÒ»Á¾³µµÄ¾­Î³¶ÈλÖÃÐÅÏ¢(byLaneState=3ÇÒbyQueueLen>0ʱ²Å·µ»Ø) + char sLicense[MAX_LICENSE_LEN/*16*/];//³µÅƺŠ+ NET_DVR_TURN_DIRECTION_PARAM struTurnDirection;//תÏòÁ÷Á¿ÐÅÏ¢ + NET_DVR_STOP_LINE_PARAM struStopLine;//Í£Ö¹ÏßÐÅÏ¢ + BYTE byRes[884]; +}NET_DVR_TPS_ADDINFO, *LPNET_DVR_TPS_ADDINFO; + +//³µÁ¾¸½¼ÓÐÅÏ¢ +typedef struct tagNET_DVR_VEHICLE_ADDINFO +{ + NET_DVR_LLPOS_PARAM struLLPos;//³µÁ¾µ±Ç°¾­Î³¶ÈλÖÃÐÅÏ¢ + char sVehicleNo[LEN_64]; /*ÉÏ´«µÄ³µÁ¾Î¨Ò»±êʶ,×î´ó³¤¶ÈΪ64*/ + BYTE byVehicleMonitorTaskID[64];//³µÁ¾ÖÇÄܲ¼¿ØÈÎÎñID,64λ×Ö·û´®,´´½¨ÈÎÎñʱÓÉÉϲãÏ·¢¸øÉ豸,ÉϲãÈ·±£IDΨһÐÔ + BYTE byUUID[LEN_64]; //ͨÓÃΨһʶ±ðÂë,64λ×Ö·û´®,É豸ȷ±£Î¨Ò»ÐÔ£¬ÓÃÓÚ¿ç·þÎñÆ÷¹ØÁªÍ¬Ò»´Î×¥ÅÄ,vehicleMonitor£¬manualVehicleMonitor£¬dailyVehicleMonitor±¨¾¯ÖеÄlinkageANPRUUIDÓÐ¹Ø + BYTE byRes[832]; +}NET_DVR_VEHICLE_ADDINFO, *LPNET_DVR_VEHICLE_ADDINFO; + +//ÑÌÎí±¨¾¯ +typedef struct tagNET_DVR_SMOKEDETECTION_ALARM +{ + NET_PTZ_INFO struPTZPos;//¿É¼û¹âÉ豸PTZFλÖà + NET_PTZ_INFO struThermalPTZPos;//ÈȳÉÏñÉ豸PTZFλÖà + NET_DVR_LLPOS_PARAM struLLPos;//É豸¾­Î³¶ÈλÖà + NET_VCA_RECT struSmokePos;//»­ÃæÖÐÑÌÎíÇøÓòλÖà + BYTE byRes[256]; +}NET_DVR_SMOKEDETECTION_ALARM, *LPNET_DVR_SMOKEDETECTION_ALARM; + +//Çò»úλÖÃÐÅÏ¢ +typedef struct +{ + float fPanPos;//ˮƽ²ÎÊý£¬¾«È·µ½Ð¡Êýµãºó1λ + float fTiltPos;//´¹Ö±²ÎÊý£¬¾«È·µ½Ð¡Êýµãºó1λ + float fZoomPos;//±ä±¶²ÎÊý£¬¾«È·µ½Ð¡Êýµãºó1λ + BYTE byRes[16] ; +}NET_DVR_PTZPOS_PARAM, *LPNET_DVR_PTZPOS_PARAM; + +//GISÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_GIS_UPLOADINFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo;//Ç°¶ËÉ豸 + float fAzimuth;//µç×ÓÂÞÅ̵ķ½Î»ÐÅÏ¢£»·½Î»½Ç[0.00¡ã,360.00¡ã) + BYTE byLatitudeType ;//γ¶ÈÀàÐÍ£¬0-±±Î³£¬1-ÄÏγ + BYTE byLongitudeType ;// ¾­¶ÈÀàÐÍ£¬0-¶«¶È£¬1-Î÷¶È + BYTE byRes1[2] ; + NET_DVR_LLI_PARAM struLatitude; /*γ¶È*/ + NET_DVR_LLI_PARAM struLongitude; /*¾­¶È*/ + float fHorizontalValue;//ˮƽÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î» + float fVerticalValue;//´¹Ö±ÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î» + float fVisibleRadius;//µ±Ç°¿ÉÊӰ뾶£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î» + float fMaxViewRadius;//×î´ó¿ÉÊӰ뾶£¬¾«È·µ½Ð¡ÊýµãºóÃæ0λ£¨Ô¤Áô´¦Àí£© + NET_DVR_SENSOR_PARAM struSensorParam;//SensorÐÅÏ¢ + NET_DVR_PTZPOS_PARAM struPtzPos; //ptz×ø±ê + BYTE byRes[256]; +}NET_DVR_GIS_UPLOADINFO,*LPNET_DVR_GIS_UPLOADINFO; + +//·ÀÆÆ»µ±¨¾¯ÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_VANDALPROOF_ALARM +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo;//Ç°¶ËÉ豸 + BYTE byRes[256]; +}NET_DVR_VANDALPROOF_ALARM,*LPNET_DVR_VANDALPROOF_ALARM; + +//¼¯Öв¼¿Ø²ÎÊýÅäÖà +typedef struct tagNET_DVR_CENTRALIZEDCTRL_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable;//0-½áÊø£¬1-¿ªÊ¼ + BYTE byLatitudeType ;//γ¶ÈÀàÐÍ£¬0-±±Î³£¬1-ÄÏγ + BYTE byLongitudeType ;// ¾­¶ÈÀàÐÍ£¬0-¶«¾­£¬1-Î÷¾­ + BYTE byRes1; + NET_DVR_LLI_PARAM struLatitude; /*γ¶È*/ + NET_DVR_LLI_PARAM struLongitude; /*¾­¶È*/ + DWORD dwTimeOut;//³¬Ê±Ê±¼ä [60s, 6*60*60s] + BYTE byControlType;//¼¯Öв¼¿Ø·½Ê½ 0-Ç¿ÖƲ¼¿Ø£¬1-·ÇÇ¿ÖƲ¼¿Ø + BYTE byRes[127]; +}NET_DVR_CENTRALIZEDCTRL_CFG,*LPNET_DVR_CENTRALIZEDCTRL_CFG; + +//Çò»úµÄGISÐÅÏ¢Êý¾Ý +typedef struct tagNET_DVR_GIS_INFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + float fAzimuth;//µç×ÓÂÞÅ̵ķ½Î»ÐÅÏ¢£»·½Î»½Ç[0.00¡ã,360.00¡ã) + float fHorizontalValue;//ˮƽÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î» + float fVerticalValue;//´¹Ö±ÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î» + float fVisibleRadius;//µ±Ç°¿ÉÊӰ뾶£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î» + float fMaxViewRadius;//×î´ó¿ÉÊӰ뾶£¬¾«È·µ½Ð¡ÊýµãºóÃæ0λ£¨Ô¤Áô´¦Àí£© + BYTE byLatitudeType ;//γ¶ÈÀàÐÍ£¬0-±±Î³£¬1-ÄÏγ + BYTE byLongitudeType ;// ¾­¶ÈÀàÐÍ£¬0-¶«¾­£¬1-Î÷¾­ + BYTE byPTZPosExEnable;//ÊÇ·ñÆôÓÃPTZ×ø±êÀ©Õ¹£¬0~²»ÆôÓã¬PTZ×ø±êÖµÒÔstruPtzPos Ϊ׼¡£1~ÆôÓã¬PTZ×ø±êÖµÒÔstruPtzPosExΪ׼¡£ + BYTE byRes1; + NET_DVR_LLI_PARAM struLatitude; /*γ¶È*/ + NET_DVR_LLI_PARAM struLongitude; /*¾­¶È*/ + NET_DVR_PTZPOS_PARAM struPtzPos; //ptz×ø±ê + NET_DVR_SENSOR_PARAM struSensorParam;//SensorÐÅÏ¢ + NET_PTZ_INFO struPtzPosEx;// ptz×ø±êÀ©Õ¹(Ö§³Ö¸ß¾«¶ÈPTZÖµ£¬¾«È·µ½Ð¡ÊýµãºóÈýλ) + float fMinHorizontalValue;//×îСˮƽÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î»£»0.0-360.00 + float fMaxHorizontalValue;//×î´óˮƽÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î»£»0.0-360.00 + float fMinVerticalValue;//×îС´¹Ö±ÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î»£»0.0-360.00 + float fMaxVerticalValue;//×î´ó´¹Ö±ÊÓ³¡½Ç£¬¾«È·µ½Ð¡ÊýµãºóÃæÁ½Î»£»0.0-360.00 + BYTE byRes[220]; +}NET_DVR_GIS_INFO,*LPNET_DVR_GIS_INFO; + +//É豸Ѳº½Ä£Ê½ +typedef struct tagNET_DVR_CRUISE_PARAM +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byCruiseMode;// Ѳº½Ä£Ê½£¬0~Á¬Ðø£¬1~Ô¤Öõã + BYTE byRes[123]; +}NET_DVR_CRUISE_PARAM, *LPNET_DVR_CRUISE_PARAM; + +//»ñÈ¡É豸»·¾³ÎÂʪ¶ÈÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_DVR_TEMP_HUMI_INFO +{ + DWORD dwSize; + NET_DVR_TIME_V30 struCurrentTime; // µ±Ç°Ê±¼ä + float fTemperature;//É豸»·¾³Î¶ȣ¬¾«È·µ½Ð¡ÊýµãºóÁ½Î»£¬£¨-273 ¨C 1000ÉãÊ϶ȣ© + float fHumidity;// É豸»·¾³Êª¶È£¬¾«È·µ½Ð¡ÊýµãºóÁ½Î»¡£µ¥Î»Îª£º% + BYTE byRes[256]; +}NET_DVR_TEMP_HUMI_INFO, *LPNET_DVR_TEMP_HUMI_INFO; + +typedef struct tagNET_SDK_POINT_THERMOMETRY +{ + float fPointTemperature;/*µã²âε±Ç°Î¶È, µ±±ê¶¨Îª0-µãʱÉúЧ¡£¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£©*10 */ + NET_VCA_POINT struPoint;//µã²âÎÂ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪ¡°µã¡±µÄʱºòÉúЧ£© + BYTE byRes[20]; +}NET_SDK_POINT_THERMOMETRY, *LPNET_SDK_POINT_THERMOMETRY; + + +typedef struct tagNET_SDK_REGION_THERMOMETRY +{ + float fMaxTemperature;//×î¸ßζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£©*10 */ + float fMinTemperature;//×îµÍζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£©*10 */ + float fAverageTemperature;//ƽ¾ùζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£©*10 */ + float fTemperatureDiff;//βî,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£©*10 */ + NET_VCA_POLYGON struRegion;//ÇøÓò¡¢Ïߣ¨µ±¹æÔò±ê¶¨ÀàÐÍΪ¡°¿ò¡±»òÕß¡°Ïß¡±µÄʱºòÉúЧ£© + BYTE byRes[20]; +}NET_SDK_REGION_THERMOMETRY, *LPNET_SDK_REGION_THERMOMETRY; + +typedef struct tagNET_SDK_MANUALTHERM_RULE +{ + BYTE byRuleID;//¹æÔòID 0-±íʾÎÞЧ£¬´Ó1¿ªÊ¼ £¨listÄÚ²¿ÅжÏÊý¾ÝÓÐЧÐÔ£© + BYTE byEnable;//ÊÇ·ñÆôÓà + BYTE byRes1[2]; + char szRuleName[NAME_LEN/*32*/];//¹æÔòÃû³Æ + BYTE byRuleCalibType;//¹æÔò±ê¶¨ÀàÐÍ 0-µã£¬1-¿ò£¬2-Ïß + BYTE byRes2[3]; + NET_SDK_POINT_THERMOMETRY struPointTherm;//µã²âΣ¬µ±±ê¶¨Îª0-µãʱÉúЧ + NET_SDK_REGION_THERMOMETRY struRegionTherm; //ÇøÓò²âΣ¬µ±±ê¶¨Îª1-¿ò¡¢2-ÏßʱÉúЧ¡£ + BYTE byRes[512]; +}NET_SDK_MANUALTHERM_RULE, *LPNET_SDK_MANUALTHERM_RULE; + +typedef struct tagNET_SDK_MANUAL_THERMOMETRY +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChannel;//ͨµÀºÅ + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê£¨Ö»¶Á£© + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê£¨Ö»¶Á£© + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + BYTE byDataType;//Êý¾Ý״̬ÀàÐÍ:0-¼ì²âÖУ¬1-¿ªÊ¼£¬2-½áÊø£¨Ö»¶Á£© + BYTE byRes1[6]; + NET_SDK_MANUALTHERM_RULE struRuleInfo; + BYTE byRes[512]; +}NET_SDK_MANUAL_THERMOMETRY, *LPNET_SDK_MANUAL_THERMOMETRY; + +typedef struct tagNET_SDK_MANUALTHERM_BASICPARAM +{ + DWORD dwSize; + WORD wDistance;//¾àÀë(m)[0, 10000] + BYTE byDistanceUnit;//¾àÀ뵥λ: 0-Ã×£¨m£©£¬1-Ó¢³ß£¨feet£©,2-ÀåÃ×(centimeter) + BYTE byRes1[1]; //±£Áô + float fEmissivity;//·¢ÉäÂÊ(·¢ÉäÂÊ ¾«È·µ½Ð¡ÊýµãºóÁ½Î»)[0.01, 1.00](¼´£ºÎïÌåÏòÍâ·øÉäÄÜÁ¿µÄ±¾Áì) + BYTE byRes[64]; //±£Áô +}NET_SDK_MANUALTHERM_BASICPARAM, *LPNET_SDK_MANUALTHERM_BASICPARAM; + +typedef struct tagNET_SDK_FIRESHIELDMASK_REGION +{ + DWORD dwSize; + BYTE byMaskID;//ÇøÓòID£¬1~24 + BYTE byEnabled;// µ¥¸ö»ðµãÆÁ±ÎÇøÓòʹÄÜ£¬0~²»ÆôÓã¬1~ÆôÓà + BYTE byShieldZoom;//ÆÁ±Î±¶ÂÊ£¬0~32±¶¡£ÆÁ±Î´óÓÚµÈÓÚ¸ÃÖµµÄ¹âѧ±ä±¶¡£ + BYTE byMaskType;//ÆÁ±ÎÇøÓòÑÕÉ«ÀàÐÍ£¬0-»ÒÉ«£¬1-ºìÉ«£¬2-»ÆÉ«£¬3-À¶É«£¬4-³ÈÉ«£¬5-ÂÌÉ«£¬6-͸Ã÷£¬7-°ë͸Ã÷£¬8-ÂíÈü¿Ë + BYTE byRegionType;//ÇøÓòÀàÐÍ£¨Ô¤Áô£©0-ËıßÐÎ + BYTE byShowEnabled; //ÇøÓòÏÔʾʹÄÜ£¬¸Ã²ÎÊýΪֻ¶Á£¬Èô¸ÃʹÄÜΪfalseÔòÉϲ㲻ÏÔʾ¸ÃÇøÓòÏà¹ØÐÅÏ¢¡£TrueΪÏÔʾ¸ÃÇøÓòÏà¹ØÐÅÏ¢ + BYTE byRes1[2]; //±£Áô + char szMaskName[NAME_LEN/*32*/];//ÆÁ±Î±êÌâ + NET_VCA_POLYGON struRegion;//ÆÁ±ÎÇøÓò + BYTE byRes[32]; //±£Áô +}NET_SDK_FIRESHIELDMASK_REGION, *LPNET_SDK_FIRESHIELDMASK_REGION; + +#define MAX_FIRESHIELDMASK_REGION 24 +typedef struct tagNET_SDK_FIRESHIELDMASK_CFG +{ + DWORD dwSize; + BYTE byEnabled;// »ðµãÇøÓòÆÁ±ÎʹÄÜ£¬0~²»ÆôÓã¬1~ÆôÓà + BYTE byShieldAreaTransparency;//ÆÁ±ÎÇøÓò͸Ã÷¶È 0-²»Í¸Ã÷ 1-͸Ã÷ 2-°ë͸Ã÷ + BYTE byDisplayShieldAreaEnabled;//ÂëÁ÷µþ¼ÓÆÁ±ÎÇøÓòʹÄÜ + BYTE byRes1[1]; //±£Áô + NET_SDK_FIRESHIELDMASK_REGION struMaskRegion[MAX_FIRESHIELDMASK_REGION/*24*/];//»ðµãÆÁ±ÎÇøÓò + BYTE byRes[256]; //±£Áô +}NET_SDK_FIRESHIELDMASK_CFG, *LPNET_SDK_FIRESHIELDMASK_CFG; + +typedef struct tagNET_SDK_SMOKESHIELDMASK_REGION +{ + DWORD dwSize; + BYTE byMaskID;//ÇøÓòID£¬1~24 + BYTE byEnabled;// µ¥¸öÑÌÎíÆÁ±ÎÇøÓòʹÄÜ£¬0~²»ÆôÓã¬1~ÆôÓà + BYTE byShieldZoom;//ÆÁ±Î±¶ÂÊ£¬0~32±¶¡£ÆÁ±Î´óÓÚµÈÓÚ¸ÃÖµµÄ¹âѧ±ä±¶¡£ + BYTE byMaskType;//ÆÁ±ÎÇøÓòÑÕÉ«ÀàÐÍ£¬0-»ÒÉ«£¬1-ºìÉ«£¬2-»ÆÉ«£¬3-À¶É«£¬4-³ÈÉ«£¬5-ÂÌÉ«£¬6-͸Ã÷£¬7-°ë͸Ã÷£¬8-ÂíÈü¿Ë + BYTE byRegionType;//ÇøÓòÀàÐÍ£¨Ô¤Áô£©0-ËıßÐÎ + BYTE byShowEnabled;// ÇøÓòÏÔʾʹÄÜ£¬¸Ã²ÎÊýΪֻ¶Á£¬Èô¸ÃʹÄÜΪfalseÔòÉϲ㲻ÏÔʾ¸ÃÇøÓòÏà¹ØÐÅÏ¢¡£TrueΪÏÔʾ¸ÃÇøÓòÏà¹ØÐÅÏ¢ + BYTE byRes1[2]; //±£Áô + char szMaskName[NAME_LEN/*32*/];//ÆÁ±Î±êÌâ + NET_VCA_POLYGON struRegion;//ÆÁ±ÎÇøÓò + BYTE byRes[32]; //±£Áô +}NET_SDK_SMOKESHIELDMASK_REGION, *LPNET_SDK_SMOKESHIELDMASK_REGION; + +#define MAX_SMOKESHIELDMASK_REGION 24 +typedef struct tagNET_SDK_SMOKESHIELDMASK_CFG +{ + DWORD dwSize; + BYTE byEnabled;// ÑÌÎíÇøÓòÆÁ±ÎʹÄÜ£¬0~²»ÆôÓã¬1~ÆôÓà + BYTE byShieldAreaTransparency;//ÆÁ±ÎÇøÓò͸Ã÷¶È 0-²»Í¸Ã÷ 1-͸Ã÷ 2-°ë͸Ã÷ + BYTE byDisplayShieldAreaEnabled;//ÂëÁ÷µþ¼ÓÆÁ±ÎÇøÓòʹÄÜ + BYTE byRes1[1]; //±£Áô + NET_SDK_SMOKESHIELDMASK_REGION struMaskRegion[MAX_SMOKESHIELDMASK_REGION/*24*/];//ÑÌÎíÆÁ±ÎÇøÓò + BYTE byRes[256]; //±£Áô +}NET_SDK_SMOKESHIELDMASK_CFG, *LPNET_SDK_SMOKESHIELDMASK_CFG; + +typedef struct tagNET_SDK_AREASCAN_CFG +{ + DWORD dwSize; + BYTE byScanState;//ÇøÓòɨÃ赱ǰÉèÖÃ״̬£¬0ΪδÉèÖã¬1ΪÒÑÉèÖ㨸òÎÊýΪֻ¶Á£© + BYTE byRes[259]; //±£Áô +}NET_SDK_AREASCAN_CFG, *LPNET_SDK_AREASCAN_CFG; + +typedef struct tagNET_SDK_FIRESHIELDMASK_COND +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byRegionID;//ÇøÓòID£¬1~24. + BYTE byRes[127]; //±£Áô +}NET_SDK_FIRESHIELDMASK_COND, *LPNET_SDK_FIRESHIELDMASK_COND; + +typedef struct tagNET_SDK_SMOKESHIELDMASK_COND +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byRegionID;//ÇøÓòID£¬1~24. + BYTE byRes[127]; //±£Áô +}NET_SDK_SMOKESHIELDMASK_COND, *LPNET_SDK_SMOKESHIELDMASK_COND; + +//×ÓÂÞÅ̹ØÁª·ÀÆÆ»µ²ÎÊý +typedef struct tagNET_DVR_VANDALPROOFALARM_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE bySensitivity;//ÁéÃô¶È[1,100] (Ö§³ÖÁéÃô¶ÈÅäÖã¬ÁéÃô¶ÈÖµ´ó£¬Ô½ÈÝÒ×´¥·¢£¬ÖµÔ½Ð¡£¬Ô½ÄÑ´¥·¢) + BYTE byUploadEnabled;//ÆôÓ÷ÀÆÆ»µ±¨¾¯ÉÏ´«Ê¹ÄÜ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byVoiceWarningEnabled;//ÆôÓ÷ÀÆÆ»µ±¨¾¯ÓïÒôÌáʾʹÄÜ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byEnable;// ÆôÓüì²â·ÀÆÆ»µ±¨¾¯ 0-¹Ø±Õ£¬1-¿ªÊ¼ + BYTE byRes[124]; +}NET_DVR_VANDALPROOFALARM_CFG,*LPNET_DVR_VANDALPROOFALARM_CFG; + +typedef struct tagNET_DVR_AZIMUTHINFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + float fDegree;//·½Î»½Ç¶ÈÊý(¾«È·µ½Ð¡ÊýµãºóÁ½Î») + BYTE byAzimuth; //·½Î»½ÇÐÅÏ¢ 0-¶«±±,1-Î÷±±,2-¶«ÄÏ,3-Î÷ÄÏ,4-¶«,5-Î÷,6-ÄÏ,7-±± + BYTE byRes[127]; +}NET_DVR_AZIMUTHINFO,*LPNET_DVR_AZIMUTHINFO; + +//µç×ÓÂÞÅ̽ÃÕý¡¢Ö¸ÏòÕý±±¿ØÖÆÌõ¼þ½á¹¹ +typedef struct tagNET_DVR_COMPASS_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChannel;//ͨµÀºÅ + BYTE byRes[128]; +}NET_DVR_COMPASS_COND,*LPNET_DVR_COMPASS_COND; + +typedef struct tagNET_DVR_POSITION_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE bySoftWorkMode;//¹¤×÷ģʽ 0-×Ô¶¯£¬1-ÊÖ¶¯ + BYTE byRes[127]; +}NET_DVR_POSITION_CFG,*LPNET_DVR_POSITION_CFG; + +typedef struct tagNET_DVR_STREAMING_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChannel;//ͨµÀºÅ + BYTE byStreamType;//ÂëÁ÷ÀàÐÍ0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ÂëÁ÷3 + BYTE byRes[127]; +}NET_DVR_STREAMING_COND,*LPNET_DVR_STREAMING_COND; + +//ÎÀÐǶ¨Î»²ÎÊýÅäÖà +typedef struct tagNET_DVR_SATELLITETIME_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable;//ÎÀÐǶ¨Î»Ð£Ê±Ê¹ÄÜ 0-²»¿ªÆô£¬1-¿ªÆô + BYTE byRes; + WORD wTimeInterval;//Уʱʱ¼ä¼ä¸ô(s) + BYTE byRes1[124]; +}NET_DVR_SATELLITETIME_CFG,*LPNET_DVR_SATELLITETIME_CFG; + +#define MAX_SIGNAL_JOINT_NUM 64 //×î´óµÄÆ´½Ó¹æÄ£ +typedef struct tagNET_DVR_SIGNAL_JOINT_CFG +{ + DWORD dwSize; + BYTE sCamName[NAME_LEN] ; //Æ´½ÓºóÐźÅÔ´Ãû³Æ + BYTE byEnable; //ʹÄÜ£¬0-²»Ê¹ÄÜ !0-ʹÄÜ + BYTE byCamMode ; //Æ´½ÓºóÐźÅÔ´ÀàÐÍ£¬NET_DVR_CAM_JOINT + BYTE byRows ; //Æ´½ÓÐÐÊý + BYTE byColumns ; //Æ´½ÓÁÐÊý + DWORD dwSignalNo[MAX_SIGNAL_JOINT_NUM]; //ÐźÅÔ´ºÅ,Ç°byRows* byColumnsÏîÓÐЧ + DWORD dwJointNo; //Æ´½Ó±àºÅ£¨»ñÈ¡ÓÐЧ£© + DWORD dwSignalNoJoint; //Æ´½ÓºóµÄÐźÅÔ´ºÅ£¨»ñÈ¡ÓÐЧ£© + BYTE byRes[64]; +} NET_DVR_SIGNAL_JOINT_CFG, *LPNET_DVR_SIGNAL_JOINT_CFG; + +typedef struct tagNET_DVR_SIGNAL_CUTPARAM +{ + DWORD dwSize; + DWORD dwSignalNo; //ÐźÅÔ´ºÅ + DWORD dwCutTop; //ÉÏ·½²Ã¼ôÏñËØÖµ,0´ú±í»¹Ô­ + DWORD dwCutBottom; //Ï·½²Ã¼ôÏñËØÖµ,0´ú±í»¹Ô­ + DWORD dwCutLeft; //×ó±ß²Ã¼ôÏñËØÖµ,0´ú±í»¹Ô­ + DWORD dwCutRight; //Óұ߲üôÏñËØÖµ,0´ú±í»¹Ô­ + BYTE byRes2[32]; +} NET_DVR_SIGNAL_CUTPARAM, *LPNET_DVR_SIGNAL_CUTPARAM; + +typedef struct tagNET_DVR_WALL_RELATION_CFG +{ + DWORD dwSize; + BYTE byEnable; //¹ØÁª£¬ 0-²»¹ØÁª !0-¹ØÁª + BYTE byRealWallNo ; //ÎïÀíǽºÅ + BYTE byRes[14] ; +}NET_DVR_WALL_RELATION_CFG, *LPNET_DVR_WALL_RELATION_CFG; + + +typedef struct tagNET_DVR_INPUTSTREAMCFG_V40 +{ + DWORD dwSize ; + BYTE byValid ; // + BYTE byCamMode ;//¼ûNET_DVR_CAM_MODE + WORD wInputNo ; //ÐźÅÔ´ÐòºÅ + BYTE sCamName[NAME_LEN] ; + NET_DVR_VIDEOEFFECT struVideoEffect ;//ÊÓƵ²ÎÊý + NET_DVR_PU_STREAM_CFG struPuStream ; //ipÊäÈëʱʹÓà + WORD wBoardNum ; //ÐźÅÔ´ËùÔڵİ忨ºÅ£¬Ö»ÄÜ»ñÈ¡ + WORD wInputIdxOnBoard ; //ÐźÅÔ´Ôڰ忨ÉϵÄλÖã¬Ö»ÄÜ»ñÈ¡ + DWORD dwResolution ;//·Ö±æÂÊ + BYTE byVideoFormat ;//ÊÓƵÖÆʽ£¬¼ûVIDEO_STANDARD + BYTE byStatus; //ÐźÅԴ״̬£¬0-×Ö¶ÎÎÞЧ 1-ÓÐÐźŠ2-ÎÞÐźŠ3-Òì³£ + BYTE sGroupName[NAME_LEN/*32*/]; //ÍøÂçÐźÅÔ´·Ö×é ×éÃû + BYTE byJointMatrix ; //¹ØÁª¾ØÕó£¬0-²»¹ØÁª 1-¹ØÁª£¬µ±ÊäÈëÐźÅԴΪNET_DVR_CAM_BNC£¬NET_DVR_CAM_VGA£¬NET_DVR_CAM_DVI£¬NET_DVR_CAM_HDMI,ÖеÄÒ»ÖÖʱ£¬¸Ã²ÎÊýÓÐЧ¡£ + BYTE byJointNo ; //Æ´½ÓÐźÅÔ´µÄÆ´½Ó±àºÅ(Ö»ÄÜ»ñÈ¡) + BYTE byColorMode; //É«²Êģʽ£¬ 0-×Ô¶¨Òå 1-ÈñÀû 2-ÆÕͨ 3-ÈáºÍ£¬µ±Îª×Ô¶¨Òåʱ£¬Ê¹ÓÃstruVideoEffectÉèÖà + BYTE byScreenServer; //¹ØÁªÆÁÄ»·þÎñÆ÷£¬0-²»Áª£¬1-¹ØÁª + BYTE byDevNo; //É豸ºÅ + BYTE byRes1; + DWORD dwInputSignalNo; //ÊäÈëÐźÅÔ´±àºÅ£¨Ð£© + BYTE byVideoEnctype; //ÊÓƵ±àÂëÀàÐÍ£¬0-ĬÈÏ£¬1-Smart264 + BYTE byAudioEnctype; //ÒôƵ±àÂëÀ࣬0-ĬÈÏ£¬1-AUDIO_G711_A£¬2-AUDIO_G711_U£¬3- AUDIO_G722_1 + BYTE byWallStatus; //ÐźÅÔ´ÉÏǽ״̬£¬0-ÎÞЧ 1-ÓÐÉÏǽ 2- ÎÞÉÏǽ + BYTE byRes[117]; +}NET_DVR_INPUTSTREAMCFG_V40, *LPNET_DVR_INPUTSTREAMCFG_V40 ; + +typedef struct tagNET_DVR_AUDIO_CONTROL_INFO +{ + DWORD dwSize; + DWORD dwMonId;//¼àÊÓÆ÷È«¾Ö±àºÅ + BYTE bySubWindowNum;//¼àÊÓÆ÷¶ÔÓ¦×Ó´°¿ÚºÅ + BYTE byWallNo; //ǽºÅ + BYTE byEnable; //ÒôƵ¿ª¹Ø£¬0-¹Ø£¬1-¿ª + BYTE byRes[13]; +}NET_DVR_AUDIO_CONTROL_INFO,*LPNET_DVR_AUDIO_CONTROL_INFO; + + + +typedef struct tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM +{ + DWORD dwSize; + WORD wPTZProtocol; //¿ØÇòЭÒéÀàÐÍ£¬Ë÷ÒýÖµ + BYTE byRes[34]; +}NET_DVR_INPUTSTREAM_PTZCFG_PARAM, *LPNET_DVR_INPUTSTREAM_PTZCFG_PARAM; + +//¹«Â·»õ³µÖáÐͶ¨Òå ²ÎÕÕ¡¶2016Öγ¬·ÖÀà1133.xlsx¡· +typedef enum +{ + AXLE_TYPE_UNKNOWN = 0x0000, //δ֪ + //2Öá + AXLE_TYPE_2AXLE_12 = 0x0200, //2ÖáÔØ»õÆû³µ + //3Öá + AXLE_TYPE_3AXLE_122_1 = 0x0300, //3ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_3AXLE_122_2, //3Öá½Â½ÓÁгµ + AXLE_TYPE_3AXLE_15, //3ÖáÔØ»õÆû³µ + AXLE_TYPE_3AXLE_112, //3ÖáÔØ»õÆû³µ + //4Öá + AXLE_TYPE_4AXLE_125_1 = 0x0400, //4ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_4AXLE_152, //4ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_4AXLE_125_2, //4Öá½Â½ÓÁгµ + AXLE_TYPE_4AXLE_1222, //4ÖáÈ«¹ÒÆû³µÁгµ + AXLE_TYPE_4AXLE_115, //4ÖáÔØ»õÆû³µ + //5Öá + AXLE_TYPE_5AXLE_155_1 = 0x0500, //5ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_5AXLE_1125_1, //5ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_5AXLE_155_2, //5Öá½ÂÁ´Áгµ + AXLE_TYPE_5AXLE_1125_2, //5Öá½ÂÁ´Áгµ + AXLE_TYPE_5AXLE_129, //5Öá½ÂÁ´Áгµ + AXLE_TYPE_5AXLE_1522, //5ÖáÈ«¹ÒÆû³µÁгµ + AXLE_TYPE_5AXLE_11222, //5ÖáÈ«¹ÒÆû³µÁгµ + //6Öá + AXLE_TYPE_6AXLE_159_1 = 0x0600, //6ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_6AXLE_159_2, //6ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_6AXLE_1155_1, //6ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_6AXLE_1155_2, //6ÖáÖÐÖÃÖá¹Ò³µÁгµ + AXLE_TYPE_6AXLE_159_3, //6Öá½ÂÁ´Áгµ + AXLE_TYPE_6AXLE_159_4, //6Öá½ÂÁ´Áгµ + AXLE_TYPE_6AXLE_1129, //6Öá½ÂÁ´Áгµ + AXLE_TYPE_6AXLE_11522_1, //6ÖáÈ«¹Ò³µ + AXLE_TYPE_6AXLE_11522_2, //6ÖáÈ«¹Ò³µ +}TRUCK_AXLE_MODEL; + +//Êշѹ«Â·³µÁ¾Í¨ÐзѳµÐÍ·ÖÀà +typedef enum _TOOLWAY_VEHICLE_TYPE +{ + TOOLWAY_RESULT_OTHER = 0, //δ֪ + TOOLWAY_PASSENGER_VEHICLE_CLASS_1_MINI = 1, //1Àà¿Í³µÎ¢ÐÍ + TOOLWAY_PASSENGER_VEHICLE_CLASS_1_SMALL = 2, //1Àà¿Í³µÐ¡ÐÍ + TOOLWAY_PASSENGER_VEHICLE_CLASS_2_MIDDLE = 3, //2Àà¿Í³µÖÐÐÍ + TOOLWAY_PASSENGER_VEHICLE_CLASS_2_TRAILER = 4, //2Àà¿Í³µ³ËÓóµÁгµ + TOOLWAY_PASSENGER_VEHICLE_CLASS_3_LARGR = 5, //3Àà¿Í³µ´óÐÍ + TOOLWAY_PASSENGER_VEHICLE_CLASS_4_LARGR = 6, //4Àà¿Í³µ´óÐÍ + TOOLWAY_GOODS_VEHICLE_CLASS_1 = 7, //1Àà»õ³µ2Öá + TOOLWAY_GOODS_VEHICLE_CLASS_2 = 8, //2Àà»õ³µ2Öá + TOOLWAY_GOODS_VEHICLE_CLASS_3 = 9, //3Àà»õ³µ3Öá + TOOLWAY_GOODS_VEHICLE_CLASS_4 = 10, //4Àà»õ³µ4Öá + TOOLWAY_GOODS_VEHICLE_CLASS_5 = 11, //5Àà»õ³µ5Öá + TOOLWAY_GOODS_VEHICLE_CLASS_6 = 12, //6Àà»õ³µ6Öá + TOOLWAY_MOTOR_VEHICLE_CLASS_1 = 13, //1Àà×÷Òµ³µ2Öá + TOOLWAY_MOTOR_VEHICLE_CLASS_2 = 14, //2Àà×÷Òµ³µ2Öá + TOOLWAY_MOTOR_VEHICLE_CLASS_3 = 15, //3Àà×÷Òµ³µ3Öá + TOOLWAY_MOTOR_VEHICLE_CLASS_4 = 16, //4Àà×÷Òµ³µ4Öá + TOOLWAY_MOTOR_VEHICLE_CLASS_5 = 17, //5Àà×÷Òµ³µ5Öá + TOOLWAY_MOTOR_VEHICLE_CLASS_6 = 18 //6Àà×÷Òµ³µ´óÓÚµÈÓÚ6Öá +}TOOLWAY_VEHICLE_TYPE; + +//³µÁ¾³ÆÖØ +typedef struct tagNET_DVR_VEHICLE_WEIGHT_RESULT_ +{ + BYTE byIsOverWeight; //ÊÇ·ñ³¬ÏÞ + BYTE byAxleNum; //ÖáÊý + WORD wAxleModel; //²Î¿¼ enum TRUCK_AXLE_MODEL,¿ÉÒÔ¸ù¾ÝÀàÐͽâÎö³öÖáµÄ¸öÊý + float fOverWeight; //³¬ÏÞÖØÁ¿(¶Ö)£¬Êµ¼ÊÖµÀ©´ó1000±¶´«Ê䣨ʵ¼ÊÖµ¾«È·µ½Ð¡ÊýµãºóÈý룩 + float fWeight; //³µÉíÖØÁ¿(¶Ö)£¬Êµ¼ÊÖµÀ©´ó1000±¶´«Ê䣨ʵ¼ÊÖµ¾«È·µ½Ð¡ÊýµãºóÈý룩 + float fLimitWeight; //ÏÞÖÆÖØÁ¿(¶Ö)£¬Êµ¼ÊÖµÀ©´ó1000±¶´«Ê䣨ʵ¼ÊÖµ¾«È·µ½Ð¡ÊýµãºóÈý룩 + float fAxleLen; //Öá¾à(Ã×)£¬Êµ¼ÊÖµÀ©´ó100±¶´«Ê䣨ʵ¼ÊÖµ¾«È·µ½Ð¡ÊýµãºóÁ½Î»£© + char sDevDescInfo[MAX_DEVDESC_LEN/*64*/]; //É豸ÃèÊöÐÅÏ¢ + WORD wAxleWeight[MAX_TRUCK_AXLE_NUM/*10*/]; //³µÖáÖØÁ¿£¬µ¥Î»Ç§¿Ë£¨kg£©µÚi¸öÔªËرíʾµÚi¸öÖáÖØ + WORD wAxleDistance[MAX_TRUCK_AXLE_NUM/*10*/]; //³µÖá¼ä¾à£¬µ¥Î»ºÁÃ×(mm).µÚi¸öÔªËرíʾµÚiÖáºÍµÚi+1ÖáµÄ¼ä¾à + DWORD dwLength; //³µ³¤£¬µ¥Î»cm + DWORD dwWidth; //³µ¿í£¬µ¥Î»cm + DWORD dwHeight; //³µ¸ß£¬µ¥Î»cm + BYTE byTollwayVehicleType; //Êշѹ«Â·³µÐÍ£¬²Î¿¼TOOLWAY_VEHICLE_TYPE + BYTE byRes2[11]; //Ô¤Áô +}NET_DVR_VEHICLE_WEIGHT_RESULT, *LPNET_DVR_VEHICLE_WEIGHT_RESULT; + +// ³µÅƼì²â½á¹û +typedef struct tagNET_DVR_PLATE_RESULT_V50 +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwMatchNo; //Æ¥ÅäÐòºÅ,ÓÉ(³µÁ¾ÐòºÅ,Êý¾ÝÀàÐÍ,³µµÀºÅ)×é³ÉÆ¥ÅäÂë + BYTE byGroupNum; //ͼƬ×éÊýÁ¿£¨Ò»Á¾¹ý³µÏà»ú¶à´Î×¥ÅĵÄÊýÁ¿£¬´ú±íÒ»×éͼƬµÄ×ÜÊý£¬ÓÃÓÚÑÓʱƥÅäÊý¾Ý£© + BYTE byPicNo; //Á¬ÅĵÄͼƬÐòºÅ£¨½ÓÊÕµ½Í¼Æ¬×éÊýÁ¿ºó£¬±íʾ½ÓÊÕÍê³É;½ÓÊÕ³¬Ê±²»×ãͼƬ×éÊýÁ¿Ê±£¬¸ù¾ÝÐèÒª±£Áô»òɾ³ý£© + BYTE bySecondCam; //ÊÇ·ñµÚ¶þÏà»ú×¥ÅÄ£¨ÈçÔ¶½ü¾°×¥ÅĵÄÔ¶¾°Ïà»ú£¬»òÇ°ºó×¥ÅĵĺóÏà»ú£¬ÌØÊâÏîÄ¿ÖлáÓõ½£© + BYTE byFeaturePicNo; //´³ºìµÆµç¾¯£¬È¡µÚ¼¸ÕÅͼ×÷ΪÌØдͼ,0xff-±íʾ²»È¡ + BYTE byDriveChan; //´¥·¢³µµÀºÅ + BYTE byVehicleType; //³µÁ¾ÀàÐÍ£¬²Î¿¼VTR_RESULT + BYTE byDetSceneID;//¼ì²â³¡¾°ºÅ[1,4], IPCĬÈÏÊÇ0 + //³µÁ¾ÊôÐÔ£¬°´Î»±íʾ£¬0- ÎÞ¸½¼ÓÊôÐÔ(ÆÕͨ³µ)£¬bit1- »Æ±ê³µ(ÀàËÆÄê¼ìµÄ±êÖ¾)£¬bit2- ΣÏÕÆ·³µÁ¾£¬Öµ£º0- ·ñ£¬1- ÊÇ + //¸Ã½ÚµãÒѲ»ÔÙʹÓÃ,ʹÓÃÏÂÃæµÄbyYellowLabelCarºÍbyDangerousVehiclesÅжÏÊÇ·ñ»Æ±ê³µºÍΣÏÕÆ·³µ + BYTE byVehicleAttribute; + WORD wIllegalType; //Î¥ÕÂÀàÐͲÉÓùú±ê¶¨Òå + BYTE byIllegalSubType[8]; //Î¥ÕÂ×ÓÀàÐÍ + BYTE byPostPicNo; //Î¥ÕÂʱȡµÚ¼¸ÕÅͼƬ×÷Ϊ¿¨¿Úͼ,0xff-±íʾ²»È¡ + BYTE byChanIndex; //ͨµÀºÅ£¨±£Áô£© + WORD wSpeedLimit; //ÏÞËÙÉÏÏÞ£¨³¬ËÙʱÓÐЧ£© + BYTE byChanIndexEx; //byChanIndexEx*256+byChanIndex±íʾÕæʵͨµÀºÅ¡£ + BYTE byVehiclePositionControl; /*³µÁ¾Î»Öò¼¿Ø±êÖ¾,0~ΪÆÕͨ³µÅÆʶ±ð±¨¾¯,1~Ϊ³µÁ¾Î»Öò¼¿Ø´¥·¢±¨¾¯ + (¼´Í¨¹ýPUT /ISAPI/Traffic/channels//vehiclePositionControl?format=json´¥·¢)*/ + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ + BYTE byMonitoringSiteID[48]; //¼à²âµã±àºÅ + BYTE byDeviceID[48]; //É豸±àºÅ + BYTE byDir; //¼à²â·½Ïò£¬1-ÉÏÐУ¨·´Ïò£©£¬2-ÏÂÐÐ(ÕýÏò)£¬3-Ë«Ïò£¬4-Óɶ«ÏòÎ÷£¬5-ÓÉÄÏÏò±±,6-ÓÉÎ÷Ïò¶«£¬7-Óɱ±ÏòÄÏ£¬8-ÆäËü + BYTE byDetectType; //¼ì²â·½Ê½,1-µØ¸Ð´¥·¢£¬2-ÊÓƵ´¥·¢£¬3-¶à֡ʶ±ð£¬4-À×´ï´¥·¢ + //¹ØÁª³µµÀ·½ÏòÀàÐÍ£¬²Î¿¼ITC_RELA_LANE_DIRECTION_TYPE + //¸Ã²ÎÊýΪ³µµÀ·½Ïò²ÎÊý£¬Óë¹ØÁª³µµÀºÅ¶ÔÓ¦£¬È·±£³µµÀΨһÐÔ¡£ + BYTE byRelaLaneDirectionType; + BYTE byCarDirectionType; //³µÁ¾¾ßÌåÐÐÊ»µÄ·½Ïò£¬0±íʾ´ÓÉÏÍùÏ£¬1±íʾ´ÓÏÂÍùÉÏ£¨¸ù¾Ýʵ¼Ê³µÁ¾µÄÐÐÊ»·½ÏòÀ´µÄÇø·Ö£©,2±íʾδ֪ + //µ±wIllegalType²ÎÊýΪ¿Õʱ£¬Ê¹ÓøòÎÊý¡£ÈôwIllegalType²ÎÊýΪÓÐֵʱ£¬ÒÔwIllegalType²ÎÊýΪ׼£¬¸Ã²ÎÊýÎÞЧ¡£ + DWORD dwCustomIllegalType; //Î¥ÕÂÀàÐͶ¨Òå(Óû§×Ô¶¨Òå) + /*Ϊ0~Êý×Ö¸ñʽʱ£¬ÎªÀϵÄÎ¥ÕÂÀàÐÍ£¬wIllegalType¡¢dwCustomIllegalType²ÎÊýÉúЧ£¬¸³Öµ¹ú±êÎ¥·¨´úÂë¡£ + Ϊ1~×Ö·û¸ñʽʱ£¬pIllegalInfoBuf²ÎÊýÉúЧ¡£ÀϵÄÎ¥ÕÂÀàÐÍ£¬wIllegalType¡¢dwCustomIllegalType²ÎÊýÒÀÈ»¸³Öµ¹ú±êÎ¥·¨´úÂë*/ + BYTE* pIllegalInfoBuf; //Î¥·¨´úÂë×Ö·ûÐÅÏ¢½á¹¹ÌåÖ¸Õ룻ָÏòNET_ITS_ILLEGAL_INFO + BYTE byIllegalFromatType; //Î¥ÕÂÐÅÏ¢¸ñʽÀàÐÍ£» 0~Êý×Ö¸ñʽ£¬ 1~×Ö·û¸ñʽ + BYTE byPendant;// 0-±íʾδ֪,1-³µ´°ÓÐÐü¹ÒÎ2-³µ´°ÎÞÐü¹ÒÎï + BYTE byDataAnalysis; //0-Êý¾Ýδ·ÖÎö, 1-Êý¾ÝÒÑ·ÖÎö + BYTE byYellowLabelCar; //0-±íʾδ֪, 1-·Ç»Æ±ê³µ,2-»Æ±ê³µ + BYTE byDangerousVehicles; //0-±íʾδ֪, 1-·ÇΣÏÕÆ·³µ,2-ΣÏÕÆ·³µ + //ÒÔÏÂ×ֶΰüº¬Pilot×Ö·û¾ùΪÖ÷¼ÝÊ»£¬º¬Copilot×Ö·û¾ùΪ¸±¼ÝÊ» + BYTE byPilotSafebelt;//0-±íʾδ֪,1-ϵ°²È«´ø,2-²»Ïµ°²È«´ø + BYTE byCopilotSafebelt;//0-±íʾδ֪,1-ϵ°²È«´ø,2-²»Ïµ°²È«´ø + BYTE byPilotSunVisor;//0-±íʾδ֪,1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byCopilotSunVisor;//0-±íʾδ֪, 1-²»´ò¿ªÕÚÑô°å,2-´ò¿ªÕÚÑô°å + BYTE byPilotCall;// 0-±íʾδ֪, 1-²»´òµç»°,2-´òµç»° + //0-¿ªÕ¢£¬1-δ¿ªÕ¢ (רÓÃÓÚÀúÊ·Êý¾ÝÖÐÏà»ú¸ù¾ÝÃûµ¥Æ¥Åäºó£¬ÊÇ·ñ¿ªÕ¢³É¹¦µÄ±êÖ¾) + BYTE byBarrierGateCtrlType; + BYTE byAlarmDataType;//0-ʵʱÊý¾Ý£¬1-ÀúÊ·Êý¾Ý + NET_DVR_TIME_V30 struSnapFirstPicTime;//¶Ëµãʱ¼ä(ms)£¨×¥ÅĵÚÒ»ÕÅͼƬµÄʱ¼ä£© + DWORD dwIllegalTime;//Î¥·¨³ÖÐøʱ¼ä£¨ms£© = ×¥ÅÄ×îºóÒ»ÕÅͼƬµÄʱ¼ä - ×¥ÅĵÚÒ»ÕÅͼƬµÄʱ¼ä + DWORD dwPicNum; //ͼƬÊýÁ¿£¨ÓëpicGroupNum²»Í¬£¬´ú±í±¾ÌõÐÅÏ¢¸½´øµÄͼƬÊýÁ¿£¬Í¼Æ¬ÐÅÏ¢ÓÉstruVehicleInfoEx¶¨Òå + NET_ITS_PICTURE_INFO struPicInfo[6]; //ͼƬÐÅÏ¢,µ¥ÕŻص÷£¬×î¶à6ÕÅͼ£¬ÓÉÐòºÅÇø·Ö + NET_DVR_VEHICLE_WEIGHT_RESULT struWeightResult; //³µÁ¾³ÆÖØ + BYTE byRes[256]; //Ô¤Áô +}NET_DVR_PLATE_RESULT_V50, *LPNET_DVR_PLATE_RESULT_V50; + + +typedef struct _NET_DVR_NORMAL_SCHEDTIME_ +{ + NET_DVR_SCHEDTIME struTime; + BYTE byAlarmType;//0-Íâ³ö²¼·À£¬1-ÁôÊز¼·À£¬2-¼´Ê±²¼·À + BYTE byRes[3]; +}NET_DVR_NORMAL_SCHEDTIME,*LPNET_DVR_NORMAL_SCHEDTIME; + +typedef struct tagNET_DVR_SUBSYSTEM_ALARM +{ + DWORD dwSize; + NET_DVR_NORMAL_SCHEDTIME struNormalSchedtime[MAX_DAYS][MAX_TIMESEGMENT_V30]; + //ÈÕ³£¼Æ»®²¼·Àʱ¼ä¶Î + BYTE byNormalSchedTimeOn; //ÈÕ³£¼Æ»®ÊÇ·ñÆôÓà + BYTE byMandatoryAlarm;//0-·ÇÇ¿ÖƲ¼·À£¬1-Ç¿ÖƲ¼·À Ö¸µ±·ÀÇøÓÐÎÊÌâÊÇÊÇ·ñΪÅÔ·²¼·À + BYTE byRes[254]; +}NET_DVR_SUBSYSTEM_ALARM,*LPNET_DVR_SUBSYSTEM_ALARM; + + +#define MAX_ALLOWLIST_PHONE_NUM 16 + +typedef struct _NET_DVR_ALARM_PHONECFG +{ + DWORD dwSize; + BYTE byEnable;//ÊÇ·ñÆôÓà 0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; + BYTE byPhoneNumber[MAX_PHONE_NUM/*32*/]; + DWORD dwArmRight; //²¼·ÀȨÏÞ£¬°´Î»£¬bit0Ϊ1±íʾ¶Ô×Óϵͳ1Óв¼·ÀȨÏÞ£¬ÒÀ´ËÀàÍÆ + DWORD dwDisArmRight; //³··ÀȨÏÞ£¬°´Î»£¬bit0Ϊ1±íʾ¶Ô×Óϵͳ1Óг··ÀȨÏÞ£¬ÒÀ´ËÀàÍÆ + DWORD dwClearAlarmRight; //Ïû¾¯È¨ÏÞ£¬°´Î»£¬bit0Ϊ1±íʾ¶Ô×Óϵͳ1ÓÐÏû¾¯È¨ÏÞ£¬ÒÀ´ËÀàÍÆ + BYTE byZoneReport[MAX_ALARMHOST_ALARMIN_NUM/*512*/]; //·ÀÇø±¨¸æÀàÐÍ£¬0-²»ÉÏ´«£¬1-ÉÏ´« + DWORD dwNonZoneReport; //·Ç·ÀÇø±¨¾¯±¨¸æ bit0-Èí·ÀÇø±¨¸æ bit1-ϵͳ״̬±¨¸æ bit2-È¡Ïû±¨¸æ bit3-²âÊÔ±¨¸æ,bit4-²¼·À±¨¸æ bit5-³··À±¨¸æ bit6-Ю³Ö±¨¸æ bit7-±¨¾¯»Ö¸´±¨¸æ bit8-ÅÔ·±¨¸æ bit9-ÅÔ·»Ö¸´±¨¸æ,bit10-̽²âÆ÷Á¬½Ó״̬±¨¸æ£¨ÉÏÏß¡¢ÀëÏߣ©,bit11-̽²âÆ÷µçÁ¿×´Ì¬±¨¸æ£¨µçѹÕý³£¡¢Ç·Ñ¹£©,bit12-ÊÓƵ±¨¾¯±¨¸æ + BYTE byIntervalTime; //0-0s,1-10s,2-30s,3-1min,4-5min,5-10min,6-×Ô¶¨Ò壨1~5999s£© + BYTE byRes2; + WORD wDefineIntervalTime; //µ±byIntervalTimeΪ6ʱÓÐЧ£¬×Ô¶¨Òåʱ¼ä£¨1~5999s£© + BYTE byRes3[128]; +}NET_DVR_ALARM_PHONECFG, *LPNET_DVR_ALARM_PHONECFG; + +typedef struct tagNET_DVR_MODULE_INFO +{ + DWORD dwSize; + BYTE byModuleType; //Íâ½Ó´¥·¢Æ÷ÀàÐÍ£¬1-¼üÅÌ£¬2-´¥·¢Æ÷£¬3-·ÀÇø £¬4-ÍøÂçÄ£¿é + BYTE byKeyBoardType; //1-LCD,2-LED + BYTE byTriggerType; // 1-±¾µØ´¥·¢Æ÷£¬ 2-4·´¥·¢Æ÷£¬3-8·´¥·¢Æ÷£¬4-µ¥·ÀÇø´¥·¢Æ÷£¬5-32·´¥·¢Æ÷ + BYTE byZoneType; //·ÀÇøÀàÐÍ£¬1-±¾µØ·ÀÇø£¬2-µ¥·ÀÇø£¬3-Ë«·ÀÇø£¬4-8·ÀÇø£¬5-8·ģÄâÁ¿·ÀÇø, 6-µ¥·ÀÇø´¥·¢Æ÷ + WORD wModuleAddress; //Íâ½Ó´¥·¢Æ÷µØÖ·£¬À©Õ¹Ä£¿é´Ó0~255£¬0xFFFF±íʾÎÞЧ + BYTE byRes2[2]; //±£Áô + char sModelInfo[32]; //Ä£¿éÐÅÏ¢ + char sDeviceVersionInfo[32]; //°æ±¾ÐÅÏ¢ + BYTE byRes[128]; //±£Áô +}NET_DVR_MODULE_INFO,*LPNET_DVR_MODULE_INFO; + +typedef struct tagNET_DVR_ALARMHOST_DETECTOR_INFO +{ + DWORD dwSize; + BYTE byDetectorSerialNo[16]; //̽²âÆ÷ÐòÁкŠ+ DWORD dwAlarmIn; //·ÀÇøºÅ + WORD wDetectorType; // ̽²âÆ÷ÀàÐÍ£¬DETECTOR_TYPE + BYTE byRes[126]; //±£Áô +}NET_DVR_ALARMHOST_DETECTOR_INFO, *LPNET_DVR_ALARMHOST_DETECTOR_INFO; + +typedef struct tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 +{ + BYTE byEnable;// 0- ·ñ£¬1- ÊÇ + BYTE byRes1[3]; + NET_DVR_SCHEDDATE struDate; + NET_DVR_OUTPUT_SCHEDULE struOutputSchedule[MAX_TIMESEGMENT_V30/*8*/]; + BYTE byTriggerIndex[MAX_ALARMHOST_ALARMOUT_NUM];//ϱê±íʾ´¥·¢Æ÷ºÅ£¬Öµ0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes2[64]; +}NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40,*LPNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40; +//ʱ¿ØÊä³ö¹æÔò²ÎÊý +typedef struct tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40 +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 struOutputRule[MAX_RULE_NUM/*8*/]; //×î¶àÖ§³Ö8¸öÈÕÆÚÇø¶ÎµÄ¹æÔòÅäÖ㬶ÔÓÚ¶¨Ê±¿ª/¹Ø´¥·¢Æ÷Ö»ÐèҪʹÓÃÒ»¸öÈÕÆÚÇø¶Î¾Í¿ÉÒÔÁË + BYTE byRes[64]; //±£Áô +}NET_DVR_OUTPUT_SCHEDULE_RULECFG_V40,*LPNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40; + +//µ¥¸öʱ¿ØÊä³ö¹æÔòÅäÖà +typedef struct tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40 +{ + DWORD dwSize; + NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 struOutputRule; + BYTE byRes[256]; //±£Áô +}NET_DVR_ONE_OUTPUT_SCH_RULECFG_V40,*LPNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40; + +typedef struct tagNET_DVR_ALARM_CAPTRUE_CFG +{ + DWORD dwSize; + BYTE byBeforeAlarmPic; //¶ÔÓ¦·Ö±æÂÊÏ¿ÉÉèÖñ¨¾¯Ç°Í¼Æ¬×î´óÊý4CIF£º10ÕÅ£¬2CIF£º20ÕÅ£¬CIF£º40ÕÅ£¬QCIF£º80ÕÅ£»WD1:10ÕÅ,XVGA:10ÕÅ,720P:10ÕÅ,1080P:10ÕÅ + BYTE byAfterAlarmPic; //¶ÔÓ¦·Ö±æÂÊÏ¿ÉÉèÖñ¨¾¯ºóͼƬ×î´óÊý 4CIF£º10ÕÅ£¬2CIF£º20ÕÅ£¬CIF£º40ÕÅ£¬QCIF£º80ÕÅ£»WD1:10ÕÅ,XVGA:10ÕÅ,720P:10ÕÅ,1080P:10ÕÅ + WORD wInterval; //¼ä¸ôʱ¼ä µ¥Î»s + BYTE byResolution; //ͼƬ·Ö±æÂÊ1-CIF£¬2-2CIF£¬3-4CIF£¬4-QCIF£¬5-WD1£¬6-VGA,7-XVGA£¬8-720P£¬9-1080P + BYTE byRes[63]; // ±£Áô×Ö½Ú +}NET_DVR_ALARM_CAPTRUE_CFG, *LPNET_DVR_ALARM_CAPTRUE_CFG; + +#define PRIOR_SCHEDTIME 30 + +typedef struct _NET_DVR_PRIOR_SCHEDTIME_ +{ + DWORD dwSize; + NET_DVR_SCHEDDATE struData; + NET_DVR_NORMAL_SCHEDTIME struOneDayTime[8]; + BYTE byEnable; //ÊÇ·ñÆôÓà 0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; + BYTE bySubSystem[32];//×Óϵͳ£¬Ï±ê±íʾ×ÓϵͳºÅ 0-²»Ö§³Ö£¬1-Ö§³Ö + BYTE byMandatoryAlarm;//0-·ÇÇ¿ÖƲ¼·À£¬1-Ç¿ÖƲ¼·À Ö¸µ±·ÀÇøÓÐÎÊÌâÊÇÊÇ·ñΪÅÔ·²¼·À + BYTE byRes[63]; +}NET_DVR_PRIOR_SCHEDTIME,*LPNET_DVR_PRIOR_SCHEDTIME; + +typedef struct tagNET_DVR_TAMPER_ALARMIN_PARAM +{ + DWORD dwSize; + BYTE byTamperType; // 0-ÎÞ,1-³£¿ª£¬2-³£±Õ + BYTE byUploadAlarmRecoveryReport; //ÊÇ·ñÉÏ´«·ÀÇø±¨¾¯»Ö¸´±¨¸æ£¬0-²»ÉÏ´«£¬1-ÉÏ´« + BYTE byRes1[2]; + BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; //·ÀÇø¹ØÁª´¥·¢Æ÷ BYTE byAssociateSirenOut[8]; //¾¯ºÅÊä³ö Êý×é0 ±íʾ¾¯ºÅ1 ֵΪ1±íʾÊä³ö 0 ±íʾ²»Êä³ö + BYTE byAssociateSirenOut[8]; //¾¯ºÅÊä³ö Êý×é0 ±íʾ¾¯ºÅ1 ֵΪ1±íʾÊä³ö 0 ±íʾ²»Êä³ö + BYTE byTamperResistor; //·À²ðµç×裬µ¥Î»Ç§Å· £¬ 0-ÎÞЧ 1-2.2 £¬2--3.3, 3-4.7 £¬4-5.6 £¬ 5-8.2 £¬0xff-×Ô¶¨Òå + BYTE byRes2[3]; + float fTamperResistorManual;/*·À²ðÊÖ¶¯µç×裬1.0-10.0£¬¾«È·µ½Ð¡Êýµãºóһ룬µ¥Î»Ç§Å·£¬byTamperResistorΪ0xffʱÓÐЧ*/ + BYTE byRes3[36]; // ±£Áô×Ö½Ú +}NET_DVR_TAMPER_ALARMIN_PARAM, *LPNET_DVR_TAMPER_ALARMIN_PARAM; + + +typedef struct tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG +{ + DWORD dwSize; + BYTE byEnable; + BYTE byAssociateNetUser;//¹ØÁªµÄÍøÂçÓû§±àºÅ + WORD wRemoteCtrllerID;//Ò£¿ØÆ÷ºÅ ´Ó1¿ªÊ¼ + BYTE sDevSn[16];/*²úÆ·ÐòÁкÅ*/ + BYTE byArmRight; /*0-ÎÞ²¼·ÀȨÏÞ£¬1-Óв¼·ÀȨÏÞ*/ + BYTE byDisArmRight; /*0-ÎÞ³··ÀȨÏÞ£¬1-Óг··ÀȨÏÞ*/ + BYTE byArmReportRight; /*0-ÎÞ´«²¼·À±¨¸æȨÏÞ£¬1-Óд«²¼·À±¨¸æȨÏÞ*/ + BYTE byDisArmReportRight;/*0-ÎÞÉÏ´«³··À±¨¸æȨÏÞ£¬1-ÓÐÉÏ´«³··À±¨¸æȨÏÞ*/ + BYTE byClearAlarmRight; /*0-ÎÞÏû¾¯È¨ÏÞ£¬1-ÓÐÏû¾¯È¨ÏÞ*/ + BYTE bySubSystemID; /* É豸(Ò£¿ØÆ÷)×ÓϵͳºÅ,1~8 */ + BYTE byKeyboardAddr; /* ½ÓÊÕ¼üÅ̵ĵØÖ·,ÔÚÅä¶ÔʱÉèÖà */ + BYTE byEnableDel; //ɾ³ýÒ£¿ØÆ÷Óû§£¬0-½ûÓÃɾ³ý£¬1-ÆôÓÃɾ³ý + BYTE byAlwaysOpenRight; /*ÊÇ·ñÔÊÐí³£¿ª£º0-ÎÞЧ£¬1-²»ÔÊÐí£¬2-ÔÊÐí*/ + BYTE byOpeningDirection; /*¿ªÃÅ·½Ïò£º0-ÎÞЧ£¬1-½øÃÅ·½Ïò£¬2-³öÃÅ·½Ïò*/ + BYTE byRes3[2]; + BYTE byName[NAME_LEN]; //Ò£¿ØÆ÷Ãû³Æ + BYTE byRes2[28]; +}NET_DVR_REMOTECONTROLLER_PERMISSION_CFG, *LPNET_DVR_REMOTECONTROLLER_PERMISSION_CFG; + + +typedef struct tagNET_DVR_KEYBOARD_CFG +{ + DWORD dwSize; + BYTE byEnableLock; //ÊÇ·ñÆôÓüüÅÌËø¶¨,0--²»ÆôÓÃ, 1--ÆôÓà + BYTE byErrorTimes; //ÊäÈë¼üÅÌÓû§ÃÜÂë´íÎó´ÎÊý£¨Ëø¶¨¼üÅÌ£© + WORD wLockTime; //Ëø¶¨¼üÅÌʱ¼ä£¬µ¥Î»Ãë + BYTE byRes[128]; +}NET_DVR_KEYBOARD_CFG, *LPNET_DVR_KEYBOARD_CFG; + + +typedef struct tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND +{ + DWORD dwSize; + BYTE byCommOperatorNum[NAME_LEN/*32*/];//ͨÐÅÔËÓªÉ̺ÅÂë + BYTE byQueryCode[16];//ÒµÎñ²éѯ´úÂë + BYTE byBusinessType;//ÒµÎñÀàÐÍ 0-»°·Ñ£¬1-Á÷Á¿ + BYTE byRes[35]; +}NET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND, *LPNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND; + +typedef struct tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO +{ + DWORD dwSize; + BYTE by3GBusiness[1024];//3GÒµÎñͨ¹ý¶ÌÐŲéѯ + BYTE byRes[32]; +}NET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO, *LPNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO; + +typedef struct tagNET_DVR_PREVIEW_DELAY_CFG +{ + DWORD dwSize; + WORD wdelayTime;//ÑÓ³ÙÔ¤ÀÀʱ¼ä£¬µ¥Î»£ºÃë + BYTE byRes[130]; +}NET_DVR_PREVIEW_DELAY_CFG, *LPNET_DVR_PREVIEW_DELAY_CFG; + +typedef struct tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM +{ + DWORD dwSize; + DWORD dwDevNo; //É豸ºÅ + BYTE byDevType; //Éý¼¶É豸ÀàÐÍ 0-¼üÅÌ,1-»úо,2-ÍøÂçÄ£¿é,3-·ÓÉÆ÷ £¬4-·ÀÇø£¬5-RS485ÎÞÏßÀ©Õ¹Ä£¿é£¬6-οØÄ£¿é£¬7-µçËøÄ£¿é,8-Íø¿Ú¹©µçÄ£¿é + BYTE byRes[131]; +}NET_DVR_AUXILIARY_DEV_UPGRADE_PARAM,*LPNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM; + +typedef struct tagNET_DVR_CALL_ROOM_CFG +{ + DWORD dwSize; + SHORT nFloorNumber; //²ãºÅ + WORD wRoomNumber; //·¿¼äºÅ + BYTE byManageCenter; //ÊÇ·ñºô½Ð¹ÜÀíÖÐÐÄ + BYTE byRes1[3]; + BYTE byCalledName[64]; //±ê×¼sipģʽÏÂÓÐЧ£¬±»½ÐÓû§Ãû, Ö§³ÖÊý×Ö¡¢×Öĸ¡¢¡°@¡±ºÍ¡°.¡± + BYTE byRes[60]; +}NET_DVR_CALL_ROOM_CFG,*LPNET_DVR_CALL_ROOM_CFG; + +typedef struct tagNET_DVR_VIDEO_CALL_COND +{ + DWORD dwSize; + BYTE byRes[128]; +}NET_DVR_VIDEO_CALL_COND,*LPNET_DVR_VIDEO_CALL_COND; + +//ÉóѶ°¸¼þÐÅÏ¢ +typedef struct tagNET_DVR_INQUEST_CASE_INFO +{ + DWORD dwSize; + BYTE sCaseNo[INQUEST_CASE_NO_LEN]; //°¸¼þ±àºÅ + BYTE sCaseName[INQUEST_CASE_NAME_LEN]; //°¸¼þÃû³Æ£» + BYTE sCustomInfo1[CUSTOM_INFO_LEN]; //×Ô¶¨ÒåÐÅÏ¢1£» + BYTE sCustomInfo2[CUSTOM_INFO_LEN]; //×Ô¶¨ÒåÐÅÏ¢2£» + BYTE sCustomInfo3[CUSTOM_INFO_LEN]; //×Ô¶¨ÒåÐÅÏ¢3 + BYTE byShowCaseInfoTime; /* °¸¼þÐÅÏ¢ÏÔʾʱ¼ä,µ¥Î»Ãë, È¡Öµ·¶Î§1~60Ãë*/ + BYTE byShowCaseInfo; //°¸¼þ¿ªÊ¼ÊÇ·ñÏÔʾ°¸¼þÐÅÏ¢£¬0-²»ÏÔʾ£¬1-ÏÔʾ + BYTE byPosition; //°¸¼þÏÔʾλÖã¬0-×óÉÏ£¬1-×óÏ + BYTE byRes1; //±£Áô + BYTE byCustomInfo4[CUSTOM_INFO_LEN]; //×Ô¶¨ÒåÐÅÏ¢4£¬°¸¼þ±àºÅÓÐÄÚÈÝʱ¸Ã×Ö¶ÎÎÞЧ + BYTE byCustomInfo5[CUSTOM_INFO_LEN]; //×Ô¶¨ÒåÐÅÏ¢5£¬°¸¼þÃû³ÆÓÐÄÚÈÝʱ¸Ã×Ö¶ÎÎÞЧ + BYTE byRes[128]; //±£Áô +}NET_DVR_INQUEST_CASE_INFO, *LPNET_DVR_INQUEST_CASE_INFO; + +typedef struct tagNET_DVR_CASE_INFO_CTRL_PARA +{ + DWORD dwSize; + DWORD dwChannel;//ÉóѶͨµÀºÅ + BYTE byShowCaseInfoTime; //ÏÔʾ³ÖÐøʱ¼ä + BYTE byRes[131]; +}NET_DVR_CASE_INFO_CTRL_PARAM, *LPNET_DVR_CASE_INFO_CTRL_PARA; + +typedef struct tagNET_DVR_INQUEST_USER_RIGHT_CFG +{ + DWORD dwSize; + /*Êý×é0: ÉóѶ¼Ç¼ɾ³ýȨÏÞ*/ + BYTE byLocalRight[MAX_RIGHT]; /* ±¾µØȨÏÞ */ + /*Êý×é0: Ô¶³ÌÒôƵԤÀÀȨÏÞ*/ + BYTE byRemoteRight[MAX_RIGHT];/* Ô¶³ÌȨÏÞ */ + BYTE byNetAudioRight[MAX_CHANNUM_V40]; /* Ô¶³ÌÒôƵԤÀÀȨÏÞ£¬Êý×éϱê±íʾͨµÀ£¬Öµ±íʾÓÐÎÞȨÏÞ£¬0-ÎÞȨÏÞ£¬1-ÓÐȨÏÞ*/ + BYTE byRes[512*9]; //±£Áô9ÖÖȨÏÞ¿ÉÀ©Õ¹ +}NET_DVR_INQUEST_USER_RIGHT_CFG, *LPNET_DVR_INQUEST_USER_RIGHT_CFG; + +typedef struct tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓûìÒô£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; //±£Áô + DWORD dwMixCnt; /*»ìÒôµÄͨµÀÊý*/ + BYTE bySrcChan[MAX_MIX_CHAN_NUM]; /*Êý×éϱê±íʾ»ìÒôͨµÀºÅ£¨Ä£ÄâͨµÀ¡¢IPͨµÀ£©,ÊýÖµ0±íʾ²»»ì£¬ÊýÖµ1±íʾ»ìÈë*/ + BYTE byLineIn[MAX_LINE_IN_CHAN_NUM]; /*Êý×éϱê±íʾ»ìÈëLine InͨµÀºÅ,ÊýÖµ0±íʾ²»»ì£¬ÊýÖµ1±íʾ»ìÈë*/ + BYTE byMic[MAX_MIC_CHAN_NUM]; /*Êý×éϱê±íʾ»ìÈëMicͨµÀºÅ,ÊýÖµ0±íʾ²»»ì£¬ÊýÖµ1±íʾ»ìÈë*/ + BYTE byMixAudioDelay; //»ìÒôÑÓ³Ù£¬µ¥Î»£ºÖ¡£¬·¶Î§0-63 + BYTE byRes2[127]; //±£Áô +}NET_DVR_INQUEST_MIX_AUDIOIN_CFG, *LPNET_DVR_INQUEST_MIX_AUDIOIN_CFG; + +typedef struct tagNET_DVR_FACECAPTURE_STATISTICS_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + NET_DVR_TIME_EX struStartTime; //¿ªÊ¼Ê±¼ä + BYTE byReportType; //ͳ¼Æ±¨±íÀàÐÍ£º1-ÈÕ±¨±í£¬2-Öܱ¨±í£¬3-Ô±¨±í£¬4-Ä걨±í + BYTE byStatType; //Êý¾ÝÀàÐÍͳ¼Æ£ºBit0-ÄêÁä¶Î£¬Bit1-ÐÔ±ð£¬Bit2-ÈËÊý + BYTE byEnableProgramStatistics; //ÊÇ·ñ°´½ÚĿͳ¼Æ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1; + DWORD dwPlayScheduleNo; //°´½ÚĿͳ¼Æʱ¹ØÁªµÄÈճ̺Š+ BYTE byRes[120]; +}NET_DVR_FACECAPTURE_STATISTICS_COND,*LPNET_DVR_FACECAPTURE_STATISTICS_COND; + +typedef struct tagNET_DVR_AGEGROUP_PARAM_ +{ + DWORD dwTeenage;//ÉÙÄ꣨ÈËÊý£© + DWORD dwYouth;//ÇàÄ꣨ÈËÊý£© + DWORD dwMidLife;//ÖÐÄ꣨ÈËÊý£© + DWORD dwElderly;//ÀÏÄ꣨ÈËÊý£© + DWORD dwChild;//¶ùͯ£¨ÈËÊý£© + DWORD dwAdolescent;//ÇàÉÙÄ꣨ÈËÊý£© + DWORD dwPrime;//׳Ä꣨ÈËÊý£© + DWORD dwMidage;//ÖÐÀÏÄ꣨ÈËÊý£© + BYTE byRes[48]; +}NET_DVR_AGEGROUP_PARAM, *LPNET_DVR_AGEGROUP_PARAM; + +typedef struct tagNET_DVR_FILECOND_MEDICAL +{ + LONG lChannel;//ͨµÀºÅ + DWORD dwFileType;//¼ÏóÎļþÀàÐÍ + //²»´ø¿¨ºÅ£¬0xff£­È«²¿£¬0£­¶¨Ê±Â¼Ïñ,1-Òƶ¯Õì²â £¬2£­±¨¾¯´¥·¢£¬3-±¨¾¯|Òƶ¯Õì²â 4-±¨¾¯&Òƶ¯Õì²â 5-ÃüÁî´¥·¢ 6-ÊÖ¶¯Â¼Ïñ,7-ÖÇÄܼÏñ£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ£¬14-ÖÇÄܽ»Í¨Ê¼þ + //´ø¿¨ºÅ£¬0xff£­È«²¿£¬0£­¶¨Ê±Â¼Ïñ£¬1-Òƶ¯Õì²â£¬2£­½Ó½ü±¨¾¯£¬3£­³ö³®±¨¾¯£¬4£­½ø³®±¨¾¯£¬5-ÃüÁî´¥·¢£¬6£­ÊÖ¶¯Â¼Ïñ£¬7£­Õ𶯱¨¾¯£¬8-»·¾³±¨¾¯£¬9-ÖÇÄܱ¨¾¯£¬10-PIR±¨¾¯£¬11-ÎÞÏß±¨¾¯£¬12-ºô¾È±¨¾¯£¬13-È«²¿Ê¼þ£¬14-ÖÇÄܽ»Í¨Ê¼þ + DWORD dwIsLocked;//ÊÇ·ñËø¶¨ 0-Õý³£Îļþ,1-Ëø¶¨Îļþ, 0xff±íʾËùÓÐÎļþ + DWORD dwUseCardNo;//ÊÇ·ñʹÓÿ¨ºÅ + BYTE sCardNumber[32];//¿¨ºÅ + NET_DVR_TIME_SEARCH_COND struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME_SEARCH_COND struStopTime;//½áÊøʱ¼ä + char szPatientID[64]; + DWORD dwBigFileType; // 0ΪÆÕͨƬ¶ÎËÑË÷£¬1Ϊ´óÎļþËÑË÷ + BYTE byRes[252]; +}NET_DVR_FILECOND_MEDICAL, *LPNET_DVR_FILECOND_MEDICAL; + +typedef struct tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM +{ + DWORD dwSize; // ½á¹¹Ìå´óС + LONG lChannel; // ͨµÀºÅ + /* ²éÕÒµÄͼƬÀàÐÍ:0¶¨Ê±×¥Í¼1 Òƶ¯Õì²âץͼ 2 ±¨¾¯×¥Í¼£¬ + 3 ±¨¾¯ | Òƶ¯Õì²âץͼ 4 ±¨¾¯ & Òƶ¯Õì²âץͼ 6 ÊÖ¶¯×¥Í¼ , + 9-ÖÇÄÜͼƬ,10- PIR±¨¾¯£¬11- ÎÞÏß±¨¾¯£¬12- ºô¾È±¨¾¯, + 0xa Ô¤ÀÀʱ½Øͼ£¬0xd ÈËÁ³Õì²â, 0xe Ô½½çÕì²â£¬0xf ÈëÇÖÇøÓòÕì²â£¬ + 0x10 ³¡¾°±ä¸üÕì²â, 0x11-É豸±¾µØ»Ø·Åʱ½Øͼ, 0x12-ÖÇÄÜÕì²â, + 0x13-½øÈëÇøÓòÕì²â,0x14-À뿪ÇøÓòÕì²â,0x15-ÅÇ»²Õì²â, + 0x16-ÈËÔ±¾Û¼¯Õì²â,0x17-¿ìËÙÔ˶¯Õì²â,0x18-Í£³µÕì²â, + 0x19-ÎïÆ·ÒÅÁôÕì²â,0x1a-ÎïÆ·ÄÃÈ¡Õì²â, 0x1b-³µÅÆÕì²â, + 0x1c-»ìÐмì²â,0x1d-ȡ֤ʼþ,0x1e-»ðµã¼ì²â,0x1f-·ÀÆÆ»µ¼ì²â, + 0x20-´¬Ö»¼ì²â£¬0x21-²âÎÂÔ¤¾¯£¬0x22-²âα¨¾¯, 0x23²â²î±¨¾¯, 0x24Υͣ¼ì²â,0x25-ÈËÁ³×¥ÅÄ,0x26-ÀëÏß²âα¨¾¯,0x2a-ÆðÉí¼ì²â,0x2b-ÕÛÏßÅʸß,0x2c-Èç²Þ³¬Ê±,0x2d-°²È«Ã±¼ì²â,0x2e-Öܽç×¥ÅÄ,0x2f-ÈËÌåÄ¿±ê×¥ÅÄ,0x30-ÈËÁ³×¥ÅĽ¨Ä£, 0x31-»ìºÏÄ¿±ê¼ì²â,0x32-·ÀÇø±¨¾¯, 0x33-½ô¼±ÇóÖú, 0x34-ÒµÎñ×Éѯ,0x35-·Ç·¨°Ú̯,0xff- È«²¿ÀàÐÍ*/ + BYTE byFileType; + BYTE byNeedCard; // ÊÇ·ñÐèÒª¿¨ºÅ + /* + 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-Í0xff-È«²¿ + */ + BYTE byProvince; //Ê¡·ÝË÷ÒýÖµ + BYTE byRes1; //²éÕÒ½á¹ûÖÐÊÇ·ñÒªÇó·µ»ØÈËÁ³×ø±êÐÅÏ¢£¬0-²»·µ»Ø£¬1-·µ»Ø + NET_DVR_TIME struStartTime;//²éÕÒͼƬµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struStopTime;// ²éÕÒͼƬµÄ½áÊøʱ¼ä + char szPatientID[64]; + BYTE byRes[256]; +}NET_DVR_FIND_PICTURE_MEDICAL_PARAM, *LPNET_DVR_FIND_PICTURE_MEDICAL_PARAM; + +typedef struct tagNET_DVR_SEXGROUP_PARAM_ +{ + DWORD dwMale;//ÄУ¨ÈËÊý£© + DWORD dwFemale;//Å®£¨ÈËÊý£© + BYTE byRes[64]; +}NET_DVR_SEXGROUP_PARAM,*LPNET_DVR_SEXGROUP_PARAM; + +typedef struct tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_ +{ + DWORD dwSize; + NET_DVR_TIME_EX struStartTime;/*¼ä¸ô¿ªÊ¼Ê±¼ä*/ + NET_DVR_TIME_EX struEndTime;/*¼ä¸ô½áÊøʱ¼ä*/ + BYTE byStatType;//Êý¾ÝÀàÐÍͳ¼Æ£ºBit0-ÄêÁä¶ÎÓÐЧ£¬Bit1-ÐÔ±ðÓÐЧ£¬Bit2-ÈËÊýÓÐЧ + BYTE byRes[7]; + DWORD dwPeopleNum;//ÈËÊýͳ¼Æ + NET_DVR_AGEGROUP_PARAM struAgeGroupParam;//ÄêÁä¶ÎÈËÊýͳ¼Æ + NET_DVR_SEXGROUP_PARAM struSexGroupParam;//ÐÔ±ðÈËÊýͳ¼Æ + NET_DVR_PROGRAM_INFO struProgramInfo; //½ÚÄ¿ÐÅÏ¢ + BYTE byRes1[76]; +}NET_DVR_FACECAPTURE_STATISTICS_RESULT,*LPNET_DVR_FACECAPTURE_STATISTICS_RESULT; + +//»ñÈ¡½»Í¨Êý¾ÝÌõ¼þ½á¹¹ +typedef struct tagNET_DVR_TRAFFIC_DATA_QUERY_COND_ +{ + DWORD dwSize; + /* + Bit0-ͨµÀÓÐЧ + Bit1-ʱ¼äÓÐЧ + Bit2-³µÅƺÅÓÐЧ + Bit3-³µÅÆÀàÐÍÓÐЧ + Bit4-³µÅÆÑÕÉ«ÓÐЧ + Bit5-³µÉíÑÕÉ«ÓÐЧ + Bit6-³µÁ¾ÀàÐÍÓÐЧ + Bit7-³µÁ¾Æ·ÅÆÓÐЧ + Bit8-³µµÀºÅÓÐЧ + Bit9-¼à²â·½ÏòÓÐЧ + Bit10-×îµÍËÙ¶ÈÓÐЧ + Bit11-×î¸ßËÙ¶ÈÓÐЧ + Bit12-Êý¾ÝÀàÐÍÓÐЧ + Bit13-²¼¿Ø·½Ê½ÀàÐÍÓÐЧ + Bit14-Î¥·¨È¡Ö¤ÓÐЧ + Bit15-ʼþÀàÐÍÓÐЧ + Bit16-È¡Ö¤ÀàÐÍÓÐЧ + */ + DWORD dwQueryCond;//²éѯÌõ¼þ 0±íʾÎÞЧ£¬1±íʾÓÐЧ + DWORD dwChannel;//ĬÈÏÊÇ1£¨[1~32]£¬bit0±íʾͨµÀ1£¬ÒÀ´ÎÀàÍÆbit31±íʾͨµÀ32£© + NET_DVR_TIME_V30 struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//½áÊøʱ¼ä + char sLicense[MAX_LICENSE_LEN/*16*/];//(É豸֧³ÖÄ£ºý²éѯ, GB2312±àÂë) + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-±ê×¼ÃñÓóµÓë¾ü³µ + Bit2-02ʽÃñÓóµÅÆ + Bit3-Î侯³µ + Bit4-¾¯³µ + Bit5-ÃñÓóµË«ÐÐβÅÆ + Bit6-ʹ¹Ý³µÅÆ + Bit7-Å©Óóµ + Bit8-ĦÍгµ + */ + DWORD dwPlateType;//³µÅÆÀàÐÍ£¨Ö§³Ö°´Î»±íʾ£¬¿ÉÒÔ¸´Ñ¡£© + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-»ÆÉ« + Bit2-°×É« + Bit3-ºÚÉ« + Bit4-ÂÌÉ« + Bit5-À¶É« + */ + DWORD dwPlateColor;//³µÅÆÑÕÉ«£¨Ö§³Ö°´Î»±íʾ£¬¿ÉÒÔ¸´Ñ¡£© + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-°×É« + Bit2-ÒøÉ« + Bit3-»ÒÉ« + Bit4-ºÚÉ« + Bit5-ºìÉ« + Bit6-ÉîÀ¶É« + Bit7-À¶É« + Bit8-»ÆÉ« + Bit9-ÂÌÉ« + Bit10-×ØÉ« + Bit11-·ÛÉ« + Bit12-×ÏÉ« + Bit13-Éî»ÒÉ« + */ + DWORD dwVehicleColor;//³µÉíÑÕÉ«£¨Ö§³Ö°´Î»±íʾ£¬¿ÉÒÔ¸´Ñ¡£© + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-¿Í³µ + Bit2-´ó»õ³µ + Bit3-½Î³µ + Bit4-Ãæ°ü³µ + Bit5-С»õ³µ + Bit6-ÐÐÈË + Bit7-¶þÂÖ³µ + Bit8-ÈýÂÖ³µ + Bit9-SUV/MPV + Bit10-ÖÐÐͿͳµ + */ + DWORD dwVehicleType;//³µÁ¾ÀàÐÍ£¨Ö§³Ö°´Î»±íʾ£¬¿ÉÒÔ¸´Ñ¡£© + /** + Bit0-ÆäËû£¨±£Áô£© + Bit1-µÍËÙ + Bit2-³¬ËÙ + Bit3-ÄæÐÐ + Bit4-´³ºìµÆ + Bit5-ѹ³µµÀÏß + Bit6-²»°´µ¼Ïò + Bit7-·¿ÚÖÍÁô + Bit8-»úÕ¼·Ç + Bit9-Î¥·¨±äµÀ + Bit10-²»°´³µµÀ + Bit11-Î¥·´½ûÁî + Bit12-·¿ÚÍ£³µ + Bit13-Â̵ÆÍ£³µ + Bit14-δÀñÈÃÐÐÈË + Bit15-Î¥ÕÂÍ£³µ + Bit16-Î¥ÕµôÍ· + Bit17-Õ¼ÓÃÓ¦¼±³µµÀ + Bit18-δϵ°²È«´ø + */ + DWORD dwIllegalType; + /** + Bit0-ÆäËû£¨±£Áô£© + Bit1-Óµ¶Â + Bit2-Í£³µ + Bit3-ÄæÐÐ + Bit4-ÐÐÈË + Bit5-Å×È÷Îï + Bit6-ÑÌÎí + Bit7-ѹÏß + Bit8-½ûÖ¹Ãûµ¥ + Bit9-³¬ËÙ + Bit10-±äµÀ + Bit11-µôÍ· + Bit12-»úÕ¼·Ç + Bit13-¼ÓÈû + */ + DWORD dwEventType; + /** + Bit0-ÆäËû£¨±£Áô£© + Bit1-³ÇÊй«Â·Î¥·¨Í£³µ + Bit2-¸ßËÙ¹«Â·Î¥·¨Í£³µ + Bit3-ѹÏß + Bit4-ÄæÐÐ + Bit5-Î¥·¨±äµÀ + Bit6-»úÕ¼·Ç + */ + DWORD dwForensiceType; + WORD wVehicleLogoRecog; //³µÁ¾Ö÷Æ·ÅÆ£¬²Î¿¼"³µÁ¾Ö÷Æ·ÅÆ.xlsx" £¨½öµ¥Ñ¡£© + BYTE byLaneNo;//³µµÀºÅ£¨0~255,0ºÅ³µµÀ ±íʾ ³µµÀºÅδ֪£© + BYTE byDirection;//¼à²â·½Ïò£¬1-ÉÏÐУ¬2-ÏÂÐУ¬3-Ë«Ïò£¬4-Óɶ«ÏòÎ÷£¬5-ÓÉÄÏÏò±±,6-ÓÉÎ÷Ïò¶«£¬7-Óɱ±ÏòÄÏ + WORD wMinSpeed;//×îµÍËٶȣ¨0~999£©µ¥Î»km/h + WORD wMaxSpeed;//×î¸ßËٶȣ¨0~999£©µ¥Î»km/h + BYTE byDataType;//Êý¾ÝÀàÐÍ 0-¿¨¿ÚÊý¾Ý£¬1-Î¥·¨Êý¾Ý£¬2-½»Í¨Ê¼þ£¬3-È¡Ö¤Êý¾Ý £¨½öµ¥Ñ¡£© + BYTE byExecuteCtrl;//²¼¿Ø 0-ÔÊÐíÃûµ¥£¬1-½ûÖ¹Ãûµ¥£¬0xff-ÆäËû + BYTE byRes[254]; +}NET_DVR_TRAFFIC_DATA_QUERY_COND,*LPNET_DVR_TRAFFIC_DATA_QUERY_COND; + +//½»Í¨Í¼Æ¬²ÎÊý×ӽṹ +typedef struct tagNET_DVR_TRAFFIC_PICTURE_PARAM_ +{ + NET_DVR_TIME_V30 struRelativeTime; //×¥ÅÄÏà¶Ôʱ±ê + NET_DVR_TIME_V30 struAbsTime; //×¥Åľø¶Ôʱ±ê + char szPicName[PICTURE_NAME_LEN/*64*/]; + BYTE byPicType;//ͼƬÀàÐÍ 0-³µÅÆͼ£¬1-×¥ÅÄԭͼ£¬2-ºÏ³Éͼ£¬3-ÌØдͼ + BYTE byRes[63]; +}NET_DVR_TRAFFIC_PICTURE_PARAM,*LPNET_DVR_TRAFFIC_PICTURE_PARAM; + +//½»Í¨Êý¾Ý½á¹¹Ìå +typedef struct tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_ +{ + DWORD dwSize; + DWORD dwChannel;//ĬÈÏÊÇ1£¨[1~32]£© + char sLicense[MAX_LICENSE_LEN/*16*/]; + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-±ê×¼ÃñÓóµÓë¾ü³µ + Bit2-02ʽÃñÓóµÅÆ + Bit3-Î侯³µ + Bit4-¾¯³µ + Bit5-ÃñÓóµË«ÐÐβÅÆ + Bit6-ʹ¹Ý³µÅÆ + Bit7-Å©Óóµ + Bit8-ĦÍгµ + */ + DWORD dwPlateType;//³µÅÆÀàÐÍ + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-»ÆÉ« + Bit2-°×É« + Bit3-ºÚÉ« + Bit4-ÂÌÉ« + Bit5-À¶É« + */ + DWORD dwPlateColor;//³µÅÆÑÕÉ« + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-°×É« + Bit2-ÒøÉ« + Bit3-»ÒÉ« + Bit4-ºÚÉ« + Bit5-ºìÉ« + Bit6-ÉîÀ¶É« + Bit7-À¶É« + Bit8-»ÆÉ« + Bit9-ÂÌÉ« + Bit10-×ØÉ« + Bit11-·ÛÉ« + Bit12-×ÏÉ« + Bit13-Éî»ÒÉ« + */ + DWORD dwVehicleColor;//³µÉíÑÕÉ« + /* + Bit0-δ֪£¨ÆäËû£© + Bit1-¿Í³µ + Bit2-´ó»õ³µ + Bit3-½Î³µ + Bit4-Ãæ°ü³µ + Bit5-С»õ³µ + Bit6-ÐÐÈË + Bit7-¶þÂÖ³µ + Bit8-ÈýÂÖ³µ + Bit9-SUV/MPV + Bit10-ÖÐÐͿͳµ + Bit11-»ú¶¯³µ + Bit12-·Ç»ú¶¯³µ + Bit13-СÐͽγµ + Bit14-΢Ðͽγµ + Bit15-Ƥ¿¨³µ + Bit16-¼¯×°Ï俨³µ + Bit17-΢¿¨£¬À¸°å¿¨ + Bit18-ÔüÍÁ³µ + Bit19-µõ³µ£¬¹¤³Ì³µ + Bit20-Ó͹޳µ + Bit21-»ìÄýÍÁ½Á°è³µ + Bit22-ƽ°åÍϳµ + Bit23-Á½Ïá½Î³µ + Bit24-ÈýÏá½Î³µ + Bit25-½ÎÅÜ + Bit26-СÐͿͳµ + */ + DWORD dwVehicleType;//³µÁ¾ÀàÐÍ + /** + Bit0-ÆäËû£¨±£Áô£© + Bit1-µÍËÙ + Bit2-³¬ËÙ + Bit3-ÄæÐÐ + Bit4-´³ºìµÆ + Bit5-ѹ³µµÀÏß + Bit6-²»°´µ¼Ïò + Bit7-·¿ÚÖÍÁô + Bit8-»úÕ¼·Ç + Bit9-Î¥·¨±äµÀ + Bit10-²»°´³µµÀ + Bit11-Î¥·´½ûÁî + Bit12-·¿ÚÍ£³µ + Bit13-Â̵ÆÍ£³µ + Bit14-δÀñÈÃÐÐÈË + Bit15-Î¥ÕÂÍ£³µ + Bit16-Î¥ÕµôÍ· + Bit17-Õ¼ÓÃÓ¦¼±³µµÀ + Bit18-δϵ°²È«´ø + */ + DWORD dwIllegalType; + /** + Bit0-ÆäËû£¨±£Áô£© + Bit1-Óµ¶Â + Bit2-Í£³µ + Bit3-ÄæÐÐ + Bit4-ÐÐÈË + Bit5-Å×È÷Îï + Bit6-ÑÌÎí + Bit7-ѹÏß + Bit8-½ûÖ¹Ãûµ¥ + Bit9-³¬ËÙ + Bit10-±äµÀ + Bit11-µôÍ· + Bit12-»úÕ¼·Ç + Bit13-¼ÓÈû + */ + DWORD dwEventType; + /** + Bit0-ÆäËû£¨±£Áô£© + Bit1-³ÇÊй«Â·Î¥·¨Í£³µ + Bit2-¸ßËÙ¹«Â·Î¥·¨Í£³µ + Bit3-ѹÏß + Bit4-ÄæÐÐ + Bit5-Î¥·¨±äµÀ + Bit6-»úÕ¼·Ç + */ + DWORD dwForensiceType; + WORD wVehicleLogoRecog; //³µÁ¾Ö÷Æ·ÅÆ£¬²Î¿¼"³µÁ¾Ö÷Æ·ÅÆ.xlsx" + BYTE byLaneNo;//³µµÀºÅ£¨0~255,0ºÅ³µµÀ ±íʾ ³µµÀºÅδ֪£© + BYTE byDirection;//¼à²â·½Ïò£¬1-ÉÏÐУ¬2-ÏÂÐУ¬3-Ë«Ïò£¬4-Óɶ«ÏòÎ÷£¬5-ÓÉÄÏÏò±±,6-ÓÉÎ÷Ïò¶«£¬7-Óɱ±ÏòÄÏ + WORD wSpeed;//Ëٶȣ¨0~999£©µ¥Î»km/h + BYTE byDataType;//Êý¾ÝÀàÐÍ: 0-¿¨¿Ú 1-Î¥·¨ 2-ʼþ 3-È¡Ö¤ + BYTE byRes[253]; + NET_DVR_TRAFFIC_PICTURE_PARAM struTrafficPic[MAX_TRAFFIC_PICTURE_NUM/*8*/]; +}NET_DVR_TRAFFIC_DATA_QUERY_RESULT,*LPNET_DVR_TRAFFIC_DATA_QUERY_RESULT; + +//³¤Á¬½Ó»ñÈ¡½»Í¨Á÷Á¿Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_ +{ + DWORD dwSize; + /** + Bit0-ͨµÀÓÐЧ + Bit1-ʱ¼äÓÐЧ + Bit2-³µµÀºÅÓÐЧ + */ + DWORD dwQueryCond;//²éѯÌõ¼þ 0-ÎÞÌõ¼þ + DWORD dwChannel;//ĬÈÏÊÇ1£¨[1~32]£¬bit0±íʾͨµÀ1£¬ÒÀ´ÎÀàÍÆbit31±íʾͨµÀ32£© + DWORD dwResChan[10];//Ô¤Áô¿ÉÀ©Õ¹µÄͨµÀºÅ + NET_DVR_TIME_V30 struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//½áÊøʱ¼ä + BYTE byLaneNo;//³µµÀºÅ£¨0~255,0ºÅ³µµÀ ±íʾ ³µµÀºÅδ֪£© + BYTE byRes[255]; +}NET_DVR_TRAFFIC_FLOW_QUERY_COND,*LPNET_DVR_TRAFFIC_FLOW_QUERY_COND; + +//³¤Á¬½Ó»ñÈ¡½»Í¨Á÷Á¿½á¹¹ +typedef struct tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_ +{ + DWORD dwSize; + NET_DVR_TIME_V30 struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//½áÊøʱ¼ä + DWORD dwChannel;//ĬÈÏÊÇ1£¨[1~32]£© + DWORD dwFlow;//³µÁ÷Á¿ + BYTE byLaneNo;//³µµÀºÅ£¨0~255,0ºÅ³µµÀ ±íʾ ³µµÀºÅδ֪£© + BYTE byRes[511]; +}NET_DVR_TRAFFIC_FLOW_QUERY_RESULT,*LPNET_DVR_TRAFFIC_FLOW_QUERY_RESULT; + +//ͼÆ¬²ÎÊý +typedef struct tagNET_DVR_PIC_INFO +{ + BYTE byPicType; //ͼƬÀàÐÍ£¬0-jpg + BYTE byRes1[3]; //±£Áô + DWORD dwPicWidth; //ͼƬ¿í¶È + DWORD dwPicHeight; //ͼƬ¸ß¶È + DWORD dwPicDataLen; //ͼƬÊý¾Ý´óС + char* byPicDataBuff; //ͼƬÊý¾Ý»º³åÇø + BYTE byRes2[32]; //±£Áô +}NET_DVR_PIC_INFO,*LPNET_DVR_PIC_INFO; + +typedef struct tagNET_DVR_VCA_RULE_COLOR_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable; //¹æÔòÊÇ·ñÆôÓ㬠0-²»ÆôÓã¬1-ÆôÓà + BYTE byRuleID; //¹ØÁªµÄ¹æÔòID + BYTE byColorBlockNo; //ÑÕÉ«¿éÐòºÅ£¬´Ó1¿ªÊ¼ + BYTE byRes1; //±£Áô + NET_DVR_PIC_INFO struPicInfo; //ͼƬÑÕÉ«ÐÅÏ¢ + BYTE byRes[64]; +}NET_DVR_VCA_RULE_COLOR_CFG,*LPNET_DVR_VCA_RULE_COLOR_CFG; + +typedef struct tagNET_DVR_VCA_RULE_COLOR_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byRuleID; //¹ØÁªµÄ¹æÔòID 0±íʾ²»¹ØÁª + BYTE byRes[127]; +}NET_DVR_VCA_RULE_COLOR_COND,*LPNET_DVR_VCA_RULE_COLOR_COND; + +//LLDP²ÎÊý +typedef struct tagNET_DVR_LLDP_PORT_CFG +{ + BYTE byCardNo; //¿¨ºÅ + BYTE byPortNo; //¶Ë¿ÚºÅ + BYTE byEnabledTx; //ʹÄÜ·¢ËÍlldp°ü£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byEnabledRx; //ʹÄܽÓÊÕlldp°ü£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byRes[12]; +}NET_DVR_LLDP_PORT_CFG, *LPNET_DVR_LLDP_PORT_CFG; + +typedef struct tagNET_DVR_LLDP_CFG +{ + DWORD dwSize; + BYTE byEnabled; //ʹÄÜLLDP¹¦ÄÜ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byRes1[3]; + DWORD dwHoldTime; //±£³Öʱ¼ä£¬µ¥Î»£ºÃë + DWORD dwReiniTime; //ÖØгõʼ»¯Ê±¼ä£¬µ¥Î»£ºÃë + DWORD dwPacketTime; //´ò°üʱ¼ä£¬µ¥Î»£ºÃë + NET_DVR_LLDP_PORT_CFG struLLDPPortCfg[MAX_PORT_NUM]; //¸÷¶Ë¿ÚLLDP²ÎÊý + BYTE byRes2[32]; +}NET_DVR_LLDP_CFG, *LPNET_DVR_LLDP_CFG; + +//¹âÏËÊÕ·¢Æ÷»ù±¾ÐÅÏ¢ +typedef struct tagNET_DVR_CARD_PORT_INFO +{ + DWORD dwPortNo; //¶Ë¿ÚºÅ£¬0-ÎÞЧ + BYTE byPortName[NAME_LEN]; //¶Ë¿ÚÃû + BYTE byWorkMode; //¹¤×÷ģʽ£¬1-ACCESS£¬2-TRUNK£¬3-HYPRID + BYTE byBandWidth; //´ø¿í£¬1-100M£¬2-1G£¬3-10G + BYTE byPortType; //¶Ë¿ÚÀàÐÍ£¬1-µç¿Ú£¬2-¹â¿Ú£¬3-¹âµç¸´ÓÃ¿Ú + BYTE byRes[13]; +}NET_DVR_CARD_PORT_INFO, *LPNET_DVR_CARD_PORT_INFO; + +typedef struct tagNET_DVR_NETMGR_CARD_INFO +{ + BYTE byTypeName[NAME_LEN]; //ÐͺÅÃû³Æ + BYTE bySerialNo[SERIALNO_LEN]; //ÐòÁкŠ+ BYTE bySoftwareVersion[VERSION_LEN]; //Èí¼þ°æ±¾ + NET_DVR_IPADDR struIPAddr; //IPµØÖ· + DWORD dwSlotNo; //Íø¹Ü¿¨²ÛλºÅ£¨Ö÷²Û룩 + BYTE byStructureType; //½á¹¹ÀàÐÍ£¬1-2U£¬2-4U + BYTE byRes1[3]; + NET_DVR_CARD_PORT_INFO struNetPortInfo[MAX_SINGLE_CARD_PORT_NO]; //¸÷Íø¿ÚÐÅÏ¢ + BYTE byRes2[32]; +}NET_DVR_NETMGR_CARD_INFO, *LPNET_DVR_NETMGR_CARD_INFO; + +typedef struct tagNET_DVR_FUNC_CARD_INFO +{ + DWORD dwCardNo; //¿¨ºÅ£¬´Ó1¿ªÊ¼ + BYTE byTypeName[NAME_LEN]; //ÐͺÅÃû³Æ + BYTE bySerialNo[SERIALNO_LEN]; //ÐòÁкŠ+ BYTE bySoftwareVersion[VERSION_LEN]; //Èí¼þ°æ±¾ + DWORD dwMainSlot; //Ö÷²Û룬´Ó1¿ªÊ¼ + BYTE byStructureType; //½á¹¹ÀàÐÍ£¬1-2U£¬2-4U + BYTE byRes1[3]; + NET_DVR_CARD_PORT_INFO struFuncPortInfo[MAX_SINGLE_CARD_PORT_NO]; //¸÷¶Ë¿Ú²ÎÊý + BYTE byRes2[32]; +}NET_DVR_FUNC_CARD_INFO, *LPNET_DVR_FUNC_CARD_INFO; + +typedef struct tagNET_DVR_FIBER_CONVERT_BASIC +{ + DWORD dwSize; + BYTE byPowerType; //µçÔ´ÀàÐÍ£¬1-µ¥µçÔ´£¬2-Ë«µçÔ´ + BYTE byRes1[3]; + DWORD dwSlotNum; //Íø¹Ü¿¨²ÛλºÅ£¨Ö÷²Û룩 + NET_DVR_NETMGR_CARD_INFO struNetCardInfo; //Íø¹Ü¿¨ÐÅÏ¢ + NET_DVR_FUNC_CARD_INFO struFuncCardInfo[MAX_FUNC_CARD_NUM]; //¹¦ÄÜ¿¨ÐÅÏ¢ + BYTE byRes2[64]; +}NET_DVR_FIBER_CONVERT_BASIC, *LPNET_DVR_FIBER_CONVERT_BASIC; + +//¹âÏËÊÕ·¢Æ÷¹¤×÷״̬ÐÅÏ¢ +typedef struct tagNET_DVR_CARD_PORT_STATE +{ + BYTE byValid; //ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE byPortType; //¶Ë¿ÚÀàÐÍ£¬1-µç¿Ú£¬2-¹â¿Ú£¬3-¹âµç¸´ÓÃ¿Ú + BYTE byLinkState; //Á¬½Ó״̬£¬0-δÁ¬½Ó£¬1-ÒÑÁ¬½Ó + BYTE byRes1; + DWORD dwSendBytes; //·¢Ë͵Ä×Ö½ÚÊý + DWORD dwRecvBytes; //½ÓÊÕÊý¾Ý°üÊý + DWORD dwRecvLostPackets; //½ÓÊÕ¶ª°üÊý + DWORD dwRecvCrcErrPackets; //½ÓÊÕCRCУÑé´íÎó°üÊý + DWORD dwRecvFragmentPackets; //½ÓÊÕËéƬ¡¢³åÍ»¼°¹ý¶Ì×Ö½Ú°üÊý£¨°ü³¤¶È¾ùСÓÚ64×Ö½Ú£© + BYTE byRes2[16]; +}NET_DVR_CARD_PORT_STATE, *LPNET_DVR_CARD_PORT_STATE; + +typedef struct tagNET_DVR_NET_CARD_STATE +{ + NET_DVR_CARD_PORT_STATE struNetPortState[MAX_SINGLE_CARD_PORT_NO]; //¸÷¶Ë¿Ú״̬ + BYTE byRes[64]; +}NET_DVR_NET_CARD_STATE, *LPNET_DVR_NET_CARD_STATE; + +typedef struct tagNET_DVR_FUNC_CARD_STATE +{ + BYTE byEnabled; //´Ë½á¹¹ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE byRes1[3]; + DWORD dwCardNo; //¿¨ºÅ + NET_DVR_CARD_PORT_STATE struFuncCardPortState[MAX_SINGLE_CARD_PORT_NO]; + BYTE byRes[32]; +}NET_DVR_FUNC_CARD_STATE, *LPNET_DVR_FUNC_CARD_STATE; + +typedef struct tagNET_DVR_FIBER_CONVERT_STATE +{ + DWORD dwSize; + NET_DVR_NET_CARD_STATE struNetCardState; //Íø¹Ü¿¨×´Ì¬ + NET_DVR_FUNC_CARD_STATE struFuncCardState[MAX_FUNC_CARD_NUM]; //¹¦ÄÜ¿¨×´Ì¬ + BYTE byRes[32]; +}NET_DVR_FIBER_CONVERT_STATE, *LPNET_DVR_FIBER_CONVERT_STATE; + +//Ô¶¶ËÍø¹ÜÊÕ·¢Æ÷1.0 »ù±¾ÐÅÏ¢ +typedef struct tagNET_DVR_NETMGR_CARD_INFO_V50 +{ + BYTE byMainSlotNo; //Íø¹Ü¿¨²ÛλºÅ£¨Ö÷²Û룩 + BYTE byRes1[3]; + BYTE byTypeName[NAME_LEN]; //ÐͺÅÃû³Æ + BYTE bySerialNo[SERIALNO_LEN]; //ÐòÁкŠ+ BYTE bySoftwareVersion[VERSION_LEN]; //Èí¼þ°æ±¾ + BYTE byHardwareVersion[VERSION_LEN]; //Ó²¼þ°æ±¾ + NET_DVR_IPADDR struIPAddr; //IPµØÖ· + NET_DVR_IPADDR struMask; //×ÓÍøÑÚÂë + NET_DVR_IPADDR struGateway; //ĬÈÏÍø¹Ø + BYTE byMacAddr[6]; //MACµØÖ· + BYTE bySlotNums; //²ÛλÊý + BYTE byStructureType; //½á¹¹ÀàÐÍ£¬1-2U£¬2-4U + NET_DVR_CARD_PORT_INFO struPortInfo[MAX_SINGLE_CARD_PORT_NO]; //¸÷¶Ë¿ÚÐÅÏ¢ + BYTE byRes2[64]; +}NET_DVR_NETMGR_CARD_INFO_V50, *LPNET_DVR_NETMGR_CARD_INFO_V50; + +typedef struct tagNET_DVR_FUNC_CARD_INFO_V50 +{ + BYTE byCardNo; //½ÓÊÕ¿¨¿¨ºÅ + BYTE byMainSlotNo; //½ÓÊÕ¿¨²ÛλºÅ£¨Ö÷²Û룩 + BYTE byRes1[2]; + BYTE byTypeName[NAME_LEN]; //ÐͺÅÃû³Æ + BYTE bySerialNo[SERIALNO_LEN]; //ÐòÁкŠ+ BYTE bySoftwareVersion[VERSION_LEN]; //Èí¼þ°æ±¾ + BYTE byIsVerMismatch; //Èí¼þ°æ±¾ÓëÍø¹Ü¿¨Öб¾µØ´æ´¢µÄÈí¼þ°æ±¾ÊÇ·ñÒ»Ö£¬0-Æ¥Å䣬!0-²»Æ¥Åä + BYTE byRes2[3]; + BYTE byNewestSoftwareVersion[VERSION_LEN]; //×îеÄÈí¼þ°æ±¾£¬°æ±¾²»Æ¥ÅäʱÓÐЧ + BYTE byHardwareVersion[VERSION_LEN]; //Ó²¼þ°æ±¾ + BYTE bySlotNums; //²ÛλÊý + BYTE byStructureType; //½á¹¹ÀàÐÍ£¬1-2U£¬2-4U + BYTE byRes3[2]; + NET_DVR_CARD_PORT_INFO struPortInfo[MAX_SINGLE_CARD_PORT_NO]; //¸÷¶Ë¿ÚÐÅÏ¢ + BYTE byRes4[64]; +}NET_DVR_FUNC_CARD_INFO_V50, *LPNET_DVR_FUNC_CARD_INFO_V50; + +typedef struct tagNET_DVR_REMOTE_SEND_CARD_INFO_V50 +{ + BYTE byCardNo; //¿¨ºÅ£¬·¢ËÍ»úÁ¬½ÓµÄ½ÓÊÕ¿¨µÄ¿¨ºÅ + BYTE byMainSlotNo; //²ÛλºÅ£¬·¢ËÍ»úÁ¬½ÓµÄ½ÓÊÕ¿¨µÄÖ÷²ÛλºÅ + BYTE byRes1[2]; + BYTE byTypeName[NAME_LEN]; //ÐͺÅÃû³Æ + BYTE bySoftwareVersion[VERSION_LEN]; //Èí¼þ°æ±¾ + BYTE byIsVerMismatch; //Èí¼þ°æ±¾ÓëÍø¹Ü¿¨Öб¾µØ´æ´¢µÄÈí¼þ°æ±¾ÊÇ·ñÒ»Ö£¬0-Æ¥Å䣬!0-²»Æ¥Åä + BYTE byRes2[3]; + BYTE byNewestSoftwareVersion[VERSION_LEN]; //×îеÄÈí¼þ°æ±¾£¬°æ±¾²»Æ¥ÅäʱÓÐЧ + BYTE byHardwareVersion[VERSION_LEN]; //Ó²¼þ°æ±¾ + NET_DVR_CARD_PORT_INFO struPortInfo[MAX_SINGLE_CARD_PORT_NO]; //¸÷¶Ë¿ÚÐÅÏ¢ + BYTE byRes3[64]; +}NET_DVR_REMOTE_SEND_CARD_INFO_V50, *LPNET_DVR_REMOTE_SEND_CARD_INFO_V50; + +typedef struct tagNET_DVR_FIBER_CONVERT_BASIC_V50 +{ + DWORD dwSize; + BYTE byPowerType; //µçÔ´ÀàÐÍ£¬1-µ¥µçÔ´£¬2-Ë«µçÔ´ + BYTE byRes1[3]; + DWORD dwSlotNum; //»úÏä×ܲÛλÊý + NET_DVR_NETMGR_CARD_INFO_V50 struNetCardInfo; //Íø¹Ü¿¨ÐÅÏ¢ + NET_DVR_FUNC_CARD_INFO_V50 struFuncCardInfo[MAX_FUNC_CARD_NUM]; //½ÓÊÕ¿¨ÐÅÏ¢ + NET_DVR_REMOTE_SEND_CARD_INFO_V50 struRemoteSendCardInfo[MAX_FUNC_CARD_NUM]; //·¢ËÍ»úÐÅÏ¢ + BYTE byRes2[64]; +}NET_DVR_FIBER_CONVERT_BASIC_V50, *LPNET_DVR_FIBER_CONVERT_BASIC_V50; + +//Ô¶¶ËÍø¹ÜÊÕ·¢Æ÷1.0 ״̬ÐÅÏ¢ +typedef struct tagNET_DVR_CARD_PORT_STATE_V50 +{ + BYTE byPortNo; //¶Ë¿ÚºÅ£¬´Ó1¿ªÊ¼ + BYTE byPortType; //¶Ë¿ÚÀàÐÍ£¬1-µç¿Ú£¬2-¹â¿Ú£¬3-¹âµç¸´ÓÃ¿Ú + BYTE byLinkState; //Á¬½Ó״̬£¬0-δÁ¬½Ó£¬1-ÒÑÁ¬½Ó + BYTE byPortSpeed; //´ø¿í£¬0-ÎÞЧ£¬1-×Ô¶¯£¬2-100M£¬3-1000M£¬4-10G + BYTE byPortDuplexMode; //¶Ë¿ÚË«¹¤Ä£Ê½£¬0-ÎÞЧ£¬1-×Ô¶¯£¬2-È«Ë«¹¤£¬3-°ëË«¹¤ + BYTE byRes1[3]; + BYTE byPortName[NAME_LEN]; //¶Ë¿ÚÃû³Æ + DWORD dwSendBytes; //·¢Ë͵Ä×Ö½ÚÊý + DWORD dwSendByteSpeed; //·¢ËÍ×Ö½ÚËÙÂÊ£¬µ¥Î»£ºbps + DWORD dwSendPackets; //·¢Ë͵Ä×Ö½ÚÊý + DWORD dwSendPacketSpeed; //·¢°üËÙÂÊ£¬µ¥Î»£º¸ö/Ãë + DWORD dwRecvBytes; //½ÓÊÕµÄ×Ö½ÚÊý + DWORD dwRecvByteSpeed; //½ÓÊÕ×Ö½ÚËÙÂÊ£¬µ¥Î»£ºbps + DWORD dwRecvPackets; //½ÓÊյİüÊý + DWORD dwRecvPacketSpeed; //ÊÕ°üËÙÂÊ£¬µ¥Î»£º¸ö/Ãë + DWORD dwRecvLostPackets; //½ÓÊÕ¶ª°üÊý + DWORD dwRecvCrcErrPackets; //½ÓÊÕCRCУÑé´íÎó°üÊý + DWORD dwRecvFragmentPackets; //½ÓÊÕËéƬ¡¢³åÍ»¼°¹ý¶Ì×Ö½Ú°üÊý£¨°ü³¤¶È¾ùСÓÚ64×Ö½Ú£© + BYTE byRes2[48]; +}NET_DVR_CARD_PORT_STATE_V50, *LPNET_DVR_CARD_PORT_STATE_V50; + +typedef struct tagNET_DVR_NET_CARD_STATE_V50 +{ + BYTE byMainSlotNo; //Íø¹Ü¿¨Ö÷²ÛλºÅ + BYTE byRes1[3]; + NET_DVR_CARD_PORT_STATE_V50 struPortState[MAX_SINGLE_CARD_PORT_NO]; //Íø¹Ü¿¨¶Ë¿Ú״̬ + BYTE byRes2[344]; +}NET_DVR_NET_CARD_STATE_V50, *LPNET_DVR_NET_CARD_STATE_V50; + +typedef struct tagNET_DVR_FUNC_CARD_STATE_V50 +{ + BYTE byCardNo; //½ÓÊÕ¿¨¿¨ºÅ + BYTE byMainSlotNo; //½ÓÊÕ¿¨Ö÷²ÛλºÅ + BYTE byRes1[2]; + NET_DVR_CARD_PORT_STATE_V50 struPortState[MAX_SINGLE_CARD_PORT_NO]; //½ÓÊÕ¿¨¶Ë¿Ú״̬ + BYTE byRes2[64]; +}NET_DVR_FUNC_CARD_STATE_V50, *LPNET_DVR_FUNC_CARD_STATE_V50; + +typedef struct tagNET_DVR_REMOTE_SEND_CARD_STATE_V50 +{ + BYTE byCardNo; //·¢ËÍ»úÁ¬½ÓµÄ½ÓÊÕ¿¨µÄ¿¨ºÅ + BYTE byMainSlotNo; //·¢ËÍ»úÁ¬½ÓµÄ½ÓÊÕ¿¨µÄÖ÷²ÛλºÅ + BYTE byRes1[2]; + NET_DVR_CARD_PORT_STATE_V50 struPortState[MAX_SINGLE_CARD_PORT_NO]; //½ÓÊÕ¿¨¶Ë¿Ú״̬ + BYTE byRes[64]; +}NET_DVR_REMOTE_SEND_CARD_STATE_V50, *LPNET_DVR_REMOTE_SEND_CARD_STATE_V50; + +typedef struct tagNET_DVR_FIBER_CONVERT_STATE_V50 +{ + DWORD dwSize; + NET_DVR_NET_CARD_STATE_V50 struNetCardState; //Íø¹Ü¿¨×´Ì¬ + NET_DVR_FUNC_CARD_STATE_V50 struFuncCardState[MAX_FUNC_CARD_NUM]; //½ÓÊÕ¿¨×´Ì¬ + NET_DVR_REMOTE_SEND_CARD_STATE_V50 struRemoteSendCardState[MAX_FUNC_CARD_NUM]; //·¢ËÍ»ú״̬ + BYTE byRes[64]; +}NET_DVR_FIBER_CONVERT_STATE_V50, *LPNET_DVR_FIBER_CONVERT_STATE_V50; + +//¹âÏËÊÕ·¢Æ÷ÍØÆËÐÅÏ¢ +typedef struct tagNET_DVR_FC_PORT_TOPOLOGY +{ + DWORD dwPortNo; //¶Ë¿ÚºÅ£¬0-ÎÞЧ£¬·Ç0Ϊ¹¦ÄÜ¿¨¶Ë¿ÚºÅ + BYTE byPortType; //¶Ë¿ÚÀàÐÍ£¬1-µç¿Ú£¬2-¹â¿Ú£¬3-¹âµç¸´ÓÃ¿Ú + BYTE byLocalWorkMode; //±¾µØ¹¤×÷ģʽ£¬1-ACCESS£¬2-TRUNK£¬3-HYPRID + BYTE byLocalBandWidth; //±¾µØ´ø¿í£¬1-100M£¬2-1G£¬3-10G + BYTE byRes1[1]; + BYTE byPeerTypeName[NAME_LEN]; //¶Ô¶ËÉ豸ÀàÐÍÃû³Æ + BYTE byPeerMac[MACADDR_LEN]; //¶Ô¶ËMACµØÖ· + DWORD dwPeerPortNo; //¶Ô¶Ë¶Ë¿ÚºÅ + BYTE byPeerWorkMode; //¶Ô¶Ë¹¤×÷ģʽ£¬1-ACCESS£¬2-TRUNK£¬3-HYPRID + BYTE byPeerBandWidth; //¶Ô¶Ë´ø¿í£¬1-100M£¬2-1G£¬3-10G + BYTE byRes2[30]; +}NET_DVR_FC_PORT_TOPOLOGY, *LPNET_DVR_FC_PORT_TOPOLOGY; + +typedef struct tagNET_DVR_FC_CARD_TOPOLOGY +{ + BYTE byEnable; //´Ë½á¹¹ÌåÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬·Ç0-ÓÐЧ + BYTE byRes1[3]; + DWORD dwCardNo; //¿¨ºÅ£¬0-Íø¹Ü¿¨£¬´óÓÚ0-¹¦ÄÜ¿¨ + DWORD dwSlotNum; //¿¨Õ¼ÓõIJÛλÊý + BYTE byTypeName[NAME_LEN]; //¿¨ÀàÐÍÃû³Æ + BYTE byLocalMac[MACADDR_LEN]; //±¾µØMACµØÖ· + NET_DVR_FC_PORT_TOPOLOGY struFCPortTopology[MAX_SINGLE_CARD_PORT_NO]; //¸÷¶Ë¿ÚÍØÆËÐÅÏ¢ + BYTE byRes[32]; +}NET_DVR_FC_CARD_TOPOLOGY, *LPNET_DVR_FC_CARD_TOPOLOGY; + +typedef struct tagNET_DVR_FIBER_CONVERT_TOPOLOGY +{ + DWORD dwSize; + NET_DVR_FC_CARD_TOPOLOGY struFCCardTopology[MAX_FC_CARD_NUM]; //¸÷¿¨ÍØÆËÐÅÏ¢ + BYTE byRes[64]; +}NET_DVR_FIBER_CONVERT_TOPOLOGY, *LPNET_DVR_FIBER_CONVERT_TOPOLOGY; + +//¹âÏËÊÕ·¢Æ÷¶Ë¿Ú×¢ÊÍÐÅÏ¢ +typedef struct tagNET_DVR_FC_COND +{ + DWORD dwSize; + DWORD dwSlotNo; //²ÛλºÅ + DWORD dwPortNo; //¶Ë¿ÚºÅ + BYTE byRes[32]; +}NET_DVR_FC_COND, *LPNET_DVR_FC_COND; + +typedef struct tagNET_DVR_FC_PORT_REMARKS +{ + DWORD dwSize; + BYTE byLocalRemarks[MAX_REMARKS_LEN]; //±¾µØ¶Ë¿Ú×¢ÊÍÐÅÏ¢ + BYTE byPeerRemarks[MAX_REMARKS_LEN]; //¶Ô¶Ë¶Ë¿Ú×¢ÊÍÐÅÏ¢ + BYTE byRes[32]; +}NET_DVR_FC_PORT_REMARKS, *LPNET_DVR_FC_PORT_REMARKS; + +typedef enum _EN_FIBER_CONVERT_ALARM +{ + FC_OPTICAL_PORT_LOST = 1, + FC_ELECTRICAL_PORT_LOST, + FC_FUNC_CARD_LOST, + FC_CARD_DISCONNECTED, //¿¨¶ÏÏ߸澯 + FC_MAX_TEMP_LIMITED, //ζȳ¬ÉÏÏ޸澯 + FC_MIN_TEMP_LIMITED, //ζȳ¬ÏÂÏ޸澯 + FC_MAX_VOLTAGE_LIMITED, //µçѹ³¬ÉÏÏ޸澯 + FC_MIN_VOLTAGE_LIMITED, //µçѹ³¬ÏÂÏ޸澯 +}EN_FIBER_CONVERT_ALARM; + +typedef enum _EN_FIBER_CONVERT_NOTIFICATION +{ + FC_OPTICAL_PORT_CONNECTED = 1, + FC_ELECTRICAL_PORT_CONNECTED, + FC_FUNC_CARD_INSERT, + FC_CARD_CONNECTED, //¿¨ÉÏÏß֪ͨ + FC_TEMP_RECOVERY, //ζȻָ´Í¨Öª + FC_VOLTAGE_RECOVERY, //µçѹ»Ö¸´Í¨Öª +}EN_FIBER_CONVERT_NOTIFICATION; + +typedef struct tagNET_DVR_FIBER_CONVERT_ALARM +{ + DWORD dwSize; + DWORD dwEventType; //ʼþÀàÐÍ£¬1-¸æ¾¯£¬2-֪ͨ + DWORD dwEvent; //¾ßÌåʼþ£¬¸æ¾¯Ê±²Î¿¼Ã¶¾ÙFIBER_CONVERT_ALARM£¬Í¨ÖªÊ±²Î¿¼Ã¶¾ÙFIBER_CONVERT_NOTIFICATION + BYTE bySlotNum; //²ÛλºÅ£¬µ±¿¨ÀàÐÍΪ·¢ËÍ»úʱ£¬²ÛλºÅΪ¸Ã·¢ËÍ»úÁ¬½ÓµÄ½ÓÊÕ¿¨µÄ²ÛλºÅ£¬»úÏä¸æ¾¯¼°Í¨ÖªÊ±ÎÞЧ + BYTE byCardType; //¿¨ÀàÐÍ£¬0-ÎÞЧ£¬1-Íø¹Ü¿¨£¬2-½ÓÊÕ¿¨£¬3-·¢ËÍ»ú£¬4-»úÏä + BYTE byPortNo; //¶Ë¿ÚºÅ£¬´Ó1¿ªÊ¼£¬»úÏä¸æ¾¯¼°Í¨ÖªÊ±ÎÞЧ + BYTE byCurTemperature; //´¥·¢Ê¼þµÄζȣ¬Î¶ȸ澯¼°Í¨ÖªÊ±ÓÐЧ£¬µ¥Î»£ºÉãÊÏ¶È + WORD wCurVoltage; //´¥·¢Ê¼þµÄµçѹ£¨Êµ¼Êµçѹ*10£©£¬µçѹ¸æ¾¯¼°Í¨ÖªÊ±ÓÐЧ£¬µ¥Î»£º·üÌØ + BYTE byRes1[30]; +}NET_DVR_FIBER_CONVERT_ALARM, *LPNET_DVR_FIBER_CONVERT_ALARM; + +//½»»»»ú¸æ¾¯Ê¼þÉÏ´« +typedef enum _EN_SWITCH_CONVERT_ALARM +{ + SC_OPTICAL_PORT_LOST = 1, + SC_NETWORK_PORT_LOST, + SC_WIRELESS_SPEED_UP_EXCEPTION,//ÎÞÏßÉÏÐÐËÙÂÊÒì³£ + SC_WIRELESS_SHUTDOWN, //ÎÞÏßÁ¬½Ó¶Ï¿ªÊ¼þ + SC_DEVICE_POE_MAX, //POE-MAX¸æ¾¯ + SC_PORT_POE_POWER_OFF, //¶Ë¿ÚPOEµôµç¸æ¾¯ +}EN_SWITCH_CONVERT_ALARM; + +typedef enum _EN_SWICH_CONVERT_NOTIFICATION +{ + SC_OPTICAL_PORT_CONNECTED = 1, + SC_NETWORK_PORT_CONNECTED, + SC_DEVICE_POE_MAX_RECOVERY, //POE-MAX¸æ¾¯»Ö¸´ + SC_PORT_POE_POWER_ON, //¶Ë¿ÚPOEÉϵç֪ͨ + SC_WIRELESS_CONNECTED, //ÎÞÏßÁ¬½Óʼþ +}EN_SWITCH_CONVERT_NOTIFICATION; + +typedef struct tagNET_DVR_SWITCH_CONVERT_ALARM +{ + DWORD dwSize; + BYTE byPortNo; //½Ó¿ÚË÷Òý£¬´Ó1¿ªÊ¼£¬±íʾË÷ÒýµÍ8λ + BYTE byPortNoEx; //½Ó¿ÚË÷Òý£¬Ë÷Òý´óÓÚ255ʱ£¬¸Ã×ֶαíʾË÷ÒýµÄ¸ß8λ + BYTE byRes1[2]; + DWORD dwEventType; //ʼþÀàÐÍ£¬1-¸æ¾¯£¬2-֪ͨ + DWORD dwEvent; //¾ßÌåʼþ£¬¸æ¾¯Ê±²Î¿¼Ã¶¾ÙEN_SWITCH_CONVERT_ALARM£¬Í¨ÖªÊ±²Î¿¼Ã¶¾ÙEN_SWITCH_CONVERT_NOTIFICATION + BYTE byRes2[32]; +}NET_DVR_SWITCH_CONVERT_ALARM, *LPNET_DVR_SWITCH_CONVERT_ALARM; + +typedef struct tagNET_DVR_SWITCH_LAMP_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable; //¹æÔòÊÇ·ñÆôÓ㬠0-²»ÆôÓã¬1-ÆôÓà + BYTE byTriggerMode; // 1-³ÖÐø´¥·¢£¬2-µ¥´Î´¥·¢ + BYTE byUploadPic; //0-²»ÉÏ´«Í¼Æ¬£¬1-ÉÏ´«Í¼Æ¬ + BYTE byRes1; //±£Áô + DWORD dwTimeInterval; //³ÖÐø´¥·¢±¨¾¯Ê±¼ä¼ä¸ô£¬·¶Î§[0,3600]£¬µ¥Î»£ºÃë + NET_DVR_HANDLEEXCEPTION_V30 struHandleType;//´¦Àí·½Ê½ + BYTE byRelRecordChan[MAX_IVMS_IP_CHANNEL]; //±¨¾¯´¥·¢µÄ¼ÏóͨµÀ£º1±íʾ´¥·¢¸ÃͨµÀ£»0±íʾ²»´¥·¢ + NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];//¼ì²âʱ¼ä + BYTE byRes[256]; +}NET_DVR_SWITCH_LAMP_CFG,*LPNET_DVR_SWITCH_LAMP_CFG; + +typedef struct tagNET_DVR_SWITCH_LAMP_ALARM +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_VCA_DEV_INFO struDevInfo; //É豸ÐÅÏ¢ + NET_DVR_TIME_EX struTime; //±¨¾¯Ê±¼ä + BYTE byLampStatus; //¿ª¹ØµÆ״̬£¬0-ÒÑ¹Ø±Õ 1-ÒÑ´ò¿ª + BYTE byRes1[3]; //±£Áô + DWORD dwPicDataLen; //ͼƬÊý¾Ý³¤¶È£¬·Ç0±íʾÓÐͼƬÉÏ´« + char* pPicData; //ͼƬÊý¾Ý + BYTE byRes[64]; +}NET_DVR_SWITCH_LAMP_ALARM,*LPNET_DVR_SWITCH_LAMP_ALARM; + +//·À»¤²Õ¼¶ÁªÅäÖà +typedef struct tagNET_DVR_RS485_CASCADE_CFG +{ + DWORD dwSize; + BYTE byDevAddr; //É豸µØÖ·£¬0-Ö÷»ú£¬1-15Ϊ´Ó»ú + BYTE byRes[131]; +}NET_DVR_RS485_CASCADE_CFG,*LPNET_DVR_RS485_CASCADE_CFG; + +//˽ÓйؼüÐÅÏ¢ÉÏ´«ÅäÖà +typedef struct tagNET_DVR_PRIVATE_PROTOCOL_CFG +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; //ÏûÏ¢ÉÏ´«µÄIPµØÖ· + WORD wPort;//ÏûÏ¢ÉÏ´«µÄ¶Ë¿ÚºÅ + BYTE byEnable;//ʹÄÜ, 0-±£Áô£¬1-²»ÆôÓã¬2-ÆôÓà + BYTE byRes; + DWORD dwInterval;//ÏûÏ¢ÉÏ´«¼ä¸ô(0-ÎÞʱ¼ä¼ä¸ôÏÞÖÆ£¬ÒÔÉ豸Ϊ׼; >=0,ÒÔÃëΪµ¥Î»µÄʱ¼ä¼ä¸ô) + BYTE byServerType;//·þÎñÀàÐÍ 0-ÎÞ£¬1-¹«°² + BYTE byEcryptedSMSEnable;//0-²»¼ÓÃÜ£¬1-¼ÓÃÜ + BYTE byAlgorithm;//¼ÓÃÜËã·¨£¬0-ÎÞ£¬1-RSA + BYTE byAcauisitionMode;//²É¼¯Ä£Ê½£¬0-»ù±¾ÐÅÏ¢£¬1-ÐéÄâÉí·ÝÐÅÏ¢£¬2-»ù±¾ÐÅÏ¢+ÐéÄâÉí·ÝÐÅÏ¢ + DWORD dwDistanceLimit;//¾àÀëÏÞÖÆ£¬µ¥Î»£ºm + BYTE byPKModeEnable;//PKģʽʹÄÜ, 0-±£Áô£¬1-²»ÆôÓã¬2-ÆôÓà + BYTE byMACAddrReductionEnable;//MACµØÖ·»¹Ô­Ê¹ÄÜ, 0-±£Áô£¬1-²»ÆôÓã¬2-ÆôÓà + BYTE byRes1[214]; + char szIndexCode[MAX_INDEX_CODE_LEN]; + DWORD dwSecretKeyLen;//ÃØÔ¿³¤¶È + char szSecretKey[MAX_SECRETKEY_LEN/*512*/];//ÃØÔ¿ +}NET_DVR_PRIVATE_PROTOCOL_CFG,*LPNET_DVR_PRIVATE_PROTOCOL_CFG; + +//µ÷ÊÔÃüÁî +typedef struct tagNET_DVR_DEBUG_CMD +{ + DWORD dwSize; + char szDebugCMD[MAX_DEBUGCMD_LEN/*1024*/]; + BYTE byRes[400]; +}NET_DVR_DEBUG_CMD,*LPNET_DVR_DEBUG_CMD; + +//µ÷ÊÔÐÅÏ¢ +typedef struct tagNET_DVR_DEBUG_INFO +{ + DWORD dwSize; + char szDebugInfo[MAX_DEBUGINFO_LEN/*1400*/]; + BYTE byRes[32]; +}NET_DVR_DEBUG_INFO,*LPNET_DVR_DEBUG_INFO; + + + +#define MAX_SSID_LEN 32 //SSIDºÅ³¤¶È +#define MAX_WS_PASSWD_LEN 64 //ÃÜÂ볤¶È +typedef struct tagNET_DVR_WIRELESSSERVER +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byWLanShare;//WLanÈȵãʹÄÜ 0-¹Ø±Õ£¬1-ʹÄÜ + BYTE byBroadcastSSID;//SSID¹ã²¥Ê¹ÄÜ 0-¹Ø±Õ£¬1-ʹÄÜ + BYTE bySecurityMode;//°²È«Ä£Ê½ 0- not-encrypted£¬1-WPA£¬2-WPA2(ÔÝʱֻ֧³Ö2) + BYTE byAlgorithmType; //¼ÓÃÜģʽ 1-TKIP£¬2-AES + char szSSID[MAX_SSID_LEN/*32*/];//SSIDºÅÐÅÏ¢ + char szPassWord[MAX_WS_PASSWD_LEN/*64*/]; + BYTE byDefaultPassword;//ÊÇ·ñÊÇĬÈÏÃÜÂë 0-·ñ£¬1-ÊÇ + BYTE byWifiApModeType;//ÆôÓÃWlanAPÈȵãģʽ£¬0-¹Ø±Õ£¬1-¿ªÆô£¬2-×Ô¶¯ + BYTE byRes[254]; +}NET_DVR_WIRELESSSERVER,*LPNET_DVR_WIRELESSSERVER; + +typedef struct tagNET_DVR_CONNECTDEV_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byRes[128]; +}NET_DVR_CONNECTDEV_COND,*LPNET_DVR_CONNECTDEV_COND; + +typedef struct tagNET_DVR_CONNECTDEV_CFG +{ + DWORD dwSize; + BYTE byID;//ÐòÁкŠ+ BYTE byRes[1]; + BYTE byMACAddr[MACADDR_LEN/*6*/]; // ÎïÀíµØÖ· + NET_DVR_IPADDR struDVRIP;//É豸IP + NET_DVR_TIME struConnectTime;//½ÓÈëʱ¼ä + BYTE byRes1[256]; +}NET_DVR_CONNECTDEV_CFG,*LPNET_DVR_CONNECTDEV_CFG; + +typedef struct tagNET_DVR_GIS_SERVER_INFO +{ + BYTE byUserName[NAME_LEN]; + BYTE byPassword[PASSWD_LEN]; + NET_DVR_IPADDR struServerIP; //GIS·þÎñÆ÷IPµØÖ· + WORD wPort; //GIS·þÎñÆ÷¶Ë¿Ú + BYTE byRes[30]; +}NET_DVR_GIS_SERVER_INFO, *LPNET_DVR_GIS_SERVER_INFO; + +typedef struct tagNET_DVR_BASEMAP_CONTROL_CFG_V40 +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÏÔʾ£¬1-ÏÔʾ£¬0-Òþ²Ø + BYTE byBaseMapType; //µ×ͼÀàÐÍ£¬1-ͼƬµ×ͼ£¬2-³¬¸ßÇåÊäÈëµ×ͼ£¬3-GISµ×ͼ + BYTE byRes1[2]; + DWORD dwBaseMapNo; //µ×ͼºÅ£»µ×ͼÀàÐÍΪ1ʱ£¬´Ë²ÎÊýΪͼƬÐòºÅ£¬µ×ͼÀàÐÍΪ2ʱ´Ë²ÎÊýΪ³¬¸ßÇåÊäÈë×ÓϵͳÊäÈë¿ÚºÅ£¨1×Ö½Ú¾ØÕóºÅ+1×Ö½Ú×Ó°åºÅ+1×Ö½ÚÊäÈë¿ÚºÅ+1×Ö½Ú±£Áô£© + NET_DVR_GIS_SERVER_INFO struGisServer; //GIS·þÎñÆ÷ÐÅÏ¢,µ±µ×ͼÀàÐÍΪGISµ×ͼʱÓÐЧ + BYTE byRes2[64]; +}NET_DVR_BASEMAP_CONTROL_CFG_V40,*LPNET_DVR_BASEMAP_CONTROL_CFG_V40; + +typedef struct tagNET_DVR_VIDEO_IMG_DB_CFG +{ + DWORD dwSize; //NET_DVR_VIDEO_IMG_DB_CFG½á¹¹Ìå´óС + INT64 i64Capacity; //ÊÓͼ¿â×ÜÈÝÁ¿£¬µÍ룬µ¥Î»£ºMB + INT64 i64UsedSpace; //Ö»¶Á£¬ÒÑÓÿռ䣬µÍ룬µ¥Î»£ºMB + INT64 i64AvailableSpace; //Ö»¶Á£¬¿ÉÓÿռ䣬µÍ룬µ¥Î»£ºMB + BYTE byRes[256]; //±£Áô +}NET_DVR_VIDEO_IMG_DB_CFG, *LPNET_DVR_VIDEO_IMG_DB_CFG; + +typedef struct tagNET_DVR_FILE_QUERY_INFO +{ + DWORD dwSize; //NET_DVR_FILE_QUERY_INFO½á¹¹Ìå´óС + INT64 i64FileLen; //Îļþ´óС + BYTE byRes[256]; //±£Áô +}NET_DVR_FILE_QUERY_INFO, *LPNET_DVR_FILE_QUERY_INFO; + +typedef struct tagNET_DVR_FILE_INFO_IN +{ + char szFileID[MAX_FILE_ID_LEN]; //ÉÏ´«Ö®ºó£¬É豸·ÖÅäµÄÎļþID + BYTE byRes[256]; +}NET_DVR_FILE_INFO_IN, *LPNET_DVR_FILE_INFO_IN; + +typedef struct tagNET_DOWNLOAD_CB_INFO +{ + DWORD dwType; //ÀàÐÍ, 0-Êý¾ÝÐÅÏ¢,1-µ¥¸öͼƬÐÅÏ¢(ÔÆ´æ´¢ÅúÁ¿ÏÂÔØ),2-ͼƬ×ÜÌåÐÅÏ¢(ÔÆ´æ´¢ÅúÁ¿ÏÂÔØ) + BYTE *pData; //Êý¾ÝÖ¸Õë + DWORD dwDataLen; //Êý¾Ý³¤¶È + void* pFileInfo; //ÎļþÐÅÏ¢½á¹¹Ìå(ÔÆ´æ´¢ÅúÁ¿ÏÂÔØʱÓÐЧ) + DWORD dwFileInfoLen; //ÎļþÐÅÏ¢½á¹¹Ì峤¶È(ÔÆ´æ´¢ÅúÁ¿ÏÂÔØʱÓÐЧ) + BYTE byRes[120]; //±£Áô +}NET_DOWNLOAD_CB_INFO, *LPNET_DOWNLOAD_CB_INFO; + +typedef BOOL (*DOWNLOAD_DATA_CB)( LONG lHandle, NET_DOWNLOAD_CB_INFO *pCBInfo, void *pUserData); + +typedef struct tagNET_DVR_DOWNLOAD_CB_PARAM +{ + DOWNLOAD_DATA_CB fnDownloadDataCB; //ÏÂÔØÊý¾Ý»Øµ÷º¯Êý + void *pUserData; //Óû§²ÎÊý, ÔÚfnPreviewDataCB»Øµ÷³öÀ´ + INT64 i64Offset; //ÏÂÔØÎļþµÄÆ«ÒÆÁ¿£¬ÓÃÓڶϵãÐø´« + BYTE byRes[256]; +}NET_DVR_DOWNLOAD_CB_PARAM, *LPNET_DVR_DOWNLOAD_CB_PARAM; + +typedef struct tagNET_DVR_UPLOAD_DB_IN +{ + INT64 i64FileLen; //ÉÏ´«ÐÂÎļþ£¬ÐèÒª¸ø³öÎļþ³¤¶È£¬ÎļþÐø´«¿ÉÒÔ²»¸ø + BYTE byContinueUpload; //0-ÐÂÎļþÉÏ´«£¬1-ÀÏÎļþÐø´«£¬ÎļþÃû±ØÐë¸ø³ö + BYTE byRes[255]; +}NET_DVR_UPLOAD_DB_IN, *LPNET_DVR_UPLOAD_DB_IN; + + +typedef struct tagNET_DVR_UPLOAD_DB_OUT +{ + char szFileID[MAX_FILE_ID_LEN]; //ÉÏ´«Ö®ºó£¬É豸·ÖÅäµÄÎļþID + BYTE byRes[256]; +}NET_DVR_UPLOAD_DB_OUT, *LPNET_DVR_UPLOAD_DB_OUT; + +typedef struct tagNET_DVR_SEND_PARAM_IN +{ + BYTE *pSendData; //·¢Ë͵Ļº³åÇø,PicURL == 1 µÄʱºò£¬ÄÚ´æÖд洢µÄÊÇ URL ×Ö·û´®,byUploadModeling == 1 µÄʱºò£¬ÄÚ´æÖд洢µÄÊÇ ½¨Ä£base64¼ÓÃÜÊý¾Ý + DWORD dwSendDataLen; //·¢ËÍÊý¾Ý³¤¶È,PicURL == 1 µÄʱºò£¬±íʾµÄ URL ×Ö·û´®µÄ³¤¶È,byUploadModeling == 1 µÄʱºò£¬±íʾΪ½¨Ä£Êý¾Ýbase64ºóµÄ¼ÓÃܳ¤¶È + NET_DVR_TIME_V30 struTime; //ͼƬʱ¼ä + BYTE byPicType; //ͼƬ¸ñʽ,1-jpg,2-bmp,3-png,4-SWF,5-GIF + BYTE byPicURL; //ͼƬÊý¾Ý²ÉÓÃURL·½Ê½ 0-¶þ½øÖÆͼƬÊý¾Ý£¬1-ͼƬÊý¾Ý×ßURL·½Ê½ + /*ÊÇ·ñÉÏ´«½¨Ä£Êý¾Ý£» + 0- ¶þ½øÖÆͼƬÊý¾Ý·½Ê½(pSendDataÖ¸Ïò¶þ½øÖÆͼƬÊý¾Ý, dwPicDataLenΪͼƬ¶þ½øÖÆÊý¾Ý³¤¶È)£¬ + 1- Ö±½ÓÉÏ´«½¨Ä£Êý¾Ý(pSendDataÖ¸Ïò½¨Ä£base64¼ÓÃÜÊý¾Ý, dwPicDataLenΪ½¨Ä£Êý¾Ýbase64ºóµÄ¼ÓÃܳ¤¶È)¡£ + ×¢£º½¨Ä£Êý¾Ý²ÉÓÃbase64¼ÓÃÜ·½Ê½,Ñ¡ÔñΪ½¨Ä£Êý¾ÝÉÏ´«ºó£¬byPicURL ÎÞÐè¡£ + µ±¡±/ISAPI/Intelligent/channels//faceContrast/capabilities¡±ÄÜÁ¦Öзµ»ØisSupportUploadModelingÄÜÁ¦½Úµãʱ£¬Ö§³ÖÉÏ´«½¨Ä£Êý¾Ý. */ + BYTE byUploadModeling; + BYTE byRes1; + DWORD dwPicMangeNo; //ͼƬ¹ÜÀíºÅ + BYTE sPicName[NAME_LEN]; //ͼƬÃû³Æ + DWORD dwPicDisplayTime; //ͼƬ²¥·Åʱ³¤£¬µ¥Î»Ãë + BYTE *pSendAppendData; //·¢ËÍͼƬµÄ¸½¼ÓÐÅÏ¢»º³åÇø£¬¶ÔÓ¦FaceAppendData µÄXMLÃèÊö£» + DWORD dwSendAppendDataLen; //·¢ËÍͼƬµÄ¸½¼ÓÐÅÏ¢Êý¾Ý³¤¶È FaceAppendData XMLµÄ³¤¶È£» + BYTE byRes[192]; +}NET_DVR_SEND_PARAM_IN, *LPNET_DVR_SEND_PARAM_IN; + + +typedef struct tagNET_DVR_DOWNLOAD_QOS +{ + DWORD dwMaxSpeed; //Á÷¿Ø×î´óËٶȣ¬µ¥Î»kbps + BYTE byRes[256]; +}NET_DVR_DOWNLOAD_QOS, *LPNET_DVR_DOWNLOAD_QOS; + + +#define NET_SDK_MAX_FILE_NAME 100 //×î´óÎļþÃû³Æ + +typedef struct tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_ +{ + DWORD dwSize; + BYTE byFileType; //ÎļþÀàÐÍ 0-¼Ïñ£¬1-ÒôƵ + BYTE byFileVolnumeID; //Îļþ¾íID£¨¿ÉÒÔͨ¹ýNET_DVR_GET_HDVOLUME_CFG »ñÈ¡£© + BYTE byArchive; //0-²»¹éµµ£¬1-¹éµµ + BYTE byRes1; + DWORD dwFileSize; //Îļþ´óС + char szFileName[NET_SDK_MAX_FILE_NAME/*100*/]; //ÎļþÃû³Æ + BYTE byRes[300]; +}NET_DVR_UPLOAD_FILEVOLUME_PRARAM, *LPNET_DVR_UPLOAD_FILEVOLUME_PRARAM; + +typedef struct tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_ +{ + DWORD dwSize; + BYTE sUrl[MAX_UPLOADFILE_URL_LEN/*240*/]; //url + BYTE byRes[248]; + DOWNLOAD_DATA_CB fnDownloadDataCB; //ÏÂÔØÊý¾Ý»Øµ÷º¯Êý + void *pUserData; //Óû§²ÎÊý, ÔÚfnPreviewDataCB»Øµ÷³öÀ´ +}NET_DVR_DOWNLOAD_FILEVOLUME_PARAM, *LPNET_DVR_DOWNLOAD_FILEVOLUME_PARAM; + + +//µçӰģʽ²ÎÊý +typedef struct tagNET_DVR_FILM_MODE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byScreenType; //»­ÃæÀàÐÍ£¬0-µ¥»­Ã棬1-Á½»­Ã棬2-»­Öл­ + BYTE byRes[255]; //±£Áô +}NET_DVR_FILM_MODE_CFG, *LPNET_DVR_FILM_MODE_CFG; + +//µ¼²¥²ßÂÔÅäÖà +typedef struct tagNET_DVR_DIRECTED_STRATEGY_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byDirectedStrategyType; //µ¼²¥²ßÂÔÀàÐÍ£¬0-³£Ì¬µ¼²¥²ßÂÔ£¬1-¾«Æ·µ¼²¥²ßÂÔ,2-¾«Æ·µ¼²¥1Ìæ2,3-¾«Æ·µ¼²¥²ßÂÔ1Ìæ3 + BYTE byRes[255]; //±£Áô +}NET_DVR_DIRECTED_STRATEGY_CFG, *LPNET_DVR_DIRECTED_STRATEGY_CFG; + +//±ß¿ò×ӽṹ +typedef struct NET_DVR_FRAME +{ + BYTE byFrameWide; /*±ß¿ò¿í¶ÈºÏ·¨È¡Öµ·¶Î§Îª[0,14]£¬²¢ÇÒÖ»ÄÜȡżÊýÖµ*/ + BYTE byRed; /*±ß¿òÑÕɫΪRGB ģʽ£¬R£¬G£¬B£¬·Ö±ð¶ÔӦλÓÚÈçÏÂ*/ + BYTE byGreen; + BYTE byBlue; + BYTE byRes[256]; +}NET_DVR_FRAME, *LPNET_DVR_FRAME; + +//ÅäÖû­Ãæ±ß¿ò +typedef struct tagNET_DVR_FRAME_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_DVR_FRAME struTopFrame; //Éϱ߿ò + NET_DVR_FRAME struBottomFrame;//ϱ߿ò + NET_DVR_FRAME struLeftFrame; //×ó±ß¿ò + NET_DVR_FRAME struRightFrame; //Óұ߿ò + BYTE byFrameEnable; //µþ¼Ó±ß¿ò0-²»µþ¼Ó1-µþ¼Ó±ß¿ò + BYTE byRes[256]; //±£Áô +}NET_DVR_FRAME_CFG, *LPNET_DVR_FRAME_CFG; + +//ÅäÖû­Ãæ±ß¿òÌõ¼þ +typedef struct tagNET_DVR_FRAME_COND +{ + DWORD dwSize; + DWORD dwPicNo;//»­Ãæ±àºÅ + BYTE byRes[256]; +}NET_DVR_FRAME_COND, *LPNET_DVR_FRAME_COND; + +//ÒôƵÓÅ»¯²ÎÊý +typedef struct tagNET_DVR_AUDIO_EFFECTIVE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwCheckDelay; //¼ì²âʱÑÓ£¬µ¥Î»s£¬0±íʾ²»×Ô¶¯ÓÅ»¯ + BYTE byThreshold; //ãÐÖµ[0,100] + BYTE byVolumePercent;//ÒôÁ¿ [0,100] + BYTE byPriority; //µÈ¼¶£¬[0£¬100] + BYTE byRes[301]; +}NET_DVR_AUDIO_EFFECTIVE_CFG, *LPNET_DVR_AUDIO_EFFECTIVE_CFG; + +//¼ÖÆÊÓƵ²ÎÊý +typedef struct tagNET_DVR_RECORD_VIDEO_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byExportType; //ãÐÖµ0-MP4 1-AVI + BYTE byRes[255]; //±£Áô×Ö½Ú +} NET_DVR_RECORD_VIDEO_CFG, *LPNET_DVR_RECORD_VIDEO_CFG; + +//RTMP Cond +typedef struct tagNET_DVR_RTMP_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byStreamType; //ÂëÁ÷ÀàÐÍ£¬1-Ö÷ÂëÁ÷£¬2-×ÓÂëÁ÷£¬3-ÂëÁ÷Èý + BYTE byRes[303]; +}NET_DVR_RTMP_COND, *LPNET_DVR_RTMP_COND; + +//RTMP Cfg +typedef struct tagNET_DVR_RTMP_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓÃRTMP£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[3]; + DWORD dwPacketLen; //RTMP°ü³¤ + char szURL[RTMP_URL_LEN]; //RTMP URL + BYTE byRes[256]; //±£Áô×Ö½Ú +}NET_DVR_RTMP_CFG, *LPNET_DVR_RTMP_CFG; + +//Îļþ·¢²¼ +typedef struct tagNET_DVR_RECORDING_PUBLISH_FILE_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byFileID[MAX_ID_LEN_128/*128*/]; //·¢²¼ÎļþID + NET_DVR_TIME_EX struStartTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndTime; //¿Î³Ì½áÊøʱ¼ä + BYTE byCmdType; //·¢²¼ÃüÁîÀàÐÍ 1--¿ªÊ¼·¢²¼ 2--È¡Ïû·¢²¼ + BYTE byFileType; //·¢²¼ÎļþÀàÐÍ 0¡ª±£Áô 1¡ª¶¨Ê±¿Î³Ì 2¡ªÊÖ¶¯¿Î³Ì + BYTE byRes[254]; +}NET_DVR_RECORDING_PUBLISH_FILE_CFG, *LPNET_DVR_RECORDING_PUBLISH_FILE_CFG; + +//Îļþ·¢²¼½ø¶ÈÌõ¼þ +typedef struct tagNET_DVR_PUBLISH_PROGRESS_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byFileID[MAX_ID_LEN_128/*128*/]; //·¢²¼ÎļþID + BYTE byRes[256]; +}NET_DVR_PUBLISH_PROGRESS_COND, *LPNET_DVR_PUBLISH_PROGRESS_COND; + +//Îļþ·¢²¼½ø¶È²ÎÊý +typedef struct tagNET_DVR_PUBLISH_PROGRESS_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byPublishPercent; //·¢²¼°Ù·Ö±È 0-100 + BYTE byPublishStatus; //·¢²¼×´Ì¬ 0-·¢²¼³É¹¦ 1--ÕýÔÚ·¢²¼ 2--µÈ´ý·¢²¼ 3-Á¬²»ÉÏFTP 4--ûÓÐÕÒµ½´ËÎļþ 5--·¢²¼Ê§°Ü£¨ÆäËû´íÎó£© + BYTE byRes[302]; +}NET_DVR_PUBLISH_PROGRESS_CFG, *LPNET_DVR_PUBLISH_PROGRESS_CFG; + +//ɾ³ýÊÓͼ¿âÖеÄÎļþ +typedef struct tagNET_DVR_BACKGROUND_PIC_COND +{ + DWORD dwSize; + char szFileID[MAX_ID_LEN_128/*128*/]; //ÉÏ´«Ö®ºó£¬É豸·ÖÅäµÄÎļþID, Ö¸±³¾°Í¼Æ¬Ãû + BYTE byRes[256]; +}NET_DVR_BACKGROUND_PIC_COND, *LPNET_DVR_BACKGROUND_PIC_COND; + +//²éѯ±³¾°Í¼Æ¬Îļþ +typedef struct tagNET_DVR_BACKGROUND_PIC_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwPicSize; //±³¾°Í¼Æ¬´óС + DWORD dwPicType; //ͼƬÀàÐÍ£¬YUV:0 JPEG:1 + WORD wPicWidth; //ͼƬ¿í + WORD wPicHeight; //ͼƬ¸ß + BYTE byPicName[MAX_PIC_NAME_LEN/*128*/]; //ͼƬÃû³Æ + BYTE byRes[128]; +}NET_DVR_BACKGROUND_PIC_CFG,*LPNET_DVR_BACKGROUND_PIC_CFG; + +typedef struct tagNET_DVR_BACKGROUND_PIC_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓñ³¾°Í¼Æ¬µþ¼Ó£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + BYTE byPicID[MAX_ID_LEN_128/*128*/]; + BYTE byRes[300]; //±£Áô +}NET_DVR_BACKGROUND_PIC_INFO,*LPNET_DVR_BACKGROUND_PIC_INFO; + + +//ÉÏ´«±³¾°Í¼Æ¬Îļþ +typedef struct tagNET_DVR_BACKGROUND_PIC_PRARAM +{ + DWORD dwSize; + DWORD dwChannel; //µ¼²¥Í¨µÀ + DWORD dwPicSize; //±³¾°Í¼Æ¬´óС + WORD wPicWidth; //ͼƬ¿í + WORD wPicHeight; //ͼƬ¸ß + char szPicName[MAX_PIC_NAME_LEN/*128*/]; //ͼƬÃû³Æ + BYTE byPicType; //ͼƬÀàÐÍ£¬YUV:0 JPEG:1 + BYTE byRes[303]; +}NET_DVR_BACKGROUND_PIC_PRARAM,*LPNET_DVR_BACKGROUND_PIC_PRARAM; + +//µÍ¹¦ºÄÅäÖà +typedef struct tagNET_DVR_LOWPOWER +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byMode;//²¹¹âµÆģʽ 0-ÊÖ¶¯£¬1-¶¨Ê± + BYTE byEnabled;//ÊÖ¶¯Ä£Ê½ÏµÄʹÄÜ¿ª¹Ø 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[6]; + NET_DVR_SCHEDULE_DAYTIME struSchedTime;//¶¨Ê±Ê±¼ä¶Î + BYTE byRes1[256]; +}NET_DVR_LOWPOWER,*LPNET_DVR_LOWPOWER; + +typedef struct tagNET_DVR_POINT +{ + DWORD dwX; //XÖá×ø±ê + DWORD dwY; //Y×ø±ê +}NET_DVR_POINT, *LPNET_DVR_POINT; + +//±ä±¶Áª¶¯ÅäÖà +typedef struct tagNET_DVR_ZOOMLINKAGE +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable;//ʹÄÜ 0-¹Ø£¬1-¿ª + BYTE byRes[255]; +}NET_DVR_ZOOMLINKAGE,*LPNET_DVR_ZOOMLINKAGE; + +typedef struct tagNET_DVR_ONLINEUPGRADE_STATUS +{ + DWORD dwSize; + BYTE byUpgradeStatus;//0-δ¿ªÊ¼Éý¼¶,1-ÕýÔÚÉý¼¶,2-Éý¼¶³É¹¦,3-°üÓïÑÔ²»Æ¥Åä,4-дfalshʧ°Ü,5-°üÀàÐͲ»Æ¥Åä,6-°ü°æ±¾²»Æ¥Åä,7-ÍøÂç²»¿É´ï,8-Éý¼¶·þÎñÆ÷³ö´í, + //9-¶ÁÈ¡Éý¼¶°üÎļþ³ö´í,10-ûÓÐÕÒµ½Éý¼¶Îļþ,11-Éý¼¶ÎļþÓдí,12-É豸ÄÚ´æ²»×ã,0xff-δ֪´íÎó + BYTE byProgress; //Éý¼¶½ø¶È,0~100 + BYTE byRes[250]; +}NET_DVR_ONLINEUPGRADE_STATUS,*LPNET_DVR_ONLINEUPGRADE_STATUS; + +typedef struct tagNET_DVR_FIRMWARECODE_COND +{ + DWORD dwSize; + DWORD dwStartIndex; //ÆðʼË÷ÒýºÅ + DWORD dwMaxNum; //µ¥´Î×î´ó¸öÊý£¬32 + BYTE byRes[52]; +}NET_DVR_FIRMWARECODE_COND,*LPNET_DVR_FIRMWARECODE_COND; + +typedef struct tagNET_DVR_FIRMWARECODE +{ + WORD wIndex; + WORD wCodeLen; //ʶ±ðÂ볤¶È£¬ÉϲãÓ¦Óÿª·¢µÄʱºò×öÒ»¸öÅжϣ¬Èç¹û±¾×ֶδóÓÚ128£¬Ç뱨´í£¬ÌáʾÓû§¸üй¤¾ß/¿Í»§¶Ë°æ±¾ + BYTE byCode[MAX_IDCODE_LEN];//ʶ±ðÂë + BYTE byVersion[MAX_VERSIIN_LEN];//°æ±¾ + BYTE byRes[12]; +}NET_DVR_FIRMWARECODE,*LPNET_DVR_FIRMWARECODE; + +typedef struct tagNET_DVR_FIRMWARECODE_LIST +{ + DWORD dwSize; + DWORD dwValidCodeNum; //ÓÐЧ¸öÊý + NET_DVR_FIRMWARECODE struCode[MAX_IDCODE_NUM]; + BYTE byRes[64]; +}NET_DVR_FIRMWARECODE_LIST,*LPNET_DVR_FIRMWARECODE_LIST; + +typedef struct tagNET_DVR_ONLINEUPGRADE_SERVER +{ + DWORD dwSize; + BYTE byConnectStatus; //0-δÁ¬½Ó,1-ÒÑÁ¬½Ó + BYTE byRes[1019]; +}NET_DVR_ONLINEUPGRADE_SERVER,*LPNET_DVR_ONLINEUPGRADE_SERVER; + +typedef struct tagNET_DVR_ONLINEUPGRADE_VERSION_COND +{ + DWORD dwSize; + BYTE byCheckFromSvr; //ÊÇ·ñÐèÒª´Ó·þÎñÆ÷¼ì²â£¬0-²»ÐèÒª£¬½ö·µ»ØÉ豸ÖÜÆÚÐÔ¼ì²éµÄ½á¹û;1-ÐèÒª£¬É豸»á¼´Ê±Á¬½Ó·þÎñÆ÷¼ì²âÊÇ·ñÓÐа汾 + BYTE byRes[59]; +}NET_DVR_ONLINEUPGRADE_VERSION_COND,*LPNET_DVR_ONLINEUPGRADE_VERSION_COND; + +typedef struct tagNET_DVR_ONLINEUPGRADE_VERSION_RET +{ + DWORD dwSize; + BYTE byNewVersionAvailable; //ÊÇ·ñÓÐа汾,0-·ñ,1-ÊÇ + BYTE byNewVersion[MAX_VERSIIN_LEN]; //а汾µÄ°æ±¾ºÅ + BYTE byChangeLog[SDK_LEN_2048]; //а汾¸üеÄÄÚÈÝ + BYTE byRes[971]; +}NET_DVR_ONLINEUPGRADE_VERSION_RET,*LPNET_DVR_ONLINEUPGRADE_VERSION_RET; + +typedef struct tagNET_DVR_RECOMMEN_VERSION_COND +{ + DWORD dwSize; + BYTE byFirmwareCode[MAX_IDCODE_LEN]; + BYTE byFirmwareVersion[MAX_VERSIIN_LEN]; + BYTE byRes[60]; +}NET_DVR_RECOMMEN_VERSION_COND,*LPNET_DVR_RECOMMEN_VERSION_COND; + +typedef struct tagNET_DVR_RECOMMEN_VERSION_RET +{ + DWORD dwSize; + BYTE byRecommenUpgrade; //ÍƼöÉý¼¶,0-·ñ,1-ÊÇ + BYTE byRes[123]; +}NET_DVR_RECOMMEN_VERSION_RET,*LPNET_DVR_RECOMMEN_VERSION_RET; + +//ÎÂʪ¶ÈÅäÖà +typedef struct tagNET_DVR_THSCREEN +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable;//ÆôÓö¨Ê±Ê¹ÄÜ + BYTE byTHOSDDisplay;//ÎÂʪ¶ÈÏÔʾOSDÏÔʾÊÇ·ñÆôÓÃ, 0-·ñ£¬1-ÊÇ + BYTE byRes[2]; // ±£Áô×Ö½Ú + NET_VCA_POINT struTHOSDPoint;//ÎÂʪ¶ÈÏÔʾOSDÏÔʾ×óÉϽÇ×ø±ê + BYTE byTimingMode;//Уʱģʽ 0-ÊÖ¶¯£¬1-×Ô¶¯ + BYTE byRes1; + WORD wInterval;//Уʱ¶¨Ê±Ä£Ê½Ï£¬¼ä¸ôʱ¼äÉèÖÃ[1,10080]m + BYTE byRes2[254]; +}NET_DVR_THSCREEN,*LPNET_DVR_THSCREEN; + +typedef struct tagNET_DVR_SENSOR_ADJUSTMENT +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byType;//µ÷Õûģʽ£º0-ÉÏÏ£¬1-×óÓÒ£¬2-Ðýת£¬3-ͼÏñÊÓ³¡½Ç£¬4-RGBµ÷Õû, 5-ÁÁ¶È, 6-RGB_Exµ÷Õû + BYTE bySensorNo;//Sensor ºÅ[1,8] + BYTE byRes[2]; + int iAdjustMentRange;//µ÷Õû·ù¶È [-100,100] ÐýתµÄʱºò[-30,30] ͼÏñÊÓ³¡½Ç[-10,10] + BYTE byR;//RGB²ÎÊý£¬R£¨ºìÉ«£©£¬·¶Î§0-100 + BYTE byG;//RGB²ÎÊý£¬G£¨ÂÌÉ«£©£¬·¶Î§0-100 + BYTE byB;//RGB²ÎÊý£¬B£¨À¶É«£©£¬·¶Î§0-100 + BYTE byRgbType;//RGBÀàÐÍ£¬0-±£Áô£¬1-²úÏßģʽ£¬2-ÊÖ¶¯Ä£Ê½ + BYTE byBrightness;//ÁÁ¶È£¬·¶Î§0-100,ĬÈÏÖµ50 + BYTE byRes1[3]; + WORD wRex;//RGB²ÎÊý(À©Õ¹)£¬R£¨ºìÉ«£©£¬·¶Î§0-2048 + WORD wGex;//RGB²ÎÊý(À©Õ¹)£¬G£¨ÂÌÉ«£©£¬·¶Î§0-2048 + WORD wBex;//RGB²ÎÊý(À©Õ¹)£¬B£¨À¶É«£©£¬·¶Î§0-2048 + BYTE byRes2[114]; +}NET_DVR_SENSOR_ADJUSTMENT,*LPNET_DVR_SENSOR_ADJUSTMENT; + +typedef struct tagNET_DVR_SENSOR_ADJUSTMENT_INFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + int iPan;//×óÓÒÖµ + int iTilt;//ÉÏÏÂÖµ + int iRotation;//Ðýתֵ + int iFieldAngle;//ͼÏñÊÓ³¡½ÇÖµ + BYTE byR;//RGB²ÎÊý£¬R£¨ºìÉ«£©£¬·¶Î§0-100 + BYTE byG;//RGB²ÎÊý£¬G£¨ÂÌÉ«£©£¬·¶Î§0-100 + BYTE byB;//RGB²ÎÊý£¬B£¨À¶É«£©£¬·¶Î§0-100 + BYTE byRgbType;//RGBÀàÐÍ£¬0-±£Áô£¬1-²úÏßģʽ£¬2-ÊÖ¶¯Ä£Ê½ + BYTE byBrightness;//ÁÁ¶È£¬·¶Î§0-100,ĬÈÏÖµ50 + BYTE byRes[3]; + WORD wRex;//RGB²ÎÊý(À©Õ¹)£¬R£¨ºìÉ«£©£¬·¶Î§0-2048 + WORD wGex;//RGB²ÎÊý(À©Õ¹)£¬G£¨ÂÌÉ«£©£¬·¶Î§0-2048 + WORD wBex;//RGB²ÎÊý(À©Õ¹)£¬B£¨À¶É«£©£¬·¶Î§0-2048 + BYTE byRes1[114]; +}NET_DVR_SENSOR_ADJUSTMENT_INFO,*LPNET_DVR_SENSOR_ADJUSTMENT_INFO; + +typedef struct tagNET_DVR_SENSOR_RESET +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE bySensorNo;//SensorºÅ[1,8];µ±Sensor NoΪ0µÄʱºò£¬±íʾȫ²¿Çå³ý£»ÆäËûÇé¿öϱíʾµ¥¸öÇå³ý + BYTE byRes[127]; +}NET_DVR_SENSOR_RESET,*LPNET_DVR_SENSOR_RESET; + +typedef struct tagNET_DVR_PANORAMAIMAGE +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byFusionMode;//ģʽ£º0-ԭʼͼÏñ£¬1-È«¾°Í¼Ïñ + BYTE byPreviewMode;//ģʽ£º1-Ä¿±ê¸ú×Ù£¬2-¹Ì¶¨ÏÔʾ + BYTE byRes[126]; +}NET_DVR_PANORAMAIMAGE,*LPNET_DVR_PANORAMAIMAGE; + +typedef struct tagNET_DVR_RELOCATE_INFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byTakeOverAddr[MAX_DOMAIN_NAME/*64*/]; //½Ó¹ÜÉ豸µÄµØÖ· + WORD wPort ; //É豸¶Ë¿ÚºÅ + BYTE byRes[254] ; //±£Áô +}NET_DVR_RELOCATE_INFO, *LPNET_DVR_RELOCATE_INFO; + +typedef struct tagNET_DVR_CONFERENCE_REGION +{ + DWORD dwSize; + BYTE byEnabled; //ÊÇ·ñÆôÓûáÒéÇøÓò£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + NET_DVR_POINT struRegion[RECT_POINT_NUM]; //»áÒéÇøÓò£¬¾ØÐΣ¬ÆðʼµãΪ×óϽǣ¬Ë³Ê±Õë·½Ïò + DWORD dwOutputWidth; //µ¥Êä³ö¿Ú»ù×¼¿í£¬Ö»ÄÜ»ñÈ¡ + DWORD dwOutputHeight; //µ¥Êä³ö¿Ú»ù×¼¸ß£¬Ö»ÄÜ»ñÈ¡ + BYTE byRes2[32]; +}NET_DVR_CONFERENCE_REGION, *LPNET_DVR_CONFERENCE_REGION; + +typedef struct tagNET_DVR_TERMINAL_CALL_CFG +{ + DWORD dwSize; + BYTE byAnswerType; //»áÒéºô½ÐÏìÓ¦·½Ê½£¬1-×Ô¶¯½ÓÌý£¬2-×Ô¶¯¾Ü½Ó£¬3-ÊÖ¶¯½ÓÌý + BYTE byProtocolType; //ʹÓõÄЭÒéÀàÐÍ£¬1-SIP£¬2-H232 + BYTE byTransmissionProtocol; //´«ÊäЭÒéÀàÐÍ£¬0-ÎÞЧ£¬1-TCP£¬2-UDP + BYTE byRes[29]; +}NET_DVR_TERMINAL_CALL_CFG, *LPNET_DVR_TERMINAL_CALL_CFG; + +typedef struct tagNET_DVR_TERMINAL_CALL_INFO +{ + BYTE byTermianlURL[MAX_URL_LEN]; + DWORD dwCallRate;//ºô½ÐËÙÂÊ£¬·¶Î§Îª£º32~6144£¬µ¥Î»Kbps (Á¬½ÓËÙÂÊ) + BYTE byRes[124]; +}NET_DVR_TERMINAL_CALL_INFO, *LPNET_DVR_TERMINAL_CALL_INFO; + +typedef struct tagNET_DVR_TERMINAL_AUDIO_CTRL +{ + BYTE byMute; //ÊÇ·ñ¾²Òô£¬0-·ñ£¬1-ÊÇ + BYTE byVolume; //ÒôÁ¿£¬·Ç¾²ÒôʱÓÐЧ£¬1-100 + BYTE byAudioInputDisabled; //½ûÖ¹ÒôƵÊäÈ룬0-ÔÊÐíÒôƵÊäÈ룬1-½ûÖ¹ÒôƵÊäÈë + BYTE byAudioInputVolume; //ÒôƵÊäÈëÒôÁ¿£¬ÔÊÐíÒôƵÊäÈëʱÓÐЧ£¬1-100 + BYTE byRes[636]; +}NET_DVR_TERMINAL_AUDIO_CTRL, *LPNET_DVR_TERMINAL_AUDIO_CTRL; + +typedef struct tagNET_DVR_HOWLING_SUPPRESSION +{ + BYTE byEnabled; //ÊÇ·ñʹÄÜÐ¥½ÐÒÖÖÆ + BYTE byHsSensibility; //Ð¥½ÐÒÖÖÆÁéÃô¶È + BYTE byHsMode; //Ð¥½ÐÒÖÖÆģʽ£¬0-ĬÈÏ£¬1-ÂýËÙ£¬2-¿ìËÙ + BYTE byRes1; + DWORD dwHsTime; //Ð¥½ÐÒÖÖÆʱ¼ä£¬µ¥Î»£ºms + BYTE byRes2[16]; +}NET_DVR_HOWLING_SUPPRESSION, *LPNET_DVR_HOWLING_SUPPRESSION; + +typedef struct tagNET_DVR_TERMINAL_INPUT_AUDIO +{ + DWORD dwChannel; //ͨµÀºÅ + BYTE byGainType; //ÔöÒæÀàÐÍ£¬1-Êý×ÖÔöÒ棬2-Ä£ÄâÔöÒæ,3-Á½Õß + BYTE byEnableSimulate; //ÊÇ·ñÆôÓÃÄ£ÄâÔöÒ棬0-·ñ£¬1-ÊÇ + BYTE byVolumeSimulate; //Ä£ÄâÒôÁ¿£¬ÆôÓÃʱÓÐЧ£¬1-100 + BYTE byEnableDigital; //ÊÇ·ñÆôÓÃÊý×ÖÔöÒ棬0-·ñ£¬1-ÊÇ + BYTE byVolumeDigital; //Êý×ÖÒôÁ¿£¬ÆôÓÃʱÓÐЧ£¬1-100 + BYTE byRes1[3]; + NET_DVR_HOWLING_SUPPRESSION struHsParam; //Ð¥½ÐÒÖÖƲÎÊý + BYTE byRes[604]; +}NET_DVR_TERMINAL_INPUT_AUDIO, *LPNET_DVR_TERMINAL_INPUT_AUDIO; + + +typedef union tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM +{ + BYTE byRes[640]; + NET_DVR_TERMINAL_CALL_INFO struCallInfo; + NET_DVR_TERMINAL_AUDIO_CTRL struAudioCtrl; + NET_DVR_TERMINAL_INPUT_AUDIO struInputAudio; +}NET_DVR_TERMINAL_DETAIL_CTRL_PARAM, *LPNET_DVR_TERMINAL_DETAIL_CTRL_PARAM; + +typedef struct tagNET_DVR_TERMINAL_CTRL_PARAM +{ + DWORD dwSize; + BYTE byOperateType; //²Ù×÷ÀàÐÍ£¬1-½ÓÌý£¬2-¾Ü½Ó£¬3-ºô½Ð£¬4-ÒôƵµ÷½Ú£¬5-¹Ò¶Ï£¬6-Ë«Á÷¿ª£¬7-Ë«Á÷¹Ø + BYTE byRes1[3]; + NET_DVR_TERMINAL_DETAIL_CTRL_PARAM struCtrlParam; //¾ßÌå¿ØÖƲÎÊý + BYTE byRes2[32]; +}NET_DVR_TERMINAL_CTRL_PARAM, *LPNET_DVR_TERMINAL_CTRL_PARAM; + +typedef struct tagNET_DVR_POS_INFO_OVERLAY +{ + DWORD dwSize; + BYTE byPosInfoOverlayEnable;// PosÐÅÏ¢ÂëÁ÷µþ¼Ó¿ØÖÆ£¬0-²»µþ¼Ó£¬1-µþ¼Ó + BYTE byOverlayType;//0-µþ¼Ó½øÈëºÍÀ뿪£¬1-µþ¼Ó½øÈë¡¢À뿪¡¢PASS¡¢ID¡¢¸ß¶È + BYTE byRes[126]; +}NET_DVR_POS_INFO_OVERLAY, *LPNET_DVR_POS_INFO_OVERLAY; + + +typedef struct tagNET_DVR_CAMERA_WORK_MODE +{ + DWORD dwSize; + BYTE byWorkMode;//¹¤×÷ģʽ£¬0-Õý³£Ä£Ê½£¬1-¹¤³§±ê¶¨Ä£Ê½ + BYTE byPreviewImageMode;//Ô¤ÀÀͼÏñģʽ£¬0-×óÑÛͼÏñ£¬1-ÓÒÑÛͼÏñ£¬2-×óÓÒµþ¼ÓͼÏñ + BYTE byRes[126]; +}NET_DVR_CAMERA_WORK_MODE, *LPNET_DVR_CAMERA_WORK_MODE; + +typedef struct tagNET_DVR_VCA_VERSION_LIST +{ + DWORD dwSize; //½á¹¹Ì峤¶È + NET_DVR_VCA_VERSION struVcaVersion[NET_SDK_VERSION_LIST_LEN/*64*/];//Ëã·¨¿â°æ±¾ÐÅÏ¢ + BYTE byRes[128]; +}NET_DVR_VCA_VERSION_LIST, *LPNET_DVR_VCA_VERSION_LIST; + +typedef struct tagNET_DVR_SETUP_CALIB_COND +{ + DWORD dwSize; + BYTE byCalibrateType;//±ê¶¨ÀàÐÍ£¬0-δ½øÐб궨£¬1-×Ô¶¯±ê¶¨£¬2-ÊÖ¶¯±ê¶¨,3-ÖÇÄܱ궨 + BYTE byRes1[3]; + float fTiltAngle;//¸©Ñö½Ç,µ¥Î»£º¶È£»¸©Ñö½ÇĬÈÏÖµ£º0£»¸©Ñö½Ç·¶Î§£º0-180¶È,µ±byCalibrateTypeΪ2ʱÓÐЧ + float fHeelAngle;//Çãб½Ç,µ¥Î»£º¶È£»Çãб½ÇĬÈÏÖµ£º0£»Çãб½Ç·¶Î§£º-90-90¶È,µ±byCalibrateTypeΪ2ʱÓÐЧ + float fHeight;//¸ß¶È£¬¸ß¶Èµ¥Î»£ºÀåÃ×£»¸ß¶ÈĬÈÏÖµ300ÀåÃ×£º¸ß¶È·¶Î§£º200-500ÀåÃ×,µ±byCalibrateTypeΪ2ʱÓÐЧ + NET_VCA_POLYGON struAutoCalibPolygon;//×Ô¶¯±ê¶¨ÇøÓò£¬µ±byCalibrateTypeΪ1ʱÓÐЧ + BYTE byIntelligentType;//±ê¶¨µÄÖÇÄÜÀàÐÍ£¬0-±£Áô£¬ 1-¿ÍÁ÷£¬2-ÈËÌåÊôÐÔ£¬3-ÐÐΪ·ÖÎö£»Ö»ÓÐÔڱ궨¿ÍÁ÷ʱNET_DVR_SETUP_CALIB_RESULT·µ»ØµÄÊý¾Ý²ÅÓÐЧ + BYTE byRes[127]; +}NET_DVR_SETUP_CALIB_COND, *LPNET_DVR_SETUP_CALIB_COND; + +typedef struct tagNET_DVR_SETUP_CALIB_RESULT +{ + DWORD dwSize; + BYTE byCalibrateType;//±ê¶¨ÀàÐÍ£¬0-δ½øÐб궨£¬1-×Ô¶¯±ê¶¨£¬2-ÊÖ¶¯±ê¶¨,3-ÖÇÄܱ궨 + BYTE byRes1[3]; + float fTiltAngle;//¸©Ñö½Ç,µ¥Î»£º¶È£»¸©Ñö½ÇĬÈÏÖµ£º0£»¸©Ñö½Ç·¶Î§£º0-180¶È,µ±byCalibrateTypeΪ2ʱÓÐЧ + float fHeelAngle;//Çãб½Ç,µ¥Î»£º¶È£»Çãб½ÇĬÈÏÖµ£º0£»Çãб½Ç·¶Î§£º-90-90¶È,µ±byCalibrateTypeΪ2ʱÓÐЧ + float fHeight;//¸ß¶È£¬¸ß¶Èµ¥Î»£ºÀåÃ×£»¸ß¶ÈĬÈÏÖµ300ÀåÃ×£º¸ß¶È·¶Î§£º200-500ÀåÃ×,µ±byCalibrateTypeΪ2ʱÓÐЧ + NET_VCA_POLYGON struCountPolygon;//¼ÆÊýÇøÓò + NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; // Á÷Á¿½øÈë·½Ïò + NET_VCA_LINE struLine;//¼ì²âÏß + BYTE byRes[128]; +}NET_DVR_SETUP_CALIB_RESULT, *LPNET_DVR_SETUP_CALIB_RESULT; + +typedef struct tagNET_DVR_CALL_QUERY_COND +{ + DWORD dwSize; + BYTE bySearchID[MAX_SEARCH_ID_LEN]; //ËÑË÷±êʶ·û + NET_DVR_TIME struStartTime; //ËÑË÷Æðʼʱ¼ä + NET_DVR_TIME struEndTime; //ËÑË÷½áÊøʱ¼ä + BYTE byCallType; //ºô½ÐÀàÐÍ£¬1-Òѽӣ¬2-δ½Ó£¬3-ÒѲ¦£¬4-ËùÓÐÀàÐÍ + BYTE byRes1[3]; + DWORD dwMaxResults; //±¾´Î²éÕÒ×î¶à·µ»Ø¸öÊý + DWORD dwSearchPos; //²éÕÒÆðʼË÷Òý + BYTE byRes2[32]; +}NET_DVR_CALL_QUERY_COND, *LPNET_DVR_CALL_QUERY_COND; + +typedef struct tagNET_DVR_CALL_QUERY_SINGLE +{ + DWORD dwSize; + BYTE byCallType; //ºô½ÐÀàÐÍ£¬1-Òѽӣ¬2-δ½Ó£¬3-ÒѲ¦ + BYTE byRes1[3]; + BYTE byTerminalName[TERMINAL_NAME_LEN]; //ÖÕ¶ËÃû + BYTE byAddressURL[MAX_URL_LEN]; //¶Ô¶ËURLµØÖ· + NET_DVR_TIME struStartTime; //ºô½Ð¿ªÊ¼Ê±¼ä + NET_DVR_TIME struEndTime; //ºô½Ð½áÊøʱ¼ä + BYTE byRes2[32]; +}NET_DVR_CALL_QUERY_SINGLE, *LPNET_DVR_CALL_QUERY_SINGLE; + + +typedef enum tagCALL_QUERY_RESULT_STATUS +{ + CALL_QUERY_RESULT_OK = 0, //³É¹¦²éѯËùÓÐ + CALL_QUERY_RESULT_FAIL, //²éѯʧ°Ü£¬Î´Öª´íÎó + CALL_QUERY_RESULT_MORE, //³É¹¦²éѯ »¹Óиü¶àûÓзµ»Ø + CALL_QUERY_RESULT_NOMATCH, //ûÓвéѯµ½Æ¥ÅäµÄ + CALL_QUERY_RESULT_PARAMERROR, //²éѯÌõ¼þ²ÎÊý´íÎó + CALL_QUERY_RESULT_INVALIDTIME, //²éѯÌõ¼þʱ¼äÎÞЧ + CALL_QUERY_RESULT_TIMEOUT, //²éѯ³¬Ê± +}CALL_QUERY_RESULT_STATUS; + +typedef struct tagNET_DVR_CALL_QUERY_RESULT +{ + DWORD dwSize; + BYTE bySearchID[MAX_SEARCH_ID_LEN]; //ËÑË÷±êʶ·û + BYTE byStatus; //²éѯ״̬ ²Î¿¼CALL_QUERY_RESULT_STATUS½á¹¹Ìå + BYTE byRes[3]; //±£Áô + DWORD dwCount; //ʵ¼Ê²éѯµ½µÄ½á¹û¸öÊý + BYTE *pResults; //½á¹ûÄÚÈÝ£¬dwCount¸öNET_DVR_CALL_QUERY_SINGLE,ÐèÒªµ÷ÓÃÕßÔ¤ÏÈ·ÖÆÁºÃÄÚ´æ + BYTE byRes2[32]; +}NET_DVR_CALL_QUERY_RESULT, *LPNET_DVR_CALL_QUERY_RESULT; + +typedef struct tagNET_DVR_CONFERENCE_CALL_INFO +{ + BYTE byConferenceID[MAX_ID_LEN]; //»áÒéID + BYTE byConferenceName[NAME_LEN]; //»áÒéÃû³Æ + NET_DVR_TIME struStartTime; //»áÒ鿪ʼʱ¼ä + NET_DVR_TIME struEndTime; //»áÒé½áÊøʱ¼ä + BYTE byRes[512]; +}NET_DVR_CONFERENCE_CALL_INFO, *LPNET_DVR_CONFERENCE_CALL_INFO; + +typedef union tagNET_DVR_CALL_INFO +{ + BYTE byRes[640]; + NET_DVR_TERMINAL_CALL_INFO struTerminalCallInfo; //Öն˵ã¶Ôµãºô½ÐÐÅÏ¢ + NET_DVR_CONFERENCE_CALL_INFO struConferenceCallInfo; //»áÒéºô½ÐÐÅÏ¢ +}NET_DVR_CALL_INFO, *LPNET_DVR_CALL_INFO; + +typedef struct tagNET_DVR_CONFERENCE_CALL_ALARM +{ + DWORD dwSize; + BYTE byAlarmType; //±¨¾¯ÀàÐÍ£¬1-»áÒéºô½Ð£¬ 2-ºô½Ð״̬Çл»£¬3-ÖÕ¶ËÌáÎÊ + BYTE byCallType; //ºô½ÐÀàÐÍ£¬±¨¾¯ÀàÐÍΪ1ʱÓÐЧ£¬1-Öն˵ã¶Ôµãºô½Ð£¬2-»áÒéºô½Ð + BYTE byAutoAnswer; //ÊÇ·ñÒÑ×Ô¶¯½ÓÌý£¬0-·ñ£¬1-ÊÇ + BYTE byCallStatusSwitch; //ºô½Ð״̬Çл»ÀàÐÍ£¬µ±±¨¾¯ÀàÐÍΪ2ʱÓÐЧ£¬1-¿ªÊ¼ºô½Ð£¬2-ºô½Ð³É¹¦£¬3-ºô½Ð½áÊø£¬4-¶Ô¶Ë¹Ò¶Ï + NET_DVR_CALL_INFO struCallInfo; //ºô½ÐÐÅÏ¢ + BYTE byRes2[32]; +}NET_DVR_CONFERENCE_CALL_ALARM, *LPNET_DVR_CONFERENCE_CALL_ALARM; + +typedef struct tagNET_DVR_TERMINAL_INPUT_CFG +{ + DWORD dwSize; + DWORD dwInputNo; //×÷ΪÊÓƵ»áÒéÊäÈëµÄÊäÈë¿Ú±àºÅ + BYTE byStreamType;//ÂëÁ÷ÀàÐÍ£º0-Ö÷ÂëÁ÷£¬1-×ÓÂëÁ÷£¬2-ÈýÂëÁ÷ + BYTE byRes[31]; +}NET_DVR_TERMINAL_INPUT_CFG, *LPNET_DVR_TERMINAL_INPUT_CFG; + +typedef struct tagNET_DVR_AUDIO_STATUS +{ + BYTE byMute; //ÊÇ·ñ¾²Òô£¬0-·ñ£¬1-ÊÇ + BYTE byVolume; //»áÒéÒôÁ¿£¬1-100£¬·Ç¾²ÒôʱÓÐЧ + BYTE byAudioInputDisabled; //½ûÓÃÒôƵÊäÈ룬0-·ñ£¬1-ÊÇ + BYTE byAudioInputVolume; //ÒôƵÊäÈëÒôÁ¿£¬1-100£¬ÔÊÐíÒôƵÊäÈëʱÓÐЧ + BYTE byRes[32]; +}NET_DVR_AUDIO_STATUS, *LPNET_DVR_AUDIO_STATUS; + +typedef struct tagNET_DVR_TERMINAL_CONFERENCE_STATUS +{ + DWORD dwSize; + BYTE byConferenceState; //»áÒé״̬£¬0-¿ÕÏУ¬1-æµ£¨»áÒéÖУ©£¬2-ºô½ÐÖУ¬3-±»ºô½ÐÖÐ + BYTE byConferenceType; //»áÒéÀàÐÍ£¬1-µã¶Ôµã£¬2-MCU·¢Æð»áÒé + BYTE byDualStreamEnabled; //ÊÇ·ñ¿ªÆôË«Á÷£¬0-먦Æô£¬1-¿ªÆô + BYTE byMicPowerEnabled; //Âó¿Ë·çµçÔ´ÊÇ·ñ¿ªÆô£¬0-먦Æô£¬1-¿ªÆô + DWORD dwInputNo; //ʹÓõÄÒôƵÊäÈë¿ÚºÅ + NET_DVR_CALL_INFO struCallInfo; //»áÒéÐÅÏ¢ + NET_DVR_AUDIO_STATUS struAudioStatus; //ÒôƵÏà¹Ø״̬ + BYTE byRes2[32]; +}NET_DVR_TERMINAL_CONFERENCE_STATUS, *LPNET_DVR_TERMINAL_CONFERENCE_STATUS; + +//ÖÕ¶Ë×¢²áGKÐÅÏ¢ +typedef struct tagNET_DVR_TERMINAL_GK_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓà + BYTE byRegisterState; //×¢²á״̬£¬0-δע²á£¬1-ÒÑ×¢²á£¬Ö»¶Á + BYTE byRes1[2]; + NET_DVR_IPADDR struGKIP; //GK IP + WORD wGKPort; //GK¶Ë¿ÚºÅ + BYTE byRes2[2]; + BYTE byRegisterName[REGISTER_NAME_LEN]; //ÖÕ¶Ë×¢²áµ½GKµÄÃû×Ö + BYTE byPassword[PASSWD_LEN]; //ÖÕ¶Ë×¢²áµ½GKµÄÃÜÂë + BYTE byRes3[16]; +}NET_DVR_TERMINAL_GK_CFG, *LPNET_DVR_TERMINAL_GK_CFG; + +//½âÂëÆ÷ÂþÓοª¹Ø²ÎÊý +typedef struct tagNET_DVR_WIN_ROAM_SWITCH_CFG +{ + DWORD dwSize; + BYTE byEnableRoam; //ÊÇ·ñÔÊÐí´°¿ÚÂþÓΣ¬0-·ñ£¬·Ç0-ÊÇ + BYTE byRes[31]; +}NET_DVR_WIN_ROAM_SWITCH_CFG,*LPNET_DVR_WIN_ROAM_SWITCH_CFG; + +typedef struct tagNET_DVR_LED_OUTPUT_CFG +{ + DWORD dwSize; + BYTE byEnableZoom; //ÊÇ·ñËõ·Å£¬0-·ñ£¬1-ÊÇ + BYTE byAutoCutBlackEdge; //ÊÇ·ñ×Ô¶¯²Ã¼ôºÚ±ß£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[2]; + WORD wLEDWidth; //·Ö±æÂÊ¿í + WORD wLEDHeight; //·Ö±æÂÊ¸ß + DWORD dwRefreshRate; //Ë¢ÐÂƵÂÊ + DWORD dwInputNO; //¹ØÁªµÄÊäÈëͨµÀºÅ + BYTE byRes2[32]; +}NET_DVR_LED_OUTPUT_CFG, *LPNET_DVR_LED_OUTPUT_CFG; + +typedef struct tagNET_DVR_LED_OUTPUT_PORT_CFG +{ + DWORD dwSize; + BYTE byEnabled; //ÊÇ·ñʹÄÜ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + DWORD dwPortNum; //°üº¬µÄ¶Ë¿Ú¸öÊý + DWORD dwPortNo[MAX_OUTPUT_PORT_NUM]; //°üº¬µÄ¶Ë¿ÚºÅ + BYTE byRes2[64]; +}NET_DVR_LED_OUTPUT_PORT_CFG, *LPNET_DVR_LED_OUTPUT_PORT_CFG; + +typedef struct tagNET_DVR_LINE_COLUMN_INFO +{ + WORD wLine; //ÐкŠ+ WORD wColumn; //ÁкŠ+}NET_DVR_LINE_COLUMN_INFO, *LPNET_DVR_LINE_COLUMN_INFO; + +typedef struct tagNET_DVR_LED_DISPLAY_AREA +{ + DWORD dwSize; + NET_DVR_LINE_COLUMN_INFO struLCInfo; //ÏÔʾÇøÓòµÄÆðʼλÖÃ(½ÓÊÕ¿¨ÐÐÁкÅ) + WORD wWidth; //ºáÏò½ÓÊÕ¿¨Êý + WORD wHeight; //ÊúÏò½ÓÊÕ¿¨Êý + WORD wRecvCardWidth; //½ÓÊÕ¿¨¿í¶È´óС£¬Îª0ÔòʹÓö˿ڲÎÊýÖнÓÊÕ¿¨´óС²ÎÊý + WORD wRecvCardHeigt; //½ÓÊÕ¿¨¸ß¶È´óС£¬Îª0ÔòʹÓö˿ڲÎÊýÖнÓÊÕ¿¨´óС²ÎÊý + BYTE byRes[32]; +}NET_DVR_LED_DISPLAY_AREA, *LPNET_DVR_LED_DISPLAY_AREA; + +typedef struct tagNET_DVR_LED_RECV_CARD_INFO +{ + NET_DVR_LINE_COLUMN_INFO struPos; //½ÓÊÕ¿¨Î»Öà + WORD wRecvCardWidth; //½ÓÊÕ¿¨¿í¶È´óС + WORD wRecvCardHeigt; //½ÓÊÕ¿¨¸ß¶È´óС +}NET_DVR_LED_RECV_CARD_INFO, *LPNET_DVR_LED_RECV_CARD_INFO; + +typedef struct tagNET_DVR_LED_PORT_BACKUP +{ + BYTE byEnabled; //ÊÇ·ñÆôÓö˿ڱ¸·Ý£¬0-·ñ£¬1-ÊÇ + BYTE byPortMode; //¶Ë¿Úģʽ£¬1-Ö÷¿Ú£¬2-±¸·Ý¿Ú + BYTE byRes1[2]; + DWORD dwPairPort; //Åä¶Ô¶Ë¿ÚºÅ£¬µ±¶Ë¿ÚΪÖ÷¿Úʱ£¬´Ë²ÎÊýΪ±¸·Ý¿Ú¶Ë¿ÚºÅ£¬µ±¶Ë¿ÚΪ±¸·Ý¿Úʱ£¬´Ë²ÎÊýΪÖ÷¿Ú¶Ë¿ÚºÅ + BYTE byRes2[16]; +}NET_DVR_LED_PORT_BACKUP, *LPNET_DVR_LED_PORT_BACKUP; + +typedef struct tagNET_DVR_LED_PORT_CFG +{ + DWORD dwSize; + BYTE byEnabled; //ÊÇ·ñÆôÓøö˿ڣ¬0-·ñ£¬1-ÊÇ + BYTE byRes1[3]; + NET_DVR_LED_PORT_BACKUP struLedPortBackup; //¶Ë¿Ú±¸·Ý²ÎÊý + DWORD dwRecvCardNum; //±¾¶Ë¿ÚÁ¬½ÓµÄ½ÓÊÕ¿¨Êý + NET_DVR_LED_RECV_CARD_INFO struRecvCard[MAX_SINGLE_PORT_RECVCARD_NUM]; //¸÷½ÓÊÕ¿¨µÄÐÅÏ¢ + DWORD dwPortNo; //¶Ë¿ÚºÅ£¬»ñÈ¡ËùÓж˿ڲÎÊýʱÓÐЧ + BYTE byRes2[64]; +}NET_DVR_LED_PORT_CFG, *LPNET_DVR_LED_PORT_CFG; + +typedef struct tagNET_DVR_LED_DISPLAY_CFG +{ + DWORD dwSize; + NET_DVR_COLOR_TEMPERATURE_CFG struColorTemp; //ɫβÎÊý + NET_DVR_VIDEO_OUT_CFG struVoutCfg; //ÏÔʾЧ¹û²ÎÊý + BYTE byRes[32]; +}NET_DVR_LED_DISPLAY_CFG, *LPNET_DVR_LED_DISPLAY_CFG; + +typedef struct tagNET_DVR_LED_TEST_SIGNAL_CFG +{ + DWORD dwSize; + BYTE byEnabled; //ÊÇ·ñÆôÓòâÊÔÐźţ¬0-²»ÆôÓã¬1-ÆôÓà + BYTE bySignalType; //²âÊÔÐźÅÀàÐÍ£¬1-²ÊÌõ£¬2-²¨ÎÆ£¬3-¸ñ×´²ÊÌõ£¬4-·½¸ñ£¬5-ˮƽºÍ´¹Ö±»Ò½×ÁªºÏÌ壬6-ÆåÅÌ£¬0xff-×Ô¶¨ÒåÑÕÉ« + BYTE byRes1[2]; + NET_DVR_RGB_COLOR struSignalColor; //²âÊÔÐźÅÑÕÉ«£¬²âÊÔÐźÅÀàÐÍΪ0xffʱÓÐЧ + BYTE byRes[32]; +}NET_DVR_LED_TEST_SIGNAL_CFG, *LPNET_DVR_LED_TEST_SIGNAL_CFG; + +typedef struct tagNET_DVR_LED_NOSIGNAL_CFG +{ + DWORD dwSize; + BYTE byNoSignalMode; //ÎÞÐźÅÏÔʾģʽ£¬1-ºÚÆÁ£¬2-ÏÔʾ³§¼ÒLOGO£¬3-ÏÔʾ×Ô¶¨ÒåͼƬ + BYTE byRes[63]; +}NET_DVR_LED_NOSIGNAL_CFG, *LPNET_DVR_LED_NOSIGNAL_CFG; + +typedef struct tagNET_DVR_LED_INPUT_CFG +{ + DWORD dwSize; + DWORD dwResolutionWidth; //ÊäÈë·Ö±æÂÊ¿í£¬Ö»¶Á + DWORD dwResolutionHeight; //ÊäÈë·Ö±æÂʸߣ¬Ö»¶Á + DWORD dwRefreshRate; //ÊäÈëÐźÅË¢ÐÂƵÂÊ£¬Ö»¶Á + NET_DVR_SCREEN_VGA_CFG struVgaCfg; //VGAÐźŵ÷Õû²ÎÊý£¬VGAÊäÈëʱ¿Éµ÷ + BYTE byRes[32]; +}NET_DVR_LED_INPUT_CFG, *LPNET_DVR_LED_INPUT_CFG; + +typedef struct tagNET_DVR_LED_RECV_CARD_CFG_COND +{ + DWORD dwSize; + DWORD dwOutputNo; //Êä³ö±àºÅ + NET_DVR_LINE_COLUMN_INFO struPosStart; //½ÓÊÕ¿¨ÆðʼλÖà + NET_DVR_LINE_COLUMN_INFO struPosEnd; //½ÓÊÕ¿¨½áÊøλÖà + BYTE byRes[32]; +}NET_DVR_LED_RECV_CARD_CFG_COND, *LPNET_DVR_LED_RECV_CARD_CFG_COND; + +typedef struct tagNET_DVR_LED_GAMMA_CFG_COND +{ + DWORD dwSize; + DWORD dwOutputNo; //Êä³ö±àºÅ; + NET_DVR_LINE_COLUMN_INFO struPosStart; //½ÓÊÕ¿¨ÆðʼλÖà + NET_DVR_LINE_COLUMN_INFO struPosEnd; //½ÓÊÕ¿¨½áÊøλÖà + BYTE byGammaType; //Gamma±íÀàÐÍ£¬Gamma±íÅäÖÃʱÓÐЧ£¬0-RGB»ìºÏGamma±í£¬1-ºìÉ«Gamma±í£¬2-ÂÌÉ«Gamma±í£¬3-À¶É«Gamma±í + BYTE byRes[31]; +}NET_DVR_LED_GAMMA_CFG_COND, *LPNET_DVR_LED_GAMMA_CFG_COND; + +typedef struct tagNET_DVR_LED_GAMMA_CFG +{ + DWORD dwSize; + WORD wGammaValue[MAX_GAMMA_X_VALUE]; //GAMMA±íYÈ¡Öµ£¬Ã¿¸öÔªËØÈ¡Öµ0-65535£¬×Ô¶¨ÒåģʽʱÓÐЧ + BYTE byGammaModel; //GAMMA±íģʽ£¬0-×Ô¶¨Òåģʽ£¬1-ҹģʽ1£¬2-ҹģʽ2£¬3-Õý³£Ä£Ê½£¬4-ÈÕÕÕģʽ1£¬5-ÈÕÕÕģʽ2 + BYTE byRes[127]; +}NET_DVR_LED_GAMMA_CFG, *LPNET_DVR_LED_GAMMA_CFG; + +typedef struct tagNET_DVR_LED_CLOCK_CFG +{ + DWORD dwDclkRate; //´«ÊäʱÖÓdclkƵÂÊ£¬Êµ¼ÊÖµ³Ë10£¬µ¥Î»£ºMHz£¬Êµ¼ÊÖµ·¶Î§1.0-31.3 + DWORD dwGclkRate; //Ë¢ÐÂʱÖÓgclkƵÂÊ£¬Êµ¼ÊÖµ³Ë10£¬µ¥Î»£ºMHz£¬Êµ¼ÊÖµ·¶Î§1.0-31.3 + DWORD dwGclkCountNum; //300ns gclk¼ÆÊýÖµ + BYTE byDclkDutyRatio; //dclkʱÖÓÕ¼¿Õ±È£¬È¡Öµ£º25£¬50£¬75 + BYTE byDclkPhase; //dclkÏàλ£¬È¡Öµ£º0,1,2,3 + BYTE byGclkNum; //Ë¢ÐÂ1ÐÐÐèÒªµÄÓÐЧgclk¸öÊý£¬0-255 + BYTE byRes[17]; +}NET_DVR_LED_CLOCK_CFG, *LPNET_DVR_LED_CLOCK_CFG; + +typedef struct tagNET_DVR_LED_RECV_CFG +{ + DWORD dwSize; + NET_DVR_LED_CLOCK_CFG struClockCfg; //ʱÖÓÏà¹Ø²ÎÊý + BYTE byGrayLevel; //»Ò¶ÈµÈ¼¶£¬È¡Öµ13£¬14 + BYTE byRefreshRate; //ˢб¶ÂÊ£¬È¡Öµ1-6 + BYTE byLineScanNum; //ÐÐɨÊý£¬0-255 + BYTE byRefreshCompleteGrayNum; //Ë¢ÐÂÍêÕû»Ò½×Êý£¬0-255 + DWORD dwHBlank; //ÐÐÏûÒþʱ¼ä£¬µ¥Î»£ºgclkʱÖÓ¸öÊý£¬È¡Öµ1-65535 + DWORD dwAfterglowCtrl; //ÓàêÍ¿ØÖƽáÊøʱ¼ä£¬µ¥Î»£ºgclkʱÖÓ¸öÊý£¬È¡Öµ1-65535 + DWORD dwLineFeedTime; //»»ÐÐʱ¼ä£¬µ¥Î»£ºgclkʱÖÓ¸öÊý£¬È¡Öµ1-65535 + BYTE byRes[128]; +}NET_DVR_LED_RECV_CFG, *LPNET_DVR_LED_RECV_CFG; + +typedef struct tagNET_DVR_LED_REGISTOR_VALUE +{ + BYTE byChip1High; //оƬ1¸ß×Ö½Ú + BYTE byChip1Low; //оƬ1µÍ×Ö½Ú + BYTE byChip2High; //оƬ2¸ß×Ö½Ú + BYTE byChip2Low; //оƬ2µÍ×Ö½Ú + BYTE byChip3High; //оƬ3¸ß×Ö½Ú + BYTE byChip3Low; //оƬ3µÍ×Ö½Ú + BYTE byChip4High; //оƬ4¸ß×Ö½Ú + BYTE byChip4Low; //оƬ4µÍ×Ö½Ú + BYTE byChip5High; //оƬ5¸ß×Ö½Ú + BYTE byChip5Low; //оƬ5µÍ×Ö½Ú + BYTE byChip6High; //оƬ6¸ß×Ö½Ú + BYTE byChip6Low; //оƬ6µÍ×Ö½Ú + BYTE byRes[4]; +}NET_DVR_LED_REGISTOR_VALUE, *LPNET_DVR_LED_REGISTOR_VALUE; + +typedef struct tagNET_DVR_LED_RECV_REGISTOR +{ + BYTE byEliminateGhostShadowLevel; //ϹíÓ°Ïû³ýµÈ¼¶£¬0-5 + BYTE byEliminateShadowy; //µÚһɨƫ°µÏû³ýµÈ¼¶£¬0-15 + BYTE byGrayEqualize1; //µÍ»ÒÆ«É«²¹³¥1£¬0-3 + BYTE byGrayEqualize2; //µÍ»ÒÆ«É«²¹³¥2£¬0-15 + BYTE byEnableGrayUniformity; //µÍ»Ò¾ùÔÈÐÔÌáÉýÊÇ·ñ¿ªÆô£¬0-¹Ø£¬1-¿ª + BYTE byDisableHGrayStripes; //µÍ»ÒºáÌõÎÆÏû³ýÊÇ·ñ¿ªÆô£¬0-¹Ø£¬1-¿ª + BYTE byGhostShadowEnhancedMode1; //ϹíÓ°Ïû³ýÔöǿģʽ1ÊÇ·ñ¿ªÆô£¬0-¹Ø£¬1-¿ª + BYTE byGhostShadowEnhancedMode2; //ϹíÓ°Ïû³ýÔöǿģʽ2ÊÇ·ñ¿ªÆô£¬0-¹Ø£¬1-¿ª + BYTE byClearBadPoint; //È¥³ý»µµãʹÄÜ£¬0-·ÇʹÄÜ£¬1-ʹÄÜ + BYTE byEnableSelfDefineRegistor; //ÊÇ·ñÆôÓÃ×Ô¶¨Òå¼Ä´æÆ÷Öµ£¬0-·ñ£¬1-ÊÇ + BYTE byRes1[2]; + NET_DVR_LED_REGISTOR_VALUE struRegistorValue; //×Ô¶¨Òå¼Ä´æÆ÷²ÎÊý + BYTE byEnabledExGradientOptimition; //½¥±ä¹ý¶ÈÓÅ»¯¿ª¹Ø£¬0-¹Ø±Õ£¬!0-¿ªÆô + BYTE byDummyGClockCycle; //Dummy GClockÖÜÆÚ£¬¿ªÆô½¥±ä¹ý¶ÈÓÅ»¯Ê±ÓÐЧ£¬µ¥Î»£º¸ögclk + BYTE byDummyGClockHighTime; //Dummy GClock¸ßµçƽʱ¼ä£¬¿ªÆô½¥±ä¹ý¶ÈÓÅ»¯Ê±ÓÐЧ£¬µ¥Î»£º8ns + BYTE byFirstGClockExtendedTime; //µÚÒ»¸öGClockÕ¹¿íʱ¼ä£¬¿ªÆô½¥±ä¹ý¶ÈÓÅ»¯Ê±ÓÐЧ£¬µ¥Î»£º8ns + BYTE byRes[28]; +}NET_DVR_LED_RECV_REGISTOR, *LPNET_DVR_LED_RECV_REGISTOR; + +typedef struct tagNET_DVR_LED_RECV_ADVANCED_CFG +{ + DWORD dwSize; + NET_DVR_LED_RECV_REGISTOR struFirstRegistor; //µÚÒ»×é½ÓÊÕ¿¨¸ß¼¶²ÎÊý£¬×Ô¶¨Òå¼Ä´æÆ÷ֵΪºìоƬ¼Ä´æÆ÷Öµ + NET_DVR_LED_RECV_REGISTOR struSecondRegistor; //µÚ¶þ×é½ÓÊÕ¿¨¸ß¼¶²ÎÊý£¬×Ô¶¨Òå¼Ä´æÆ÷ֵΪÂÌоƬ¼Ä´æÆ÷Öµ + NET_DVR_LED_RECV_REGISTOR struThirdRegistor; //µÚÈý×é½ÓÊÕ¿¨¸ß¼¶²ÎÊý£¬×Ô¶¨Òå¼Ä´æÆ÷ֵΪÀ¶Ð¾Æ¬¼Ä´æÆ÷Öµ + BYTE byRes2[64]; +}NET_DVR_LED_RECV_ADVANCED_CFG,*LPNET_DVR_LED_RECV_ADVANCED_CFG; + +typedef struct tagNET_DVR_LED_CHECK_COND +{ + DWORD dwSize; + DWORD dwOutputNo; //ÊäÈë±àºÅ + NET_DVR_LINE_COLUMN_INFO struPosStart; //½ÓÊÕ¿¨ÆðʼλÖà + BYTE byStartPosType; //ÆðʼλÖÃÀàÐÍ£¬0-ʹÓýÓÊÕ¿¨ÆðʼλÖã¬1-ʹÓÃ×ø±êλÖà + BYTE byRes1[3]; + DWORD dwXCoordinate; /*¾ØÐÎ×óÉϽÇÆðʼµãX×ø±ê*/ + DWORD dwYCoordinate; /*¾ØÐÎ×óÉϽÇY×ø±ê*/ + DWORD dwWidth; /*ÇøÓò¿í¶È*/ + DWORD dwHeight; /*ÇøÓò¸ß¶È*/ + BYTE byRes[8]; +}NET_DVR_LED_CHECK_COND, *LPNET_DVR_LED_CHECK_COND; + +//²éѯ·½Ê½ +enum ADDR_QUERY_TYPE +{ + QUERYSVR_BY_COUNTRYID = 0, //°´¹ú¼Ò±àºÅ²éѯ·þÎñÆ÷µØÖ· + QUERYSVR_BY_SERVERTYPE = 1, //±£Áô + QUERYDEV_BY_NICKNAME_DDNS = 2, //°´êdzƴÓhiDDNSÉϲéѯÉ豸ÐÅÏ¢ + QUERYDEV_BY_SERIAL_DDNS = 3, //°´ÐòÁкŴÓhiDDNSÉϲéѯÉ豸ÐÅÏ¢ + CHECKDEV_BY_NICKNAME_DDNS = 4,//°´êdzƴÓhiDDNSÕï¶ÏÉ豸ÐÅÏ¢ + CHECKDEV_BY_SERIAL_DDNS = 5, //°´ÐòÁкŴÓhiDDNSÕï¶ÏÉ豸ÐÅÏ¢ + QUERYDEV_BY_NICKNAME_IPSERVER = 6, //°´êdzƴÓIPServerÉϲéѯÉ豸ÐÅÏ¢ + QUERYDEV_BY_SERIAL_IPSERVER = 7 //°´êdzƴÓIPServerÉϲéѯÉ豸ÐÅÏ¢ +}; +#define CLIENT_VERSION_LEN 64 +//°´¹ú¼Ò±àºÅ²éѯµÄÌõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_COUNTRYID_COND +{ + WORD wCountryID; //¹ú¼Ò±àºÅ,È¡ÖµÏê¼û¸½¼þÒ» + char szSvrAddr[MAX_DOMAIN_NAME];//·þÎñÆ÷µØÖ·,±íʾȥÄĸö·þÎñÆ÷ÉϲéѯĿ±ê·þÎñÆ÷µÄÐÅÏ¢ + char szClientVersion[CLIENT_VERSION_LEN];//¿Í»§¶Ë°æ±¾ÐÅÏ¢,ÀýÈç:iVMS4500 V4.0.0.0 build20150112 + BYTE byRes[382]; +}NET_DVR_QUERY_COUNTRYID_COND,*LPNET_DVR_QUERY_COUNTRYID_COND; + +//°´¹ú¼Ò±àºÅ²éѯµÄ·µ»Ø½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_COUNTRYID_RET +{ + char szResolveSvrAddr[MAX_DOMAIN_NAME];//½âÎö·þÎñÆ÷µØÖ·(¼´É豸ע²á·þÎñÆ÷) + char szAlarmSvrAddr[MAX_DOMAIN_NAME];//±¨¾¯·þÎñÆ÷µØÖ· + BYTE byRes[1024]; +}NET_DVR_QUERY_COUNTRYID_RET,*LPNET_DVR_QUERY_COUNTRYID_RET; + +//°´·þÎñÆ÷ÀàÐͲéѯµÄÌõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_SERVERTYPE_COND +{ + WORD wSvrType; //·þÎñÆ÷ÀàÐÍ, 6-ÊÖ»úÍÆËÍ·þÎñÆ÷ + char szSvrAddr[MAX_DOMAIN_NAME];//·þÎñÆ÷µØÖ·,±íʾȥÄĸö·þÎñÆ÷ÉϲéѯĿ±ê·þÎñÆ÷µÄÐÅÏ¢ + char szClientVersion[CLIENT_VERSION_LEN];//¿Í»§¶Ë°æ±¾ÐÅÏ¢ + BYTE byRes[382]; +}NET_DVR_QUERY_SERVERTYPE_COND, *LPNET_DVR_QUERY_SERVERTYPE_COND; + +//°´·þÎñÆ÷ÀàÐͲéѯµÄ·µ»Ø½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_SERVERTYPE_RET +{ + char szSvrAddr[MAX_DOMAIN_NAME]; //·þÎñÆ÷µØÖ· + WORD wSvrPort; //·þÎñÆ÷¶Ë¿Ú + BYTE byRes[446]; +}NET_DVR_QUERY_SERVERTYPE_RET, *LPNET_DVR_QUERY_SERVERTYPE_RET; + +//´ÓhiDDNSÉϲéѯ»òÕï¶ÏµÄÌõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_DDNS_COND +{ + char szResolveSvrAddr[MAX_DOMAIN_NAME];//½âÎö·þÎñÆ÷µØÖ· + char szDevNickName[MAX_DOMAIN_NAME]; //É豸ÔÚ½âÎö·þÎñÆ÷ÉϵıðÃû + char szDevSerial[SERIALNO_LEN]; //É豸ÐòÁкŠ+ char szClientVersion[CLIENT_VERSION_LEN];//¿Í»§¶Ë°æ±¾ÐÅÏ¢,ÀýÈç:iVMS4500 V4.0.0.0 build20150112 + BYTE byRes[272]; //±£Áô +}NET_DVR_QUERY_DDNS_COND,*LPNET_DVR_QUERY_DDNS_COND; + +//´ÓhiDDNSÉϲéѯ·µ»ØµÄ½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_DDNS_RET +{ + char szDevIP[SDK_MAX_IP_LEN]; //É豸IPµØÖ· + WORD wCmdPort; //¿ØÖƶ˿ڣ¨SDKÁ¬½Ó¶Ë¿Ú£© + WORD wHttpPort; //http¶Ë¿Ú + BYTE byRes[460]; +}NET_DVR_QUERY_DDNS_RET,*LPNET_DVR_QUERY_DDNS_RET; + +//´ÓhiDDNSÉÏÕï¶Ï·µ»ØµÄ½á¹¹Ìå +typedef struct tagNET_DVR_CHECK_DDNS_RET +{ + BYTE byDevStatus; //É豸״̬,0-Õý³£,1-ÕÒ²»µ½,2-É豸²»ÔÚÏß,3-É豸²»ÔÚµ±Ç°ÇøÓò + BYTE byRes1; + NET_DVR_QUERY_DDNS_RET struQueryRet; //µØÖ·ÐÅÏ¢ + WORD wRegionID; //µ±Ç°É豸ע²áÇøÓò±àºÅ[1ÃÀ¹ú,2ÄÏÃÀ,3ÑÇÌ«,4Öйú,5Å·ÖÞ,6ÆäËü] + BYTE byRes2[508]; +}NET_DVR_CHECK_DDNS_RET,*LPNET_DVR_CHECK_DDNS_RET; + +//´ÓIPServerÉϲéѯµÄÌõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_IPSERVER_COND +{ + char szResolveSvrAddr[MAX_DOMAIN_NAME];//½âÎö·þÎñÆ÷µØÖ· + WORD wResolveSvrPort; //½âÎö·þÎñÆ÷¶Ë¿Ú + char szDevNickName[MAX_DOMAIN_NAME]; //É豸ÔÚ½âÎö·þÎñÆ÷ÉϵıðÃû + char szDevSerial[SERIALNO_LEN]; //É豸ÐòÁкŠ+ BYTE byRes[334]; //±£Áô +}NET_DVR_QUERY_IPSERVER_COND,*LPNET_DVR_QUERY_IPSERVER_COND; + +//´ÓIPServerÉϲéѯ·µ»ØµÄ½á¹¹Ìå +typedef struct tagNET_DVR_QUERY_IPSERVER_RET +{ + char szDevIP[SDK_MAX_IP_LEN]; //É豸IPµØÖ· + WORD wCmdPort; //¿ØÖƶ˿ڣ¨SDKÁ¬½Ó¶Ë¿Ú£© + BYTE byRes[462]; +}NET_DVR_QUERY_IPSERVER_RET,*LPNET_DVR_QUERY_IPSERVER_RET; + +typedef struct tagNET_DVR_CURRENT_VALID_PORT +{ + DWORD dwSize; + WORD wHTTPPort; + BYTE byRes[122]; +}NET_DVR_CURRENT_VALID_PORT,*LPNET_DVR_CURRENT_VALID_PORT; + +typedef struct tagNET_DVR_AUDIO_CHANNEL +{ + DWORD dwChannelNum; //ͨµÀºÅ + BYTE byres[32]; //±£Áô +}NET_DVR_AUDIO_CHANNEL, *LPNET_DVR_AUDIO_CHANNEL; + +//ÂëÁ÷¼ÓÃÜÌõ¼þ½á¹¹ +typedef struct tagNET_DVR_STREAMENCRYPTION_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChan; //Ô¤ÀÀͨµÀºÅ + BYTE byRes[128]; +}NET_DVR_STREAMENCRYPTION_COND, *LPNET_DVR_STREAMENCRYPTION_COND; + +//ÂëÁ÷¼ÓÃÜÐÅÏ¢½á¹¹ +typedef struct tagNET_DVR_STREAMENCRYPTION_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÆôÓÃÂëÁ÷¼ÓÃÜ£¬0~¹Ø±Õ£¬1~¿ªÆô + BYTE byRes[255]; +}NET_DVR_STREAMENCRYPTION_CFG, *LPNET_DVR_STREAMENCRYPTION_CFG; + +//У׼µÄGPS¾­Î³¶È²ÎÊý +typedef struct tagNET_DVR_REVISE_GPS_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byLatitudeType ;//γ¶ÈÀàÐÍ£¬0-±±Î³£¬1-ÄÏγ + BYTE byLongitudeType ;// ¾­¶ÈÀàÐÍ£¬0-¶«¶È£¬1-Î÷¶È + BYTE byMode ;//ģʽ 0-ĬÈÏ£¬1-×Ô¶¯£¬2-ÊÖ¶¯ + BYTE byRes; + NET_DVR_LLI_PARAM struLatitude; /*γ¶È*/ + NET_DVR_LLI_PARAM struLongitude; /*¾­¶È*/ + BYTE byRes1[300]; +}NET_DVR_REVISE_GPS_CFG, *LPNET_DVR_REVISE_GPS_CFG; + +typedef struct tagNET_DVR_PDC_RECOMMEND +{ + DWORD dwSize; + WORD wWidth;//ÍƼö¿í¶ÈÖµ[0, 1000] + BYTE byRes[126]; +}NET_DVR_PDC_RECOMMEND,*LPNET_DVR_PDC_RECOMMEND; + +typedef struct tagNET_DVR_FLASHSTORAGE_REMOVE +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byPDCRemoveEnable;//Çå³ý¿ÍÁ÷Êý¾ÝʹÄÜ 0-²»Çå³ý£¬1-Çå³ý + BYTE byRes[127]; +}NET_DVR_FLASHSTORAGE_REMOVE,*LPNET_DVR_FLASHSTORAGE_REMOVE; + +/********************************DS-TME4XX¿ØÖÆ»ú¿ª·¢ Begin****************************/ +typedef struct tagNET_DVR_PARKING_CARD +{ + DWORD dwSize; + DWORD dwChannel;//ĬÈÏÊÇ1£¨ºóÐø¼æÈݶàͨµÀÉ豸£© + char szCardNo[MAX_CARDNO_LEN/*48*/];//¿¨ºÅ + BYTE byCardType;//¿¨Æ¬ÀàÐÍ 0-ÁÙʱ¿¨£¬1-¹Ì¶¨¿¨ + BYTE byCardStatus;//¿¨Æ¬×´Ì¬ 0-Õý³££¬1-¹Òʧ£¬2-×¢Ïú + BYTE byChargeRuleID;//ÊշѹæÔòID + BYTE byDelete;//ÊÇ·ñɾ³ý 0-²»É¾³ý£¬1-ɾ³ý + NET_DVR_TIME_V30 struStartTime;//ÓÐЧ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//ÓÐЧ½áÊøʱ¼ä + BYTE byRes[128]; +}NET_DVR_PARKING_CARD,*LPNET_DVR_PARKING_CARD; + +//³öÈë¿Ú¿¨Æ¬ÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_GATE_CARDINFO +{ + DWORD dwSize; + NET_VCA_DEV_INFO struDevInfo; + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + char szCardNo[MAX_CARDNO_LEN/*48*/];//¿¨ºÅ + char szPassVehicleID[MAX_VEHICLE_ID_LEN];//Ψһ±êʶ + char szInVehicleID[MAX_VEHICLE_ID_LEN];//³ö¿ÚʱµÄÈë¿ÚΨһ±êʶ + NET_DVR_TIME_V30 struSwipeTime;//Ë¢¿¨Ê±¼ä + NET_DVR_TIME_V30 struCardTime;//¿¨Æ¬´æµÄʱ¼ä£¬¼´È볡ʱдÈëµÄʱ¼ä£¬Ö»¶Ô³ö¿ÚƱÏäÓÐÓã¬0±íʾÎÞÈ볡ʱ¼ä + BYTE byLetPass;//³öÈë¿Ú·ÅÐз½Ê½ 0-²»·ÅÐÐ(µ±CardType == ֽƱ)ÐèÒªÊÕ·Ñ£¬1-·ÅÐУ¬2-ÖÐÐÄÊÕ·Ñ·ÅÐÐ + BYTE byCardType;//¿¨ÀàÐÍ 0-¹Ì¶¨¿¨£¬1-ÁÙʱ¿¨£¬2-ֽƱ + BYTE byRes[126]; +}NET_DVR_GATE_CARDINFO, *LPNET_DVR_GATE_CARDINFO; + +//ÔĄ̂×÷ÒµÊý¾ÝÉÏ´« +typedef struct _tagNET_LOADING_DOCK_OPERATEINFO_ +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byAbsTime[32]; //¾ø¶Ôʱ¼äµã,yyyymmddhhmmssxxx,e.g.20090810235959999 ×îºóÈýλΪºÁÃëÊý + BYTE byParkingNo[MAX_PARKNO_LEN/*16*/];//³µÎ»±àºÅ + DWORD dwIndex; //³µÁ¾ÐòºÅ + char sLicense[MAX_LICENSE_LEN/*16*/]; //³µÅƺÅÂë,×¢£ºÖж«³µÅÆÐèÇó°ÑС×ÖÒ²ÄÉÈë³µÅƺÅÂ룬С×ֺͳµÅƺÅÖмäÓÿոñ·Ö¸ô + BYTE byCurrentWorkerNumber;//µ±Ç°×÷ÒµÈËÊý + BYTE byCurrentGoodsLoadingRate;//µ±Ç°»õÎï×°ÔØÂÊ 0-¿Õ 1-ÉÙ 2-ÖÐ 3-¶à 4-Âú + BYTE byDoorsStatus;//³µÃÅ״̬ 0-³µÃÅ¹Ø±Õ 1-³µÃÅ¿ªÆô + BYTE byRes1; //±£Áô×Ö½Ú + DWORD dwBackPicDataLength;//±³¾°Í¼Æ¬³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64)) //win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE *pBackPicDataBuffer; //±³¾°Í¼Æ¬Êý¾ÝÖ¸Õë +#else + BYTE* pBackPicDataBuffer; // ±³¾°Í¼Æ¬Êý¾ÝÖ¸Õë + BYTE byRes2[4]; +#endif + DWORD dwChannel; //ͨµÀºÅ£¬0-²»Ö§³Ö£¨´æÔÚÀϵÄÉ豸²»Ö§³ÖͨµÀºÅ·µ»Ø£© + BYTE byRes[508]; +}NET_LOADING_DOCK_OPERATEINFO, *LPNET_LOADING_DOCK_OPERATEINFO; + +//³öÈë¿Ú¸¶·ÑÐÅÏ¢ÉÏ´«(COMM_GATE_CHARGEINFO_UPLOAD) +typedef struct tagNET_DVR_GATE_CHARGEINFO +{ + DWORD dwSize; + NET_VCA_DEV_INFO struDevInfo; + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + char sLicense[MAX_LICENSE_LEN]; //³µÅÆ + char szCardNo[48]; + NET_DVR_TIME_V30 struEntranceTime; + NET_DVR_TIME_V30 struDepartureTime; + char szDepartureID[32]; //³ö³¡Î¨Ò»¹ý³µ±êʾ + char szEntranceID[32]; //È볡Ψһ¹ý³µ±êʾ + DWORD dwTotalCost; //ʵ¼ÊÊշѽð¶î*100 + char szOperateName[32]; //ÍÑ»úÏÂΪ"offline" + BYTE byChargeRuleId; //ÊշѹæÔòcenterId + BYTE byVehicleType;//³µÁ¾ÀàÐÍ£¬0-ÆäËû³µÁ¾£¬1-СÐͳµ£¬2-´óÐͳµ + BYTE byRes[127];//Ô¤Áô +}NET_DVR_GATE_CHARGEINFO,*LPNET_DVR_GATE_CHARGEINFO; + +//Í£³µ³¡Í£³µ¿¨¿ØÖƽṹÌå +typedef struct tagNET_DVR_PARKING_CARD_CTRL_PARAM +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byCardType;//¿¨Æ¬ÀàÐÍ 0-ÁÙʱ¿¨ + BYTE byDeleteALL;//ÊÇ·ñÈ«²¿É¾³ý 0-²»É¾³ý£¬1-ɾ³ý + BYTE byRes[62]; +}NET_DVR_PARKING_CARD_CTRL_PARAM,*LPNET_DVR_PARKING_CARD_CTRL_PARAM; + + +//TME³µÁ¾×¥Í¼ÉÏ´« +typedef struct tagNET_DVR_TME_VEHICLE_RESULT_ +{ + DWORD dwSize; + WORD wLaneid; //³µµÀºÅ1¡«32£¨Ë÷Òý³µµÀºÅ£¬¿ÉÒÔÌøÔ¾£© + BYTE byCamLaneId; //¶ÔÓ¦Ïà»ú³µµÀºÅ1¡«16£¨Ïà»úÅäÖõijµµÀºÅ£¬¿ÉÒÔÌøÔ¾£¬¿ÉÒÔÏàͬ£© + BYTE byRes1; //±£Áô + DWORD dwChanIndex; //ͨµÀºÅ + NET_DVR_PLATE_INFO struPlateInfo; //³µÅÆÐÅÏ¢½á¹¹ + NET_DVR_VEHICLE_INFO struVehicleInfo; //³µÁ¾ÐÅÏ¢ + BYTE byMonitoringSiteID[48]; //¼à²âµã±àºÅ + BYTE byDeviceID[48]; //É豸±àºÅ + BYTE byDir; //¼à²â·½Ïò£¬0-ÆäËü 1 È볡£¬2 ³ö³¡ + BYTE byRes2; + WORD wBackList; //±ê¼ÇΪÊÇ·ñ±¨¾¯Êý¾Ý 0 ±íʾΪÕý³£¹ý³µÊý¾Ý 1 ±íʾ½ûÖ¹Ãûµ¥ + DWORD dwPicNum; //ͼƬÊýÁ¿£¨ÓëpicGroupNum²»Í¬£¬´ú±í±¾ÌõÐÅÏ¢¸½´øµÄͼƬÊýÁ¿£¬Í¼Æ¬ÐÅÏ¢ÓÉstruVehicleInfoEx¶¨Òå + NET_ITS_PICTURE_INFO struPicInfo[4]; //ͼƬÐÅÏ¢,Ôݶ¨×î¶à4ÕÅͼ + BYTE byPassVehicleID[32]; //³µÁ¾Î¨Ò»ID + BYTE byCardNo[48]; // ¿¨ºÅ + BYTE bySwipeTime[32];//Ôö¼ÓË¢¿¨Ê±¼ä ʱ¼ä¸ñʽΪyyyymmddhh24missfff + DWORD dwCharge; //Êշѽð¶î £¨·Ö£© + BYTE byHistory; //ÊÇ·ñÊÇÀúÊ·Êý¾Ý 0-·ñ 1-ÊÇ + BYTE byLetPass; //ÊÇ·ñÒÑ·ÅÐУ¬0-δ·ÅÐУ¬1-·ÅÐÐ 2-δ֪ + BYTE byRes3[186]; +} NET_DVR_TME_VEHICLE_RESULT, *LPNET_DVR_TME_VEHICLE_RESULT; + +//µØ´Å¹ÜÀíÆ÷×¢²áÏûÏ¢ +typedef struct tagNET_DVR_MVMRegisterInfo_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + char sDetectorID[16]; //¼ì²âÆ÷ID + char sManagerID[16]; //¹ÜÀíÆ÷ID + char sSim[20]; //¿¨ºÅÐÅÏ¢ + DWORD dwLocalIP; //±¾µØIPv4µØÖ·£¬ÀýÈçdwLocalIP=0x01020304,ÔòIPµØַΪ1.2.3.4 + DWORD dwLocalIPMask; //±¾µØÍøÂç×ÓÍøÑÚÂ룬¸ñʽͬdwLocalIP + DWORD dwLocalGateway; //±¾µØÍø¹Ø£¬¸ñʽͬdwLocalIP + DWORD dwDstIP; //Ä¿±êIP£¬¸ñʽͬdwLocalIP + BYTE byMACAddr[6]; //±¾µØmacµØÖ· + WORD wLocalPort; //±¾µØ¶Ë¿Ú + WORD wFirmwareYear; //Èí¼þ°æ±¾Äê·Ý + BYTE byFirmwareMonth; //Èí¼þ°æ±¾ÔÂ·Ý + BYTE byFirmwareDay; //Èí¼þ°æ±¾ÈÕ + BYTE byMajorVersion; //°æ±¾Ð¡ÊýµãÇ° + BYTE byMinorVersion; //°æ±¾Ð¡Êýµãºó + BYTE byRes[170]; +}NET_DVR_MVMRegisterInfo, *LPNET_DVR_MVMRegisterInfo; + +//µØ´Å״̬ÐÅÏ¢ +typedef struct tagNET_DVR_SingleMagneticStatus_ +{ + DWORD dwSize; //½á¹¹Ìå´óС + char sDetectorID[16]; //¼ì²âÆ÷ID + char sManagerID[16]; //¹ÜÀíÆ÷ID + char sParkNum[16]; //³µÎ»±àºÅ + NET_DVR_TIME_V30 struDetectorTime; //¼ì²âʱ¼ä + DWORD dwRssi; //½ÓÊÕÐźÅÇ¿¶È£¬Êµ¼ÊÖµ·¶Î§-137~0dbm£¬´Ë´¦Ã»ÓзûºÅ£¬ÎªÊµ¼ÊÖµµÄ¾ø¶ÔÖµ + BYTE byParkinglotState; //³µÎ»×´Ì¬£¬0-ÎÞ³µ£¬1-Óгµ + BYTE byBatteryState; //µç³Ø״̬£¬0-100%£¬1-75%£¬2-50%£¬3-25%£¬4-СÓÚ5% + BYTE byDeviceState; //É豸״̬ 0-Õý³££¬1-¹ÊÕÏ + BYTE byCMD; //0-³µÎ»±ä»¯±¨¾¯£¬1-¼ì²âÆ÷ÐÄÌø±¨¾¯ + BYTE byRes[184]; +}NET_DVR_SingleMagneticStatus, *LPNET_DVR_SingleMagneticStatus; + +//³µÁ¾ÐÅϢͬ²½ +typedef struct tagNET_DVR_PARKING_VEHICLE +{ + DWORD dwSize; + DWORD dwChannel;//ĬÈÏÊÇ1£¨ºóÐø¼æÈݶàͨµÀÉ豸£© + char szLicense[MAX_LICENSE_LEN/*16*/];//³µÅƺÅÂë + char szRelateCardNo[MAX_CARDNO_LEN/*48*/];//¹ØÁª¿¨ºÅ + NET_DVR_TIME_V30 struStartTime;//ÓÐЧ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//ÓÐЧ½áÊøʱ¼ä + BYTE byVehicleType;//³µÁ¾ÀàÐÍ£º0-ÆäËû³µÁ¾£¬1-СÐͳµ£¬2-´óÐͳµ + BYTE byPlateColor;//³µÅÆÑÕÉ«£¬²Î¿¼ VCA_PLATE_COLOR + BYTE byRes[126]; +}NET_DVR_PARKING_VEHICLE,*LPNET_DVR_PARKING_VEHICLE; + +//½É·Ñ½ð¶îÐÅÏ¢ +typedef struct tagNET_DVR_CHARGEACCOUNT_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + float fAccount;//ʵ¼ÊÊշѽð¶î + BYTE byRes[128]; +}NET_DVR_CHARGEACCOUNT_CFG,*LPNET_DVR_CHARGEACCOUNT_CFG; + +//Í£³µ³¡Æ±Ïä´ÓÊôÉ豸¶à½Ç¶È²ÎÊýÅäÖà +typedef struct tagNET_DVR_PXMULTICTRL_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwMultiChansWaitTime;//¶à½Ç¶È×¥ÅÄÆ¥Åäʱ¼ä£¨1~300s£© + BYTE byMultiChansCapEnabled;//ÊÇ·ñÆôÓöà½Ç¶È×¥ÅÄ 0-·ñ£¬1-ÊÇ + BYTE byRes[127]; +}NET_DVR_PXMULTICTRL_CFG,*LPNET_DVR_PXMULTICTRL_CFG; + +//Í£³µ³¡Æ±ÏäÍÑ»úϲÎÊýÅäÖà +typedef struct tagNET_DVR_PXOFFLINE_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled;//ÊÇ·ñÆôÓÃƱÏäÍÑ»úģʽ£º0-²»ÆôÓà 1-ÆôÓà + BYTE byChargeEnabled;//ÊÇ·ñÍÑ»úÊÕ·Ñ 0-·ñ£¬1-ÊÇ + BYTE byAlarmEnabled;//ÊÇ·ñÆôÓÃÍÑ»ú±¨¾¯ 0-·ñ£¬1-ÊÇ + BYTE byRecordSource;//¼Ç¼²úÉúÒÀ¾Ý 0-ÅÆʶ 1-¶Á¿¨ + DWORD dwTimeWait;//ƱÏä½øÈëÍÑ»úģʽǰµÄµÈ´ýʱ¼ä£¨1-300Ã룩 + /** + realeaseMode&(0x1<<0) ¹Ì¶¨³µ·ÅÐÐ + realeaseMode&(0x1<<1) ¹Ì¶¨¿¨·ÅÐÐ + realeaseMode&(0x1<<2) ÁÙʱ³µ·ÅÐÐ + realeaseMode&(0x1<<3) ÁÙʱ¿¨·ÅÐÐ + realeaseMode&(0x1<<4) ÎÞ³µÅÆ·ÅÐÐ + realeaseMode&(0x1<<5) ¹Ì¶¨³µÈôÃâ·ÑÔò×Ô¶¯·ÅÐÐ + realeaseMode&(0x1<<6) ÁÙʱ³µÈôÃâ·ÑÔò×Ô¶¯·ÅÐÐ + */ + DWORD dwRealeaseMode; //·ÅÐз½Ê½£¬°´Î»±íʾ + BYTE byVehCardmatch;//³µ¿¨Ò»Ö 0-·ñ£¬1-ÊÇ + BYTE bySingleInSingleOut;//µ¥½øµ¥³ö 0-·ñ£¬1-ÊÇ + BYTE byRes[126]; +}NET_DVR_PXOFFLINE_CFG,*LPNET_DVR_PXOFFLINE_CFG; + +typedef struct tagNET_DVR_PARKINGSAPCE_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwTotalParkingLot;//×ÜÍ£³µÎ»Êý + DWORD dwCurrParkingLot;//µ±Ç°Ê£ÓàÍ£³µÎ»Êý + BYTE byRes[128]; +}NET_DVR_PARKINGSAPCE_CFG,*LPNET_DVR_PARKINGSAPCE_CFG; + +typedef struct tagNET_DVR_PAPERCHARGEINFO_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + char szBarCode[LEN_16];//ÌõÐÎÂ루16λ×Ö·û´®£© + char szLicense[MAX_LICENSE_LEN]; //³µÅƺÅÂë + char szVehicleInTime[LEN_32];//È볡ʱ¼ä£¨32λ×Ö·û´® YYYY-MM-DD HH:MM:SS£© + char szPaymentTime[LEN_32];//½É·Ñʱ¼ä£¨32λ×Ö·û´® YYYY-MM-DD HH:MM:SS£© + float fPaymentAmount;//½É·Ñ½ð¶î + DWORD dwPaymentOutFailureTime;//½É·Ñ³ö³¡Ê§Ð§Ê±¼ä£¨DWORD£© + BYTE byVehicleOutEnabled; //ÊÇ·ñ³ö³¡: 0- ·ñ£¬1- ÊÇ + BYTE byRes[128]; +}NET_DVR_PAPERCHARGEINFO_CFG,*LPNET_DVR_PAPERCHARGEINFO_CFG; + +//Í£³µ³¡Æ±Ïä²ÎÊý +typedef struct tagNET_DVR_ILLEGALCARDFILTERING_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + char sLEDDefaultInfo[MAX_LED_INFO_LEN/*512*/]; // LEDĬÈÏÏÔʾÄÚÈÝ + BYTE byillegalCardFilteringEnabled;//ÆôÓ÷Ƿ¨¿¨¹ýÂË,0~²»ÆôÓã¬1~ÆôÓà + BYTE bySendCardSensingCoilEnabled;//·¢¿¨»úÊÇ·ñ¹ØÁªµØ¸ÐÏßȦ + BYTE byWiegendSensingCoilEnabled;//Ô¶¾àÀ뿨ÊÇ·ñ¹ØÁªµØ¸ÐÏßȦ + BYTE byGateSwitchEnabled; //ÊÇ·ñÓеÀÕ¢¿ª¹ØÐÅÏ¢ + BYTE byVerifyKeyWriteCardEnabled;//ÊÇ·ñÑéÖ¤ÃÜÔ¿ºÍд¿¨ + BYTE byNoplateTakeCardEnabled;// ÊÇ·ñÆôÓÃÎÞ³µÅÆȡƾ¾Ý·ÅÐÐ + BYTE byRes[126]; +}NET_DVR_ILLEGALCARDFILTERING_CFG,*LPNET_DVR_ILLEGALCARDFILTERING_CFG; + + +//Í£³µ³¡³öÈë¿Ú³µ¿¨ÊշѹæÔò¹æÔòÌõ¼þ½á¹¹ +typedef struct tagNET_DVR_TME_CHARGERULE_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + char szCardNo[32];//¿¨ºÅ + BYTE byRes[128]; +}NET_DVR_TME_CHARGERULE_COND, *LPNET_DVR_TME_CHARGERULE_COND; + +//LEDÆÁÄ»ÏÔʾ²ÎÊý +typedef struct tagNET_DVR_LEDDISPLAY_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + char sDisplayInfo[MAX_LED_INFO_LEN/*512*/]; // LEDÏÔʾÄÚÈÝ + BYTE byDisplayMode;//ÏÔʾ·½Ê½:0~×óÒÆ,1~ÓÒÒÆ,2~Á¢¼´ÏÔʾ + BYTE bySpeedType;//ËÙ¶ÈÀàÐÍ:0~¿ì,1~ÖÐ,2~Âý + BYTE byShowPlateEnable;//ÏÔʾ³µÅÆʹÄÜ£¬0~¹Ø±Õ£¬1~ÆôÓà + BYTE byRes1; + DWORD dwShowTime;//ÏÔʾʱ³¤£¬1~60Ãë + BYTE byRes[128]; +}NET_DVR_LEDDISPLAY_CFG,*LPNET_DVR_LEDDISPLAY_CFG; + +//ÓïÒô²¥±¨¿ØÖƲÎÊý +typedef struct tagNET_DVR_VOICEBROADCAST_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + char sInfo[MAX_VOICE_INFO_LEN/*128*/]; //ÓïÒô²¥±¨ÄÚÈÝ + BYTE byBroadcastNum;// ÓïÒô²¥±¨´ÎÊý£¬ 1~10´Î + BYTE byIntervalTime;// ÓïÒô²¥±¨¼ä¸ôʱ¼ä,1~5s + BYTE byRes[126]; +}NET_DVR_VOICEBROADCAST_CFG,*LPNET_DVR_VOICEBROADCAST_CFG; + +//ֽƱ´òÓ¡¸ñʽ²ÎÊý +typedef struct tagNET_DVR_PAPERPRINTFORMAT_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + char sTitleInfo[MAX_LITLE_INFO_LEN/*64*/]; //ֽƱ±êÌâÄÚÈÝ + char sCustomInfo[MAX_CUSTOM_INFO_LEN/*64*/]; //ֽƱ×Ô¶¨ÒåÐÅÏ¢ÄÚÈÝ + char sPhoneNum[MAX_PHONE_NUM_LEN/*16*/];//ÁªÏµµç»° + BYTE byPrintInTimeEnabled; //ÊÇ·ñ´òÓ¡È볡ʱ¼ä + BYTE byRes[127]; +}NET_DVR_PAPERPRINTFORMAT_CFG,*LPNET_DVR_PAPERPRINTFORMAT_CFG; + + +//ÖÇÄÜËøբʱ¼ä¶Î +typedef struct tagNET_DVR_LOCKGATE_TIME_CFG +{ + char sBeginTime[LEN_32];//¿ªÊ¼Ê±¼ä£¨32λ×Ö·û´® HH:MM:SS£© + char sEndTime[LEN_32];//½áÊøʱ¼ä£¨32λ×Ö·û´® HH:MM:SS£© + BYTE byRes[64]; +}NET_DVR_LOCKGATE_TIME_CFG,*LPNET_DVR_LOCKGATE_TIME_CFG; + +//ÖÇÄÜËøÕ¢²ÎÊý +typedef struct tagNET_DVR_LOCKGATE_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_LOCKGATE_TIME_CFG struTime[LOCKGATE_TIME_NUM]; //ÖÇÄÜËøբʱ¼ä¶Î + BYTE byRes[128]; +}NET_DVR_LOCKGATE_CFG,*LPNET_DVR_LOCKGATE_CFG; + +//Êý¾Ýͬ²½×´Ì¬ +typedef struct NET_DVR_PARKING_DATASTATE_INFO +{ + DWORD dwSize; + char szAppSerialNum [MAX_APP_SERIALNUM_LEN/*32*/];//Ó¦ÓÃÐòÁкÅ, ´ú±íµ±Ç°ËùÁ¬½ÓµÄÓ¦Óà + DWORD dwParkingNum; //µ±Ç°Í£³µ³¡ºÅ + DWORD dwUpdataSerialNum; //¸üÐÂÐòÁкÅ; ´ú±í×îºó¸üеÄÐòÁкš£ + BYTE byRes[256]; +} NET_DVR_PARKING_DATASTATE_INFO,*LPNET_DVR_PARKING_DATASTATE_INFO; + +//Áª¶¯EPTZ²ÎÊý +typedef struct tagNET_DVR_EPTZ_CFG +{ + DWORD dwSize; + BYTE byEnableEPTZ; //ÊÇ·ñÆôÓÃEPTZ, 0-²»ÆôÓã¬1 -ÆôÓà + BYTE byRes[503]; +}NET_DVR_EPTZ_CFG, *LPNET_DVR_EPTZ_CFG; + +//ÖÐÐĵã²ÎÊý +typedef struct tagNET_DVR_CENTER_POINT_CFG +{ + DWORD dwSize; + NET_VCA_POLYGON struRegion;//ÇøÓò·¶Î§ + BYTE byRes[512]; +}NET_DVR_CENTER_POINT_CFG, *LPNET_DVR_CENTER_POINT_CFG; + +/********************************DS-TME4XX¿ØÖÆ»ú¿ª·¢ End****************************/ + +/********************************IPC FF³µÅÆ Start****************************/ +typedef struct tagNET_DVR_FTPUPLOAD_PARAM +{ + char szRuleTypeItem[MAX_SINGLE_FTPPICNAME_LEN/*20*/]; + char szCameraName[MAX_CAMNAME_LEN/*32*/]; + BYTE byRes[64]; +}NET_DVR_FTPUPLOAD_PARAM, *LPNET_DVR_FTPUPLOAD_PARAM; + +//char szRuleTypeItem[MAX_SINGLE_FTPPICNAME_LEN/*20*/]; +//ÀïÃæÄÚÈÝÊǹ̶¨×Ö·û´® capture_time,plate_No,alarm_type,camera_name +//Êý×éϱê±íʾÏȺó˳Ðò + +//char szCameraName[MAX_CAMNAME_LEN/*32*/]; +//ÒÀÀµÓÚszRuleTypeItemÖÐ×ֶαíʾÄÚÈÝΪ camera_name µÄÇé¿ö + +typedef struct tagNET_DVR_FTPUPLOADCFG +{ + DWORD dwSize; + BYTE byEventType; //ʼþÀàÐÍ£¬0-ĬÈÏ£¬1-³µÁ¾¼ì²â + BYTE byMode; //ͼƬÃüÃûģʽ£¬0-ĬÈÏ£¬1-×Ô¶¨Òå + BYTE byRes[62]; + NET_DVR_FTPUPLOAD_PARAM struCustomVehicle[MAX_FTPNAME_NUM/*12*/]; + BYTE byRes1[1024] ; +}NET_DVR_FTPUPLOADCFG, *LPNET_DVR_FTPUPLOADCFG; + +/********************************IPC FF³µÅÆ End****************************/ + +//ÐÅÏ¢·¢²¼ÖÕ¶ËÉý¼¶ +typedef struct tagNET_DVR_PUBLISH_UPGRADE_COND +{ + DWORD dwSize; + DWORD dwUpgradeType; //Éý¼¶ÀàÐÍ£¬1-°´ÖÕ¶ËÉý¼¶£¬2-°´ÖÕ¶Ë×éÉý¼¶ + DWORD dwTerminalNum; //Éý¼¶µÄÖն˸ñʽ£¬°´ÖÕ¶ËÉý¼¶Ê±ÓÐЧ + DWORD *pTerminalNo; //ÐèÒªÉý¼¶µÄÖն˺ţ¬°´ÖÕ¶ËÉý¼¶Ê±ÓÐЧ + DWORD dwGroupNo; //ÖÕ¶Ë×éºÅ£¬°´ÖÕ¶Ë×éÉý¼¶Ê±ÓÐЧ + BYTE byRes[32]; +}NET_DVR_PUBLISH_UPGRADE_COND, *LPNET_DVR_PUBLISH_UPGRADE_COND; +//WEP¼ÓÃÜÃÜÔ¿ +typedef struct tagNET_DVR_WEP_KEY_CFG +{ + char csWEPKey[WEP_KEY_MAX_SIZE/*32*/];//¼ÓÃÜÃÜÔ¿£¬ + BYTE byRes[64]; +}NET_DVR_WEP_KEY_CFG, *LPNET_DVR_WEP_KEY_CFG; + +typedef struct tagNET_DVR_SUB_UPGRADE_PROGRESS +{ + DWORD dwTerminalNo; //Öն˺Š+ DWORD dwProgress; //ÖÕ¶ËÉý¼¶½ø¶È£¬0-100£¬101±íʾ´ËÖÕ¶ËÉý¼¶³öÏÖÒì³£,,102-Öն˽âѹʧ°Ü£¬103-Éý¼¶°ü°æ±¾²»Æ¥Å䣬104-·ÇÉý¼¶Îļþ£¬105-·Ç·¨Ç©ÃûÉý¼¶°ü +}NET_DVR_SUB_UPGRADE_PROGRESS, *LPNET_DVR_SUB_UPGRADE_PROGRESS; + +typedef struct tagNET_DVR_UPGRADE_PROGRESS_RESULT +{ + DWORD dwSize; + DWORD dwMainProgress; //Ö÷½ø¶È£¬0-100 + DWORD dwSubProgressNum; //×Ó½ø¶È¸öÊý + LPNET_DVR_SUB_UPGRADE_PROGRESS lpStruSubProgress; //¸÷ÖÕ¶ËÉý¼¶µÄ×Ó½ø¶È£¬dwSubProgressNum¸öNET_DVR_SUB_UPGRADE_PROGRESSÄÚÈÝ + BYTE byRes[32]; +}NET_DVR_UPGRADE_PROGRESS_RESULT, *LPNET_DVR_UPGRADE_PROGRESS_RESULT; + +//ÐÅÏ¢·¢²¼·þÎñÆ÷Èճ̷¢²¼½ø¶È +typedef struct tagNET_DVR_SCHEDULE_PROGRESS_COND +{ + DWORD dwSize; + DWORD dwScheduleNo; //Èճ̺Š+ BYTE byProgressType; //»ñÈ¡µÄ½ø¶ÈÀàÐÍ£¬1-°´×é»ñÈ¡½ø¶È£¬2-°´Öն˻ñÈ¡½ø¶È£¬3-°´×éÖ¯»ñÈ¡½ø¶È + BYTE byRes1[3]; + DWORD dwGroupNo; //ÖÕ¶Ë×éºÅ»ò×éÖ¯£¬½ø¶ÈÀàÐÍΪ1£¬3ʱÓÐЧ + DWORD dwTerminalNo; //Öն˺ţ¬½ø¶ÈÀàÐÍΪ2ʱÓÐЧ + BYTE byRes2[32]; +}NET_DVR_SCHEDULE_PROGRESS_COND, *LPNET_DVR_SCHEDULE_PROGRESS_COND; + +typedef struct tagNET_DVR_SUB_SCHEDULE_PROGRESS +{ + DWORD dwTerminalNo; //Öն˺Š+ DWORD dwProgress; //ÖÕ¶ËÈճ̷¢²¼½ø¶È£¬0-100£¬101±íʾ´ËÖÕ¶ËÈճ̷¢²¼³öÏÖÒì³£,102±íʾ´ËÖն˴洢¿Õ¼ä²»×ã,103-Öն˲»ÔÚÏߣ¬104-Öն˾ܾø£¬105-·þÎñÆ÷ºÍÖÕ¶ËÍøÂçÖÐ¶Ï +}NET_DVR_SUB_SCHEDULE_PROGRESS, *LPNET_DVR_SUB_SCHEDULE_PROGRESS; + +typedef struct tagNET_DVR_SCHEDULE_PROGRESS_RESULT +{ + DWORD dwSize; + DWORD dwMainProgress; //Ö÷½ø¶È£¬0-100£¬°´×é»ñÈ¡½ø¶ÈʱΪÕû×éÈճ̷¢²¼½ø¶È£¬°´Öն˻ñÈ¡½ø¶ÈʱΪµ¥¸öÖÕ¶ËÈճ̷¢²¼½ø¶È + DWORD dwSubProgressNum; //×Ó½ø¶È¸öÊý£¬°´×é»ñȡʱÓÐЧ£¬±íʾ×éϸ÷Öն˽ø¶È¸öÊý + LPNET_DVR_SUB_SCHEDULE_PROGRESS lpStruSubProgress; //¸÷ÖÕ¶ËÈճ̷¢²¼µÄ×Ó½ø¶È£¬°´×é»ñȡʱÓÐЧ£¬dwSubProgressNum¸öNET_DVR_SUB_SCHEDULE_PROGRESSÄÚÈÝ + BYTE byRes[32]; +}NET_DVR_SCHEDULE_PROGRESS_RESULT, *LPNET_DVR_SCHEDULE_PROGRESS_RESULT; + +//ÐÅÏ¢·¢²¼²å²¥½ø¶È +typedef struct tagNET_DVR_INSERTPLAY_PROGRESS_COND +{ + DWORD dwSize; + BYTE byInsertType; //²å²¥ÀàÐÍ£¬1-Ëزģ¬2-½ÚÄ¿ + BYTE byRes3[3]; + DWORD dwInsertNo; //Èç¹û²å²¥ÀàÐÍÊÇËزģ¬ÎªËزıàºÅ£¬Èç¹û²å²¥ÀàÐÍÊǽÚÄ¿£¬Îª½ÚÄ¿±àºÅ + BYTE byProgressType; //»ñÈ¡µÄ½ø¶ÈÀàÐÍ£¬1-°´×é»ñÈ¡½ø¶È£¬2-°´Öն˻ñÈ¡½ø¶È + BYTE byRes1[3]; + DWORD dwGroupNo; //ÖÕ¶Ë×éºÅ£¬½ø¶ÈÀàÐÍΪ1ʱÓÐЧ + DWORD dwTerminalNo; //Öն˺ţ¬½ø¶ÈÀàÐÍΪ2ʱÓÐЧ + BYTE byRes2[32]; +}NET_DVR_INSERTPLAY_PROGRESS_COND, *LPNET_DVR_INSERTPLAY_PROGRESS_COND; + +typedef struct tagNET_DVR_SUB_INSERTPLAY_PROGRESS +{ + DWORD dwTerminalNo; //Öն˺Š+ DWORD dwProgress; //Öն˲岥½ø¶È£¬0-100£¬101±íʾ´ËÖն˲岥³öÏÖÒì³£,102±íʾ´ËÖն˴洢¿Õ¼ä²»×ã,103±íʾȡÏû²å²¥,104²å²¥Ëزı»Ìæ»» +}NET_DVR_SUB_INSERTPLAY_PROGRESS, *LPNET_DVR_SUB_INSERTPLAY_PROGRESS; + +typedef struct tagNET_DVR_INSERTPLAY_PROGRESS_RESULT +{ + DWORD dwSize; + DWORD dwMainProgress; //Ö÷½ø¶È£¬0-100£¬°´×é»ñÈ¡½ø¶ÈʱΪÕû×é²å²¥½ø¶È£¬°´Öն˻ñÈ¡½ø¶ÈʱΪµ¥¸öÖն˲岥½ø¶È + DWORD dwSubProgressNum; //×Ó½ø¶È¸öÊý£¬°´×é»ñȡʱÓÐЧ£¬±íʾ×éϸ÷Öն˽ø¶È¸öÊý + LPNET_DVR_SUB_INSERTPLAY_PROGRESS lpStruSubProgress; //¸÷Öն˲岥µÄ×Ó½ø¶È£¬°´×é»ñȡʱÓÐЧ£¬dwSubProgressNum¸öNET_DVR_SUB_INSERTPLAY_PROGRESSÄÚÈÝ + BYTE byRes[32]; +}NET_DVR_INSERTPLAY_PROGRESS_RESULT, *LPNET_DVR_INSERTPLAY_PROGRESS_RESULT; + + + + +//WEP²ÎÊý +typedef struct tagNET_DVR_WEP_CFG +{ + BYTE byAuthenticationType;//Éí·ÝÑéÖ¤ÀàÐÍ£»0~¿ªÆôÑéÖ¤£»1~¹²ÏíÃÜÔ¿£»2~×Ô¶¯ÑéÖ¤ + BYTE byDefaultTransmitKeyIndex;//ĬÈÏ´«ÊäÃÜÔ¿¸öÊý£¬1~4¸ö¡£¶ÔÓ¦µ½struEncryptionKeyCfg¼ÓÃÜÃÜÔ¿µÄ¸öÊý¡£ + /* + µ±Îª64λÃÜԿʱ£¬ASCIIÂëÃÜÔ¿×Ö·û³¤¶ÈΪ5¸ö¡£ + µ±Îª128λÃÜԿʱ£¬ASCIIÂëÃÜÔ¿×Ö·û³¤¶ÈΪ13¸ö¡£ + */ + BYTE byWepKeyLenType;//ÃÜÔ¿ÀàÐÍ£»0~ 64λÃÜÔ¿£¬1~ 128λÃÜÔ¿¡£ + BYTE byKeyType;// ÃÜÔ¿ÀàÐÍ£»0~ ASCIIÂ룬1~ 16½øÖÆ¡£ + NET_DVR_WEP_KEY_CFG struWEPKeyCfg[WEP_KEY_MAX_NUM/*4*/];// WEP¼ÓÃÜÃÜÔ¿£¬×î´óÖ§³Ö4¸ö¡£ + BYTE byRes[128]; +}NET_DVR_WEP_CFG, *LPNET_DVR_WEP_CFG; + +//WPA²ÎÊý +typedef struct tagNET_DVR_WPA_CFG +{ + BYTE byAlgorithmType; //Ëã·¨ÀàÐÍ£»0~TKIP, 1~AES, 2~TKIP/AES + BYTE byWPAKeyLen;// WPA¹²ÏíÃÜÔ¿³¤¶È£¬Çø¼äΪ8~63£¬¶ÔÓ¦µ½csSharedKey²ÎÊýµÄ×Ö·û³¤¶È + BYTE byDefaultPassword;//ÊÇ·ñÆôÓÃĬÈÏWPAÃÜÔ¿ + BYTE byRes1; + char csSharedKey[WPA_KEY_MAX_SIZE/*64*/];//WPA¹²ÏíÃÜÔ¿,Ϊ8-63¸öASCII×Ö·û + BYTE byRes[128]; +}NET_DVR_WPA_CFG, *LPNET_DVR_WPA_CFG; + + +typedef struct tagNET_DVR_WIRELESS_SECURITY_CFG +{ + BYTE bySecurityMode; //°²È«Ä£Ê½£»0~½ûÓÃ,1~WEP,2~WPA-personal, 3~WPA2-personal + NET_DVR_WEP_CFG struWEPCfg; //µ±°²È«Ä£Ê½Ñ¡ÔñΪWEPʱÉúЧ¡£ + NET_DVR_WPA_CFG struWPACfg; //µ±°²È«Ä£Ê½Ñ¡ÔñΪWPA-personal¡¢WPA2-personalʱÉúЧ¡£ + BYTE byRes[256]; +} NET_DVR_WIRELESS_SECURITY_CFG,*LPNET_DVR_WIRELESS_SECURITY_CFG; + +//wifiÈȵã²ÎÊýÅäÖÃ(ÍêÕû°æ) +typedef struct tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byWifiAPEnabled; //ÊÇ·ñÆôÓÃÎÞÏßAP£º0-·ñ£¬1- ÊÇ + BYTE byBroadcastEnabled; // ÊÇ·ñÆôÓù㲥£¬0-·ñ£¬1-ÊÇ + BYTE byWlanShareEnabled; //ÊÇ·ñÆôÓù²Ïí£¬0-·ñ£¬1-ÊÇ + BYTE byDHCPEnabled; //ÊÇ·ñÆôÓÃDHCP£¬0-·ñ£¬1-ÊÇ + BYTE bySSID[IW_ESSID_MAX_SIZE]; //SSID + BYTE byRes1[11]; + BYTE byIPType; //IPµØÖ·ÀàÐÍ£¬0-IPv4,1-IPv6 + NET_DVR_IPADDR struIPAddr; //IPµØÖ· + NET_DVR_IPADDR struIPMask; //ÑÚÂëµØÖ· + NET_DVR_IPADDR struGatewayIPMask; //Íø¹ØµØÖ· + NET_DVR_IPADDR struStartIPAddrPool; //IP¶ÎÆðʼµØÖ· + NET_DVR_IPADDR struEndIPAddrPool; // IP¶Î½áÊøµØÖ· + NET_DVR_IPADDR struDNSServerIpAddr[MAX_DNS_SERVER_NUM]; //DNSµØÖ· + NET_DVR_WIRELESS_SECURITY_CFG struWirelessSecurityCfg;//ÎÞÏß°²È«¼ÓÃܲÎÊý + BYTE byRes[256]; +}NET_DVR_WIRELESSSERVER_FULLVERSION_CFG, *LPNET_DVR_WIRELESSSERVER_FULLVERSION_CFG; + +typedef struct tagNET_DVR_OPTICAL_DEV_CHAN_INFO +{ + DWORD dwChannel; //ͨµÀºÅ£¬0ΪÎÞЧ + BYTE byChannelName[NAME_LEN]; + BYTE bySignal; //ÊÇ·ñÓÐÐźţ¬0-ÎÞ£¬1-ÓУ¬Ö»¶Á + BYTE bySignalType; //ÐźÅÔ´ÀàÐÍ£¬1-±êÇ壬2-¸ßÇ壬ÓÐÐźÅʱÓÐЧ£¬Ö»¶Á + BYTE byRes[10]; +}NET_DVR_OPTICAL_DEV_CHAN_INFO, *LPNET_DVR_OPTICAL_DEV_CHAN_INFO; + +typedef struct tagNET_DVR_OPTICAL_DEV_NODE +{ + BYTE byValid; //ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ + BYTE byRes1[3]; + DWORD dwDevNo; //¹â¶Ë»úºÅ + BYTE byDevName[NAME_LEN]; //½Úµã¹â¶Ë»úÃû³Æ + BYTE byDevID[MAX_ID_LEN]; //¹â¶Ë»úÎïÀíID£¬É豸Ψһ±êʶ£¬Ö»¶Á + NET_DVR_OPTICAL_DEV_CHAN_INFO struChannel[MAX_CHANNUM]; + BYTE byRes2[32]; +}NET_DVR_OPTICAL_DEV_NODE, *LPNET_DVR_OPTICAL_DEV_NODE; + +#define MAX_OPTICAL_DEV_NODE 32 //×î¶à½Úµã¹â¶Ë»úÊý + +typedef struct tagNET_DVR_OPTICAL_PORT_INFO +{ + DWORD dwSize; + BYTE byValid; //ÊÇ·ñÓÐÐźŽÓÈ룬0-ÎÞ£¬1-ÓУ¬Ö»¶Á + BYTE byLinkType; //Á´Â·ÀàÐÍ£¬1-»·Íø£¬2-Á´Íø£¬Ö»¶Á + BYTE byPortWorkMode; //¶Ë¿Ú¹¤×÷ģʽ£¬0-ÎÞЧ£¬1-Ö÷¿Ú£¬2-¸¨¿Ú£¬µ±Á´Â·ÀàÐÍΪ»·ÍøʱÓÐЧ£¬Ö»¶Á + BYTE byRes1[1]; + DWORD dwPairPort; //Åä¶Ô¹â¿ÚºÅ£¬Á´Â·ÀàÐÍΪ»·ÍøʱÓÐЧ£¬Ö÷¿Úʱ´Ë²ÎÊýΪ¸¨¿ÚºÅ£¬¸¨¿Úʱ£¬´Ë²ÎÊýΪÖ÷¿ÚºÅ + NET_DVR_OPTICAL_DEV_NODE struDevInfo[MAX_OPTICAL_DEV_NODE]; //½Úµã¹â¶Ë»úÉ豸ÐÅÏ¢ + BYTE byRes2[32]; +}NET_DVR_OPTICAL_PORT_INFO, *LPNET_DVR_OPTICAL_PORT_INFO; + +typedef struct tagNET_DVR_OPTICAL_CHAN_RELATE_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñ¹ØÁª¹â¶Ë»úÊäÈ룬0-·ñ£¬·Ç0-ÊÇ + BYTE byRes1[3]; + DWORD dwDevNo; //¹â¶Ë»úºÅ + DWORD dwOpticalPort; //¹â¿ÚºÅ + BYTE byDevID[MAX_ID_LEN]; //¹â¶Ë»úÎïÀíID + DWORD dwInputChanNo; //¹â¶Ë»úÊäÈëͨµÀºÅ + BYTE byRes2[64]; +}NET_DVR_OPTICAL_CHAN_RELATE_CFG, *LPNET_DVR_OPTICAL_CHAN_RELATE_CFG; + +typedef struct tagNET_DVR_START_FILE_TO_CLOUD_COND +{ + DWORD dwSize; + BYTE aCameraID[MAX_CAMERAID_LEN]; //±àÂëÆ÷ID + DWORD dwPoolID; //´æ´¢³ØID + DWORD dwRepPoolID; //ÈßÓà³ØID + WORD wReplication; //ÈßÓà·ÝÊý + BYTE byRes [178]; +}NET_DVR_START_FILE_TO_CLOUD_COND,*LPNET_DVR_START_FILE_TO_CLOUD_COND; + +typedef struct tagNET_DVR_START_PICTURE_FROM_CLOUD_COND +{ + DWORD dwSize; + BYTE aCameraID[MAX_CAMERAID_LEN]; //±àÂëÆ÷ID + NET_DVR_TIME_V30 struBeginTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime; //½áÊøʱ¼ä + DWORD dwPicType; //ͼƬÀàÐÍ£¬°´Î»±íʾ + //bit0-JPG + //bit1-BMP + //bit2-PNG + BYTE byRes1[3]; + BYTE byZoomType; //0-²»Ëõ·Å,1-°´±ÈÀý,2-°´´óС,3-°´·Ö±æÂÊ + union + { + BYTE uLen[32]; + struct + { + BYTE byScale; //1~99 + }struScale; + struct + { + BYTE byQuality; //1~99 + }struQuality; + struct + { + DWORD dwWidth; + DWORD dwHeight; + }struResolution; //Ä¿±ê·Ö±æÂÊ + }uZoomParam; + DOWNLOAD_DATA_CB fnDownloadFileCallBack; //Êý¾Ý»Øµ÷º¯Êý + void* pUser; //Óû§Êý¾ÝÖ¸Õë + BYTE byRes [372]; +}NET_DVR_START_PICTURE_FROM_CLOUD_COND,*LPNET_DVR_START_PICTURE_FROM_CLOUD_COND; + +typedef struct tagNET_DVR_START_PICTURE_FROM_CLOUD_RET +{ + DWORD dwSize; + DWORD dwFileCount; //ÎļþÊýÁ¿ + BYTE byRes[120]; +}NET_DVR_START_PICTURE_FROM_CLOUD_RET,*LPNET_DVR_START_PICTURE_FROM_CLOUD_RET; + +typedef struct +{ + DWORD dwSize; + NET_DVR_TIME_V30 struTime; //ͼƬʱ¼ä + DWORD dwPicLen; //ͼƬ³¤¶È + BYTE byPicType; //ͼƬ¸ñʽ,1-jpg,2-bmp,3-png + BYTE byRes[107]; +}NET_DVR_PICTURE_FROM_CLOUD_RET,*LPNET_DVR_PICTURE_FROM_CLOUD_RET; + +typedef struct tagNET_DVR_ACS_EXTERNAL_DEV_CFG +{ + DWORD dwSize; + BYTE byIDCardUpMode; //Éí·ÝÖ¤ÐÅÏ¢Éϱ¨£¬0£ºÉÏ´«18λÉí·ÝÖ¤ºÅ£»1£ºÉÏ´«È«²¿ÐÅÏ¢ + BYTE byRes1; + BYTE byCardVerifyMode; //Ë¢¿¨ÈÏ֤ģʽ£¬0£ºÔ¶³ÌÖÐÐÄÈÏÖ¤£»1£º¿Í»§¶Ëƽ̨ÈÏÖ¤£»2£ºË¢¿¨¿ªÃÅ + BYTE byACSDevType; //É豸Ðͺţ¬1£ºÉí·ÝÖ¤¶Á¿¨Æ÷£¬2£ºIC¶Á¿¨Æ÷£¬3£º¶þάÂë¶Á¿¨Æ÷£¬4£ºÖ¸ÎƶÁ¿¨Æ÷£¬5£º×Ö·ûÆÁ+¶þάÂë¶Á¿¨Æ÷£¬6£ºÊÕ¿¨Æ÷£¬7£º×Ö·ûÆÁ£¬8£ºÖ¸ÎÆÍ·£¬9£ºÓïÒôÄ£¿é£»10£ºÈËÖ¤É豸 + BYTE byDoorMode; //ÃųöÈëÀàÐÍ£¬0£º½øÃÅ£¬1£º³öÃÅ£» + BYTE byRes2; + WORD wDevDetailType; //ÍâÉèµÄ¾ßÌåÉ豸Ðͺţ¬0-iDR210£¬1-IDM10£¬2-˽ÓÐÉí·ÝÖ¤ÔĶÁÆ÷ + BYTE byRes[300]; +}NET_DVR_ACS_EXTERNAL_DEV_CFG, *LPNET_DVR_ACS_EXTERNAL_DEV_CFG; + +typedef struct tagNET_DVR_PERSONNEL_CHANNEL_CFG +{ + DWORD dwSize; + BYTE byInMode; //½øÃÅģʽ£¬0ÊÜ¿Ø£»1½ûÖ¹£»2×ÔÓÉ£» + BYTE byOutMode; //³öÃÅģʽ£¬0ÊÜ¿Ø£»1½ûÖ¹£»2×ÔÓÉ£» + BYTE byWorkMode; //¹¤×÷ģʽ£¬0½ô¼±£»1ά»¤£»2³£±Õ£»3³£¿ª£» + BYTE byRes[301]; +}NET_DVR_PERSONNEL_CHANNEL_CFG, *LPNET_DVR_PERSONNEL_CHANNEL_CFG; + +#define MAX_ID_NUM_LEN 32 //×î´óÉí·ÝÖ¤ºÅ³¤¶È +#define MAX_ID_NAME_LEN 128 //×î´óÐÕÃû³¤¶È +#define MAX_ID_ADDR_LEN 280 //×î´óסַ³¤¶È +#define MAX_ID_ISSUING_AUTHORITY_LEN 128 //×î´óÇ©·¢»ú¹Ø³¤¶È + +//Éí·ÝÖ¤ÐÅÏ¢ +typedef struct tagNET_DVR_ID_CARD_INFO +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byName[MAX_ID_NAME_LEN]; //ÐÕÃû + NET_DVR_DATE struBirth; //³öÉúÈÕÆÚ + BYTE byAddr[MAX_ID_ADDR_LEN]; //סַ + BYTE byIDNum[MAX_ID_NUM_LEN]; //Éí·ÝÖ¤ºÅÂë + BYTE byIssuingAuthority[MAX_ID_ISSUING_AUTHORITY_LEN]; //Ç©·¢»ú¹Ø + NET_DVR_DATE struStartDate; //ÓÐЧ¿ªÊ¼ÈÕÆÚ + NET_DVR_DATE struEndDate; //ÓÐЧ½ØÖ¹ÈÕÆÚ + BYTE byTermOfValidity; //ÊÇ·ñ³¤ÆÚÓÐЧ£¬ 0-·ñ£¬1-ÊÇ£¨ÓÐЧ½ØÖ¹ÈÕÆÚÎÞЧ£© + BYTE bySex; //ÐÔ±ð£¬1-ÄУ¬2-Å® + BYTE byNation; + BYTE byRes[101]; +}NET_DVR_ID_CARD_INFO, *LPNET_DVR_ID_CARD_INFO; + +//Éí·ÝÖ¤ÐÅÏ¢±¨¾¯ +typedef struct tagNET_DVR_ID_CARD_INFO_ALARM +{ + DWORD dwSize; //½á¹¹³¤¶È + NET_DVR_ID_CARD_INFO struIDCardCfg ;//Éí·ÝÖ¤ÐÅÏ¢ + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¬²Î¿¼ºê¶¨Òå + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¬²Î¿¼ºê¶¨Òå + NET_DVR_TIME_V30 struSwipeTime; //ʱ¼ä + BYTE byNetUser[MAX_NAMELEN] ;//ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr ;//Ô¶³ÌÖ÷»úµØÖ· + DWORD dwCardReaderNo; //¶Á¿¨Æ÷±àºÅ£¬Îª0ÎÞЧ + DWORD dwDoorNo; //ÃűàºÅ£¬Îª0ÎÞЧ + DWORD dwPicDataLen; //ͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pPicData; + BYTE byCardType; //¿¨ÀàÐÍ£¬1-ÆÕͨ¿¨£¬2-ÌØÊâȺÌ忨£¬3-½ûÖ¹Ãûµ¥¿¨£¬4-Ѳ¸ü¿¨£¬5-вÆÈ¿¨£¬6-³¬¼¶¿¨£¬7-À´±ö¿¨£¬8-½â³ý¿¨£¬Îª0ÎÞЧ + BYTE byDeviceNo; // É豸±àºÅ£¬Îª0ʱÎÞЧ£¨ÓÐЧ·¶Î§1-255£© + BYTE byMask; //ÊÇ·ñ´ø¿ÚÕÖ£º0-±£Áô£¬1-δ֪£¬2-²»´÷¿ÚÕÖ£¬3-´÷¿ÚÕÖ + BYTE byCurrentEvent; //ÊÇ·ñΪʵʱʼþ£º0-ÎÞЧ£¬1-ÊÇ£¨ÊµÊ±Ê¼þ£©£¬2-·ñ£¨ÀëÏßʼþ£© + DWORD dwFingerPrintDataLen; // Ö¸ÎÆÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pFingerPrintData; + DWORD dwCapturePicDataLen; // ×¥ÅÄͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pCapturePicData; + DWORD dwCertificatePicDataLen; //Ö¤¼þ×¥ÅÄͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pCertificatePicData; + BYTE byCardReaderKind; //¶Á¿¨Æ÷ÊôÓÚÄÄÒ»À࣬0-ÎÞЧ£¬1-IC¶Á¿¨Æ÷£¬2-Éí·ÝÖ¤¶Á¿¨Æ÷£¬3-¶þάÂë¶Á¿¨Æ÷,4-Ö¸ÎÆÍ· + BYTE byHelmet;//¿ÉÑ¡£¬ÊÇ·ñ´÷°²È«Ã±£º0-±£Áô£¬1-δ֪£¬2-²»´÷°²È«, 3-´÷°²È«Ã± + BYTE byRes3; + BYTE byIDCardInfoExtend; //pIDCardInfoExtendÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ + char *pIDCardInfoExtend; //byIDCardInfoExtendΪ1ʱ£¬±íʾָÏòÒ»¸öNET_DVR_ID_CARD_INFO_EXTEND½á¹¹Ìå + DWORD dwSerialNo; //ʼþÁ÷Ë®ºÅ£¬Îª0ÎÞЧ + BYTE byRes[168]; +}NET_DVR_ID_CARD_INFO_ALARM, *LPNET_DVR_ID_CARD_INFO_ALARM; + +//À©Õ¹½á¹¹ÌåÐÅÏ¢ +typedef struct tagNET_DVR_ID_CARD_INFO_EXTEND +{ + BYTE byRemoteCheck; //ÊÇ·ñÐèÒªÔ¶³ÌºËÑ飨0-ÎÞЧ£¬1-²»ÐèÒª£¨Ä¬ÈÏ£©£¬2-ÐèÒª£© + BYTE byThermometryUnit; //²âε¥Î»£¨0-ÉãÊ϶ȣ¨Ä¬ÈÏ£©£¬1-»ªÊ϶ȣ¬2-¿ª¶ûÎÄ£© + BYTE byIsAbnomalTemperature; //ÈËÁ³×¥ÅIJâÎÂÊÇ·ñζÈÒì³££º1-ÊÇ£¬0-·ñ + BYTE byRes2; + float fCurrTemperature; //ÈËÁ³Î¶ȣ¨¾«È·µ½Ð¡Êýµãºóһ룩 + NET_VCA_POINT struRegionCoordinates; //ÈËÁ³Î¶È×ø±ê + DWORD dwQRCodeInfoLen; //¶þάÂëÐÅÏ¢³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + DWORD dwVisibleLightDataLen; //ÈȳÉÏñÏà»ú¿É¼û¹âͼƬ³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + DWORD dwThermalDataLen; //ÈȳÉÏñͼƬ³¤¶È£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pQRCodeInfo; //¶þάÂëÐÅÏ¢Ö¸Õë + char *pVisibleLightData; //ÈȳÉÏñÏà»ú¿É¼û¹âͼƬָÕë + char *pThermalData; //ÈȳÉÏñͼƬָÕë + WORD wXCoordinate; //x×ø±ê£¬ÈËÁ³¿ò×óÉϽÇÏà¶ÔÓÚͼƬµÄ¹éÒ»»¯×ø±ê£¬·¶Î§0-1000 + WORD wYCoordinate; //y×ø±ê£¬ÈËÁ³¿ò×óÉϽÇÏà¶ÔÓÚͼƬµÄ¹éÒ»»¯×ø±ê£¬·¶Î§0-1000 + WORD wWidth; //ÈËÁ³¿ò¿í¶È£¬·¶Î§0-1000 + WORD wHeight; //ÈËÁ³¿ò¸ß¶È£¬·¶Î§0-1000 + BYTE byHealthCode; //½¡¿µÂë״̬, 0-±£Áô, 1-δÇëÇó, 2-δÉêÁì, 3-ÂÌÂë, 4-»ÆÂë, 5-ºìÂë, 6-ÎÞ´ËÈËÔ±, 7-ÆäËû´íÎóÐÅÏ¢£¨Èç½Ó¿ÚÒì³£µ¼Ö²éѯʧ°Ü£©, 8-²éѯ½¡¿µÂ볬ʱ + BYTE byNADCode; //ºËËá¼ì²â½á¹û, 0-±£Áô, 1-δ²éѯµ½ºËËá¼ì²â½á¹û, 2-ºËËá¼ì²âÒõÐÔ£¨´ú±íÕý³££©, 3-ºËËá¼ì²âÑôÐÔ£¨´ú±íÈ·Õ, 4-ºËËá¼ì²âÓÐЧÆÚÒѹý + BYTE byTravelCode; //Ðг̱àÂë, 0-±£Áô, 1-14ÌìÄÚÒ»Ö±ÔÚµ±µØ, 2-14ÌìÄÚÀ뿪¹ýµ±µØ, 3-14ÌìÄÚµ½¹ýÒßÇø, 4-ÆäËû + BYTE byVaccineStatus; //´òÒßÃç״̬, 0-±£Áô, 1-δ´òÒßÃç, 2-²¿·Ö×¢ÉäÒßÃç, 3-´ò¹ýÒßÃç + BYTE byRes[1012]; +}NET_DVR_ID_CARD_INFO_EXTEND, *LPNET_DVR_ID_CARD_INFO_EXTEND; + +//Éí·ÝÖ¤ÐÅÏ¢½ûÖ¹Ãûµ¥Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_ID_CARD_BLOCKLIST_COND +{ + DWORD dwSize; + BYTE byRes[256]; //±£Áô +}NET_DVR_ID_CARD_BLOCKLIST_COND, *LPNET_DVR_ID_CARD_BLOCKLIST_COND; + +//Éí·ÝÖ¤ÐÅÏ¢½ûÖ¹Ãûµ¥²ÎÊý +typedef struct tagNET_DVR_ID_CARD_BLOCKLIST_CFG +{ + DWORD dwSize; + NET_DVR_ID_CARD_INFO struIDCardCfg; // Éí·ÝÖ¤ÐÅÏ¢ + DWORD dwFingerPrintDataLen; // Éí·ÝÖ¤Ö¸ÎÆÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pFingerPrintData; + DWORD dwPicDataLen; // Éí·Ý֤ͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pPicData; + BYTE byRes[128]; +}NET_DVR_ID_CARD_BLOCKLIST_CFG, *LPNET_DVR_ID_CARD_BLOCKLIST_CFG; + +//A =×Öĸ×Ö·û [a..z, A..Z]£¬N = Êý×Ö×Ö·û [0..9]£¬S = ÌØÊâ×Ö·û [¡®<¡¯]£¬B=¶þ½øÖÆÊý¾Ý +typedef struct tagNET_DVR_PASSPORT_INFO +{ + DWORD dwSize; //½á¹¹³¤¶È + BYTE byOCR; //0-µç×Ó»¤ÕÕÊý¾Ý£¬1- OCRʶ±ðÊý¾Ý£¬ + BYTE byRes1[3]; //±£Áô + BYTE byType[MAX_PASSPORT_TYPE_LEN]; //Ö¤¼þÀàÐÍ£¬Êý¾ÝÀàÐÍA£¬S + BYTE byCountryIssue[MAX_PASSPORT_INFO_LEN]; //Ç©·¢¹ú»òÇ©·¢»ú¹¹£¬Êý¾ÝÀàÐÍA£¬S + BYTE byName[MAX_PASSPORT_NAME_LEN]; //ÐÕÃû£¬Êý¾ÝÀàÐÍA£¬S + BYTE byPassportNo[MAX_PASSPORT_NUM_LEN]; //Ö¤¼þºÅÂ룬Êý¾ÝÀàÐÍA£¬N£¬S + BYTE byNationality[MAX_NATIONALITY_LEN]; //¹ú¼® £¬Êý¾ÝÀàÐÍA£¬S + NET_DVR_DATE struBirth; //³öÉúÈÕÆÚ + NET_DVR_DATE struExpireDate; //ÓÐЧ½ØÖ¹ÈÕÆÚ + BYTE bySex; //ÐÔ±ð£¬1-ÄУ¬2-Å® + BYTE byRes2[35]; //±£Áô + BYTE byLocalName[MAX_PASSPORT_INFO_LEN]; //±¾¹úÐÕÃû£¬Êý¾ÝÀàÐÍB + BYTE byNumber[MAX_PASSPORT_INFO_LEN]; //¸öÈ˺ÅÂ룬Êý¾ÝÀàÐÍA£¬N£¬S + BYTE byPlaceOfBirth[MAX_PASSPORT_INFO_LEN]; //³öÉúµØ£¬Êý¾ÝÀàÐÍB + BYTE byAddr[MAX_PASSPORT_INFO_LEN]; //µØÖ·£¬Êý¾ÝÀàÐÍA£¬N£¬S£¬B + BYTE byPhone[MAX_PASSPORT_INFO_LEN]; //µç»°£¬Êý¾ÝÀàÐÍN£¬S + BYTE byJob[MAX_PASSPORT_INFO_LEN]; //Ö°Òµ£¬Êý¾ÝÀàÐÍB + BYTE byTitle[MAX_PASSPORT_INFO_LEN]; //Ö°ÏΣ¬Êý¾ÝÀàÐÍB + BYTE byResume[MAX_PASSPORT_INFO_LEN]; //¼òÀú£¬Êý¾ÝÀàÐÍB + BYTE byOtherNumber[MAX_PASSPORT_INFO_LEN]; //ÆäËûÂÃÐÐÖ¤¼þºÅÂ룬Êý¾ÝÀàÐÍA£¬N£¬S£¬B + BYTE byMonitoring[MAX_PASSPORT_MONITOR_LEN]; //¼à»¤ÐÅÏ¢£¬Êý¾ÝÀàÐÍB + BYTE byRes[128]; +}NET_DVR_PASSPORT_INFO, *LPNET_DVR_PASSPORT_INFO; + +//»¤ÕÕÐÅÏ¢ÉÏ´« +typedef struct tagNET_DVR_PASSPORT_ALARM +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwMajor; //±¨¾¯Ö÷ÀàÐÍ£¬²Î¿¼ºê¶¨Òå + DWORD dwMinor; //±¨¾¯´ÎÀàÐÍ£¬²Î¿¼ºê¶¨Òå + NET_DVR_TIME_V30 struSwipeTime; //ʱ¼ä + BYTE byNetUser[MAX_NAMELEN];//ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr;//Ô¶³ÌÖ÷»úµØÖ· + DWORD dwCardReaderNo; //¶Á¿¨Æ÷±àºÅ£¬Îª0ÎÞЧ + BYTE byCardType; //¿¨ÀàÐÍ£¬1-ÆÕͨ¿¨£¬2-ÌØÊâȺÌ忨£¬3-½ûÖ¹Ãûµ¥¿¨£¬4-Ѳ¸ü¿¨£¬5-вÆÈ¿¨£¬6-³¬¼¶¿¨£¬7-À´±ö¿¨£¬8-½â³ý¿¨£¬Îª0ÎÞЧ + BYTE byRes2[11]; + NET_DVR_PASSPORT_INFO struPassportInfo;//»¤ÕÕÐÅÏ¢ + DWORD dwFaceDataLen; //ÈËÁ³Êý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pFaceData; + DWORD dwPicDataLen; //¹«ÃñÖ¤¼þͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pPicData; //°´ÕÕ [ISO/IEC 10918-1] ¸ñʽ»¯µÄ¹«ÃñÖ¤¼þͼÏñ + DWORD dwCapturePicDataLen; //×¥ÅÄͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pCapturePicData; + BYTE byRes[128]; +}NET_DVR_PASSPORT_ALARM, *LPNET_DVR_PASSPORT_ALARM; + +typedef struct tagNET_DVR_PASSNUM_INFO_ALARM +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwAccessChannel; //ÈËԱͨµÀºÅ + NET_DVR_TIME_V30 struSwipeTime; //ʱ¼ä + BYTE byNetUser[MAX_NAMELEN] ;//ÍøÂç²Ù×÷µÄÓû§Ãû + NET_DVR_IPADDR struRemoteHostAddr ;//Ô¶³ÌÖ÷»úµØÖ· + DWORD dwEntryTimes; //ÈËÔ±Èë´ÎÊý£» + DWORD dwExitTimes; //ÈËÔ±³ö´ÎÊý£» + DWORD dwTotalTimes; //ÈËÔ±³öÈë×Ü´ÎÊý£» + BYTE byRes[300]; +}NET_DVR_PASSNUM_INFO_ALARM, *LPNET_DVR_PASSNUM_INFO_ALARM; +typedef struct tagNET_DVR_UPLOAD_VIDEO_INFO +{ + DWORD dwSize; + DWORD dwVideoMangeNo; //ÊÓƵ¹ÜÀíºÅ + BYTE byVideoType; //ÊÓƵ¸ñʽ 0-AVI 1-WMV 2-MP4 3-FLV 3-VOD 4-MKV 5-RMVB + BYTE byRes1[3]; //±£Áô + BYTE sVideoName[NAME_LEN]; //ÊÓƵÃû³Æ + NET_DVR_TIME_V30 struTime; //ͼƬÉÏ´«Ê±¼ä + BYTE byRes[132]; +} NET_DVR_UPLOAD_VIDEO_INFO, *LPNET_DVR_UPLOAD_VIDEO_INFO; + +typedef struct tagNET_DVR_DEVICE_FILE_INFO +{ + DWORD dwSize; + BYTE sFileName[NAME_LEN]; //ÎļþÃû³Æ + DWORD dwManageNo; //(Ö»ÄÜ»ñÈ¡) + NET_DVR_TIME_EX struTime; //ÎĵµÉÏ´«Ê±¼ä + BYTE byUsed; //ÊÇ·ñÒÑ´æÔÚ£¬0-²»´æÔÚ£¬1-´æÔÚ £¨Ö»ÄÜ»ñÈ¡£© + BYTE byRes[127]; +} NET_DVR_DEVICE_FILE_INFO, *LPNET_DVR_DEVICE_FILE_INFO; + +typedef struct tagNET_DVR_PLAY_ITEM +{ + DWORD dwSize; + BYTE byItemType; //²¥·ÅÏîÀàÐÍ£¬1-ͼƬ 2-ÊÓƵ 3-²¥·ÅÁбí + BYTE byRes[3]; //±£Áô + DWORD dwPlayManageNo; //²¥·Å¹ÜÀíºÅ + DWORD dwPlayPicTime; //²¥·ÅͼƬʱ¼ä£¬µ¥Î»Ãë, (ÀàÐÍΪͼƬÓÐЧ) + BYTE byRes2[64]; +} NET_DVR_PLAY_ITEM, *LPNET_DVR_PLAY_ITEM; + +typedef struct tagNET_DVR_DEVICE_PLAYLIST +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÓÐЧ£¬ 0-ÎÞЧ !0-ÓÐЧ + BYTE byPlayType; //²¥·Åģʽ£¬1-Ñ­»·²¥·Å + BYTE byVaildItemNum; //ÓÐЧ²¥·ÅÏîÊýÁ¿ + BYTE byRes[1]; + NET_DVR_PLAY_ITEM struPlayItem[PLAYLIST_ITEM_NUM]; //²¥·ÅÏǰbyVaildItemNumÓÐЧ + BYTE byPlaylistName[PLAYLIST_NAME_LEN]; //²¥·ÅÁбíÃû³Æ + DWORD dwPlaylistNo; //²¥·ÅÁбíºÅ£¨»ñÈ¡ÓÐЧ£© + BYTE byRes2[128]; +} NET_DVR_DEVICE_PLAYLIST, *LPNET_DVR_DEVICE_PLAYLIST; +typedef struct tagNET_DVR_PLAYLIST_ITEM_CTRL +{ + DWORD dwSize; + BYTE byCtrlType; //²Ù×÷ÀàÐÍ£¬ 1-Ìí¼Ó²¥·ÅÏî 2-ɾ³ý²¥·ÅÏî 3-Òƶ¯²¥·ÅÏîλÖà + BYTE byPlayIndex; //²¥·ÅÐòºÅ£¬ ´Ó1¿ªÊ¼ + NET_DVR_PLAY_ITEM struPlayItem; //²¥·ÅÏî + BYTE byNewPlayIndex; //в¥·ÅÐòºÅ£¬0ÎÞЧ + BYTE byRes[63]; +}NET_DVR_PLAYLIST_ITEM_CTRL, *LPNET_DVR_PLAYLIST_ITEM_CTRL; +typedef struct tagNET_DVR_PLAN_ITEM +{ + NET_DVR_PLAY_ITEM struPlanPlayItem; //²¥·ÅÏî + NET_DVR_TIME_SEGMENT struTimeSegment; //ʱ¼ä¶Î²ÎÊý + BYTE byRes[16]; +} NET_DVR_PLAN_ITEM, *LPNET_DVR_PLAN_ITEM; + +typedef struct tagNET_DVR_PLAYPLAN_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñʹÄÜ, 0-²»Ê¹ÄÜ !0-ʹÄÜ + BYTE byPlanMode; //¼Æ»®Ä£Ê½£¬1-Öܼƻ® 2-Èռƻ® + BYTE byRes[2]; + NET_DVR_PLAN_ITEM struPlanItem[MAX_DAYS][MAX_TIMESEGMENT_V30]; + DWORD dwPlayPlanNo; //²¥·Å¼Æ»®ºÅ£¨»ñȡʱÓÐЧ£© + BYTE byPlayPlanName[NAME_LEN]; //²¥·Å¼Æ»®Ãû³Æ + BYTE byRes2[32]; +} NET_DVR_PLAYPLAN_CFG, *LPNET_DVR_PLAYPLAN_CFG; +typedef struct tagNET_DVR_WINDOW_PLAYPLAN_CFG +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓò¥·Å¼Æ»®£¬ 0-²»ÆôÓà !0-ÆôÓà + BYTE byRes[3]; + DWORD dwPlayPlanNo; //²¥·Å¼Æ»®ºÅ + BYTE byRes2[32]; +} NET_DVR_WINDOW_PLAYPLAN_CFG, *LPNET_DVR_WINDOW_PLAYPLAN_CFG; +typedef struct tagNET_DVR_DEV_PLAYCTRL +{ + DWORD dwSize; + BYTE byControlType; //¿ØÖÆÀàÐÍ£¬1-ÒôƵ¿ª£¬2-ÒôƵ¹Ø£¬3-Í£Ö¹²¥·Å£¬4-ÔÝÍ£²¥·Å£¬»Ö¸´²¥·Å + BYTE byRes[131]; +} NET_DVR_DEV_PLAYCTRL, *LPNET_DVR_DEV_PLAYCTRL; + +typedef union tagNET_DVR_PLAYITEM_INFO +{ + struct //µ¥¶À²¥·Å + { + DWORD dwPlayItem; //²¥·ÅÏî + BYTE byPlayItemName[NAME_LEN]; //²¥·ÅÏîÃû³Æ + BYTE byRes2[8]; + } struPlayItem; + struct //²¥·ÅÁбí + { + DWORD dwPlaylistNo; //²¥·ÅÁбíºÅ + BYTE byPlaylistName[NAME_LEN]; //²¥·ÅÁбíÃû³Æ + WORD wPlayIndex; //²¥·ÅλÖà + BYTE byPlayType; //²¥·ÅÁбíÖÐÕýÔÚ²¥·ÅÀàÐÍ 1-ͼƬ 2-ÊÓƵ + BYTE byRes[3]; + DWORD dwPlayItem; //²¥·ÅÏî + BYTE byPlayItemName[NAME_LEN]; //²¥·ÅÏîÃû³Æ + BYTE byRes2[16]; + } struPlaylistItem; + struct //²¥·Å¼Æ»®Ïî + { + DWORD dwPlayPlanNo; //²¥·Å¼Æ»®ºÅ + NET_DVR_TIME_SEGMENT struTime; //ÕýÔÚ²¥·Åʱ¼ä¶Î + BYTE byPlayType; //²¥·Å¼Æ»®ÕýÔÚ²¥·ÅÀàÐÍ 1-ͼƬ 2-ÊÓƵ 3-²¥·ÅÁбí + BYTE byRes[3]; + DWORD dwPlaylistNo; //²¥·ÅÁбíºÅ + BYTE byPlaylistName[NAME_LEN]; //²¥·ÅÁбíÃû³Æ + DWORD dwPlayItem; //²¥·ÅÏî + BYTE byPlayItemName[NAME_LEN]; //²¥·ÅÏîÃû³Æ + WORD wPlayIndex; //²¥·ÅλÖà + BYTE byRes2[18]; + } struPlayPlanItem; +}NET_DVR_PLAYITEM_INFO, *LPNET_DVR_PLAYITEM_INFO; +typedef struct tagNET_DVR_PLAYING_INFO +{ + DWORD dwSize; + BYTE byPlayWay; //²¥·Å·½Ê½£¬ 1-µ¥Ïî²¥·Å 2-²¥·ÅÁбí 3-²¥·Å¼Æ»® 4-¶¯Ì¬½âÂë 5-½ô¼±²å²¥ + BYTE byCurPlayType; //ÕýÔÚ²¥·ÅËزÄÀàÐÍ£¬ 1-ͼƬ 2-ÊÓƵ£¬¶¯Ì¬½âÂëºÍ½ô¼±²å²¥Ê±ÎÞЧ + BYTE byPlayState; //²¥·Å״̬£¬1-ÕýÔÚ²¥·Å£¬2-²¥·ÅÍ£Ö¹£¬3-²¥·ÅÔÝÍ£ + BYTE byAudioState; //ÒôƵ¿ª¹Ø״̬£¬0-¹Ø£¬1-¿ª + NET_DVR_PLAYITEM_INFO struPlayItemInfo; //²¥·ÅÏîÐÅÏ¢ + BYTE byRes2[16]; +} NET_DVR_PLAYING_INFO, *LPNET_DVR_PLAYING_INFO; + +typedef struct tagNET_DVR_ONLINEUSER_COND //Ìõ¼þ½á¹¹ +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ£¨Ç°¶ËĬÈÏÊÇ1£© + BYTE byRes [128]; +}NET_DVR_ONLINEUSER_COND,*LPNET_DVR_ONLINEUSER_COND; + +typedef struct tagNET_DVR_ONLINEUSER_CFG //ÅäÖýṹ +{ + DWORD dwSize; + BYTE byID;//Óû§ÐòÁкŠ+ BYTE byUserType;//Óû§ÀàÐÍ 0-ÆÕͨÓû§£¬1-²Ù×÷Ô±£¬2-³¬¼¶Óû§ + BYTE byDataType;//Êý¾Ý״̬ÀàÐÍ:0-¼ì²âÖУ¬1-¿ªÊ¼£¬2-½áÊø + BYTE byRes; + NET_DVR_IPADDR struIpAddr;//IPµØÖ· + NET_DVR_TIME_V30 struLoginTime;//µÇ½ʱ¼ä + char szUserName[NAME_LEN/*32*/];//Óû§Ãû + BYTE byRes1[128]; +}NET_DVR_ONLINEUSER_CFG,*LPNET_DVR_ONLINEUSER_CFG; + +//´æ´¢½¡¿µ×´Ì¬ +typedef struct tagNET_DVR_STORAGE_DETECTION +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byHealthState;//½¡¿µ×´Ì¬0-Á¼ºÃ£¬1-²î£¬2-Ë𻵣¬3-δ֪ + BYTE bySDCardState;//SDcard״̬ 0-µôÏߣ¬1-ÉÏÏß,2-δ֪,3-ÒÑËø¶¨ + WORD wAbnormalPowerLoss;//Òì³£µôµçÊý + WORD wBadBlocks;//»µ¿éÊý + BYTE byRemainingLife; //SD¿¨Ê£ÓàÊÙÃü; 0~100% + BYTE byRes[125]; +}NET_DVR_STORAGE_DETECTION,*LPNET_DVR_STORAGE_DETECTION; + +//´æ´¢ÖÇÄܼì²â±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_STORAGE_DETECTION_ALARM +{ + DWORD dwSize; + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwCardID; //¿¨ID + WORD wAbnormalPowerLoss;//Òì³£µôµçÊý + WORD wBadBlocks;//»µ¿éÊý + BYTE byHealthState;//½¡¿µ×´Ì¬0-Á¼ºÃ£¬1-²î£¬2-Ë𻵣¬3-δ֪ + BYTE byRes1[3]; + float fResidualLife; //SD¿¨ Ô¤¼ÆÊ£ÓàÊÙÃü + BYTE byRes[118]; +}NET_DVR_STORAGE_DETECTION_ALARM,*LPNET_DVR_STORAGE_DETECTION_ALARM; + + +//´æ´¢Õì²âµÄ¶ÁдËøÅäÖà +typedef struct tagNET_DVR_STORAGE_RWLOCK +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled;//ʹÄÜ 0-¹Ø±Õ£¬1-¿ªÆô + BYTE byRes[3]; + char szPassWD[PASSWD_LEN/*16*/]; //¶ÁдËøÐÂÃÜÂë + char szOriginalPassWD[PASSWD_LEN/*16*/]; //ԭʼÃÜÂë + BYTE byRes1[128]; +}NET_DVR_STORAGE_RWLOCK,*LPNET_DVR_STORAGE_RWLOCK; + +//´æ´¢Õì²âµÄ½âËøÅäÖà +typedef struct tagNET_DVR_STORAGE_UNLOCK +{ + DWORD dwSize;//½á¹¹Ìå´óС + char szPassWD[PASSWD_LEN/*16*/]; //ÃÜÂë + BYTE byRes1[128]; +}NET_DVR_STORAGE_UNLOCK,*LPNET_DVR_STORAGE_UNLOCK; + + +typedef struct tagNET_DVR_PTZTRACKSTATUS +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byID;//Áª¶¯É豸µÄID (×Ö¶ÎbyLinkageType·Ç0µÄʱºòÉúЧ) + BYTE byLinkageType;//Áª¶¯¶¯×÷0-²»Áª¶¯£¬1-Áª¶¯Çò»úÉ豸¸ú×Ù + BYTE byRes[254]; +}NET_DVR_PTZTRACKSTATUS,*LPNET_DVR_PTZTRACKSTATUS; + +#define MAX_PROXY_COUNT 32 + +typedef struct tagNET_DVR_SOCKS_PROXY_PARA +{ + BYTE byIP[129]; //´úÀí·þÎñÆ÷µØÖ· + BYTE byAuthType; //ÈÏÖ¤·½Ê½£¬ÔÝʱÏȲ»Ê¹ÓøÃ×ֶΠ+ WORD wPort; //´úÀí·þÎñÆ÷¶Ë¿Ú + BYTE byRes2[64]; //Èç¹ûҪʹÓÃÈÏÖ¤·½Ê½£¬±ØÈ»ÐèҪһЩ±£Áô×Ö½Ú£¬ÏÈÁôһЩ +}NET_DVR_SOCKS_PROXY_PARA, *LPNET_DVR_SOCKS_PROXY_PARA; + +typedef struct tagNET_DVR_SOCKS_PROXYS +{ + NET_DVR_SOCKS_PROXY_PARA struProxy[MAX_PROXY_COUNT]; +}NET_DVR_SOCKS_PROXYS, *LPNET_DVR_SOCKS_PROXYS; + +typedef struct tagNET_DVR_GET_FIGURE_COND +{ + DWORD dwLength; //½á¹¹³¤¶È + DWORD dwChannel; //ͨµÀ + NET_DVR_TIME_V30 struTimePoint; //ʱ¼äµã + BYTE byID[STREAM_ID_LEN/*32*/]; //IDÊý¾Ý + BYTE byRes[32]; +}NET_DVR_GET_FIGURE_COND, *LPNET_DVR_GET_FIGURE_COND; + +typedef struct tagNET_DVR_FIGURE_INFO +{ + DWORD dwPicLen; //ͼƬ³¤¶È + char *pPicBuf; //ͼƬÊý¾Ý +}NET_DVR_FIGURE_INFO, *LPNET_DVR_FIGURE_INFO; + +//ÊÖ¶¯²â¾à²ÎÊý +typedef struct tagNET_DVR_MANUALRANGING_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñ¿ªÆôÊÖ¶¯²â¾à£º0- ·ñ£¬1- ÊÇ + BYTE byRes[127]; +}NET_DVR_MANUALRANGING_CFG,*LPNET_DVR_MANUALRANGING_CFG; + +typedef struct tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byDoorNotCloseAlarm; //ÊÇ·ñÉÏ´«ÃÅδ¹Ø±¨¾¯£¬0-²»ÉÏ´«£¬1-ÉÏ´« + BYTE byRes[603]; //±£Áô +}NET_DVR_VIDEO_INTERCOM_ALARM_CFG, *LPNET_DVR_VIDEO_INTERCOM_ALARM_CFG; + +typedef struct tagNET_DVR_PACKET_INFO_EX +{ + WORD wWidth; //width + WORD wHeight; //height + DWORD dwTimeStamp; //lower time stamp + DWORD dwTimeStampHigh;//higher time stamp + DWORD dwYear; //year + DWORD dwMonth; //month + DWORD dwDay; //day + DWORD dwHour; //hour + DWORD dwMinute; //minute + DWORD dwSecond; //second + DWORD dwMillisecond; //millisecond + DWORD dwFrameNum; //frame num + DWORD dwFrameRate; //frame rate,µ±Ö¡ÂÊСÓÚ0ʱ£¬0x80000002:±íʾ1/2Ö¡ÂÊ£¬Í¬Àí¿ÉÍÆ0x80000010Ϊ1/16Ö¡ÂÊ + DWORD dwFlag; //flag EÖ¡±ê¼Ç + DWORD dwFilePos; //file pos + DWORD dwPacketType; //Packet type:0 -file head£¬1 -video I frame£¬2- video B frame£¬ 3- video P frame£¬ 10- audio packet£¬ 11- private packet + DWORD dwPacketSize; //packet size + unsigned char* pPacketBuffer; //packet buffer + BYTE byRes1[4]; + DWORD dwPacketMode; //´ò°ü·½Ê½:0-±£Áô£¬1-FU_A´ò°ü·½Ê½ + BYTE byRes2[16]; + DWORD dwReserved[6]; //reserved[0] ±íʾ˽ÓÐÊý¾ÝÀàÐÍ + //reserved[1] ±íʾ˽ÓÐÂãÊý¾ÝµØÖ·¸ßλ + //reserved[2] ±íʾ˽ÓÐÂãÊý¾ÝµØÖ·µÍλ + //reserved[3] ±íʾ˽ÓÐÂãÊý¾Ý³¤¶È + //reserved[4] ˽ÓÐÖ¡/°üµÄʱ¼ä¼ä¸ô\ʱ¼ä´Á + //reserved[5].Ò»bitλ±ê¼ÇÊÇ·ñΪÉîPÖ¡£¬ÉîP£º1£¬²»ÎªÉîP£º0; lizhonghu 20150203 +}NET_DVR_PACKET_INFO_EX, *LPNET_DVR_PACKET_INFO_EX; + +typedef BOOL(CALLBACK * DEV_WORK_STATE_CB)(void* pUserdata, int iUserID, LPNET_DVR_WORKSTATE_V40 lpWorkState); + +typedef struct tagNetDVRCheckDevState +{ + DWORD dwTimeout; //¶¨Ê±¼ì²âÉ豸¹¤×÷״̬£¬µ¥Î»ms£¬Îª0ʱ£¬±íʾʹÓÃĬÈÏÖµ(30000)¡£×îСֵΪ1000 + DEV_WORK_STATE_CB fnStateCB; + void* pUserData; + BYTE byRes[60]; +}NET_DVR_CHECK_DEV_STATE,*LPNET_DVR_CHECK_DEV_STATE; + +#define COURSE_NAME_LEN_128 128 //¿Î³ÌÃû³Æ +#define INSTRUCTOR_NAME_LEN_64 64 //ÊڿνÌʦ +#define MAX_UUID_LEN 64 //ÊÖ¶¯¿Î³ÌUUID + +//»ñÈ¡Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_COURSE_LIST_COND +{ + DWORD dwSize; + NET_DVR_TIME_V30 struStartTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime; //¿Î³Ì½áÊøʱ¼ä + BYTE byCourseName[COURSE_NAME_LEN_128]; //¿Î³ÌÃû³Æ + BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; //ÊÚ¿ÎÀÏʦ + BYTE byCourseType; //¿Î±íÀàÐÍ£¬0-È«²¿£¬1-ÊÖ¶¯ + BYTE byRes[603]; +}NET_DVR_COURSE_LIST_COND,*LPNET_DVR_COURSE_LIST_COND; + +typedef struct tagNET_DVR_COURSE_CFG +{ + DWORD dwSize; + NET_DVR_TIME_V30 struStartTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + BYTE byCourseName[COURSE_NAME_LEN_128]; + BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; + BYTE byCourseDescription[COURSE_DESCRIPTION_LEN /*256*/]; + BYTE byRecUUID[MAX_UUID_LEN/*64*/]; //ÊÖ¶¯¿Î±íUUID + BYTE byCourseType;//¿Î±íÀàÐÍ£¬0-È«²¿£¬1-ÊÖ¶¯¿Î±í + BYTE byRes[303]; +}NET_DVR_COURSE_CFG, *LPNET_DVR_COURSE_CFG; + +typedef struct tagNET_DVR_RECORD_STATUS +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byRecUUID[MAX_UUID_LEN/*64*/]; //ÊÖ¶¯¿Î±íUUID + BYTE byRecordStatus; //¼²¥×´Ì¬£¬0-ÔÝÍ££¬1-ÆÁ±Î,2-ÕýÔÚ¼Ïñ£¬3-¿ÕÏÐ + BYTE byRes1[3]; //±£Áô×Ö½Ú + DWORD dwRecordingTime; //ÒѼÖÆʱ³¤£¬µ¥Î»£ºÃ룬×î´óΪ12*60*60 + BYTE byRes[596]; //±£Áô×Ö½Ú +}NET_DVR_RECORD_STATUS, *LPNET_DVR_RECORD_STATUS; + +typedef struct tagNET_DVR_MANUAL_CURRICULUM_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byRecUUID[MAX_UUID_LEN/*64*/]; //ÊÖ¶¯¿Î±íUUID + BYTE byCourseName[COURSE_NAME_LEN_128]; //¿Î³ÌÃû³Æ + BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; //ÊÚ¿ÎÀÏʦ + BYTE byCourseDescription[COURSE_DESCRIPTION_LEN /*256*/]; + BYTE byCmdType; //ÃüÁ0-¿ªÊ¼Â¼Ïñ 1-½áÊø 2-ÔÝÍ£ 3-¼ÌÐø,4-¿ªÊ¼ÆÁ±Î£¬5-½áÊøÆÁ±Î + BYTE byRes[303]; //±£Áô×Ö½Ú +}NET_DVR_MANUAL_CURRICULUM_CFG, *LPNET_DVR_MANUAL_CURRICULUM_CFG; + +typedef struct tagNET_DVR_IMAGE_DIFF_DETECTION_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + NET_VCA_POLYGON struRegion; //ÇøÓò·¶Î§ + BYTE byEnabled; //ÊÇ·ñÆôÓã¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byThreshold; //ãÐÖµ[0,100] + BYTE bySensitivity; //ÁéÃô¶È [0,100] + BYTE byVideoInputType; //ÊÓƵÊäÈë¿ÚÀàÐÍ£¬0-×Ô¶¯£¬1-HDMI£¬2-VGA + BYTE byRes[300]; //±£Áô×Ö½Ú +}NET_DVR_IMAGE_DIFF_DETECTION_CFG, *LPNET_DVR_IMAGE_DIFF_DETECTION_CFG; + +typedef struct tagNET_DVR_RECORDING_PUBLISH_FILE_COND +{ + DWORD dwSize; + DWORD dwChannel; + BYTE byFileID[MAX_ID_LEN_128/*128*/]; //·¢²¼ÎļþID + BYTE byRes[300]; +}NET_DVR_RECORDING_PUBLISH_FILE_COND, *LPNET_DVR_RECORDING_PUBLISH_FILE_COND; + +typedef struct tagNET_DVR_RECORDING_PUBLISH_FILE_INFO +{ + DWORD dwSize; + NET_DVR_TIME_V30 struStartTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime; //¿Î³Ì¿ªÊ¼Ê±¼ä + BYTE byCourseName[COURSE_NAME_LEN_128]; + BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; + BYTE byCourseDescription[COURSE_DESCRIPTION_LEN /*256*/]; + BYTE byRes[300]; //±£Áô×Ö½Ú +}NET_DVR_RECORDING_PUBLISH_FILE_INFO, *LPNET_DVR_RECORDING_PUBLISH_FILE_INFO; + +//ÆÁÄ»¿ØÖÆ +typedef struct tagNET_DVR_SCREEN_POINT +{ + WORD wX; //X×ø±ê + WORD wY; //Y×ø±ê +}NET_DVR_SCREEN_POINT,*LPNET_DVR_SCREEN_POINT; + +typedef struct tagNET_DVR_MOUSE_PARAM +{ + BYTE byMouseEvent; //Êó±êʼþ£¬1-Êó±ê×ó¼ü°´Ï£¬2-Êó±ê×ó¼üËÉ¿ª£¬3-Êó±êÓÒ¼ü°´Ï£¬4-Êó±êÓÒ¼üËÉ¿ª£¬ + //5-Êó±êÒƶ¯£¬6-Êó±ê×ó¼üµ¥»÷£¬7-Êó±ê×ó¼üË«»÷£¬8-Êó±êÓÒ¼üµ¥»÷£¬9-¹öÂÖ°´Ï£¬ + //10-¹öÂÖËÉ¿ª£¬11-¹öÂÖÏòÏ£¬12-¹öÂÖÏòÉÏ + BYTE byRes1[3]; + NET_DVR_SCREEN_POINT struMousePoint; //Êó±ê×ø±êÐÅÏ¢ + BYTE byRes2[8]; +}NET_DVR_MOUSE_PARAM, *LPNET_DVR_MOUSE_PARAM; + +typedef struct tagNET_DVR_MARK_PARAM +{ + BYTE byMarkEvent; //±êעʼþ£¬1-Õý³£±ê×¢£¬2-±ê×¢½áÊø£¬3-¸üбê×¢¹¤¾ß״̬ + BYTE byMarkTool; //±ê×¢¹¤¾ß£¬0-ÎÞЧ£¬1-»­±Ê£¬2-ÏðƤ²Á£¬±êעʼþΪ1ʱÓÐЧ + BYTE byLineWidth; //ÏßÌõ´Öϸ£¬0-ÎÞЧ£¬1-ϸ£¬2-ÖУ¬3-´Ö£¬±êעʼþΪ1ʱÓÐЧ + BYTE byMouseEvent; //Êó±êʼþ£¬±êעʼþΪ1ʱÓÐЧ£¬0-ÎÞЧ£¬1-Êó±ê×ó¼ü°´Ï£¬2-Êó±ê×ó¼üËÉ¿ª£¬3-Êó±êÒƶ¯ + NET_DVR_RGB_COLOR struColor; //±ê×¢ÑÕÉ«£¬±ê×¢¹¤¾ßΪ»­±ÊʱÓÐЧ + NET_DVR_SCREEN_POINT struPoint; //±ê×¢×ø±êÐÅÏ¢ + BYTE byRes[4]; +}NET_DVR_MARK_PARAM, *LPNET_DVR_MARK_PARAM; + +typedef struct tagNET_DVR_KEYBOARD_PARM +{ + DWORD dwKeyValue; //·ûºÅʹÓÃASCII±íÖеÄÖµ£¬ÌØÊâ°´¼ü´ýÈ·¶¨ + BYTE byRes[12]; +}NET_DVR_KEYBOARD_PARAM, *LPNET_DVR_KEYBOARD_PARAM; + +typedef struct tagNET_DVR_PPT_PARAM +{ + BYTE byPPTAction; //PPT¶¯×÷£¬1-´ò¿ª·ÅÓ³£¬2-Í£Ö¹·ÅÓ³£¬3-ÉÏÒ»¸ö¶¯»­£¬4-ÏÂÒ»¸ö¶¯»­£¬ + //5-ÉÏÒ»Ò³£¬6-ÏÂÒ»Ò³£¬7-Ìøµ½XÒ³£¬8-¼¤¹â±Ê¿ª£¬9-¼¤¹â±Ê¹Ø£¬10-¼¤¹â±ÊÒƶ¯ + BYTE byRes1[3]; + NET_DVR_SCREEN_POINT struPoint; //¼¤¹â±Ê×ø±êÐÅÏ¢£¬PPT¶¯×÷Ϊ10ʱÓÐЧ + DWORD dwPPTNo; //PPTÒ³ÂëÊý£¬PPT¶¯×÷Ϊ7ʱÓÐЧ + BYTE byRes2[4]; +}NET_DVR_PPT_PARAM, *LPNET_DVR_PPT_PARAM; + +typedef struct tagNET_DVR_REMOTE_CTRL_PARAM +{ + BYTE byRemoteCtrlCmd; //Ô¶³Ì¿ØÖÆÃüÁ1-Çл»Öö¥´°¿Ú£¬2-¹Ø±ÕÆÁÄ»µ±Ç°´°¿Ú£¬3-´ò¿ªÎļþ£¬4-¹Ø±ÕÎļþ£¬5-ɾ³ýÎļþ£¬6-¹Ø»ú£¬7-ÏÔʾ×ÀÃ棬8-±íÑï + BYTE byRes1[3]; + DWORD dwCtrlParam; //²Ù×÷²ÎÊý£¬µ±byRemoteCtrlCmdΪ3¡¢4¡¢5ʱ£¬±íʾ²Ù×÷µÄÎļþË÷Òý£»µ±byRemoteCtrlCmdΪ8ʱ±íʾ±íÑïÀàÐÍ£¬0-ÎÞЧ£¬1-±íÑï + BYTE byRes2[8]; +}NET_DVR_REMOTE_CTRL_PARAM, *LPNET_DVR_REMOTE_CTRL_PARAM; + +typedef struct tagNET_DVR_SPOTLIGHT_PARAM +{ + BYTE byCmd; //¾Û¹âµÆÃüÁ0-¹Ø±Õ¾Û¹âµÆ£¬1-¿ªÆô¾Û¹âµÆ£¬2-¾Û¹âµÆλÖÃÒƶ¯ + BYTE byRes1[3]; + NET_DVR_SCREEN_POINT struPoint; //¾Û¹âµÆÖÐÐĵã×ø±ê£¬¾Û¹âµÆλÖÃÒƶ¯Ê±ÓÐЧ + DWORD dwRadius; //¾Û¹âµÆ°ë¾¶ + BYTE byRes2[4]; +} NET_DVR_SPOTLIGHT_PARAM, *LPNET_DVR_SPOTLIGHT_PARAM; + +typedef struct tagNET_DVR_TOUCHPAD_PARAM +{ + BYTE byMouseEvent; //Êó±êʼþ£¬1-Êó±ê×ó¼ü°´Ï£¬2-Êó±ê×ó¼üËÉ¿ª£¬3-Êó±êÓÒ¼ü°´Ï£¬4-Êó±êÓÒ¼üËÉ¿ª£¬ + //5-Êó±êÒƶ¯£¬6-Êó±ê×ó¼üµ¥»÷£¬7-Êó±ê×ó¼üË«»÷£¬8-Êó±êÓÒ¼üµ¥»÷£¬9-¹öÂÖ°´Ï£¬ + //10-¹öÂÖËÉ¿ª£¬11-¹öÂÖÏòÏ£¬12-¹öÂÖÏòÉÏ + BYTE byRes1[3]; + int iXDisplacement; //XÖáλÒÆ£¬ÕýÊý±íʾÏòÓÒÒƶ¯£¬¸ºÊý±íʾÏò×óÒƶ¯£¬Êó±êÒƶ¯Ê±ÓÐЧ + int iYDisplacement; //YÖáλÒÆ£¬ÕýÊý±íʾÏòÉÏÒƶ¯£¬¸ºÊý±íʾÏòÏÂÒƶ¯£¬Êó±êÒƶ¯Ê±ÓÐЧ + BYTE byRes2[4]; +}NET_DVR_TOUCHPAD_PARAM, *LPNET_DVR_TOUCHPAD_PARAM; + +typedef struct tagNET_DVR_MEDIA_LIST_PARAM +{ + BYTE byOperateCmd; //²Ù×÷ÃüÁ1-ÏÔʾͼƬËزģ¬2-ÏÔʾÊÓƵËزģ¬3-ÏÔʾpptËزģ¬4-¹Ø±Õ¶àýÌåÎļþ¼Ð + BYTE byRes[15]; +}NET_DVR_MEDIA_LIST_PARAM, *LPNET_DVR_MEDIA_LIST_PARAM; + +typedef union tagNET_DVR_SCREEN_CTRL_PARAM +{ + NET_DVR_MOUSE_PARAM struMouseParam; //Êó±ê²ÎÊý£¬ÃüÁîÀàÐÍΪ1ʱÓÐЧ + NET_DVR_MARK_PARAM struMarkParam; //±ê×¢²ÎÊý£¬ÃüÁîÀàÐÍΪ2ʱÓÐЧ + NET_DVR_KEYBOARD_PARAM struKeyboardInfo; //¼üÅ̲ÎÊý£¬ÃüÁîÀàÐÍΪ3ʱÓÐЧ + NET_DVR_PPT_PARAM struPPTParam; //PPT²ÎÊý£¬ÃüÁîÀàÐÍΪ4ʱÓÐЧ + NET_DVR_REMOTE_CTRL_PARAM struRemoteCtrlParam; //Ô¶³Ì²Ù×÷²ÎÊý£¬ÃüÁîÀàÐÍΪ5ʱÓÐЧ + NET_DVR_SPOTLIGHT_PARAM struSpotLight; //¾Û¹âµÆ²ÎÊý£¬ÃüÁîÀàÐÍΪ6ʱÓÐЧ + NET_DVR_TOUCHPAD_PARAM struTouchPadParam; //´¥Ãþ°å²ÎÊý£¬ÃüÁî²ÎÊýΪ7ʱÓÐЧ + NET_DVR_MEDIA_LIST_PARAM struMediaListParam; //¶àýÌå²ÎÊý£¬ÃüÁîÀàÐÍΪ8ʱÓÐЧ + BYTE byRes[16]; +}NET_DVR_SCREEN_CTRL_PARAM, *LPNET_DVR_SCREEN_CTRL_PARAM; + +typedef struct tagNET_DVR_SCREEN_CTRL_CMD +{ + DWORD dwSize; + BYTE byCmdType; //ÃüÁîÀàÐÍ£¬1-Êó±ê£¬2-±ê×¢£¬3-¼üÅÌ£¬4-PPT£¬5-Ô¶³Ì²Ù×÷£¬6-¾Û¹âµÆ£¬7-´¥¿Ø°å£¬8-ÏÔʾ¶àýÌå²ÄÁÏ + BYTE byRes1[3]; + NET_DVR_SCREEN_CTRL_PARAM struScreenCtrlParam; //ÆÁÄ»¿ØÖƲÎÊý +}NET_DVR_SCREEN_CTRL_CMD, *LPNET_DVR_SCREEN_CTRL_CMD; + +typedef struct tagNET_DVR_FILE_RESPONSE_PARAM +{ + BYTE byFileState; //Îļþ²Ù×÷״̬£¬1-Îļþ²»´æÔÚ£¬2-´ò¿ªÎļþʧ°Ü£¬3-´ò¿ªÎļþ³É¹¦ + BYTE byRes1[3]; + DWORD dwErrorFileIndex; //Îļþ²Ù×÷µÄÎļþË÷ÒýÖµ + BYTE byRes2[24]; +} NET_DVR_FILE_RESPONSE_PARAM, *LPNET_DVR_FILE_RESPONSE_PARAM; + +typedef struct tagNET_DVR_PPT_RESPONSE_PARAM +{ + BYTE byCurrentState; //µ±Ç°PPT״̬£¬1 - ÕýÔÚ·ÅÓ³£¬2 - ·Åӳֹͣ£¬3 - PPTÒѹرգ¬4 - pptÊܱ£»¤»òÉú²úÔ¤ÀÀͼʧ°Ü£¬5 - ´ò¿ª·ÅÓ³³É¹¦£¬6 - ´ò¿ª·Åӳʧ°Ü£¬7 - pptÄÚÈÝΪ¿Õ£¬8 - ËõÂÔͼÉú³Éʧ°Ü£¬9 - ËõÂÔͼÉú³É³É¹¦ + BYTE byRes1[3]; + DWORD dwCurrentPage; //PPTµÄÒ³Êý£¬PPT״̬Ϊ1,7,8ʱÓÐЧ + DWORD dwFileIndex; //PPTÎļþË÷ÒýÖµ + DWORD dwTotalPageNum; //PPT×ÜÒ³Êý£¬PPT״̬Ϊ5ʱÓÐЧ + BYTE byRes2[16]; +}NET_DVR_PPT_RESPONSE_PARAM, *LPNET_DVR_PPT_RESPONSE_PARAM; + +typedef union tagNET_DVR_SCREEN_RESPONSE_PARAM +{ + BYTE byRes[32]; + NET_DVR_PPT_RESPONSE_PARAM struPPTParam; //PPT²ÎÊý + NET_DVR_FILE_RESPONSE_PARAM struFileParam; //Îļþ²Ù×÷ÏìÓ¦²ÎÊý +}NET_DVR_SCREEN_RESPONSE_PARAM,*LPNET_DVR_SCREEN_RESPONSE_PARAM; + +typedef struct tagNET_DVR_SCREEN_RESPONSE_CMD +{ + DWORD dwSize; + BYTE byResponseCmd; //ÆÁÄ»ÏìÓ¦ÃüÁîÀàÐÍ£¬1-PPT£¬2-Îļþ²Ù×÷ + BYTE byRes1[3]; + NET_DVR_SCREEN_RESPONSE_PARAM struResonseParam; //ÆÁÄ»ÏìÓ¦²ÎÊý + BYTE byRes2[16]; +}NET_DVR_SCREEN_RESPONSE_CMD, *LPNET_DVR_SCREEN_RESPONSE_CMD; + +typedef struct tagNET_DVR_SCREEN_FILE_COND +{ + DWORD dwSize; + BYTE byFileType; //ÎļþÀàÐÍ£¬1-ͼƬ£¬2-ÊÓƵ£¬3-Îĵµ£¬0xff-ËùÓÐÎļþÀàÐÍ + BYTE byRes[127]; +}NET_DVR_SCREEN_FILE_COND, *LPNET_DVR_SCREEN_FILE_COND; + +typedef struct tagNET_DVR_SCREEN_FILE_INFO +{ + DWORD dwSize; + DWORD dwFileIndex; //ÎļþË÷Òý£¬È«¾ÖΨһ + BYTE byFileType; //ÎļþÀàÐÍ£¬1-ͼƬ£¬2-ÊÓƵ£¬3-Îĵµ£¬4-ÆäËû + BYTE byPictureFormat; //ͼƬ¸ñʽ£¬ÎļþÀàÐÍΪͼƬʱÓÐЧ£¬1-bmp,2-jpeg,3-png,4-swf,5-gif + BYTE byVideoFormat; //ÊÓƵ¸ñʽ£¬ÎļþÀàÐÍΪÊÓƵʱÓÐЧ£¬1-avi,2-wmv,3-mp4,4-flv,5-vod,6-mkv,7-rmvb + BYTE byDocumentFormat; //Îĵµ¸ñʽ£¬0-ppt£¬1-txt£¬2-doc£¬3-xls£¬ÎļþÀàÐÍΪ3ʱÓÐЧ + BYTE byFileName[NET_SDK_MAX_FILE_PATH]; //ÆÁÄ»ÎļþÃû + DWORD dwFileSize; //Îļþ´óС£¬µ¥Î»£º×Ö½Ú + DWORD dwPPTPage; //pptÒ³ÂëÖµ£¬½öµ±»ñÈ¡ÒÑ´ò¿ªµÄPPTÎļþÐÅϢʱÓÐЧ + BYTE byOtherFileFormat[8]; //ÆäËûÀàÐ͵ÄÎļþµÄ¸ñʽ£¨ÀýÈç.dat¡¢.dllµÈ£©£¬ÎļþÀàÐÍΪ4ʱÓÐЧ + BYTE byRes1[56]; +}NET_DVR_SCREEN_FILE_INFO, *LPNET_DVR_SCREEN_FILE_INFO; + +typedef struct tagNET_DVR_SCREEN_CONFIG +{ + DWORD dwSize; + BYTE byVolume; //ÒôÁ¿£¬0-100 + BYTE byContrast; //¶Ô±È¶È£¬0-100 + BYTE byBrightness; //ÁÁ¶È£¬0-100 + BYTE byScreenShowEnabled; //¿ªÆôÆÁÄ»ÏÔʾ£¬0-¹Ø£¬·Ç0-¿ª + BYTE byScreenLocked; //Ëø¶¨ÆÁÄ»£¬0-½âËø£¬·Ç0-Ëø¶¨ + BYTE byBlackScreenEnabled; //ÆÁÄ»ºÚÆÁ£¬0-È¡ÏûºÚÆÁ£¬·Ç0-ºÚÆÁ + BYTE byRes[30]; +}NET_DVR_SCREEN_CONFIG, *LPNET_DVR_SCREEN_CONFIG; + +typedef struct tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM +{ + DWORD dwSize; + BYTE byFileType; //ÎļþÀàÐÍ£¬1-ͼƬ£¬2-ÊÓƵ£¬3-Îĵµ£¬4-ÆäËû + BYTE byPictureFormat; //ͼƬ¸ñʽ£¬1-BMP£¬2-JPEG£¬3-PNG£¬4-SWF£¬5-GIF£¬ÎļþÀàÐÍΪ1ʱÓÐЧ + BYTE byVideoFormat; //ÊÓƵ¸ñʽ£¬1-AVI£¬2-WMV£¬3-MP4£¬4-FLV£¬5-VOD£¬6-MKV£¬7-RMVB£¬ÎļþÀàÐÍΪ2ʱÓÐЧ + BYTE byDocumentFormat; //Îĵµ¸ñʽ£¬0-ppt£¬1-txt£¬2-doc£¬3-xls£¬ÎļþÀàÐÍΪ3ʱÓÐЧ + BYTE byFileName[NET_SDK_MAX_FILE_PATH]; //ÎļþÃû³Æ + BYTE byOtherFileFormat[8]; //ÆäËûÀàÐ͵ÄÎļþµÄ¸ñʽ£¨ÀýÈç.dat¡¢.dllµÈ£©£¬ÎļþÀàÐÍΪ4ʱÓÐЧ + BYTE byRes1[56]; +}NET_DVR_SCREEM_FILE_UPLOAD_PARAM, *LPNET_DVR_SCREEM_FILE_UPLOAD_PARAM; + +typedef struct tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM +{ + DWORD dwSize; + DWORD dwFileIndex; //ÎļþË÷Òý + DWORD dwPPTPageNo; //ÏÂÔØPPTÒ³ÃæͼƬʱÓÐЧ£¬Îª0±íʾÏÂÔØPPT±¾Éí£¬ÆäËûÖµ±íʾPPTÒ³ÂëÖµ + BYTE byRes2[64]; +}NET_DVR_SCREEM_FILE_DOWNLOAD_PARAM, *LPNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM; + +typedef struct tagNET_DVR_TV_SCREEN_COND +{ + DWORD dwSize;//½á¹¹³¤¶È + DWORD dwChannel;//ͨµÀºÅ + WORD wTVScreenNo;//µ¼²¥ÆÁ±àºÅ 0-È«²¿µ¼²¥ÆÁ + BYTE byRes[62]; //±£Áô +}NET_DVR_TV_SCREEN_COND, *LPNET_DVR_TV_SCREEN_COND; + +typedef struct tagNET_DVR_TV_SCREEN_CFG +{ + DWORD dwSize;//½á¹¹³¤¶È + DWORD dwPicStayTime;//»­ÃæÍ£Áôʱ¼ä £¨0~255s£© + BYTE byRes[256]; //±£Áô +}NET_DVR_TV_SCREEN_CFG, *LPNET_DVR_TV_SCREEN_CFG; + +//»ñÈ¡É豸ץȡͼƬºÍ¸½¼ÓÐÅÏ¢½á¹¹Ìå +typedef struct tagNET_DVR_BV_CALIB_COND +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwChannels; //ͨµÀºÅ + BYTE byRes[300]; //±£Áô +}NET_DVR_BV_CALIB_COND, *LPNET_DVR_BV_CALIB_COND; + +typedef struct tagNET_DVR_BV_CALIB_PIC +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwPicID; + DWORD dwPicLen1;//ͼƬ1³¤¶È + DWORD dwPicLen2;//ͼƬ2³¤¶È + char* pPicBuffer1;//ͼƬ»º´æ + char* pPicBuffer2;//ͼƬ»º´æ + BYTE byRes[600]; //±£Áô +}NET_DVR_BV_CALIB_PIC, *LPNET_DVR_BV_CALIB_PIC; + + +//»ñÈ¡Ë«Ä¿Íâ²Î±ê¶¨½á¹û +typedef struct tagNET_DVR_BV_CALIB_PARAM +{ + DWORD dwPicID; + NET_VCA_POINT struPoint;//üÐÄ×ø±ê + BYTE byRes[32]; //±£Áô +}NET_DVR_BV_CALIB_PARAM, *LPNET_DVR_BV_CALIB_PARAM; + +typedef struct tagNET_DVR_BV_CALIB_INFO +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwBVCalibNumber; //Ñù±¾¸öÊý + NET_DVR_BV_CALIB_PARAM struBVCalibParam[12]; + DWORD dwHumanHeight; //ÈËÌåÕæʵÉí¸ß£¬µ¥Î»cm + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[300]; //±£Áô +}NET_DVR_BV_CALIB_INFO, *LPNET_DVR_BV_CALIB_INFO; + +typedef struct tagNET_DVR_BV_CALIB_RESULT +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwCameraHeight; //ÉãÏñ»ú¸ß¶È£¬µ¥Î»cm + float fPitchAngle; //ÉãÏñ»ú¸©ÊӽǶÈ[0¡ã, 60¡ã], £¨¸¡µãÊý + 360£©* 1000 + float fInclineAngle; //ÉãÏñ»úб½Ç¶È[-20¡ã,20¡ã]£¬£¨¸¡µãÊý + 360£© * 1000 + BYTE byRes[300]; //±£Áô +}NET_DVR_BV_CALIB_RESULT, *LPNET_DVR_BV_CALIB_RESULT; + +//»ñÈ¡Ë«Ä¿¸ß¶È½ÃÕýÊý¾Ý +typedef struct tagNET_DVR_BV_HCORRECTION_COND +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwChannels; //ͨµÀºÅ + DWORD dwPicID; + BYTE byRes[300]; //±£Áô +}NET_DVR_BV_HCORRECTION_COND, *LPNET_DVR_BV_HCORRECTION_COND; + +typedef struct tagNET_DVR_BV_HCORRECTION_CFG +{ + DWORD dwSize; //½á¹¹³¤¶È + DWORD dwHumanHeight; //ÈËÌåÕæʵÉí¸ß£¬µ¥Î»cm + BYTE byRes[300]; //±£Áô +}NET_DVR_BV_HCORRECTION_CFG, *LPNET_DVR_BV_HCORRECTION_CFG; + + +//ÓïÒô²ÎÊýÅäÖà +typedef struct tagNET_DVR_TMEVOICE_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byVoiceSpeed;//ÓïËÙ 0~100 + BYTE byVoicePitch; //Óïµ÷ 0~100 + BYTE byVoiceVolum; //ÒôÁ¿0~100 + BYTE byVoicePlateEnable;//³µÅÆÓïÒô²¥±¨Ê¹ÄÜ ,0~¹Ø±Õ£¬1~ÆôÓà + /*ÉùÒôÖÖÀࣻ + 3 = Xiaoyan (female, Chinese) + 51 = Jiu Xu (male, Chinese) + 52 = Duo Xu (male, Chinese) + 53 = Xiaoping (female, Chinese) + 54 = Donald Duck (male, Chinese) + 55 = Baby Xu (child, Chinese) + */ + DWORD dwVoiceRole; //ÉùÒôÖÖÀà + char sInfo[MAX_TMEVOICE_LEN/*64*/]; //ÓïÒô²¥±¨ÄÚÈÝ£¨³öÈë¿ÚѹÏßȦ²¥±¨µÄÓïÒôÄÚÈÝ£© + char sFileName[MAX_TMEVOICE_LEN/*64*/]; //ÓïÒôÎļþÃû + BYTE byRes[64]; +}NET_DVR_TMEVOICE_CFG,*LPNET_DVR_TMEVOICE_CFG; + +//ÊäÈë°å²ÎÊýÅäÖà +typedef struct tagNET_DVR_INPUT_BOARD_CFG +{ + DWORD dwSize; + DWORD dwSlotNo; //ÊäÈë°å²ÛλºÅ + BYTE byFullFrameEnable; //ÊÇ·ñ¿ªÆôÈ«Ö¡Âʳ©ÏÔ£¬0-²»¿ªÆô£¬1-¿ªÆô + BYTE byRes[3]; //ËÄ×Ö½Ú¶ÔÆë + BYTE byRes1[64]; //±£Áô +}NET_DVR_INPUT_BOARD_CFG, *LPNET_DVR_INPUT_BOARD_CFG; + +typedef struct tagNET_DVR_INPUT_BOARD_CFG_LIST +{ + DWORD dwSize; + NET_DVR_INPUT_BOARD_CFG struBoardList[MAX_NUM_INPUT_BOARD]; //ÊäÈë°åÅäÖÃÐÅÏ¢Áбí +}NET_DVR_INPUT_BOARD_CFG_LIST, *LPNET_DVR_INPUT_BOARD_CFG_LIST; + +/******************************°²È«·À·¶ÊÓƵ¼à¿ØÁªÍøÐÅÏ¢°²È« begin******************************************/ +//»ñÈ¡¼ÓÃÜÉ豸ÐÅÏ¢Ìõ¼þ½á¹¹Ìå +typedef struct _NET_DVR_ENCRYPT_DEVICE_COND +{ + DWORD dwSize; //½á¹¹Ìå´óС + DWORD dwChannel; //ͨµÀºÅ + BYTE byAlgorithm; //¼ÓÃÜËã·¨£¬0-±£Áô£¬1-RSA,2-SM2 + BYTE byModelLen; //Ä£³¤£¬0-±£Áô£¬1-1024λ,2-2048λ,3-256λ + BYTE byCERTSaveLocation; //Ö¤Êé±£´æλÖ㬸ù¾ÝÉ豸·µ»ØµÄÄÜÁ¦¼¯À´Ñ¡Ôñ£¬0-±£Áô£¬1-¼ÓÃÜоƬÖÐ(ͨ¹ýUSB²åÈëÉ豸),2-É豸ÖÐ + BYTE byRes[29]; +}NET_DVR_ENCRYPT_DEVICE_COND, *LPNET_DVR_ENCRYPT_DEVICE_COND; +//»ñÈ¡¼ÓÃÜÉ豸ÐÅÏ¢½á¹¹Ìå +typedef struct _NET_DVR_ENCRYPT_DEVICE_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byAlgorithm; //¼ÓÃÜËã·¨£¬0-±£Áô£¬1-RSA,2-SM2 + BYTE byModelLen; //Ä£³¤£¬0-±£Áô£¬1-1024λ,2-2048λ,3-256λ + BYTE byRes1[30]; //±£Áô + DWORD dwPublicKeyLen; //¹«Ô¿³¤¶È + char szPublicKey[MAX_PUBLIC_KEY_LEN]; //¹«Ô¿ + char szChipSerialNumber[CHIP_SERIALNO_LEN]; //оƬÐòÁкŠ+ char szDeviceID[ENCRYPT_DEV_ID_LEN]; //É豸ID + BYTE byRes2[128]; +}NET_DVR_ENCRYPT_DEVICE_INFO, *LPNET_DVR_ENCRYPT_DEVICE_INFO; +//¼ÓÃÜÖ¤Êé²ÎÊý½á¹¹Ìå +typedef struct _NET_DVR_ENCRYPT_CERT_PARAM +{ + DWORD dwSize; + WORD wCertType; //Ö¤ÊéÀàÐÍ£¬0-CA¸ùÖ¤Ê飬1-Ç©ÃûÖ¤Êé,2-¼ÓÃÜÖ¤Ê飬3- SM2¼ÓÃÜÃÜÔ¿¶Ô + BYTE byRes1[2]; //±£Áô + DWORD dwCertLen; //Ö¤Ê鳤¶È + BYTE byRes2[32]; + char* pCertBuf; //Ö¤Ê黺³åÇø +}NET_DVR_ENCRYPT_CERT_PARAM, *LPNET_DVR_ENCRYPT_CERT_PARAM; +/******************************°²È«·À·¶ÊÓƵ¼à¿ØÁªÍøÐÅÏ¢°²È« end******************************************/ +#define MAX_RING_NAME_LEN_128 128 //ÁåÒôÃû³Æ³¤¶È +typedef struct tagNET_DVR_RING_UPLOAD_CFG +{ + DWORD dwSize; + DWORD dwRingID; //ÁåÒôÐòºÅ£¬[1,8] + BYTE byRingName[MAX_RING_NAME_LEN_128/*128*/]; //ÁåÒôÃû³Æ + DWORD dwRingSize; //Îļþ´óС + BYTE byRingType; //ÁåÒôÀàÐÍ£¬0-wav + BYTE byRes[363]; +}NET_DVR_RING_UPLOAD_CFG,*LPNET_DVR_RING_UPLOAD_CFG; + +typedef struct tagNET_DVR_RING_SEARCH_COND +{ + DWORD dwSize; + DWORD dwRingID; //ÁåÒôÐòºÅ£¬Éµ¹Ïʽ²éÕÒ£¬²»ÉèÖô˲ÎÊý£¨ÉèΪ0£©±íʾÎÞÊÓÐòºÅ²éÕÒ + BYTE byRes[300]; +}NET_DVR_RING_SEARCH_COND,*LPNET_DVR_RING_SEARCH_COND; + +typedef struct tagNET_DVR_RING_SEARCH_CFG +{ + DWORD dwSize; + DWORD dwRingID; //ÁåÒôÐòºÅ£¬[1,8] + BYTE byRingName[MAX_RING_NAME_LEN_128/*128*/]; //ÁåÒôÃû³Æ + DWORD dwRingSize; //Îļþ´óС + BYTE byRingType; //ÁåÒôÀàÐÍ£¬0-wav + BYTE byRes[303]; +}NET_DVR_RING_SEARCH_CFG,*LPNET_DVR_RING_SEARCH_CFG; + +//±¨¾¯¿ØÖÆ +typedef struct tagNET_DVR_ALARMCTRL_CFG +{ + DWORD dwSize; + BYTE byListenPicUploadEnabled;//¼àÌýͼƬÉÏ´«Ê¹ÄÜ + BYTE byRes [259]; +}NET_DVR_ALARMCTRL_CFG,*LPNET_DVR_ALARMCTRL_CFG; + +typedef struct tagNET_DVR_VEHICLEFLOW_COND +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byLane;//³µµÀºÅ£¬1~6³µµÀ,0ΪËùÓгµµÀ¡£ + BYTE byRes1[3]; + NET_DVR_TIME_V30 struStartTime;//¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime;//½áÊøʱ¼ä + BYTE byRes[256]; +}NET_DVR_VEHICLEFLOW_COND, *LPNET_DVR_VEHICLEFLOW_COND; + +typedef struct tagNET_DVR_VEHICLEFLOW_INFO +{ + DWORD dwVehicleFlowValue;//Ϊһ¸öʱ¼ä¶ÎÄÚµÄÁ÷Á¿ + BYTE byRes[64]; +}NET_DVR_VEHICLEFLOW_INFO, *LPNET_DVR_VEHICLEFLOW_INFO; + +typedef struct tagNET_DVR_VEHICLEFLOW_CFG +{ + DWORD dwSize; + NET_DVR_VEHICLEFLOW_INFO struVehFlow[MAX_VEHICLEFLOW_INFO/*24*/]; + BYTE byRes[512]; +}NET_DVR_VEHICLEFLOW_CFG, *LPNET_DVR_VEHICLEFLOW_CFG; + +//Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_IPADDR_FILTER_COND +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byRes[64]; +}NET_DVR_IPADDR_FILTER_COND, *LPNET_DVR_IPADDR_FILTER_COND; + +typedef struct tagNET_DVR_TEMPHUMSENSOR +{ + DWORD dwSize;//½á¹¹Ì峤¶È + BYTE byEnable;//ʹÄÜ 0-¹Ø£¬1-¿ª + BYTE byCtrlMode;//¿ØÖÆģʽ 0-ζÈãÐÖµ¿ØÖÆ£¬1-ʪ¶ÈãÐÖµ¿ØÖÆ£¬2-ÎÂʪ¶ÈãÐÖµ¿ØÖÆ + BYTE byTemperatureValue;//ζÈãÐÖµ£¬0~100ÉãÊ϶È,µ±¿ØÖÆģʽΪ0»òÕß2ʱÉúЧ + BYTE byHumidityValue;//ʪ¶ÈãÐÖµ£¬0~100£¬µ±¿ØÖÆģʽΪ1»òÕß2ʱÉúЧ + BYTE byFanSwitch;//·çÉÈ¿ª¹Ø£¬0-¹Ø£¬1-¿ª + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K)¡£ + BYTE byRes[62]; +}NET_DVR_TEMPHUMSENSOR, *LPNET_DVR_TEMPHUMSENSOR; + +//À×´ï²âËÙÅäÖà +typedef struct tagNET_DVR_POSTRADARSPEED_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byLaneType; //µÀ·ÀàÐÍ£»0~δÅäÖÃ,1~¸ßËÙ¹«Â·,2~³ÇÊпìËÙ·,0xff~ÆäËûµÀ· + BYTE byRes1[3]; + DWORD dwInterval; //³¬ËÙ×¥Åļä¸ô£¬µ¥Î»£ºms + DWORD dwSignSpeed;//±êÖ¾ÏÞËÙ(С³µ)£¬µ¥Î»km/h + DWORD dwSpeedLimit;//ÏÞËÙÖµ(С³µ)£¬µ¥Î»km/h + DWORD dwBigCarSignSpeed;//±êÖ¾ÏÞËÙ(´ó³µ)£¬µ¥Î»km/h + DWORD dwBigCarSpeedLimit;//ÏÞËÙÖµ£¨´ó³µ£©£¬µ¥Î»km/h + DWORD dwLowSpeedLimit;// С³µÏÞµÍËÙ£¬µ¥Î»km/h + DWORD dwBigCarLowSpeedLimit;// ´ó³µÏÞµÍËÙ£¬µ¥Î»km/h + BYTE byCheckPostEnabled; //ÆôÓÿ¨¿Ú×¥ÅÄ + BYTE byOverSpeedEnabled; //ÆôÓó¬ËÙ×¥ÅÄ + BYTE byRes[246]; +}NET_DVR_POSTRADARSPEED_CFG, *LPNET_DVR_POSTRADARSPEED_CFG; + +//À×´ï²ÎÊýÅäÖà +typedef struct tagNET_DVR_POSTRADARPARAM_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE bySoftWareVersion[32];//Èí¼þ°æ±¾ºÅ Ö»¶Á²ÎÊý + BYTE byID; //´®¿ÚºÅ + BYTE byWorkMode; //¹¤×÷ģʽ£¬0~³ÖÐø,1~´¥Í·,2~´¥Î²,3~ѲÂß³µ´¥Î²,4~Ë«´¥,0xff~ÆäËû + BYTE bySpeedType; //Ëٶȸñʽ£¬0~µ¥×Ö½Ú,1~Ë«×Ö½Ú,2~ËÄ×Ö½Ú,0xff~ÆäËû + BYTE byDirectionFilter; //·½Ïò¹ýÂË£¬0~²»¹ýÂË,1~Êä³öÀ´Ïò,2~Êä³öÈ¥Ïò + DWORD dwAngleCorrect;//½Ç¶ÈÐÞÕý[0,70] + DWORD dwSensitivity;// ÁéÃô¶È[11,240] + DWORD dwSpeedLowLimit;// ²âËÙÏÂÏÞ[1,150km/h] + DWORD dwTrigDistance;// ´¥·¢¾àÀë[0,40m] + BYTE byRes[256]; +}NET_DVR_POSTRADARPARAM_CFG, *LPNET_DVR_POSTRADARPARAM_CFG; + +typedef struct tagNET_DVR_CLOUD_URL_COND +{ + DWORD dwSize; + BYTE byType; //ÔÆÀàÐÍ0-±£Áô£¬1- OneDrive 2-GoogleDrive 3-DropBox + BYTE byRes[63]; +}NET_DVR_CLOUD_URL_COND, *LPNET_DVR_CLOUD_URL_COND; + +typedef struct tagNET_DVR_CLOUD_URL +{ + DWORD dwSize; + char szURL[256]; //ÔÆ´æ´¢URL + BYTE byRes[256]; +}NET_DVR_CLOUD_URL, *LPNET_DVR_CLOUD_URL; + +typedef struct tagNET_DVR_CLOUD_CFG +{ + DWORD dwSize; + BYTE byEnable; //0-²»¿ªÆô£¬1-¿ªÆô + BYTE byType; //ÔÆÀàÐÍ0-±£Áô£¬1- OneDrive 2-GoogleDrive 3-DropBox + BYTE byStatus; //״̬£¬Ö»¶Á 0-±£Áô 1-ÔÚÏß 2-²»ÔÚÏß + BYTE byRes1; + char szAuthCode[CODE_LEN]; //ÊÚȨÂë + char szAlias[ALIAS_LEN]; //±ðÃû£¬Ö»¶Á + INT64 i64TotalCapability; //×ÜÈÝÁ¿£¬Ö»¶Á£¬µ¥Î»£ºMB + INT64 i64UsedSpace; //ÒÑÓÃÈÝÁ¿£¬Ö»¶Á£¬µ¥Î»£ºMB + BYTE byRes2[256]; +}NET_DVR_CLOUD_CFG, *LPNET_DVR_CLOUD_CFG; + +typedef struct tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + BYTE byRes[254]; //Ϊ½«À´Ê¹ÓÃÁ÷ID×ö±£Áô +}NET_DVR_CLOUD_UPLOADSTRATEGY_COND, *LPNET_DVR_CLOUD_UPLOADSTRATEGY_COND; + +typedef struct tagNET_DVR_CLOUD_UPLOADSTRATEGY +{ + DWORD dwSize; + BYTE byStrategyType; //²ßÂÔÀàÐÍ0-ÎÞÒâÒ壬1-¼Ïñ£¬2-ͼƬ + BYTE byRes1[3]; + DWORD dwRecordType; //²ßÂÔÀàÐÍbyStrategyType Ϊ1ʱÓÐЧ£¬°´Î»±íʾ + /*0x00: ÎÞÒâÒå*/ + /*0x01: È«²¿Ê¼þ*/ + /*0x02: Òƶ¯Õì²â*/ + /*0x04: ÐźÅÁ¿±¨¾¯ÀàÐÍ*/ + /*0x08: ÖÇÄÜÀàÐÍ*/ + BYTE byRes[256]; +}NET_DVR_CLOUD_UPLOADSTRATEGY, *LPNET_DVR_CLOUD_UPLOADSTRATEGY; + +//¼ÏñÍêÕûÐÔ¼ì²éÌõ¼þ²ÎÊý +typedef struct tagNET_DVR_RECORD_CHECK_COND +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; + BYTE byCheckType; //¼ì²â·½Ê½,0--¼ÏñÊÇ·ñÍêÕû,1--¼ÏñÊÇ·ñÍêÕû&ȱʧ¼ÏñµÄÆðֹʱ¼ä + BYTE byRes1[3]; + NET_DVR_TIME_EX struBeginTime; //¼ì²â¼ÏñµÄ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndTime; //¼ì²â¼ÏñµÄ½áÊøʱ¼ä + BYTE byRes[128]; +}NET_DVR_RECORD_CHECK_COND, *LPNET_DVR_RECORD_CHECK_COND; + +//¼ÏñÍêÕûÐÔ¼ì²é½á¹û +typedef struct tagNET_DVR_RECORD_CHECK_RET +{ + DWORD dwSize; + BYTE byRecordNotComplete; //¼ÏñÊÇ·ñÍêÕû£¬0--ÍêÕû,1--²»ÍêÕû + BYTE byRes1[3]; + NET_DVR_TIME_EX struBeginTime; //ȱʧ¼ÏñµÄ¿ªÊ¼Ê±¼ä£¬byCheckType¡¢byRecordNotCompleteÖµ¶¼Îª1ʱÓÐЧ + NET_DVR_TIME_EX struEndTime; //ȱʧ¼ÏñµÄ½áÊøʱ¼ä£¬byCheckType¡¢byRecordNotCompleteÖµ¶¼Îª1ʱÓÐЧ + BYTE byRes[128]; +}NET_DVR_RECORD_CHECK_RET, *LPNET_DVR_RECORD_CHECK_RET; + +//Ìí¼ÓÊÖ¶¯»Ø´«ÈÎÎñÌõ¼þ +typedef struct tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; + BYTE byRes[128]; +}NET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND, *LPNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND; + +//Ìí¼ÓÊÖ¶¯»Ø´«ÈÎÎñ²ÎÊý +typedef struct tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG +{ + DWORD dwSize; + NET_DVR_TIME_EX struBeginTime; //»Ø´«µÄ¼Ïñ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struEndTime; //»Ø´«µÄ¼Ïñ½áÊøʱ¼ä + BYTE byRes[128]; +}NET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG, *LPNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG; + +//»Ø´«ÈÎÎñ²ÎÊý +typedef struct tagNET_DVR_RECORD_PASSBACK_TASK_CFG +{ + DWORD dwSize; + DWORD dwTaskID; //ÈÎÎñID + BYTE byRes[160]; +}NET_DVR_RECORD_PASSBACK_TASK_CFG, *LPNET_DVR_RECORD_PASSBACK_TASK_CFG; + +//»ñÈ¡ËùÓÐÊÖ¶¯»Ø´«ÈÎÎñÌõ¼þ²ÎÊý +typedef struct tagNET_DVR_RECORD_PASSBACK_MANUAL_COND +{ + DWORD dwSize; + BYTE byType; //»ñÈ¡·½Ê½,0--»ñÈ¡È«²¿Ê£ÓàÈÎÎñ£¬1--¸ù¾ÝÁ÷ID»ñÈ¡Ê£ÓàÈÎÎñ, 2--»ñÈ¡È«²¿ÈÎÎñ£¬3--¸ù¾ÝÁ÷ID»ñÈ¡ÈÎÎñ£¬4¡ª¸ù¾ÝÈÎÎñID»ñÈ¡ÈÎÎñ + BYTE byTimeSegmentQuety; //ÊÇ·ñÆôÓÃʱ¼ä·¶Î§²éѯ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes1[2]; //±£Áô + NET_DVR_STREAM_INFO struStreamInfo; //Á÷idÐÅÏ¢£¨72×Ö½Ú£©£¬¸ù¾ÝÁ÷ID»ñÈ¡Ê£ÓàÈÎÎñʱÓÐЧ + NET_DVR_TIME_EX struBeginTime; //²éѯ¿ªÊ¼Ê±¼ä£¬byTimeSegmentQuetyÆôÓÃʱÓÐЧ + NET_DVR_TIME_EX struEndTime; //²éѯ½áÊøʱ¼ä£¬byTimeSegmentQuetyÆôÓÃʱÓÐЧ + DWORD dwTaskID; //ÈÎÎñID, byTypeµÈÓÚ4ʱÓÐЧ + BYTE byRes[108]; //±£Áô +}NET_DVR_RECORD_PASSBACK_MANUAL_COND, *LPNET_DVR_RECORD_PASSBACK_MANUAL_COND; + +//»ñÈ¡ËùÓÐÊÖ¶¯»Ø´«ÈÎÎñ²ÎÊý +typedef struct tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; //Á÷idÐÅÏ¢£¨72×Ö½Ú£©£¬¸ù¾ÝÁ÷ID»ñÈ¡Ê£ÓàÈÎÎñʱÓÐЧ + DWORD dwTaskID; //ÈÎÎñID + NET_DVR_TIME_EX struStartTime; //»Ø´«µÄ¼Ïñ¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struStopTime; //»Ø´«µÄ¼Ïñ½áÊøʱ¼ä + BYTE byTaskStatus; //ÈÎÎñ״̬£¬0--δִÐУ¬1--ÔÝÍ£ÖУ¬2--ÒÑÖ´ÐÐ, 3--»Ø´«ÖÐ, 4--»Ø´«Ê§°Ü, 5--Ö´Ðгɹ¦£¬µ«Ö»»Ø´«Á˲¿·Ö¼Ïñ, 6--Ö´Ðгɹ¦£¬µ«Ç°¶ËÎÞ¼Ïñ + BYTE byRes1[3]; + NET_DVR_TIME_EX struExecuteStartTime;//ÈÎÎñʵ¼ÊÖ´ÐпªÊ¼Ê±¼ä£¬byTaskStatusΪ1ºÍ2ÓÐЧ + NET_DVR_TIME_EX struExecuteStopTime;//ÈÎÎñʵ¼ÊÖ´ÐнáÊøʱ¼ä£¬byTaskStatusΪ2ÓÐЧ + BYTE byRes[128]; //±£Áô +}NET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET, *LPNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET; + +//¿ØÖÆÊÖ¶¯»Ø´«ÈÎÎñ²ÎÊý +typedef struct tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL +{ + DWORD dwSize; + BYTE byControlType; //¿ØÖÆ·½Ê½,0--ÔÝÍ£ËùÓÐÊÖ¶¯ÈÎÎñ£¬1--»Ö¸´ËùÓÐÊÖ¶¯ÈÎÎñ + BYTE byRes[131]; //±£Áô +}NET_DVR_RECORD_PASSBACK_MANUAL_CTRL, *LPNET_DVR_RECORD_PASSBACK_MANUAL_CTRL; + +//ɾ³ýÊÖ¶¯»Ø´«ÈÎÎñÌõ¼þ +typedef struct tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND +{ + DWORD dwSize; + BYTE byDelType; //ɾ³ý·½Ê½,0--¸ù¾ÝÈÎÎñIDɾ³ý£¬1--¸ù¾ÝÁ÷IDɾ³ýÈÎÎñ£¬2--ɾ³ýÈ«²¿ÈÎÎñ + BYTE byRes[131]; //±£Áô +}NET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND, *LPNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND; + +//ɾ³ýÊÖ¶¯»Ø´«ÈÎÎñ²ÎÊý +typedef struct tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG +{ + DWORD dwSize; + DWORD dwTaskID; //ÊÖ¶¯»Ø´«ÈÎÎñID£¬¸ù¾ÝÈÎÎñIDɾ³ýÈÎÎñʱÓÐЧ + NET_DVR_STREAM_INFO struStreamInfo; //Á÷idÐÅÏ¢£¨72×Ö½Ú£©£¬¸ù¾ÝÁ÷IDɾ³ýÈÎÎñʱÓÐЧ + BYTE byRes[128]; //±£Áô +}NET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG, *LPNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG; + +typedef struct tagNET_DVR_PASSBACK_DAY +{ + BYTE byAllDay; //ÊÇ·ñÆôÓÃÈ«Ìì»Ø´« + BYTE byRes[3]; //±£Áô +}NET_DVR_PASSBACK_DAY, *LPNET_DVR_PASSBACK_DAY; + +typedef struct tagNET_DVR_PASSBACK_SCHED +{ + NET_DVR_SCHEDTIME struPassBackTime; //»Ø´«ÈÎÎñʱ¼ä¶Î£¬¿ªÊ¼Ê±¼ä-½áÊøʱ¼ä + BYTE byRes[4]; //±£Áô +}NET_DVR_PASSBACK_SCHED, *LPNET_DVR_PASSBACK_SCHED; + +//¼Ïñ»Ø´«¼Æ»®²ÎÊý +typedef struct tagNET_DVR_RECORD_PASSBACK_SCH_CFG_ +{ + DWORD dwSize; + BYTE byEnable; //ÊÇ·ñÆôÓã¬0--²»ÆôÓã¬1--ÆôÓà + BYTE byPassBackWeek; //ÊÇ·ñ°´Öܻش«£¬0--·ñ£¬1--ÊÇ£¬ÖµÎª1ʱstruPassBackDay¡¢struPassBackSchedÎÞЧ + BYTE byRes1[2]; //±£Áô + NET_DVR_PASSBACK_DAY struPassBackDay[MAX_DAYS]; //È«Ìì»Ø´«¼Æ»® + NET_DVR_PASSBACK_SCHED struPassBackSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; //ʱ¼ä¶Î»Ø´«¼Æ»® + BYTE byRes[128]; //±£Áô +}NET_DVR_RECORD_PASSBACK_SCH_CFG, *LPNET_DVR_RECORD_PASSBACK_SCH_CFG; + +//»Ø´«Àúʷ¼Ïñ¼Æ»®²ÎÊý +typedef struct tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_ +{ + DWORD dwSize; //°æ±¾Í· + BYTE byEnable; //ÊÇ·ñÆôÓã¬0--²»ÆôÓã¬1--ÆôÓà + BYTE byRes1[3]; //±£Áô + NET_DVR_PASSBACK_DAY struPassBackDay[MAX_DAYS]; //È«Ìì»Ø´«¼Æ»® + NET_DVR_PASSBACK_SCHED struPassBackSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; //ʱ¼ä¶Î»Ø´«¼Æ»® + BYTE byRes[256]; //±£Áô +}NET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG, *LPNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG; + +//¼Ïñ¾í²ÎÊý +typedef struct tagNET_DVR_DEV_STORAGE_CFG +{ + DWORD dwSize; + DWORD dwCapacityTotal; //É豸´æ´¢(CVR±íʾ¼Ïñ¾í)×ÜÈÝÁ¿(Ö»¶Á)£¬µ¥Î»MB + DWORD dwFreeSpaceTotal; //É豸´æ´¢(CVR±íʾ¼Ïñ¾í)Ê£Óà×Ü¿Õ¼ä(Ö»¶Á)£¬µ¥Î»MB + DWORD dwLockedRecordSpace; //É豸ÒѼÓËø¼Ïñ´æ´¢(CVR±íʾ¼Ïñ¾í)×ÜÈÝÁ¿(Ö»¶Á)£¬µ¥Î»MB + DWORD dwUnLockedSpace; //É豸δ¼ÓËø´æ´¢(CVR±íʾ¼Ïñ¾í)×ÜÈÝÁ¿(Ö»¶Á),°üº¬Î´¼ÓËø¼ÏñºÍÊ£Óà´æ´¢¿Õ¼ä£¬µ¥Î»MB + BYTE byRes[512]; //±£Áô +}NET_DVR_DEV_STORAGE_CFG, *LPNET_DVR_DEV_STORAGE_CFG; + +//Ò»¼üÅäÖÃCVR£¨V50£© +typedef struct tagNET_DVR_ONE_KEY_CFG_V50 +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byRaidType; //RAIDÀàÐÍ£º0-raid5,1-raid6,2-raid95£¨Vraid£©,3-µ¥ÅÌģʽ£¬¼´²»´´½¨raid + BYTE bySpareRaidProportion; //Èȱ¸ÅÌ£ºraid£¨ÕóÁУ©µÄ±ÈÀý,0--£¨0:1£©,1--£¨1:1£©,2--£¨1:2£©,3--£¨1:3£©,4--£¨1:4£©,5--£¨1:5£©,6--£¨1:6£©,7--£¨6:1£©,8--£¨5:1£©,9--£¨4:1£©,10--£¨3:1£©,11--£¨2:1£© + BYTE byPicQuota; //ͼƬ¾í±ÈÀý£º·¶Î§0~100 + BYTE byRes[257]; +}NET_DVR_ONE_KEY_CFG_V50, *LPNET_DVR_ONE_KEY_CFG_V50; + +typedef struct tagNET_DVR_ONE_KEY_RESULT_V51 +{ + DWORD dwState; //״ֵ̬£¬Ïê¼û±¸×¢µÄ״ֵ̬ + BYTE byProgress; //²Ù×÷½ø¶È£¬0~100 + BYTE byRes[259]; +}NET_DVR_ONE_KEY_RESULT_V51, *LPNET_DVR_ONE_KEY_RESULT_V51; + +typedef struct tagNET_DVR_ONE_KEY_CFG_SAN_V50 +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byRaidType; //RAIDÀàÐÍ£º0-raid5,1-raid6 + BYTE bySpareRaidProportion; //Èȱ¸ÅÌ£ºraid£¨ÕóÁУ©µÄ±ÈÀý,0--£¨0:1£©,1--£¨1:1£©,2--£¨1:2£©,3--£¨1:3£©,4--£¨1:4£©,5--£¨1:5£©,6--£¨1:6£©,7--£¨6:1£©,8--£¨5:1£©,9--£¨4:1£©,10--£¨3:1£©,11--£¨2:1£© + BYTE byRes[254]; +}NET_DVR_ONE_KEY_CFG_SAN_V50, *LPNET_DVR_ONE_KEY_CFG_SAN_V50; + +typedef struct tagNET_DVR_REC_PASSBACK_BASIC_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwStartTime; //¼ì²â´°¿Ú¿ªÊ¼Ê±¼ä£¨µ¥Î»£º·ÖÖÓ£© + DWORD dwStopTime; //¼ì²â´°¿Ú½áÊøʱ¼ä£¨µ¥Î»£º·ÖÖÓ£© + WORD wMaxTotalConcurrenceNum; //²¢·¢»Ø´«Â·ÊýÉÏÏÞ,Õë¶ÔµÄÊDZàÂëÆ÷·Êý£¬²»Êǻش«ÈÎÎñÌõÊý + WORD wMaxDvrConcurrenceNum; //µ¥Ì¨DVR²¢·¢»Ø´«Í¨µÀÊýÉÏÏÞ + DWORD dwSyncSpeed; //»Ø´«ËÙÂÊ£¨µ¥Î»Mbps£¬ÉÏÏÞΪ12Mbps£© + DWORD dwRecordType; //¼ÏñÀàÐÍ: 0xffffffff£­È«²¿£¬0£­¶¨Ê±£¬1-Òƶ¯Õì²â,2£­±¨¾¯£¬0xff-ÆäËû + BYTE byRes[248]; +}NET_DVR_REC_PASSBACK_BASIC_CFG, *LPNET_DVR_REC_PASSBACK_BASIC_CFG; + +//É豸Á¬½ÓµÄÓû§²ÎÊý +typedef struct tagNET_DVR_ONLINE_USER_INFO_ +{ + DWORD dwSize; + WORD wOnlineUserCount; //µÇ¼É豸µÄÓû§Êý + BYTE byRes[514]; //±£Áô +}NET_DVR_ONLINE_USER_INFO, *LPNET_DVR_ONLINE_USER_INFO; + +//²éѯ¼Ïñ×Ü´óСÌõ¼þ²ÎÊý +typedef struct tagNET_DVR_RECORD_SEGMENT_COND_ +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreanInfo; + NET_DVR_TIME_EX struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_EX struStopTime; //½áÊøʱ¼ä + BYTE byRes[256]; //±£Áô +}NET_DVR_RECORD_SEGMENT_COND, *LPNET_DVR_RECORD_SEGMENT_COND; + +//²éѯ¼Ïñ×Ü´óС·µ»Ø²ÎÊý +typedef struct tagNET_DVR_RECORD_SEGMENT_RET_ +{ + DWORD dwSize; + DWORD dwRecordTotalSize; //¼Ïñ×Ü´óС£¬µ¥Î»MB + BYTE byRes[256]; //±£Áô +}NET_DVR_RECORD_SEGMENT_RET, *LPNET_DVR_RECORD_SEGMENT_RET; +typedef struct tagNET_DVR_ACCESSORY_CARD_INFO +{ + DWORD dwSize; + BYTE szAccessoryCardInfo[MAX_ACCESSORY_CARD/*256*/];//Åä¼þ°å(ÖÇÄÜ°åºÍÆ´¿Ø°å)ÐͺÅÐÅÏ¢ + BYTE byRes[512]; +}NET_DVR_ACCESSORY_CARD_INFO, *LPNET_DVR_ACCESSORY_CARD_INFO; +//²éѯÐÅÏ¢Ìõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_SEARCH_INFO_COND +{ + DWORD dwSize; + BYTE byCommand; //²éѯÌõ¼þ£¬0-¸öÈË£¬1-ËùÓÐ + BYTE byRes1[3]; + DWORD dwEmployeeNo; //¹¤ºÅ£¨²éѯÌõ¼þÅäÖÃΪ0-¸öÈËʱÓÐЧ£© + BYTE byName[NAME_LEN]; //ÐÕÃû£¨²éѯÌõ¼þÅäÖÃΪ0-¸öÈËʱÓÐЧ£© + NET_DVR_TIME_V30 struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime; //½áÊøʱ¼ä + BYTE byRes[128]; //±£Áô +}NET_DVR_SEARCH_INFO_COND, *LPNET_DVR_SEARCH_INFO_COND; + +//»ñÈ¡ÅÅ°àÐÅÏ¢ +typedef struct tagNET_DVR_SCHEDULE_CHOICE +{ + BYTE byScheduleType; //°à´ÎÀàÐÍ£¬0-²»ÅÅ°à¡¢1-ÆÕͨ°à¡¢2-¹¤Ê±°à + BYTE byScheduleNo; //°à´Î±àºÅ + BYTE byRes[14]; //±£Áô +}NET_DVR_SCHEDULE_CHOICE, *LPNET_DVR_SCHEDULE_CHOICE; +// B20 V1.5 +typedef struct tagNET_DVR_DISPINPUT_CFG +{ + DWORD dwSize; + DWORD dwDispInputNo; //ÏÔʾÊäÈëºÅ + DWORD dwEDIDFileNo; //¹ØÁªµÄEDIDÎļþ±àºÅ + BYTE byRes[32]; +}NET_DVR_DISPINPUT_CFG, *LPNET_DVR_DISPINPUT_CFG; + +//ÅÅ°à¼Æ»®½á¹¹Ìå +typedef struct tagNET_DVR_SCHEDULE_PLAN +{ + DWORD dwSize; + BYTE bySchedulePlanNo; //ÅÅ°à¼Æ»®±àºÅ,Æðʼ·¶Î§¸ù¾ÝÄÜÁ¦¼¯·µ»Ø + BYTE bySchedulePlanType; //ÅÅ°à¼Æ»®ÀàÐÍ£¬0-¸öÈË¡¢1-²¿ÃÅ + BYTE byEnable; //ʹÄÜ + BYTE byRes1; + NET_DVR_SCHEDULE_CHOICE struScheduleChoice[DAYS_A_WEEK]; //°à´ÎÑ¡Ôñ + NET_DVR_TIME_V30 struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME_V30 struEndTime; //½áÊøʱ¼ä + BYTE byHolidayNo; //¼ÙÈÕ×é±àºÅ + BYTE byRes[63]; //±£Áô +}NET_DVR_SCHEDULE_PLAN, *LPNET_DVR_SCHEDULE_PLAN; +typedef struct tagNET_DVR_DISPINPUT_CFG_LIST +{ + DWORD dwSize; + DWORD dwDispInputNum; //·µ»ØµÄNET_DVR_DISPINPUT_CFG½á¹¹µÄ¸öÊý + LPNET_DVR_DISPINPUT_CFG lpstruBuffer; //»º³åÇøÖ¸Õë + DWORD dwBufferSize; //»º³åÇø´óС + BYTE byRes[32]; +}NET_DVR_DISPINPUT_CFG_LIST, *LPNET_DVR_DISPINPUT_CFG_LIST; + +//»ñÈ¡ÅÅ°àÐÅÏ¢ +typedef struct tagNET_DVR_SCHEDULE_INFO_CFG +{ + DWORD dwSize; + DWORD dwEmployeeNo; //¹¤ºÅ + BYTE byName[NAME_LEN]; //ÐÕÃû + BYTE byDepartmentName[NAME_LEN]; //²¿ÃÅÃû³Æ + NET_DVR_SCHEDULE_PLAN struSchedulePlan; //ÅÅ°à¼Æ»® + BYTE byRes[128]; //±£Áô +}NET_DVR_SCHEDULE_INFO_CFG, *LPNET_DVR_SCHEDULE_INFO_CFG; + +//»ñÈ¡¿¼ÇÚ»ã×ÜÐÅÏ¢ +typedef struct tagNET_DVR_ATTENDANCE_SUMMARY_CFG +{ + DWORD dwSize; + DWORD dwEmployeeNo; //¹¤ºÅ + BYTE byName[NAME_LEN]; //ÐÕÃû + BYTE byDepartmentName[NAME_LEN]; //²¿ÃÅÃû³Æ + DWORD dwWorkStandard; //±ê×¼¹¤×÷ʱ¼ä£¨·ÖÖÓ£© + DWORD dwWorkActual; //ʵ¼Ê¹¤×÷ʱ¼ä£¨·ÖÖÓ£© + DWORD dwLateTimes; //³Ùµ½´ÎÊý + DWORD dwLateMinutes;//³Ùµ½ÀÛ¼Æʱ¼ä£¨·ÖÖÓ£© + DWORD dwLeaveEarlyTimes; //ÔçÍË´ÎÊý + DWORD dwLeaveEarlyMinutes; //ÔçÍËÀÛ¼Æʱ¼ä£¨·ÖÖÓ£© + DWORD dwOvertimeStandard; //±ê×¼¼Ó°àʱ¼ä£¨·ÖÖÓ£© + DWORD dwOvertimeActual; //ʵ¼Ê¼Ó°àʱ¼ä£¨·ÖÖÓ£© + DWORD dwAttendanceStandard; //±ê×¼³öÇÚÌìÊý£¨Ì죩 + DWORD dwAttendanceActual; //ʵ¼Ê³öÇÚÌìÊý£¨Ì죩 + DWORD dwAbsentDays; //¿õ¹¤ÌìÊý£¨Ì죩 + BYTE byRes[128]; //±£Áô +}NET_DVR_ATTENDANCE_SUMMARY_CFG, *LPNET_DVR_ATTENDANCE_SUMMARY_CFG; + +//»ñÈ¡¿¼ÇڼǼÐÅÏ¢ +typedef struct tagNET_DVR_ATTENDANCE_RECORD_CFG +{ + DWORD dwSize; + DWORD dwEmployeeNo; //¹¤ºÅ + BYTE byName[NAME_LEN]; //ÐÕÃû + BYTE byDepartmentName[NAME_LEN]; //²¿ÃÅÃû³Æ + NET_DVR_TIME_V30 struAttendanceTime; //¿¼ÇÚʱ¼ä + BYTE byRes[128]; //±£Áô +}NET_DVR_ATTENDANCE_RECORD_CFG, *LPNET_DVR_ATTENDANCE_RECORD_CFG; + +//¿¼ÇÚʱ¼ä¶ÎÐÅÏ¢ +typedef struct tagNET_DVR_ATTENDANCE_TIME +{ + NET_DVR_TIME_V30 struOnDutyTime; //ÉÏ°àʱ¼ä + NET_DVR_TIME_V30 struOffDutyTime; //Ï°àʱ¼ä +}NET_DVR_ATTENDANCE_TIME, *LPNET_DVR_ATTENDANCE_TIME; + +//»ñÈ¡Ò쳣ͳ¼ÆÐÅÏ¢ +typedef struct tagNET_DVR_ABNORMAL_CFG +{ + DWORD dwSize; + DWORD dwEmployeeNo; //¹¤ºÅ + BYTE byName[NAME_LEN]; //ÐÕÃû + BYTE byDepartmentName[NAME_LEN]; //²¿ÃÅÃû³Æ + NET_DVR_ATTENDANCE_TIME struAttendanceTime[ABNORMAL_INFO_NUM]; //Ò쳣ʱ¼ä¶Î + DWORD dwLateMinutes; //³Ùµ½Ê±¼ä£¨·ÖÖÓ£© + DWORD dwLeaveEarlyMinutes; //ÔçÍËʱ¼ä£¨·ÖÖÓ£© + DWORD dwAbsenceMinutes; //ȱÇÚʱ¼ä£¨·ÖÖÓ£© + DWORD dwTotalMinutes; //ºÏ¼Æʱ¼ä£¨·ÖÖÓ£© + BYTE byRes[128]; //±£Áô +}NET_DVR_ABNORMAL_CFG, *LPNET_DVR_ABNORMAL_CFG; + +typedef struct tagNET_DVR_CARD_CFG_V50 +{ + DWORD dwSize; + DWORD dwModifyParamType; + // ÐèÒªÐ޸ĵĿ¨²ÎÊý£¬ÉèÖÿ¨²ÎÊýʱÓÐЧ£¬°´Î»±íʾ£¬Ã¿Î»´ú±íÒ»ÖÖ²ÎÊý£¬1ΪÐèÒªÐ޸ģ¬0Ϊ²»ÐÞ¸Ä + // #define CARD_PARAM_CARD_VALID 0x00000001 //¿¨ÊÇ·ñÓÐЧ²ÎÊý + // #define CARD_PARAM_VALID 0x00000002 //ÓÐЧÆÚ²ÎÊý + // #define CARD_PARAM_CARD_TYPE 0x00000004 //¿¨ÀàÐͲÎÊý + // #define CARD_PARAM_DOOR_RIGHT 0x00000008 //ÃÅȨÏÞ²ÎÊý + // #define CARD_PARAM_LEADER_CARD 0x00000010 //Ê׿¨²ÎÊý + // #define CARD_PARAM_SWIPE_NUM 0x00000020 //×î´óË¢¿¨´ÎÊý²ÎÊý + // #define CARD_PARAM_GROUP 0x00000040 //ËùÊôȺ×é²ÎÊý + // #define CARD_PARAM_PASSWORD 0x00000080 //¿¨ÃÜÂë²ÎÊý + // #define CARD_PARAM_RIGHT_PLAN 0x00000100 //¿¨È¨Ï޼ƻ®²ÎÊý + // #define CARD_PARAM_SWIPED_NUM 0x00000200 //ÒÑË¢¿¨´ÎÊý + // #define CARD_PARAM_EMPLOYEE_NO 0x00000400 //¹¤ºÅ + // #define CARD_PARAM_NAME 0x00000800 //ÐÕÃû + // #define CARD_PARAM_DEPARTMENT_NO 0x00001000 //²¿ÃűàºÅ + // #define CARD_SCHEDULE_PLAN_NO 0x00002000 //ÅÅ°à¼Æ»®±àºÅ + // #define CARD_SCHEDULE_PLAN_TYPE 0x00004000 //ÅÅ°à¼Æ»®ÀàÐÍ + // #define CARD_ROOM_NUMBER 0x00008000 //·¿¼äºÅ + // #define CARD_SIM_NO 0x00010000 //SIM¿¨ºÅ£¨ÊÖ»úºÅ£© + // #define CARD_FLOOR_NUMBER 0x00020000 //Â¥²ãºÅ + // #define CARD_USER_TYPE 0x00040000 //Óû§ÀàÐÍ + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byCardValid; //¿¨ÊÇ·ñÓÐЧ£¬0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚɾ³ý¿¨£¬ÉèÖÃʱÖÃΪ0½øÐÐɾ³ý£¬»ñȡʱ´Ë×Ö¶ÎʼÖÕΪ1£© + BYTE byCardType; //¿¨ÀàÐÍ£¬1-ÆÕͨ¿¨£¬2-ÌØÊâȺÌ忨£¬3-½ûÖ¹Ãûµ¥¿¨£¬4-Ѳ¸ü¿¨£¬5-вÆÈ¿¨£¬6-³¬¼¶¿¨£¬7-À´±ö¿¨£¬8-½â³ý¿¨£¬9-Ô±¹¤¿¨£¬10-Ó¦¼±¿¨£¬11-Ó¦¼±¹ÜÀí¿¨£¨ÓÃÓÚÊÚȨÁÙʱ¿¨È¨ÏÞ£¬±¾Éí²»ÄÜ¿ªÃÅ£©£¬12-ESDÈ«¼ì¿¨£¬13-ESDÃâ¼ì¿¨£¬14-ESD×ã¼ì¿¨£¬15-ESDÊּ쿨£¬Ä¬ÈÏÆÕͨ¿¨ + BYTE byLeaderCard; //ÊÇ·ñΪÊ׿¨£¬1-ÊÇ£¬0-·ñ + BYTE byUserType; // 0 ¨C ÆÕͨÓû§1 - ¹ÜÀíÔ±Óû§; + BYTE byDoorRight[MAX_DOOR_NUM_256]; //ÃÅȨÏÞ(Â¥²ãȨÏÞ¡¢ËøȨÏÞ)£¬°´Î»±íʾ£¬1ΪÓÐȨÏÞ£¬0ΪÎÞȨÏÞ£¬´ÓµÍλµ½¸ßλ±íʾ¶ÔÃÅ£¨Ëø£©1-NÊÇ·ñÓÐȨÏÞ + NET_DVR_VALID_PERIOD_CFG struValid; //ÓÐЧÆÚ²ÎÊý + BYTE byBelongGroup[MAX_GROUP_NUM_128]; //ËùÊôȺ×飬°´×Ö½Ú±íʾ£¬1-ÊôÓÚ£¬0-²»ÊôÓÚ + BYTE byCardPassword[CARD_PASSWORD_LEN]; //¿¨ÃÜÂë + WORD wCardRightPlan[MAX_DOOR_NUM_256][MAX_CARD_RIGHT_PLAN_NUM]; //¿¨È¨Ï޼ƻ®£¬È¡ÖµÎª¼Æ»®Ä£°å±àºÅ£¬Í¬¸öÃÅ£¨Ëø£©²»Í¬¼Æ»®Ä£°å²ÉÓÃȨÏÞ»òµÄ·½Ê½´¦Àí + DWORD dwMaxSwipeTime; //×î´óË¢¿¨´ÎÊý£¬0ΪÎÞ´ÎÊýÏÞÖÆ£¨¿ªËø´ÎÊý£© + DWORD dwSwipeTime; //ÒÑË¢¿¨´ÎÊý + WORD wRoomNumber; //·¿¼äºÅ + SHORT wFloorNumber; //²ãºÅ + DWORD dwEmployeeNo; //¹¤ºÅ£¨Óû§ID£© + BYTE byName[NAME_LEN]; //ÐÕÃû + WORD wDepartmentNo; //²¿ÃűàºÅ + WORD wSchedulePlanNo; //ÅÅ°à¼Æ»®±àºÅ + BYTE bySchedulePlanType; //ÅÅ°à¼Æ»®ÀàÐÍ£º0-ÎÞÒâÒå¡¢1-¸öÈË¡¢2-²¿ÃÅ + BYTE byRightType; //Ï·¢È¨ÏÞÀàÐÍ£º0-ÆÕͨ·¢¿¨È¨ÏÞ¡¢1-¶þάÂëȨÏÞ¡¢2-À¶ÑÀȨÏÞ£¨¿ÉÊÓ¶Ô½²É豸¶þάÂëȨÏÞÅäÖÃÏ·¿¼äºÅ¡¢¿¨ºÅ£¨ÐéÄ⿨ºÅ£©¡¢×î´óË¢¿¨´ÎÊý£¨¿ªËø´ÎÊý£©¡¢ÓÐЧÆÚ²ÎÊý£»À¶ÑÀȨÏÞ£º¿¨ºÅ£¨Ó©Ê¯APPÕ˺ţ©¡¢ÆäËû²ÎÊýÅäÖÃÓëÆÕͨ·¢¿¨È¨ÏÞÒ»Ö£© + BYTE byRes2[2]; + DWORD dwLockID; //ËøID + BYTE byLockCode[MAX_LOCK_CODE_LEN]; //Ëø´úÂë + BYTE byRoomCode[MAX_DOOR_CODE_LEN]; //·¿¼ä´úÂë + //°´Î»±íʾ£¬0-ÎÞȨÏÞ£¬1-ÓÐȨÏÞ + //µÚ0λ±íʾ£ºÈõµç±¨¾¯ + //µÚ1λ±íʾ£º¿ªÃÅÌáʾÒô + //µÚ2λ±íʾ£ºÏÞÖÆ¿Í¿¨ + //µÚ3λ±íʾ£ºÍ¨µÀ + //µÚ4λ±íʾ£º·´Ëø¿ªÃÅ + //µÚ5λ±íʾ£ºÑ²¸ü¹¦ÄÜ + DWORD dwCardRight; //¿¨È¨ÏÞ + DWORD dwPlanTemplate; //¼Æ»®Ä£°å(ÿÌì)¸÷ʱ¼ä¶ÎÊÇ·ñÆôÓ㬰´Î»±íʾ£¬0--²»ÆôÓã¬1-ÆôÓà + DWORD dwCardUserId; //³Ö¿¨ÈËID + BYTE byCardModelType; //0-¿Õ£¬1- MIFARE S50£¬2- MIFARE S70£¬3- FM1208 CPU¿¨£¬4- FM1216 CPU¿¨£¬5-¹úÃÜCPU¿¨£¬6-Éí·ÝÖ¤£¬7- NFC + BYTE byRes3[51]; + BYTE bySIMNum[NAME_LEN/*32*/]; //SIM¿¨ºÅ£¨ÊÖ»úºÅ£© +}NET_DVR_CARD_CFG_V50, *LPNET_DVR_CARD_CFG_V50; + +typedef struct tagNET_DVR_CAPTURE_FINGERPRINT_COND +{ + DWORD dwSize; + BYTE byFingerPrintPicType; //ͼƬÀàÐÍ£º0-ÎÞÒâÒå + BYTE byFingerNo; //ÊÖÖ¸±àºÅ£¬·¶Î§1-10 + BYTE byRes[126]; +}NET_DVR_CAPTURE_FINGERPRINT_COND, *LPNET_DVR_CAPTURE_FINGERPRINT_COND; + +typedef struct tagNET_DVR_CAPTURE_FINGERPRINT_CFG +{ + DWORD dwSize; + DWORD dwFingerPrintDataSize; //Ö¸ÎÆÊý¾Ý´óС + BYTE byFingerData[MAX_FINGER_PRINT_LEN]; //Ö¸ÎÆÊý¾ÝÄÚÈÝ + DWORD dwFingerPrintPicSize; //Ö¸ÎÆͼƬ´óС£¬µÈÓÚ0ʱ£¬´ú±íÎÞÖ¸ÎÆͼƬÊý¾Ý + char* pFingerPrintPicBuffer; //Ö¸ÎÆͼƬ»º´æ + BYTE byFingerNo; //ÊÖÖ¸±àºÅ£¬·¶Î§1-10 + BYTE byFingerPrintQuality; //Ö¸ÎÆÖÊÁ¿£¬·¶Î§1-100 + BYTE byRes[62]; +}NET_DVR_CAPTURE_FINGERPRINT_CFG, *LPNET_DVR_CAPTURE_FINGERPRINT_CFG; + +typedef struct tagNET_DVR_CAPTURE_FACE_COND +{ + DWORD dwSize; + BYTE byRes[128]; +}NET_DVR_CAPTURE_FACE_COND, *LPNET_DVR_CAPTURE_FACE_COND; + +typedef struct tagNET_DVR_FACE_FEATURE +{ + NET_VCA_RECT struFace; //ÈËÁ³×ÓͼÇøÓò + NET_VCA_POINT struLeftEye; // ×óÑÛ×ø±ê + NET_VCA_POINT struRightEye; // ÓÒÑÛ×ø±ê + NET_VCA_POINT struLeftMouth; // ×ì×ó±ß×ø±ê + NET_VCA_POINT struRightMouth; // ×ìÓÒ±ß×ø±ê + NET_VCA_POINT struNoseTip; // ±Ç×Ó×ø±ê +}NET_DVR_FACE_FEATURE, *LPNET_DVR_FACE_FEATURE; + + +typedef struct tagNET_DVR_CAPTURE_FACE_CFG +{ + DWORD dwSize; + DWORD dwFaceTemplate1Size; //ÈËÁ³Ä£°å1Êý¾Ý´óС£¬µÈÓÚ0ʱ£¬´ú±íÎÞÈËÁ³Ä£°å1Êý¾Ý + char* pFaceTemplate1Buffer; //ÈËÁ³Ä£°å1Êý¾Ý»º´æ£¨²»´óÓÚ2.5k£© + DWORD dwFaceTemplate2Size; //ÈËÁ³Ä£°å2Êý¾Ý´óС£¬µÈÓÚ0ʱ£¬´ú±íÎÞÈËÁ³Ä£°å2Êý¾Ý + char* pFaceTemplate2Buffer; //ÈËÁ³Ä£°å2Êý¾Ý»º´æ£¨²»´óÓÚ2.5K£© + DWORD dwFacePicSize; //ÈËÁ³Í¼Æ¬Êý¾Ý´óС£¬µÈÓÚ0ʱ£¬´ú±íÎÞÈËÁ³Í¼Æ¬Êý¾Ý + char* pFacePicBuffer; //ÈËÁ³Í¼Æ¬Êý¾Ý»º´æ + BYTE byFaceQuality1; //ÈËÁ³ÖÊÁ¿£¬·¶Î§1-100 + BYTE byFaceQuality2; //ÈËÁ³ÖÊÁ¿£¬·¶Î§1-100 + BYTE byCaptureProgress; //²É¼¯½ø¶È£¬Ä¿Ç°Ö»ÓÐÁ½ÖÖ½ø¶ÈÖµ£º0-δ²É¼¯µ½ÈËÁ³£¬100-²É¼¯µ½ÈËÁ³£¨Ö»ÓÐÔÚ½ø¶ÈΪ100ʱ£¬²Å½âÎöÈËÁ³ÐÅÏ¢£© + BYTE byFacePicQuality; //ÈËÁ³Í¼Æ¬ÖÐÈËÁ³ÖÊÁ¿ + DWORD dwInfraredFacePicSize; //ºìÍâÈËÁ³Í¼Æ¬Êý¾Ý´óС£¬µÈÓÚ0ʱ£¬´ú±íÎÞÈËÁ³Í¼Æ¬Êý¾Ý + char* pInfraredFacePicBuffer; //ºìÍâÈËÁ³Í¼Æ¬Êý¾Ý»º´æ + BYTE byInfraredFacePicQuality; //ºìÍâÈËÁ³Í¼Æ¬ÖÐÈËÁ³ÖÊÁ¿ + BYTE byRes1[3]; + NET_DVR_FACE_FEATURE struFeature; //ÈËÁ³¿ÙͼÌØÕ÷ÐÅÏ¢ + BYTE byRes[56]; +}NET_DVR_CAPTURE_FACE_CFG, *LPNET_DVR_CAPTURE_FACE_CFG; + +//²éѯÊÖ¶¯»Ø´«ÈÎÎñ¿ÉÖ´ÐÐÐÔÌõ¼þ²ÎÊý +typedef struct tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; //Á÷idÐÅÏ¢£¨72×Ö½Ú£© + BYTE byRes[128]; //±£Áô +}NET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND, *LPNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND; + +//²éѯÊÖ¶¯»Ø´«ÈÎÎñ¿ÉÖ´ÐÐÐÔÌõ¼þ²ÎÊý +typedef struct tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET +{ + DWORD dwSize; + NET_DVR_STREAM_INFO struStreamInfo; //Á÷idÐÅÏ¢£¨72×Ö½Ú£© + BYTE byExecutable; //0-²»¿ÉÁ¢¼´»Ø´«£¬1-¿ÉÁ¢¼´Ö´Ðлش« + BYTE byUnexecutableReason; //²»¿ÉÁ¢¼´»Ø´«Ô­Òò, 0-ÐèÒªÅŶӣ¬1-±àÂëÆ÷ÎÞÁ¬½Ó£¬2-Á÷ID²»´æÔÚ£¬3-CVRÒì³££¬4-ÎÞÊäÈëÊÓƵ, 5-±àÂëÆ÷Óû§Ãû»òÃÜÂë´í, 6-Ç°¶ËÉ豸²»¼æÈÝ, 7-ÆäËûÔ­Òò + BYTE byRes[254]; //±£Áô +}NET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET, *LPNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET; + +typedef struct tagNET_DVR_STREAM_MEDIA_CFG +{ + DWORD dwSize; + BYTE sUrl[MAX_URL_LEN]; + NET_DVR_IPADDR struDMSIP; /* dms IPµØÖ· */ + WORD wDMSPort; /*dms ¶Ë¿ÚºÅ */ + BYTE byRes1[2]; + DWORD dwDomainID; /*ÓòID£¬ÓÃÀ´Ö§³Ö¶àÍøÓò£¬ÓÉƽ̨¹ÜÀí*/ + BYTE byRes[360]; //±£Áô +}NET_DVR_STREAM_MEDIA_CFG, *LPNET_DVR_STREAM_MEDIA_CFG; + +//´¬Ö»¼ì²âµ¥¸öÇøÓòÅäÖà +typedef struct tagNET_DVR_SHIPSDETECTION_REGION_CFG +{ + + BYTE byRuleID; + BYTE byEnable; //ʹÄÜ + BYTE bySensitivity; //ÁéÃô¶È²ÎÊý£¬·¶Î§[1,100] + BYTE byFrameOverlayEnabled;//ÊÓƵÊÇ·ñµþ¼Ó¼ì²â¿ò + BYTE byRes[36]; + NET_ITC_POLYGON struPolygon; //´¥·¢ÇøÓò + NET_VCA_LINE struTriggerLine; //´¥·¢Ïß +}NET_DVR_SHIPSDETECTION_REGION_CFG, *LPNET_DVR_SHIPSDETECTION_REGION_CFG; + +typedef struct tagNET_DVR_SHIPSDETECTION_CFG +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byRes1[3]; + float fLookDownUpAngle;//É豸¸©Ñö½Ç¶È£¬¾«È·µ½Ð¡Êýµãºóһλ + float fHorizontalHeight;//É豸ˮƽ¸ß¶È£¬¾«È·µ½Ð¡Êýµãºóһλ + NET_DVR_SHIPSDETECTION_REGION_CFG struShipsDetectionRegion[MAX_SHIPSDETE_REGION_NUM];//´¬Ö»¼ì²âµ¥¸öÇøÓòÅäÖà + BYTE byRes[256]; +}NET_DVR_SHIPSDETECTION_CFG, *LPNET_DVR_SHIPSDETECTION_CFG; + +typedef struct tagNET_DVR_TEMPERATURE_COLOR +{ + /* + Ñ¡Ôñ0~¸ßα¨¾¯ÀàÐÍʱ£¬×Ö¶ÎÉúЧ,µ±¸ßÓÚ¸ÃζÈֵʱ£¬»áÓнøÐÐÑÕÉ«±ê×¢£¬ + Ñ¡Ôñ1~µÍα¨¾¯ÀàÐÍʱ, ×Ö¶ÎÉúЧ,µ±µÍÓÚ¸ÃζÈֵʱ£¬»áÓнøÐÐÑÕÉ«±ê×¢¡£ + Ñ¡Ôñ2~Çø¼ä±¨¾¯ÀàÐÍʱ£¬¡¢×Ö¶ÎÉúЧ£¬µ±ÔÚζÈÔÚ¸ÃζÈÇø¼äʱ£¬»áÓнøÐÐÑÕÉ«±ê×¢¡£ + Ñ¡Ôñ3~±£Î±¨¾¯ÀàÐÍʱ£¬¡¢×Ö¶ÎÉúЧ£¬µ±Î¶Ȳ»ÔÚ¸ÃζÈÇø¼äʱ£¬»áÓнøÐÐÑÕÉ«±ê×¢¡£ + Ñ¡Ôñ4~ΪÎÞ±¨¾¯ÀàÐÍ£¬×Ö¶ÎÉúЧ£¬¹Ø±Õ±¨¾¯£¬*/ + BYTE byType;//²âα¨¾¯ÑÕÉ«¿ØÖÆÀàÐÍ£¬0~ÎÞ±¨¾¯ÀàÐÍ£¨¹Ø±Õ£©£¬1~¸ßα¨¾¯ÀàÐÍ£¬2~µÍα¨¾¯ÀàÐÍ£¬3~Çø¼ä±¨¾¯ÀàÐÍ£¬4~±£Î±¨¾¯ÀàÐÍ + BYTE byRes1[3]; + int iHighTemperature;//¸ßÎÂÖµ£¬-273~10000 + int iLowTemperature;//µÍÎÂÖµ£¬-273~10000 + BYTE byRes[8]; +}NET_DVR_TEMPERATURE_COLOR, *LPNET_DVR_TEMPERATURE_COLOR; + +typedef struct tagNET_DVR_THERMOMETRY_BASICPARAM +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byStreamOverlay; //ÂëÁ÷µþ¼ÓζÈÐÅÏ¢£º0- ·ñ£¬1- ÊÇ + BYTE byPictureOverlay;//ץͼµþ¼ÓζÈÐÅÏ¢£º0- ·ñ£¬1- ÊÇ + BYTE byThermometryRange;//²âη¶Î§: 0-ĬÈÏÖµ,1-(-20~150),2-(0~550)£¨ÕâÀïÒÔÉãÊ϶ÈΪµ¥Î»¼ÆË㣩,3-(ÉãÊ϶È:0-650¡æ£»»ªÊÏζÈ:32-1200¨H),4-£¨ÉãÊ϶È: -40-150¡æ£©,5-(ÉãÊ϶È: 0~1200¡æ)£¨ÕâÀïÒÔÉãÊ϶ÈΪµ¥Î»¼ÆË㣬¸ù¾Ý²âε¥Î»É趨²»Í¬²âη¶Î§µÄÏÔʾ£©£¬6-(ÉãÊ϶È: -20-120¡æ,7-(ÉãÊ϶È:20~350¡æ), 8-(ÉãÊ϶È:20~45),9-(ÉãÊ϶È:30~45),0xff-×Ô¶¯ + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K)¡£ + BYTE byThermometryCurve;//²âÎÂÇúÏßģʽÏÔʾ·½Ê½£¬0-¹Ø±Õ£¬1-ģʽ1£¨ºáÏòζÈÇ÷ÊÆÏßģʽ£©£¬2-ģʽ2£¨×ÝÏòζÈÇ÷ÊÆÏßģʽ£© + BYTE byFireImageModea;//Ïû·ÀͼÏñģʽ£¬0-±£Áô£¬1-ºÚ°×ģʽ£¬2-ÈÈ̽²âģʽ£¬3-»ð³¡Ä£Ê½(×Ö¶Î0Ä¿Ç°±£Áô£¬±ÜÃâÓë֮ǰ½Ó¿Ú²»¼æÈÝ) + BYTE byShowTempStripEnable;//ÏÔʾζÈÌõʹÄÜ£º0- ·ñ£¬1- ÊÇ + float fEmissivity;//·¢ÉäÂÊ(·¢ÉäÂÊ ¾«È·µ½Ð¡ÊýµãºóÁ½Î»)[0.01, 1.00](¼´£ºÎïÌåÏòÍâ·øÉäÄÜÁ¿µÄ±¾Áì) + BYTE byDistanceUnit;//¾àÀ뵥λ: 0-Ã×£¨m£©£¬1-Ó¢³ß£¨feet£©,2-ÀåÃ×(centimeter) + BYTE byEnviroHumidity;//»·¾³Ïà¶Ôʪ¶È£¬È¡Öµ·¶Î§£º0~100% + BYTE byRes2[2]; + NET_DVR_TEMPERATURE_COLOR struTempColor;//²âα¨¾¯ÑÕÉ« + int iEnviroTemperature;//»·¾³Î¶ȣ¬È¡Öµ·¶Î§£º-273~10000ÉãÊÏ¶È + int iCorrectionVolume;//²âÎÂÐÞÕýÁ¿£¬È¡Öµ·¶Î§£º-100~100 + /* bit0-ÖÐÐĵã²âΣº0-²»ÏÔʾ£¬1-ÏÔʾ£» + bit1-×î¸ßµã²âΣº0-²»ÏÔʾ£¬1-ÏÔʾ£» + bit2-×îµÍµã²âΣº0-²»ÏÔʾ£¬1-ÏÔʾ£» + */ + BYTE bySpecialPointThermType;// ÌØÊâ²âεãÏÔʾ + BYTE byReflectiveEnabled;//·´ÉäζÈʹÄÜ£º0- ·ñ£¬1- ÊÇ + WORD wDistance;//¾àÀë(m)[0, 10000] + float fReflectiveTemperature;//·´ÉäÎÂ¶È ¾«È·µ½Ð¡Êýºóһλ + float fAlert;//Ô¤¾¯Î¶ÈãÐÖµ£¬-100.0-1000.0¶È£¨¾«È·µ½Ð¡Êýµãºóһ룩 + float fAlarm;//±¨¾¯Î¶ÈãÐÖµ£¬-100.0-1000.0¶È£¨¾«È·µ½Ð¡Êýµãºóһ룩 + float fThermalOpticalTransmittance;// ¹âѧ͸¹ýÂÊ, ¾«È·µ½Ð¡Êýµãºó3룬·¶Î§0.001-1.000£¬Ä¬ÈÏ1.000 + float fExternalOpticsWindowCorrection;//Íⲿ¹âѧζȣ¬Ä¬ÈÏÖµ20¡æ£¬·¶Î§Îª-40.0~80.0¡æ£¬Êµ¼ÊÏÔʾµ¥Î»ÒÔ½çÃæÏÔʾΪ׼ + BYTE byDisplayMaxTemperatureEnabled;// ÏÔʾ×î¸ßΠ0-²»ÏÔʾ 1-ÏÔʾ + BYTE byDisplayMinTemperatureEnabled;// ÏÔʾ×îµÍΠ0-²»ÏÔʾ 1-ÏÔʾ + BYTE byDisplayAverageTemperatureEnabled;// ÏÔʾƽ¾ùΠ0-²»ÏÔʾ 1-ÏÔʾ + BYTE byThermometryInfoDisplayposition;// ²âÎÂÐÅÏ¢ÏÔʾλÖà 0-±£Áô 1-¸úËæ¹æÔò 2-ÆÁÄ»×óÉÏ½Ç + DWORD dwAlertFilteringTime;//ζÈÔ¤¾¯µÈ´ýʱ¼ä,µ¥Î»Ãë + DWORD dwAlarmFilteringTime;//ζȱ¨¾¯µÈ´ýʱ¼ä,µ¥Î»Ãë + BYTE byemissivityMode; //·¢ÉäÂÊÅäÖÃÀàÐÍ 1-´Ö²Ú£¬2-½Ï´Ö²Ú£¬3-½Ï¹â»¬, 4-¹â»¬, 0xff-×Ô¶¨Òå + BYTE bydisplayTemperatureInOpticalChannelEnabled;//¿É¼û¹âÏÔʾζÈÐÅϢʹÄÜ£¬0-²»ÆôÓã¬1ÆôÓà + BYTE byDisplayCentreTemperatureEnabled;// ÏÔʾÖÐÐĵãÎÂ¶È 0-²»ÏÔʾ 1-ÏÔʾ + BYTE byRes[49]; +}NET_DVR_THERMOMETRY_BASICPARAM, *LPNET_DVR_THERMOMETRY_BASICPARAM; + +typedef struct tagNET_DVR_THERMOMETRY_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChannel; + WORD wPresetNo;//0-±£Áô + BYTE byRes[62]; +}NET_DVR_THERMOMETRY_COND, *LPNET_DVR_THERMOMETRY_COND; + +typedef struct tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM +{ + BYTE byEnabled; //ÊÇ·ñʹÄÜ£º0- ·ñ£¬1- ÊÇ + BYTE byRuleID;//¹æÔòID 0-±íʾÎÞЧ£¬´Ó1¿ªÊ¼ £¨listÄÚ²¿ÅжÏÊý¾ÝÓÐЧÐÔ£© + WORD wDistance;//¾àÀë(m)[0, 10000] + float fEmissivity;//·¢ÉäÂÊ(·¢ÉäÂÊ ¾«È·µ½Ð¡ÊýµãºóÁ½Î»)[0.01, 1.00](¼´£ºÎïÌåÏòÍâ·øÉäÄÜÁ¿µÄ±¾Áì) + BYTE byDistanceUnit;//¾àÀ뵥λ: 0-Ã×£¨m£©£¬1-Ó¢³ß£¨feet£©,2-ÀåÃ×(centimeter) + BYTE byRes[2]; + BYTE byReflectiveEnabled;//·´ÉäζÈʹÄÜ£º0- ·ñ£¬1- ÊÇ + float fReflectiveTemperature;//·´ÉäÎÂ¶È ¾«È·µ½Ð¡Êýºó2λ + char szRuleName[NAME_LEN/*32*/];//¹æÔòÃû³Æ + BYTE byemissivityMode; //·¢ÉäÂÊÅäÖÃÀàÐÍ 1-´Ö²Ú£¬2-½Ï´Ö²Ú£¬3-½Ï¹â»¬, 4-¹â»¬, 0xff-×Ô¶¨Òå + BYTE byRes1[62]; + BYTE byRuleCalibType;//¹æÔò±ê¶¨ÀàÐÍ 0-µã£¬1-¿ò£¬2-Ïß + NET_VCA_POINT struPoint;//µã²âÎÂ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪ"µã"µÄʱºòÉúЧ£© + NET_VCA_POLYGON struRegion;//ÇøÓò¡¢Ïߣ¨µ±¹æÔò±ê¶¨ÀàÐÍΪ"¿ò"»òÕß"Ïß"µÄʱºòÉúЧ£© +}NET_DVR_THERMOMETRY_PRESETINFO_PARAM, *LPNET_DVR_THERMOMETRY_PRESETINFO_PARAM; + + +typedef struct tagNET_DVR_THERMOMETRY_PRESETINFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + WORD wPresetNo;//0-±£Áô + BYTE byRes[2]; + NET_DVR_THERMOMETRY_PRESETINFO_PARAM struPresetInfo[MAX_THERMOMETRY_REGION_NUM/*40*/]; +}NET_DVR_THERMOMETRY_PRESETINFO, *LPNET_DVR_THERMOMETRY_PRESETINFO; + + +typedef struct tagNET_DVR_BASE_STATION_INFO_ALARM +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + char sNetBarWaCode[16];//³¡Ëù±àºÅ + char sCollectionEquipmentID[24];//²É¼¯É豸±àºÅ + char sMCC[4];//Òƶ¯¹ú¼ÒÂë + char sMNC[4];//Òƶ¯ÍøÂçÂë + char sLAC[36];//λÖÃÇøÂë + char sCI[36];//СÇøʶ±ðÂë + char sBSCI[36];//»ùվʶ±ðÂë + char sBCCH[36];//¹«¹²¹ã²¥ÐŵÀ + char sLEV[36];//½ÓÊÕ±¨¸æµçƽ + char sCollectionEquipmentLongitude[12];//²É¼¯É豸¾­¶È + char sCollectionEquipmentLatitude[12];//²É¼¯É豸γ¶È + char sCaptureTime[20];//²É¼¯Ê±¼ä ʱ¼ä¸ñʽyyyy-MM-dd hh:mm:ss + BYTE byRes[256]; +}NET_DVR_BASE_STATION_INFO_ALARM, *LPNET_DVR_BASE_STATION_INFO_ALARM; + + +typedef struct tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM +{ + BYTE byEnable; + BYTE byRuleID;//¹æÔòID + BYTE byRule;//±¨¾¯Î¶ȱȽϷ½Ê½ 0-¸ßδóÓÚ,1-¸ßÎÂСÓÚ,2-µÍδóÓÚ,3-µÍÎÂСÓÚ,4-ƽ¾ùδóÓÚ,5-ƽ¾ùÎÂСÓÚ,6-βî´óÓÚ,7-βîСÓÚ + BYTE byRes; + char szRuleName[NAME_LEN];//¹æÔòÃû³Æ + float fAlert;//Ô¤¾¯ÎÂ¶È + float fAlarm;//±¨¾¯ÎÂ¶È + float fThreshold;//ÃÅÏÞÎÂ¶È + DWORD dwAlertFilteringTime;//ζÈÔ¤¾¯µÈ´ýʱ¼ä,µ¥Î»Ãë + DWORD dwAlarmFilteringTime;//ζȱ¨¾¯µÈ´ýʱ¼ä,µ¥Î»Ãë + BYTE byRes1[56]; +}NET_DVR_THERMOMETRY_ALARMRULE_PARAM, *LPNET_DVR_THERMOMETRY_ALARMRULE_PARAM; + +typedef struct tagNET_DVR_THERMOMETRY_ALARMRULE +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_THERMOMETRY_ALARMRULE_PARAM struThermometryAlarmRuleParam[THERMOMETRY_ALARMRULE_NUM]; + BYTE byRes[128]; +}NET_DVR_THERMOMETRY_ALARMRULE, *LPNET_DVR_THERMOMETRY_ALARMRULE; + + +typedef struct tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM +{ + BYTE byEnable; + BYTE byRuleID;//¹æÔòID,0-±íʾÎÞЧ£¬·¶Î§Öµ´Ó1¿ªÊ¼ + BYTE byAlarmID1; + BYTE byAlarmID2; + BYTE byRule;//±¨¾¯Î¶ȱȽϷ½Ê½0-¸ßδóÓÚ,1-¸ßÎÂСÓÚ,2-µÍδóÓÚ,3-µÍÎÂСÓÚ,4-ƽ¾ùδóÓÚ,5-ƽ¾ùÎÂСÓÚ,6-βî´óÓÚ,7-βîСÓÚ + BYTE byRes[3]; + float fTemperatureDiff;//βîÖµ + DWORD dwAlarmFilteringTime;//ζȱ¨¾¯µÈ´ýʱ¼ä,µ¥Î»Ãë + BYTE byRes1[28]; +}NET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM, *LPNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM; + +typedef struct tagNET_DVR_THERMOMETRY_DIFFCOMPARISON +{ + DWORD dwSize;//½á¹¹Ìå´óС + NET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM struDiffComparison[MAX_THERMOMETRY_DIFFCOMPARISON_NUM/*8*/]; + BYTE byRes[64]; +}NET_DVR_THERMOMETRY_DIFFCOMPARISON, *LPNET_DVR_THERMOMETRY_DIFFCOMPARISON; + + +//ʵʱζȼì²âÌõ¼þ½á¹¹ +typedef struct tagNET_DVR_REALTIME_THERMOMETRY_COND +{ + DWORD dwSize; + DWORD dwChan;//ͨµÀºÅ£¬´Ó1¿ªÊ¼£¬0xffffffff´ú±í»ñÈ¡È«²¿Í¨µÀ + BYTE byRuleID; //¹æÔòID 0-´ú±í»ñÈ¡È«²¿¹æÔò£¬¾ßÌå¹æÔòID´Ó1¿ªÊ¼ + /* + 1-¶¨Ê±Ä£Ê½£ºÉ豸ÿ¸ôÒ»ÃëÉÏ´«¸÷¸ö¹æÔò²âÎÂÊý¾ÝµÄ×î¸ßΡ¢×îµÍκÍƽ¾ùζÈÖµ¡¢Î²î + 2-βîģʽ£ºÈôÉÏÒ»ÃëÓëÏÂÒ»ÃëµÄ×î¸ßλòÕß×îµÍλòÕßƽ¾ùλòÕßβîÖµµÄβî´óÓÚµÈÓÚ2ÉãÊ϶ȣ¬ÔòÉÏ´«×î¸ßΡ¢×îµÍκÍƽ¾ùζÈÖµ¡£Èô´óÓÚµÈÓÚÒ»¸öСʱβîÖµ¾ùСÓÚ2ÉãÊ϶ȣ¬ÔòÉÏ´«×î¸ßΡ¢×îµÍΡ¢Æ½¾ùκÍβîÖµ + */ + BYTE byMode; //³¤Á¬½Óģʽ£¬ 0-±£Áô£¨Îª¼æÈÝÀÏÉ豸£©£¬1-¶¨Ê±Ä£Ê½£¬2-βîģʽ + WORD wInterval; //ÉÏ´«¼ä¸ô£¬½öβîģʽ֧³Ö£¬1~3600S£¬Ìî0ÔòĬÈÏ3600SÉÏ´«Ò»´Î + float fTemperatureDiff;//βî + BYTE byRes[56]; //±£Áô +}NET_DVR_REALTIME_THERMOMETRY_COND, *LPNET_DVR_REALTIME_THERMOMETRY_COND; + +typedef struct tagNET_DVR_POINT_THERM_CFG +{ + float fTemperature;//µ±Ç°ÎÂ¶È + NET_VCA_POINT struPoint;//µã²âÎÂ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪµãµÄʱºòÉúЧ£© + BYTE byRes[120]; +}NET_DVR_POINT_THERM_CFG, *LPNET_DVR_POINT_THERM_CFG; + +typedef struct tagNET_DVR_LINEPOLYGON_THERM_CFG +{ + float fMaxTemperature;//×î¸ßΠ+ float fMinTemperature;//×îµÍΠ+ float fAverageTemperature;//ƽ¾ùΠ+ float fTemperatureDiff;//βî + NET_VCA_POLYGON struRegion;//ÇøÓò£¨µ±¹æÔò±ê¶¨ÀàÐÍΪ¿ò/ÏßµÄʱºòÉúЧ£© + BYTE byRes[32]; +}NET_DVR_LINEPOLYGON_THERM_CFG, *LPNET_DVR_LINEPOLYGON_THERM_CFG; + +typedef struct tagNET_DVR_THERMOMETRY_UPLOAD +{ + DWORD dwSize; + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + char szRuleName[NAME_LEN/*32*/];//¹æÔòÃû³Æ + BYTE byRuleID;//¹æÔòIDºÅ + BYTE byRuleCalibType;//¹æÔò±ê¶¨ÀàÐÍ 0-µã£¬1-¿ò£¬2-Ïß + WORD wPresetNo; //Ô¤ÖõãºÅ + NET_DVR_POINT_THERM_CFG struPointThermCfg; + NET_DVR_LINEPOLYGON_THERM_CFG struLinePolygonThermCfg; + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + BYTE byDataType;//Êý¾Ý״̬ÀàÐÍ:0-¼ì²âÖУ¬1-¿ªÊ¼£¬2-½áÊø + BYTE byRes1; + /* + bit0-ÖÐÐĵã²âΣº0-²»Ö§³Ö£¬1-Ö§³Ö£» + bit1-×î¸ßµã²âΣº0-²»Ö§³Ö£¬1-Ö§³Ö£» + bit2-×îµÍµã²âΣº0-²»Ö§³Ö£¬1-Ö§³Ö£» + */ + BYTE bySpecialPointThermType;// ÊÇ·ñÖ§³ÖÌØÊâµã²âΠ+ float fCenterPointTemperature;//ÖÐÐĵãζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1500),£¨¸¡µãÊý+100£©*10 £¨ÓÉbySpecialPointThermTypeÅжÏÊÇ·ñÖ§³ÖÖÐÐĵ㣩 + float fHighestPointTemperature;//×î¸ßµãζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1500),£¨¸¡µãÊý+100£©*10£¨ÓÉbySpecialPointThermTypeÅжÏÊÇ·ñÖ§³Ö×î¸ßµã£© + float fLowestPointTemperature;//×îµÍµãζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1500),£¨¸¡µãÊý+100£©*10£¨ÓÉbySpecialPointThermTypeÅжÏÊÇ·ñÖ§³Ö×îµÍµã£© + NET_VCA_POINT struHighestPoint;//Ïß¡¢¿ò²âÎÂ×î¸ßζÈλÖÃ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪÏß¡¢¿òµÄʱºòÉúЧ£© + NET_VCA_POINT struLowestPoint;//Ïß¡¢¿ò²âÎÂ×îµÍζÈλÖÃ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪÏß¡¢¿òµÄʱºòÉúЧ£© + BYTE byIsFreezedata;//ÊÇ·ñÊý¾Ý¶³½á 0-·ñ 1-ÊÇ + BYTE byFaceSnapThermometryEnabled;//ÈËÁ³×¥ÅIJâÎÂʹÄÜ 1-¿ªÆô 0-¹Ø±Õ + BYTE byRes2[2]; + DWORD dwChan; //ͨµÀºÅ£¬²éѯÌõ¼þÖÐͨµÀºÅΪ0xffffffffʱ¸Ã×Ö¶ÎÉúЧ + NET_VCA_RECT struFaceRect; //ÈËÁ³×ÓͼÇøÓò + DWORD dwTimestamp;//DSPʱ¼ä´Á + BYTE byRes[68]; +}NET_DVR_THERMOMETRY_UPLOAD, *LPNET_DVR_THERMOMETRY_UPLOAD; + +//ζȱ¨¾¯£¨¼ì²âζȺÍÅäÖÃζȱȽϱ¨¾¯£© +typedef struct tagNET_DVR_THERMOMETRY_ALARM +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byRuleID;//¹æÔòID + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + WORD wPresetNo; //Ô¤ÖõãºÅ + NET_PTZ_INFO struPtzInfo;//ptz×ø±êÐÅÏ¢ + BYTE byAlarmLevel;//0-Ô¤¾¯ 1-±¨¾¯ + BYTE byAlarmType;/*±¨¾¯ÀàÐÍ 0-×î¸ßÎÂ¶È 1-×îµÍÎÂ¶È 2-ƽ¾ùÎÂ¶È 3-βî 4-ζÈÍ»Éý 5-ζÈÍ»½µ*/ + BYTE byAlarmRule;//0-´óÓÚ£¬1-СÓÚ + BYTE byRuleCalibType;//¹æÔò±ê¶¨ÀàÐÍ 0-µã£¬1-¿ò£¬2Ïß + NET_VCA_POINT struPoint;//µã²âÎÂ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪµãµÄʱºòÉúЧ£© + NET_VCA_POLYGON struRegion;//ÇøÓò£¨µ±¹æÔò±ê¶¨ÀàÐÍΪ¿òµÄʱºòÉúЧ£© + float fRuleTemperature;/*ÅäÖùæÔòζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£© */ + float fCurrTemperature;/*µ±Ç°Î¶È,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£© */ + DWORD dwPicLen;//¿É¼û¹âͼƬ³¤¶È + DWORD dwThermalPicLen;//ÈȳÉÏñͼƬ³¤¶È + DWORD dwThermalInfoLen;//ÈȳÉÏñ¸½¼ÓÐÅÏ¢³¤¶È + char* pPicBuff; ///¿É¼û¹âͼƬָÕë + char* pThermalPicBuff;// ÈȳÉÏñͼƬָÕë + char* pThermalInfoBuff; //ÈȳÉÏñ¸½¼ÓÐÅÏ¢Ö¸Õë + NET_VCA_POINT struHighestPoint;//Ïß¡¢¿ò²âÎÂ×î¸ßζÈλÖÃ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪÏß¡¢¿òµÄʱºòÉúЧ£© + float fToleranceTemperature;/* ÈݲîζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£© */ + DWORD dwAlertFilteringTime;//ζÈÔ¤¾¯µÈ´ýʱ¼ä µ¥Î»Ãë ·¶Î§Îª0-200Ã룬ĬÈÏΪ0Ãë + DWORD dwAlarmFilteringTime;//ζȱ¨¾¯µÈ´ýʱ¼ä µ¥Î»Ãë ·¶Î§Îª0-200Ã룬ĬÈÏΪ0Ãë + DWORD dwTemperatureSuddenChangeCycle;//ζÈÍ»±ä¼Ç¼ÖÜÆÚ£¬µ¥Î»Ãë + float fTemperatureSuddenChangeValue;//ζÈÍ»±äÖµ,¾«È·µ½Ð¡Êýµãºóһλ(´óÓÚ0) + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + BYTE byRes1[3]; + DWORD dwVisibleChannel; //¿É¼û¹âͨµÀͨµÀºÅ + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + float fAlarmRuleTemperature;/* TMA²âÎÂÅäÖùæÔòζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£© */ + BYTE byRes[20]; +}NET_DVR_THERMOMETRY_ALARM, *LPNET_DVR_THERMOMETRY_ALARM; + + +//β¾¯ +typedef struct tagNET_DVR_THERMOMETRY_DIFF_ALARM +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byAlarmID1;//¹æÔòAlarmID1 + BYTE byAlarmID2;//¹æÔòAlarmID2 + WORD wPresetNo; //Ô¤ÖõãºÅ + BYTE byAlarmLevel;//0-Ô¤¾¯ 1-±¨¾¯ + BYTE byAlarmType;/*±¨¾¯ÀàÐÍ 0-×î¸ßÎÂ¶È 1-×îµÍÎÂ¶È 2-ƽ¾ùζÈ*/ + BYTE byAlarmRule;//0-´óÓÚ£¬1-СÓÚ + BYTE byRuleCalibType;//¹æÔò±ê¶¨ÀàÐÍ 0-µã£¬1-¿ò£¬2Ïß + NET_VCA_POINT struPoint[2];//µã²âÎÂ×ø±ê£¨µ±¹æÔò±ê¶¨ÀàÐÍΪµãµÄʱºòÉúЧ£©Êý×éϱê0´ú±í×ÅAlarmID1£¬Êý×éϱê1´ú±í×ÅAlarmID2. + NET_VCA_POLYGON struRegion[2];//ÇøÓò£¨µ±¹æÔò±ê¶¨ÀàÐÍΪ¿òµÄʱºòÉúЧ£©Êý×éϱê0´ú±í×ÅAlarmID1£¬Êý×éϱê1´ú±í×ÅAlarmID2. + float fRuleTemperatureDiff;/*ÅäÖùæÔòβî,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000)£©*/ + float fCurTemperatureDiff;/*µ±Ç°Î²î,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£© */ + NET_PTZ_INFO struPtzInfo;//ptz×ø±êÐÅÏ¢ + DWORD dwPicLen;//¿É¼û¹âͼƬ³¤¶È + DWORD dwThermalPicLen;//ÈȳÉÏñͼƬ³¤¶È + DWORD dwThermalInfoLen;//ÈȳÉÏñ¸½¼ÓÐÅÏ¢³¤¶È + char* pPicBuff; ///¿É¼û¹âͼƬָÕë + char* pThermalPicBuff;// ÈȳÉÏñͼƬָÕë + char* pThermalInfoBuff; //ÈȳÉÏñ¸½¼ÓÐÅÏ¢Ö¸Õë + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + BYTE byRes1[2]; + float fToleranceTemperature;/*ÈݲîζÈ,¾«È·µ½Ð¡Êýµãºóһλ(-40-1000),£¨¸¡µãÊý+100£© */ + DWORD dwAlarmFilteringTime;//ζȱ¨¾¯µÈ´ýʱ¼ä µ¥Î»Ãë ·¶Î§Îª0-200Ã룬ĬÈÏΪ0Ãë + DWORD dwVisibleChannel; //¿É¼û¹âͨµÀͨµÀºÅ + BYTE byRes[48]; +}NET_DVR_THERMOMETRY_DIFF_ALARM, *LPNET_DVR_THERMOMETRY_DIFF_ALARM; + +typedef struct //Ìõ¼þ½á¹¹ +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ£¨Ç°¶ËĬÈÏÊÇ1£© + BYTE byRes[128]; +}NET_DVR_SHIPSCOUNT_COND, *LPNET_DVR_SHIPSCOUNT_COND; + + +//»ñÈ¡´¬Ö»¼ÆÊýÐÅÏ¢½á¹¹ +typedef struct tagNET_DVR_SHIPSCOUNT_CFG +{ + DWORD dwSize; + DWORD dwUpShipsCount; //ÉÏÐд¬Ö»Êý + DWORD dwDownShipsCount; //ÏÂÐд¬Ö»Êý + DWORD dwLeftShipsCount; //×óÐд¬Ö»Êý + DWORD dwRightShipsCount; //ÓÒÐд¬Ö»Êý + DWORD dwTotalCount;//´¬Ö»×ܼÆÊý + DWORD dwRelativeTime; //É豸²à¼ÆÊý¿ªÊ¼¼ÆÊýµÄÏà¶Ôʱ±ê + DWORD dwAbsTime; //É豸²à¼ÆÊý¿ªÊ¼¼ÆÊýµÄ¾ø¶Ôʱ±ê + BYTE byDataType;//Êý¾Ý״̬ÀàÐÍ:0-¼ì²âÖУ¬1-¿ªÊ¼£¬2-½áÊø + BYTE byRes[255]; +}NET_DVR_SHIPSCOUNT_CFG, *LPNET_DVR_SHIPSCOUNT_CFG; + +//´¬Ö»ÐÅÏ¢ +typedef struct tagNET_DVR_SHIPSINFO +{ + float fShipsLength; //´¬Ö»³¤¶È£»1~1000.0m£¬¾«È·µ½Ð¡Êýµãºóһλ + float fShipsHeight; //´¬Ö»¸ß¶È£»1~1000.0m£¬¾«È·µ½Ð¡Êýµãºóһλ + float fShipsWidth; //´¬Ö»¿í¶È£»1~1000.0m£¬¾«È·µ½Ð¡Êýµãºóһλ + float fShipsSpeed; //´¬Ö»Ëٶȣ»1~1000.0m/s£¬¾«È·µ½Ð¡Êýµãºóһλ + BYTE byShipsDirection;//´¬Ö»·½Ïò£»0~up,1~down,2~left,3~right + BYTE byShipsDetState;//´¬Ö»¼ì²â״̬£»0~Õý¿çÔ½¼ì²âÏߣ¬1~´¬Í·¼ì²â£¬2~´¬Î²¼ì²â + BYTE byTriggerLineID;//¼ì²âÏßID + BYTE byRes[61]; + NET_VCA_POLYGON struShipsRect; //´¬Ö»ÇøÓò£¬¹éÒ»»¯Öµ£¬Ïà¶ÔÓÚ´óͼ£¨¿É¼û¹âͼ¡¢ÈȳÉÏñͼ)µÄ·Ö±æÂÊ +} NET_DVR_SHIPSINFO, *LPNET_DVR_SHIPSINFO; + +//´¬Ö»×¥Í¼ÐÅÏ¢ +typedef struct tagNET_DVR_SHIPIMAGE_INFO +{ + DWORD dwShipImageLen;//´¬Ö»×¥ÅÄͼƬ¶þ½øÖÆÊý¾Ý³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pXmlBuf; //´¬Ö»×¥ÅÄͼƬ¶þ½øÖÆÊý¾ÝÖ¸Õë +#else + char* pXmlBuf; //´¬Ö»×¥ÅÄͼƬ¶þ½øÖÆÊý¾ÝÖ¸Õë + BYTE byRes[4]; +#endif +}NET_DVR_SHIPIMAGE_INFO, *LPNET_DVR_SHIPIMAGE_INFO; + +//´¬Ö»¼ì²â±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_SHIPSDETECTION_ALARM +{ + DWORD dwSize; + NET_VCA_DEV_INFO struDevInfo; //É豸ÐÅÏ¢ + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + BYTE byShipsNum; //´¬Ö»Êý£»(Õý¿çÔ½¼ì²âÏߵĴ¬Ö»Êý) + BYTE byShipsNumHead;//´¬Ö»Êý£»(´¬Í·¼ì²â´¬Ö»Êý) + BYTE byShipsNumEnd; //´¬Ö»Êý£»(´¬Î²¼ì²â´¬Ö»Êý) + BYTE byPicTransType; //ͼƬÊý¾Ý´«Ê䷽ʽ: 0-¶þ½øÖÆ£»1-url + NET_DVR_SHIPSINFO struShipInfo[MAX_SHIPS_NUM/*20*/];//´¬Ö»ÐÅÏ¢£»×î´óÖ§³Ö20ËÒ + DWORD dwPicLen;//¿É¼û¹âͼƬ³¤¶È + DWORD dwThermalPicLen;//ÈȳÉÏñͼƬ³¤¶È + BYTE* pPicBuffer; //¿É¼û¹âͼƬÊý¾ÝÖ¸Õë + BYTE* pThermalPicBuffer; //ÈȳÉÏñͼƬÊý¾ÝÖ¸Õë + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byTimeDiffFlag; /*ʱ²î×Ö¶ÎÊÇ·ñÓÐЧ 0-ʱ²îÎÞЧ£¬ 1-ʱ²îÓÐЧ */ + char cTimeDifferenceH; /*ÓëUTCµÄʱ²î£¨Ð¡Ê±£©£¬-12 ... +14£¬ +±íʾ¶«Çø,£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + char cTimeDifferenceM; /*ÓëUTCµÄʱ²î£¨·ÖÖÓ£©£¬-30, 30, 45£¬ +±íʾ¶«Çø£¬byTimeDiffFlagΪ1ʱÓÐЧ*/ + BYTE bySID;//³¡¾°ID + BYTE byRes1[2]; + char szSceneName[NAME_LEN];//³¡¾°Ãû³Æ£¬²»³¬¹ý32×Ö·û + BYTE byRes[132]; + DWORD dwXmlLen;//XML͸´«Êý¾Ý³¤¶È, ¼´EventNotificationAlert XML BlockµÄÊý¾Ý³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block +#else + char* pXmlBuf; // XML±¨¾¯ÐÅÏ¢Ö¸Õë,ÆäXML¶ÔÓ¦µ½EventNotificationAlert XML Block + BYTE byRes2[4]; +#endif + NET_DVR_SHIPIMAGE_INFO struShipImageInfo[MAX_SHIPIMAGE_NUM/*6*/];//´¬Ö»×¥ÅÄͼƬÐÅÏ¢,Êý×éϱêΪ0ʱ´ú±íΪµÚÒ»ÕÅ´¬Ö»×¥ÅÄͼƬ£¬ÒÔ´ËÀàÍÆ£»×î´óÖ§³Ö6ÕÅͼƬ¡£ +}NET_DVR_SHIPSDETECTION_ALARM, *LPNET_DVR_SHIPSDETECTION_ALARM; + +typedef struct tagNET_DVR_THERMAL_PIP +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnable;//ÊÇ·ñÆôÓà + BYTE byPipMode;// »­Öл­Ä£Ê½£¬0~µþ¼Óģʽ£¬1~ÈÚºÏģʽ£¬2-ÆÕͨģʽ + BYTE byOverlapType;//µþ¼ÓÀàÐÍ£¬Ñ¡Ôñ»­Öл­µþ¼ÓģʽºóÉúЧ¡£0~¿É¼û¹âµþ¼ÓÈȳÉÏñͼƬ£¬1~ÈȳÉÏñµþ¼Ó¿É¼û¹âͼƬ + BYTE byTransparency;//͸Ã÷¶È 0~100 + NET_VCA_POLYGON struPipRegion;//»­Öл­ÇøÓòλÖà + BYTE byImageFusionRatio;//ͼÏñÈںϱÈÀý,ÈÚºÏģʽÏÂÉúЧ 0-100 ĬÈÏ75 + BYTE byBorderFusionRatio;//±ßÔµÈںϱÈÀý,ÈÚºÏģʽÏÂÉúЧ 0-100 ĬÈÏ100 + BYTE byRes1[2]; + float fDistance;//ÈںϾàÀë,ÈÚºÏģʽÏÂÉúЧ,·¶Î§0.1-4.0Ã× + BYTE byRes[632]; +}NET_DVR_THERMAL_PIP, *LPNET_DVR_THERMAL_PIP; + +typedef struct tagNET_DVR_RULESLINE_CFG +{ + NET_DVR_RGB_COLOR struRGB;// RGB²ÎÊý£ºR£¨ºìÉ«£©£¬G£¨ÂÌÉ«£©£¬B£¨À¶É«£© ·¶Î§0-255 + BYTE byRes[128]; +}NET_DVR_RULESLINE_CFG, *LPNET_DVR_RULESLINE_CFG; + +typedef struct tagNET_DVR_THERMAL_INTELRULE_DISPLAY +{ + DWORD dwSize;//½á¹¹Ìå´óС + /* + fontSizeType:Ϊ×ÖÌå´óС±¶ÂÊË÷Òý£¬²¥·Å¿â»á¸ù¾Ý¸Ã±¶ÂÊÒÔ¼°Ô¤ÀÀ´°¿ÚµÄ¿í¶È¶¯Ì¬¸Ä±ä×ÖÌåµÄ´óС¡£¹«Ê½Îª£º¾ßÌ屶ÂÊÖµ/8*(0.01*Ô¤ÀÀ´°¿Ú¿í¶È) + ±¶ÂÊË÷Òý¶ÔÓ¦ÈçÏ£º + 0~8±¶ÂÊ£¨Ð¡£© + 1~12±¶ÂÊ£¨±ê×¼£© + 2~16±¶ÂÊ£¨´ó£© + 3~20±¶ÂÊ£¨³¬´ó£© + 4~24±¶ÂÊ£¨ÌØ´ó£© + */ + BYTE byFontSizeType; + BYTE byRes1[3]; + NET_DVR_RULESLINE_CFG struNormalRulesLineCfg;//Õý³£¹æÔòÏßÏà¹ØÊôÐÔ²ÎÊý + NET_DVR_RULESLINE_CFG struAlertRulesLineCfg;//Ô¤¾¯¹æÔòÏßÏà¹ØÊôÐÔ²ÎÊý + NET_DVR_RULESLINE_CFG struAlarmRulesLineCfg;//±¨¾¯¹æÔòÏßÏà¹ØÊôÐÔ²ÎÊý + BYTE byRes[640]; +}NET_DVR_THERMAL_INTELRULE_DISPLAY, *LPNET_DVR_THERMAL_INTELRULE_DISPLAY; + +typedef struct tagNET_DVR_BAREDATAOVERLAY_CFG +{ + DWORD dwSize; + BYTE byEnable;//ʹÄÜ + BYTE byIntervalTime;// ÉÏ´«µÄʱ¼ä¼ä¸ô¿ÉÅäÖãº1 2 3 4 5.µ¥Î»ÎªÃ룬ĬÈÏΪ3Ãë + BYTE byRes[258]; +}NET_DVR_BAREDATAOVERLAY_CFG, *LPNET_DVR_BAREDATAOVERLAY_CFG; + +//²âÎÂÁª¶¯Ìõ¼þ½á¹¹ +typedef struct tagNET_DVR_THERMOMETRY_TRIGGER_COND +{ + DWORD dwSize;//½á¹¹Ìå´óС + DWORD dwChan;//ͨµÀºÅ + DWORD dwPreset;//Ô¤ÖõãºÅ£¨Ä¿Ç°²»Ö§³Ö,ÎÞÐ踳ֵ£© + BYTE byRes[256]; +}NET_DVR_THERMOMETRY_TRIGGER_COND, *LPNET_DVR_THERMOMETRY_TRIGGER_COND; + +//ÊÖ¶¯³ý±ù +typedef struct tagNET_DVR_MANUALDEICING_CFG +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byEnabled; //ÊÇ·ñÆôÓÃÊÖ¶¯³ý±ù £¬0~¹Ø±Õ£¬1~ÆôÓà + BYTE byRes[127]; +}NET_DVR_MANUALDEICING_CFG, *LPNET_DVR_MANUALDEICING_CFG; + +//С¼ä¾àLED¿ØÖÆÆ÷ +typedef struct tagNET_DVR_INPUT_SOURCE_TEXT_COND +{ + DWORD dwSize; + DWORD dwInputSourceNo; //ÊäÈëÔ´±àºÅ + DWORD dwTextNo; //Îı¾±àºÅ + BYTE byRes[32]; +}NET_DVR_INPUT_SOURCE_TEXT_COND, *LPNET_DVR_INPUT_SOURCE_TEXT_COND; + +typedef struct tagNET_DVR_INPUT_SOURCE_TEXT +{ + DWORD dwSize; + DWORD dwTextNo; //Îı¾±àºÅ + BYTE byEnable; //ÊÇ·ñʹÄÜ£¬0-²»Ê¹ÄÜ£¬1-ʹÄÜ + BYTE byFontSize; //×ÖÌå´óС + BYTE byBkGroudMode; //±³¾°Ä£Ê½£¬1-͸Ã÷£¬2-¸²¸Ç + BYTE byRes[1]; + DWORD dwXPosition; //×Ö·ûÏÔʾλÖõÄ×óÉϽÇX×ø±ê£¬ÊäÈëÔ´Ïà¶Ô×ø±ê + DWORD dwYPosition; //×Ö·ûÏÔʾλÖõÄ×óÉϽÇY×ø±ê£¬ÊäÈëÔ´Ïà¶Ô×ø±ê + NET_DVR_RGB_COLOR struForegroudColor; //×Ö·ûÇ°¾°É« + NET_DVR_RGB_COLOR struBackgroudColor; //×Ö·û±³¾°É« + BYTE byTextContent[MAX_LEN_TEXT_CONTENT]; //×Ö·ûÄÚÈÝ + BYTE byRes1[64]; +}NET_DVR_INPUT_SOURCE_TEXT, *LPNET_DVR_INPUT_SOURCE_TEXT; + +typedef struct tagNET_DVR_INPUT_SOURCE_TEXT_LIST +{ + DWORD dwSize; + NET_DVR_INPUT_SOURCE_TEXT struTextList[MAX_NUM_INPUT_SOURCE_TEXT]; //Îı¾Áбí + BYTE byRes[64]; +}NET_DVR_INPUT_SOURCE_TEXT_LIST, *LPNET_DVR_INPUT_SOURCE_TEXT_LIST; + +typedef struct tagNET_DVR_INPUT_SOURCE_RESOLUTION +{ + DWORD dwSize; + DWORD dwInputSignalNo; //ÊäÈëÔ´±àºÅ + BYTE byEnabled; //×Ô¶¨Òå·Ö±æÂÊÊÇ·ñʹÄÜ + BYTE byRes; + WORD wImageWidth; //ͼÏñ¿í¶È + WORD wImageHeight; //ͼÏñ¸ß¶È + WORD wRefreshRate; //Ë¢ÐÂƵÂÊ + BYTE byColorDepth; //ÑÕÉ«Éî¶È£¬32λ¡¢16λ¡¢8λÈýÖÖ¿ÉÑ¡ + BYTE byScanType; //ɨÃèÀàÐÍ£¬1-ÖðÐÐɨÃ裬2-¼ä¸ôɨÃè + BYTE byRes1[62]; +}NET_DVR_INPUT_SOURCE_RESOLUTION, *LPNET_DVR_INPUT_SOURCE_RESOLUTION; + +typedef struct tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST +{ + DWORD dwSize; + DWORD dwInputSignalCnt; //É豸ÊäÈëÐźÅÔ´ÊýÁ¿ + LPNET_DVR_INPUT_SOURCE_RESOLUTION lpstruBuffer; //»º³åÇøÖ¸Õë + DWORD dwBufferSize; //»º³åÇø´óС + BYTE byRes[32]; +}NET_DVR_INPUT_SOURCE_RESOLUTION_LIST, *LPNET_DVR_INPUT_SOURCE_RESOLUTION_LIST; + +typedef struct tagNET_DVR_LED_AREA_COND +{ + DWORD dwSize; + DWORD dwVideoWallNo; //µçÊÓǽ±àºÅ + DWORD dwLEDAreaNo; //LEDÇøÓò±àºÅ + BYTE byRes[32]; +}NET_DVR_LED_AREA_COND, *LPNET_DVR_LED_AREA_COND; + +typedef struct tagNET_DVR_LED_AREA_INFO +{ + DWORD dwSize; + DWORD dwLEDAreaNo; //LEDÇøÓò±àºÅ + NET_DVR_RECTCFG_EX struRect; //¾ØÐÎÇøÓò + DWORD dwaOutputNo[MAX_NUM_OUTPUT_CHANNEL]; //Êä³ö¿ÚÁбí + BYTE byAreaType; //ÇøÓòÀàÐÍ£¬0-LEDÇøÓò£¬1-LCDÇøÓò + BYTE byRes[31]; +}NET_DVR_LED_AREA_INFO, *LPNET_DVR_LED_AREA_INFO; + +typedef struct tagNET_DVR_LED_AREA_INFO_LIST +{ + DWORD dwSize; + DWORD dwLEDAreaNum; //LEDÇøÓòÊýÁ¿ + LPNET_DVR_LED_AREA_INFO lpstruBuffer; //»º³åÇøÖ¸Õë + DWORD dwBufferSize; //»º³åÇø´óС + BYTE byRes[32]; +}NET_DVR_LED_AREA_INFO_LIST, *LPNET_DVR_LED_AREA_INFO_LIST; + +//ºô½ÐµÈ´ý²ÎÊý +typedef struct tagNET_DVR_CALL_WAITTING_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓúô½ÐµÈ´ý, 0--²»ÆôÓã¬1--ÆôÓà + BYTE byRes1; + WORD wWaitTime;//ºô½ÐµÈ´ýʱ¼ä£¬µ¥Î»Ãë + WORD wCalledWaitTime;/*µ¥Î»Ã룬±»ºô½ÐµÈ´ýʱ¼ä*/ + BYTE byRes[510]; +}NET_DVR_CALL_WAITTING_CFG, *LPNET_DVR_CALL_WAITTING_CFG; + +//¾¯µÆ²ÎÊý +typedef struct tagNET_DVR_ALARM_LAMP_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓþ¯µÆ¶¨Ê±ÉÁ˸, 0--²»ÆôÓã¬1--ÆôÓà + BYTE byRes1; + WORD wFlashDuration;//¾¯µÆ¶¨Ê±ÉÁ˸³ÖÐøʱ¼ä£¬µ¥Î»Ãë + WORD wFlashIntervalTime;//¾¯µÆÉÁ˸¼ä¸ôʱ¼ä£¬µ¥Î»Ãë + BYTE byRes[510]; +}NET_DVR_ALARM_LAMP_CFG, *LPNET_DVR_ALARM_LAMP_CFG; + +//ÓïÒôÌáʾ²ÎÊý +typedef struct tagNET_DVR_VOICE_PROMPTION_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byEnable; //ÊÇ·ñÆôÓÃÓïÒôÌáʾ, 0--²»ÆôÓã¬1--ÆôÓà + BYTE byRes1[3]; + BYTE byCenterBusyFile[NAME_LEN];//ÖÐÐÄ·±Ã¦ÌáʾÓïÒôÎļþÃû + BYTE byRefusedFile[NAME_LEN];//¾Ü¾øÌáʾÓïÒôÎļþÃû + BYTE byHangUpFile[NAME_LEN];//¶Ô½²½áÊøÌáʾÓïÒôÎļþÃû + BYTE byCallWaittingFile[NAME_LEN];//ºô½ÐµÈºòÒôÎļþÃû + BYTE byConsultWaittingFile[NAME_LEN];//ÒµÎñ×ÉѯµÈºòÒôÎļþÃû + BYTE byWelcomeFile[NAME_LEN];//»¶Ó­ÌáʾÓïÒôÎļþÃû + BYTE byFarewellFile[NAME_LEN];//»¶ËÍÓïÒôÎļþ + BYTE byCalledVoicePromptName[NAME_LEN];//±»ºô½ÐÓïÒôÌáʾÃû + BYTE byRes[384]; +}NET_DVR_VOICE_PROMPTION_CFG, *LPNET_DVR_VOICE_PROMPTION_CFG; + +//½ô¼±±¨¾¯´¦Àí +typedef struct tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG +{ + DWORD dwSize; //½á¹¹Ìå´óС + BYTE byCommand; //¿ØÖÆÃüÁ0--centerbusy£¬1--refuse + BYTE byType; //´¦ÀíÀàÐÍ£¬0¡ª½ô¼±±¨¾¯£¬1¡ªÒµÎñ×Éѯ + BYTE byRes[510]; +}NET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG, *LPNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG; + +///////////*ÍøÂç²ÎÊýÅäÖÃ_V50///////////// +typedef struct _tagNET_DVR_ALARMHOST_NETPARAM_V50 +{ + DWORD dwSize; + NET_DVR_IPADDR struIP; + WORD wPort; + BYTE byAddressType; //0 - ÎÞÒâÒå, 1 - ipv4/ipv6µØÖ·£¬2 - ÓòÃû + BYTE byEnable; //ʹÄÜ£¬0-²»ÆôÓã¬1-ÆôÓà + BYTE byDomainName[MAX_DOMAIN_NAME/*64*/]; //ÓòÃû£¬GPRS²ÎÊýÅäÖá¢ÍøÂç²ÎÊýÅäÖÃʱ¸Ã×ֶξùÓÐЧ + BYTE byReportProtocol; //1-private 2-NAL2300, 3-Ehome + BYTE byDevID[ACCOUNTNUM_LEN_32/*32*/]; //ЭÒéΪNAL2300ʱÓÐЧ + BYTE byProtocolVersion; //EHomeЭÒé°æ±¾£¬0-ÎÞÒâÒå,1¨Cv2.0£¬2¨Cv4.0£¬3-v5.0 + BYTE byRes1[3]; + BYTE byEHomeKey[NET_SDK_EHOME_KEY_LEN]; //EHome Key£¨ÓÃÓÚEHome 5.0°æ±¾£© + BYTE byRes2[28]; //GPRSµÄÓòÃû½âÎöÊÇÔڹ̶¨µÄ·þÎñÆ÷ÉϽøÐеģ¬ËùÒÔ²»ÐèÒª¸ø½âÎö·þÎñÆ÷µÄÐÅÏ¢Ô¤ÁôһЩ×ֶΠ+} NET_DVR_ALARMHOST_NETPARAM_V50, *LPNET_DVR_ALARMHOST_NETPARAM_V50; + +typedef struct _tagNET_DVR_ALARMHOST_NETCFG_V50 +{ + DWORD dwSize; + NET_DVR_ALARMHOST_NETPARAM_V50 struNetCenter[MAX_CENTERNUM]; + BYTE byRes1[128]; +} NET_DVR_ALARMHOST_NETCFG_V50, *LPNET_DVR_ALARMHOST_NETCFG_V50; +//Ä¿±ê·â×°¸ñʽÀàÐÍ +typedef enum tagSTREAM_TYPE{ + STREAM_PS = 0x1, //PSÎļþ²ã£¬Ö÷ÒªÓÃÓÚ´æ´¢£¬Ò²¿ÉÓÃÓÚ´«Êä + STREAM_3GPP = 0x2, //3GPPÎļþ²ã£¬ÓÃÓÚ´æ´¢ +}STREAM_TYPE; +typedef enum tagNET_SDK_INIT_CFG_TYPE +{ + NET_SDK_INIT_CFG_TYPE_CHECK_MODULE_COM = 0, //Ôö¼Ó¶Ô±ØÐë¿âµÄ¼ì²é + NET_SDK_INIT_CFG_ABILITY = 1, //sdkÖ§³ÖµÄÒµÎñµÄÄÜÁ¦¼¯ + NET_SDK_INIT_CFG_SDK_PATH = 2, //ÉèÖÃHCNetSDK¿âËùÔÚĿ¼ + NET_SDK_INIT_CFG_LIBEAY_PATH = 3, //ÉèÖÃOpenSSLµÄlibeay32.dll/libcrypto.so/libcrypto.dylibËùÔÚ·¾¶ + NET_SDK_INIT_CFG_SSLEAY_PATH = 4 //ÉèÖÃOpenSSLµÄssleay32.dll/libssl.so/libssl.dylibËùÔÚ·¾¶ +}NET_SDK_INIT_CFG_TYPE; + +typedef struct tagNET_DVR_INIT_CHECK_MODULE_COM +{ + BYTE byEnable; //ÆôÓñØÐë¿â¼ì²é»úÖÆ 0-²»ÆôÓã¬1-ÆôÓà + BYTE byRes[255]; +}NET_DVR_INIT_CHECK_MODULE_COM, *LPNET_DVR_INIT_CHECK_MODULE_COM; +//SDKÖ§³ÖµÄ×î´ó·ÊýÄÜÁ¦¼¯ +typedef enum _INIT_CFG_MAX_NUM +{ + INIT_CFG_NUM_2048 = 2048, // 2048· + INIT_CFG_NUM_5120 = 5120, //5120· + INIT_CFG_NUM_10240 = 10240, // 10240· + INIT_CFG_NUM_15360 = 15360, // 15360· + INIT_CFG_NUM_20480 = 20480, // 20480· +}INIT_CFG_MAX_NUM; + +typedef struct tagNET_DVR_INIT_CFG_ABILITY +{ + INIT_CFG_MAX_NUM enumMaxLoginUsersNum; //×î¶àÔÊÐíµÄ×¢²áÓû§¸öÊý¡£ + INIT_CFG_MAX_NUM enumMaxAlarmNum; //×î´óµÄ¸æ¾¯Â·Êý + BYTE byRes[64]; +}NET_DVR_INIT_CFG_ABILITY, *LPNET_DVR_INIT_CFG_ABILITY; + +typedef struct tagNET_DVR_LOCAL_SDK_PATH +{ + char sPath[NET_SDK_MAX_FILE_PATH];//×é¼þ¿âµØÖ· + BYTE byRes[128]; +}NET_DVR_LOCAL_SDK_PATH, *LPNET_DVR_LOCAL_SDK_PATH; + +typedef struct tagNET_DVR_SDKMEMPOOL_CFG +{ + BYTE byRes[256]; +}NET_DVR_SDKMEMPOOL_CFG, *LPNET_DVR_SDKMEMPOOL_CFG; + + +typedef struct tagNET_DVR_RES_INFO +{ + DWORD dwImageWidth; //ͼÏñ¿í¶È + DWORD dwImageHeight; //ͼÏñ¸ß¶È +}NET_DVR_RES_INFO, *LPNET_DVR_RES_INFO; + +typedef struct tagNET_DVR_VS_INPUT_CHAN_INIT +{ + DWORD dwSize; + DWORD dwVSInputChan; //ÐéÄâÆÁÊäÈëͨµÀºÅ + DWORD dwResNums; //·Ö±æÂʵĸöÊý + NET_DVR_RES_INFO struResList[MAX_RES_NUM_ONE_VS_INPUT_CHAN]; //·Ö±æÂÊÁбí + BYTE byRes[32]; +}NET_DVR_VS_INPUT_CHAN_INIT, *LPNET_DVR_VS_INPUT_CHAN_INIT; + +typedef struct tagNET_DVR_VS_INPUT_CHAN_INIT_LIST +{ + DWORD dwSize; + NET_DVR_VS_INPUT_CHAN_INIT struChanList[MAX_VS_INPUT_CHAN_NUM]; //ͨµÀÁбí + BYTE byRes[32]; +}NET_DVR_VS_INPUT_CHAN_INIT_LIST, *LPNET_DVR_VS_INPUT_CHAN_INIT_LIST; + +typedef struct tagNET_DVR_VS_INPUT_CHAN_CFG +{ + DWORD dwSize; + DWORD dwVSInputChan; //ÐéÄâÆÁÊäÈëͨµÀºÅ + NET_DVR_RES_INFO struResolutin; //·Ö±æÂÊ + BYTE byRes[64]; +}NET_DVR_VS_INPUT_CHAN_CFG, *LPNET_DVR_VS_INPUT_CHAN_CFG; + +typedef struct tagNET_DVR_VS_NETSRC_CFG +{ + DWORD dwSize; + DWORD dwVSInputChan; //ÐéÄâÆÁÊäÈëͨµÀºÅ + BYTE byDispUrl[MAX_URL_LEN]; //ÏÔʾURL + BYTE byEnabled; //ÊÇ·ñÆôÓÃURL + BYTE byRes[127]; +}NET_DVR_VS_NETSRC_CFG, *LPNET_DVR_VS_NETSRC_CFG; + +typedef struct tagNET_DVR_EDID_FILE_INFO +{ + DWORD dwSize; + DWORD dwEDIDFileNo; //EDIDÎļþ±àºÅ£¬´Ó1¿ªÊ¼ + BYTE byFileName[FILE_NAME_LEN]; //EDIDÎļþÃû³Æ + BYTE byRes[32]; +}NET_DVR_EDID_FILE_INFO, *LPNET_DVR_EDID_FILE_INFO; + +typedef struct tagNET_DVR_EDID_FILE_INFO_LIST +{ + DWORD dwSize; + DWORD dwEDIDFileNum; //·µ»ØµÄNET_DVR_EDID_FILE_INFO¸öÊý + LPNET_DVR_EDID_FILE_INFO lpstruBuffer; //»º³åÇøÖ¸Õë + DWORD dwBufferSize; //»º³åÇø´óС + BYTE byRes[32]; +}NET_DVR_EDID_FILE_INFO_LIST, *LPNET_DVR_EDID_FILE_INFO_LIST; + +//×Ó´°¿Ú½âÂëOSD +typedef struct tagNET_DVR_OSD_INFO +{ + BYTE byEnabled; //ÊÇ·ñʹÄÜ£¬Áã-²»Ê¹ÄÜ£¬·ÇÁã-ʹÄÜ + BYTE byEnabledFlash; //ÊÇ·ñÉÁ˸£¬Áã-²»ÉÁ˸£¬·ÇÁã-ÉÁ˸ + BYTE byFontSize; //×ÖÌå´óС£¬1-´ó£¬2-ÖУ¬3-С + BYTE byTransparent; //͸Ã÷¶È£¬È¡Öµ·¶Î§0-100 + NET_DVR_RGB_COLOR struColor; //×ÖÌåÑÕÉ« + WORD wCoordinateX; //OSD×óÉϽÇX×ø±ê + WORD wCoordinateY; //OSD×óÉϽÇY×ø±ê + BYTE byContent[MAX_LEN_OSD_CONTENT]; //OSDÐÅÏ¢ + BYTE byRes[32]; +}NET_DVR_OSD_INFO, *LPNET_DVR_OSD_INFO; + +typedef struct tagNET_DVR_SUBWND_DECODE_OSD +{ + DWORD dwSize; + DWORD dwSubWndNo; //×Ó´°¿ÚºÅ£¨4×Ö½Ú×éºÏ·½Ê½£© + DWORD dwOSDNums; //¸Ã×Ó´°¿ÚÅäÖõÄOSDÐÅÏ¢µÄ¸öÊý + NET_DVR_OSD_INFO struOSDList[MAX_NUM_OSD_ONE_SUBWND]; //OSDÐÅÏ¢Áбí + BYTE byRes[32]; +}NET_DVR_SUBWND_DECODE_OSD, *LPNET_DVR_SUBWND_DECODE_OSD; + +typedef struct tagNET_DVR_SUBWND_DECODE_OSD_LIST +{ + DWORD dwSize; + NET_DVR_SUBWND_DECODE_OSD struSubWndList[MAX_NUM_SPLIT_WND]; //ËùÓÐ×Ó´°¿ÚµÄ½âÂëOSD + BYTE byRes[32]; +}NET_DVR_SUBWND_DECODE_OSD_LIST, *LPNET_DVR_SUBWND_DECODE_OSD_LIST; + +typedef struct tagNET_DVR_DECODE_CHANNEL_OSD +{ + DWORD dwSize; + NET_DVR_OSD_INFO struOSDInfo[MAX_NUM_OSD]; //OSDÐÅÏ¢Áбí + BYTE byRes[32]; +}NET_DVR_DECODE_CHANNEL_OSD, *LPNET_DVR_DECODE_CHANNEL_OSD; + +//ÈȳÉÏñÖÇÄÜ»¥³âÅäÖòÎÊý +typedef struct tagNET_DVR_THERMINTELL_PARAM +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byIntellType; //ÖÇÄܹ¦ÄÜ×ÊÔ´ÅäÖÃÀàÐÍ,0~²âÎÂ+ÐÐΪ·ÖÎö(ĬÈÏ)£¬1~´¬Ö»¼ì²â£¬2~»ðµã¼ì²â,3~»­Öл­¹¦ÄÜ, 4~ÈËÁ³²âΣ¬5-²âÎÂ+ÑÌ»ð¼ì²â£¬6-²âÎÂ+»ðµã¼ì²â 7-ÐÐΪ·ÖÎö 8-²âΠ+ BYTE byRes[127]; +}NET_DVR_THERMINTELL_PARAM, *LPNET_DVR_THERMINTELL_PARAM; + +typedef struct tagNET_DVR_FACE_THERMOMETRY_ALARM +{ + DWORD dwSize; + DWORD dwChannel;//ͨµÀºÅ + BYTE byRuleID; //ÈËÁ³²âιæÔòID:1-40 + BYTE byRes1[3]; + BYTE byRuleName[NAME_LEN]; //¹æÔòÃû³Æ + DWORD dwRelativeTime; //Ïà¶Ôʱ±ê + DWORD dwAbsTime; //¾ø¶Ôʱ±ê + BYTE byFaceDetectionState;//ÈËÁ³¼ì²â״̬£»0~δ¼ì²âµ½ÈËÁ³£¬1~ÒѼì²âµ½ÈËÁ³ + BYTE byThermometryUnit;//²âε¥Î»: 0-ÉãÊ϶ȣ¨¡æ£©£¬1-»ªÊ϶ȣ¨¨H£©£¬2-¿ª¶ûÎÄ(K) + BYTE byAlarmRule;//±¨¾¯¹æÔò£»0-×î¸ßδóÓÚ£¬1-×î¸ßÎÂСÓÚ + BYTE byRes2[1]; + float fAlarmTemperature;//´¥·¢±¨¾¯Î¶ȣ¨-20.0~120.0¡æ£¬¾«È·µ½Ð¡Êýµãºó1룩 + float fRuleTemperature;// ¹æÔòÅäÖñ¨¾¯Î¶ȣ¨-20.0~60.0¡æ£¬¾«È·µ½Ð¡Êýµãºó1룩 + DWORD dwVisibleLightImageLen;// ¿É¼û¹âͼƬ³¤¶È + BYTE *pVisibleLightImage; //¿É¼û¹âͼƬָÕë + DWORD dwFaceImageLen;// ÈËÁ³×Óͼ³¤¶È + BYTE *pFaceImage; //ÈËÁ³×ÓͼָÕë + NET_VCA_RECT struFaceRegion;//ÈËÁ³Ä¿±ê±ß½ç¿ò£¬É豸ʶ±ð×¥ÅÄͼƬÖУ¬ÈËÁ³×Óͼ×ø±ê + float fMinTemperature;// ×îµÍζȣ¨-20.0~120.0¡æ£¬¾«È·µ½Ð¡Êýµãºó1룩 + float fAverageTemperature;//ƽ¾ùΣ¨-20.0~120.0¡æ£¬¾«È·µ½Ð¡Êýµãºó1룩 + NET_VCA_POINT struMinTemperaturePoint; //×îµÍζÈλÖÃ×ø±ê + NET_VCA_POINT struMaxTemperaturePoint;//×î¸ßζÈλÖÃ×ø±ê + BYTE byRes[720]; +}NET_DVR_FACE_THERMOMETRY_ALARM, *LPNET_DVR_FACE_THERMOMETRY_ALARM; + +//µ¼³öGUIDÎļþ +typedef struct tagNET_DVR_GUID_FILE_EXPORT +{ + DWORD dwSize; + char sLoginPassWord[NET_SDK_MAX_LOGIN_PASSWORD_LEN/*128*/]; //Óû§µÇ¼ÃÜÂë + BYTE byRes[128]; +}NET_DVR_GUID_FILE_EXPORT, *LPNET_DVR_GUID_FILE_EXPORT; + +//Óû§µÇ¼ÃÜÂëУÑé +typedef struct tagNET_DVR_LOGIN_PASSWORDCFG +{ + DWORD dwSize; + char sLoginPassWord[NET_SDK_MAX_LOGIN_PASSWORD_LEN/*128*/]; //Óû§µÇ¼ÃÜÂë + BYTE byRes[256]; +}NET_DVR_LOGIN_PASSWORDCFG, *LPNET_DVR_LOGIN_PASSWORDCFG; + +//µ¥¸ö°²È«ÎÊÌâÅäÖà +typedef struct tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG +{ + DWORD dwSize; + DWORD dwId;//ÐòºÅ£¨°²È«ÎÊÌâÐòºÅ£¬Ö»¶Á£© + char sAnswer[NET_SDK_MAX_ANSWER_LEN/*256*/];//´ð°¸£¨»ñȡʱֻ¶Á£© + BYTE byMark;//±ê¼Ç 0-δÉèÖà 1-ÒÑÉèÖà + BYTE byRes[127]; +}NET_DVR_SINGLE_SECURITY_QUESTION_CFG, *LPNET_DVR_SINGLE_SECURITY_QUESTION_CFG; + +//°²È«ÎÊÌâÅäÖà +typedef struct tagNET_DVR_SECURITY_QUESTION_CFG +{ + DWORD dwSize; + NET_DVR_SINGLE_SECURITY_QUESTION_CFG struSecurityQuestion[NET_SDK_MAX_QUESTION_LIST_LEN/*32*/];//°²È«ÎÊÌâÁбí + char sLoginPassWord[NET_SDK_MAX_LOGIN_PASSWORD_LEN/*128*/];//adminÓû§µÇ¼ÃÜÂë + BYTE byRes[512]; +}NET_DVR_SECURITY_QUESTION_CFG, *LPNET_DVR_SECURITY_QUESTION_CFG; + +typedef struct tagNET_DVR_ALARMIN_TRIGGER_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ£¬´Ó1¿ªÊ¼ + DWORD dwAlarmInNo;//·ÀÇøºÅ£¬´Ó0¿ªÊ¼ + BYTE byRes[256]; +}NET_DVR_ALARMIN_TRIGGER_COND, *LPNET_DVR_ALARMIN_TRIGGER_COND; + +typedef struct tagNET_DVR_FACELIB_GUARD_COND +{ + DWORD dwSize; + DWORD dwChannel; //ͨµÀºÅ + char szFDID[68];//ÈËÁ³¿âµÄID + BYTE byRes[128]; +}NET_DVR_FACELIB_GUARD_COND, *LPNET_DVR_FACELIB_GUARD_COND; + +typedef struct tagNET_DVR_GUID_FILE_STATUS_INFO +{ + DWORD dwSize; + BYTE byLockStatus; //0£ºÎ´Ëø¶¨£¬1£ºËø¶¨ + BYTE byPasswd; //0:ÃÜÂë´íÎó£¬1£ºÃÜÂëÕýÈ·¡£×¢:¸ÃֵδËø¶¨Ê±ÓÐЧ¡£ + BYTE byRetryNum; //Ê£Óà³¢ÊÔ´ÎÊý¡£×¢:¸ÃֵδËø¶¨Ê±ÓÐЧ + BYTE byRes1; + DWORD dwLockTime; //Ê£ÓàËø¶¨Ê±¼ä£ºµ¥Î»Ãë¡£×¢:¸ÃÖµËø¶¨Ê±ÓÐЧ + BYTE byRes[128]; +}NET_DVR_GUID_FILE_STATUS_INFO, *LPNET_DVR_GUID_FILE_STATUS_INFO; + + +//²âÎÂģʽÅäÖà +typedef struct tagNET_DVR_THERMOMETRY_MODE +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byMode;//²âÎÂģʽ£¬0~ÆÕͨģʽ£¬1~ר¼Òģʽ + BYTE byThermometryROIEnabled; //²âÎÂROIʹÄÜ 0-±£Áô 1-²»¿ªÆô 2-¿ªÆô£¨»ùÓÚ»¥³â¼æÈÝ¿¼ÂÇ£© + BYTE byRes[62]; +}NET_DVR_THERMOMETRY_MODE, *LPNET_DVR_THERMOMETRY_MODE; + +//ÈȳÉÏñÏà¹ØËã·¨¿â°æ±¾»ñÈ¡ +typedef struct tagNET_DVR_THERMAL_ALGINFO +{ + DWORD dwSize;//½á¹¹Ìå´óС + char sThermometryAlgName[NET_SDK_MAX_THERMOMETRYALGNAME/*128*/];//²âÎÂËã·¨¿â°æ±¾Ãû³Æ + char sShipsAlgName[NET_SDK_MAX_SHIPSALGNAME /*128*/];//´¬Ö»Ëã·¨¿â°æ±¾Ãû³Æ + char sFireAlgName[NET_SDK_MAX_FIRESALGNAME /*128*/];//»ðµã¼ì²âËã·¨¿â°æ±¾Ãû³Æ + BYTE byRes[768]; +}NET_DVR_THERMAL_ALGINFO, *LPNET_DVR_THERMAL_ALGINFO; + +//µçÁ÷Ëø¶¨ÅäÖà +typedef struct tagNET_DVR_CURRENT_LOCK +{ + DWORD dwSize;//½á¹¹Ìå´óС + BYTE byCurrentLock;//ÔÆ̨´¹Ö±µç»úËø¶¨µçÁ÷£¬0~²»Ëø¶¨£¬1~È«Á÷Ëø¶¨£¬2~3/4Á÷Ëø¶¨£¬3~°ëÁ÷Ëø¶¨ + BYTE byRes[255]; +}NET_DVR_CURRENT_LOCK, *LPNET_DVR_CURRENT_LOCK; + +//Á³±È¶Ô±¨¾¯£¨Êý¾Ý͸´«·½Ê½£© +typedef struct tagNET_VCA_FACESNAP_RAWDATA_ALARM_ +{ + DWORD dwSize; //½á¹¹´óС + DWORD dwRelativeTime; // Ïà¶Ôʱ±ê + DWORD dwAbsTime; // ¾ø¶Ôʱ±ê + NET_VCA_DEV_INFO struDevInfo; //Ç°¶ËÉ豸ÐÅÏ¢ + DWORD dwJsonDataLen; //jsonÊý¾Ý¶¨ÒåÐÅÏ¢£¬0-ûÓÐÊý¾Ý£¬·Ç0±íʾÓÐÊý¾Ý£¨¼´½á¹¹Ìåºó¸ú×ŵÄjsonÊý¾Ý³¤¶È£© + BYTE* pJsonBuff;// jsonÊý¾ÝÖ¸Õë + BYTE byRes[256]; // ±£Áô×Ö½Ú +}NET_VCA_FACESNAP_RAWDATA_ALARM, *LPNET_VCA_FACESNAP_RAWDATA_ALARM; + +//¸ß¼¶Ð£Õý²ÎÊý +typedef struct tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM +{ + BYTE byDelFullScreenGamut; /*ÊÇ·ñɾ³ýÕûÆÁÉ«Óò²ÎÊý,0-·ñ,1-ÊÇ£¬byOperateType Ϊ3-ɾ³ýУÕýÊý¾ÝʱÓÐЧ*/ + BYTE byDelLightPanelGamut; /*ÊÇ·ñɾ³ýµÆ°åÉ«Óò²ÎÊý,0-·ñ,1-ÊÇ£¬byOperateType Ϊ3-ɾ³ýУÕýÊý¾ÝʱÓÐЧ*/ + BYTE byDelLightPanelWhiteBalance; /*ÊÇ·ñɾ³ýµÆ°å°×ƽºâ²ÎÊý,0-·ñ,1-ÊÇ£¬byOperateType Ϊ3-ɾ³ýУÕýÊý¾ÝʱÓÐЧ*/ + BYTE byRes[13]; +}NET_DVR_ADVANCE_SCREEN_CHECK_PARAM, *LPNET_DVR_ADVANCE_SCREEN_CHECK_PARAM; + +//LEDÆÁĻУÕý²ÎÊý +typedef struct tagNET_SDK_LED_SCREEN_CHECK_PARAM +{ + DWORD dwSize; + BYTE byOperateType; //²Ù×÷ÀàÐÍ£¬1-дÈëУÕýÊý¾Ý£¬2-УÕýÔ¤ÀÀ£¬3-ɾ³ýУÕýÊý¾Ý£¬4-¼ÓÔØԭʼÊý¾Ý£¬5-УÕýԭʼÊý¾ÝÔ¤ÀÀ + BYTE byIsRGBSynChk; //RGBÊÇ·ñͬ²½µ÷Õû£¬0-²»Ö§³Ö£¬!0-Ö§³Ö£¬byOperateTypeΪ1¡¢2ʱÓÐЧ + BYTE byScreenCheckType; //ÆÁĻУÕýÀàÐÍ,0-ÆÕͨУÕý,1-¸ß¼¶Ð£Õý + BYTE byRes1; + WORD wRgbPermil; //RGBͬ²½µ÷ÕûµÄǧ·Ö±È£¬byOperateTypeΪ1¡¢2ÇÒbyIsRGBSynChk·ÇÁãʱÓÐЧ + WORD wRedPermil; //ºìÉ«µ÷ÕûµÄǧ·Ö±È£¬byOperateTypeΪ1¡¢2ÇÒbyIsRGBSynChkΪÁãʱÓÐЧ + WORD wGreenPermil; //ÂÌÉ«µ÷ÕûµÄǧ·Ö±È£¬byOperateTypeΪ1¡¢2ÇÒbyIsRGBSynChkΪÁãʱÓÐЧ + WORD wBluePermil; //À¶É«µ÷ÕûµÄǧ·Ö±È£¬byOperateTypeΪ1¡¢2ÇÒbyIsRGBSynChkΪÁãʱÓÐЧ + DWORD dwRectCount; //¾ØÐÎÇøÓòµÄÊýÁ¿ + NET_DVR_RECTCFG_EX struRectList[MAX_SCREEN_AREA_NUM]; //¾ØÐÎÇøÓòÁÐ±í£¬Ë³Ðò´æ·Å + NET_DVR_ADVANCE_SCREEN_CHECK_PARAM struAdvanceScreenCheckParam;//¸ß¼¶Ð£Õý²ÎÊý,½öbyScreenCheckTypeΪ1ʱÉúЧ + BYTE byRes2[48]; +}NET_SDK_LED_SCREEN_CHECK_PARAM, *LPNET_SDK_LED_SCREEN_CHECK_PARAM; + +//LEDÆÁĻУÕýÏìÓ¦Êý¾Ý +typedef struct tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA +{ + DWORD dwSize; + BYTE byDataType; //Êý¾ÝÀàÐÍ£¬1-½ø¶È£¨ÕûÌå½ø¶È£©£¬2-״̬ + BYTE byOperateType; //²Ù×÷ÀàÐÍ£¬1-дÈëУÕýÊý¾Ý£¬2-УÕýÔ¤ÀÀ£¬3-ɾ³ýУÕýÊý¾Ý + BYTE byProgress; //½ø¶È£¬byDataTypeΪ1ʱÓÐЧ£¬0-100 + BYTE byStatus; //״̬£¬byDataTypeΪ2ʱÓÐЧ£¬1-LEDÆÁÄ»ÇøÓòУÕýʧ°Ü£¬2-LEDÆÁÄ»ÇøÓò¶ÔÓ¦µÄ½ÓÊÕ¿¨²»´æÔÚ£¬3-¼ÓÔØУÕýÊý¾Ýʧ°Ü£¨Ô­Ê¼Êý¾ÝÒì³££© + //4-¸ÃÆÁÄ»ÐͺŲ»Ö§³ÖУÕý£¬5-É豸棨ÕýÔÚУÕý£©£¬6-É豸ÄÚ´æ²»×ã + NET_DVR_RECTCFG_EX struRect; //LEDÆÁÄ»ÇøÓò£¬byDataTypeΪ2ʱÓÐЧ + BYTE byRes[64]; +}NET_SDK_SCREEN_CHECK_RESPONSE_DATA, *LPNET_SDK_SCREEN_CHECK_RESPONSE_DATA; + +typedef struct tagNET_DVR_PLAY_BY_NAME_PARA +{ + char szFileName[100]; //»Ø·ÅÎļþÃû + BYTE byDownload; //ÊÇ·ñÏÂÔØ 0-·ñ£¬1-ÊÇ + BYTE byRes1[127]; + HWND hWnd; //»Ø·ÅµÄ´°¿Ú¾ä±ú£¬ÈôÖÃΪ¿Õ£¬SDKÈÔÄÜÊÕµ½ÂëÁ÷Êý¾Ý£¬µ«²»½âÂëÏÔʾ + NET_DVR_ADDRESS struAddr; //ÎļþËùÔÚ¼¯ÈºÖÐCSµØÖ·ÐÅÏ¢£¬¸ÃÐÅÏ¢Îļþ²éÕÒʱ»á·µ»Ø + //Èç¹ûΪ¿Õ±íʾ±¾µÇ¼µØÖ· + BYTE byRes2[256]; +}NET_DVR_PLAY_BY_NAME_PARA, *LPNET_DVR_PLAY_BY_NAME_PARA; + +typedef struct tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR +{ + DWORD dwSize; + NET_DVR_IPADDR struIpAddr; + WORD wIpPort; + BYTE byRes[2]; + char sDomainName[MAX_DOMAIN_NAME]; + char sSerial[SERIALNO_LEN]; + LONG iChannel; + NET_DVR_TIME struStartTime; + NET_DVR_TIME struStopTime; + HWND hWnd; +}NET_DVR_PLAYBCK_BYTIME_COND_PCNVR, *LPNET_DVR_PLAYBCK_BYTIME_COND_PCNVR; + +//°´ÎļþÃûÏÂÔؼ¯ÈºÂ¼ÏñÎļþ +typedef struct tagNET_DVR_DOWNLOAD_BY_NAME_COND +{ + char *pFileName; //»Ø·ÅÎļþÃû£¬°üº¬\0£¬×î´ó100×Ö½Ú + char *pSavedFileName;//Îļþ±£´æλÖà + NET_DVR_ADDRESS struAddr; //ÎļþËùÔÚ¼¯ÈºÖÐCSµØÖ·ÐÅÏ¢£¬¸ÃÐÅÏ¢Îļþ²éÕÒʱ»á·µ»Ø + //Èç¹ûΪ¿Õ±íʾ±¾µÇ¼µØÖ· + BYTE byRes[256]; +}NET_DVR_DOWNLOAD_BY_NAME_COND, *LPNET_DVR_DOWNLOAD_BY_NAME_COND; + +typedef struct tagNET_DVR_PIC_PARAM //²éÕÒ½á¹û½á¹¹Ìå +{ + char *pDVRFileName; //ͼƬÃû£¬°üº¬\0£¬×î´ó64×Ö½Ú + char *pSavedFileBuf; //±£´æͼƬµÄ»º³åÇø£¬ÄÚ´æÍⲿÉêÇëÊÍ·Å + DWORD dwBufLen; //»º³åÇø´óС + DWORD *lpdwRetLen; //ʵ¼ÊÊÕµ½µÄÊý¾Ý³¤¶ÈÖ¸Õ룬²»ÄÜΪNULL + NET_DVR_ADDRESS struAddr; //ͼƬËùÔڵĵØÖ·ÐÅÏ¢£¬Í¼Æ¬²éÕÒʱ»á·µ»Ø + BYTE byRes[256]; //±£Áô×Ö½Ú +}NET_DVR_PIC_PARAM, *LPNET_DVR_PIC_PARAM; + +#define NET_SDK_MAX_INDENTITY_KEY_LEN 64 //½»»¥²Ù×÷¿ÚÁ¶È + +//µ¼ÈëÈËÁ³Êý¾ÝÌõ¼þ +typedef struct tagNET_DVR_FACELIB_COND +{ + DWORD dwSize; + char szFDID[NET_SDK_MAX_FDID_LEN/*256*/];//ÈËÁ³¿âID + BYTE byConcurrent;//É豸²¢·¢´¦Àí 0-²»¿ªÆô£¬1-¿ªÊ¼ + BYTE byCover;//ÊÇ·ñ¸²¸Çʽµ¼Èë 0-·ñ£¬1-ÊÇ + BYTE byCustomFaceLibID;//FDIDÊÇ·ñÊÇ×Ô¶¨Ò壬0-²»ÊÇ£¬1-ÊÇ£» + /*µ±¡±/ISAPI/Intelligent/channels//faceContrast/capabilities¡±ÄÜÁ¦Öзµ»ØisSupportNoSaveUploadPictureÄÜÁ¦½Úµãʱ£¬ + ´ú±í·Ç²¢·¢´¦ÀíģʽÏ£¬Ö§³Ö²»±£´æÉÏ´«Ô­Í¼µÄ²Ù×÷:µ±ÉÏ´«³É¹¦Í¼Æ¬²¢É豸½¨Ä£³É¹¦ºó£¬»á½«ÉÏ´«µÄԭͼ½øÐÐɾ³ý¡£ + ×¢£º¸Ã²Ù×÷ÎÞ·¨Óë²¢·¢´¦Àíͬʱ½øÐС£*/ + BYTE byPictureSaveMode;//ÉÏ´«Ô­Í¼±£´æģʽ£¬0-±£´æ£¬1-²»±£´æ; + BYTE byIdentityKey[NET_SDK_MAX_INDENTITY_KEY_LEN/*64*/];//½»»¥²Ù×÷¿ÚÁî + BYTE byRes[60]; +}NET_DVR_FACELIB_COND, *LPNET_DVR_FACELIB_COND; + +//µ¼ÈëÈËÌåÊý¾ÝÌõ¼þ +typedef struct tagNET_DVR_HBDLIB_COND +{ + DWORD dwSize; + char szHBDID[NET_SDK_MAX_HBDID_LEN/*256*/];//ÈËÌå¿âID + BYTE byConcurrent;//É豸²¢·¢´¦Àí 0-²»¿ªÆô£¬1-¿ªÊ¼ + BYTE byCover;//ÊÇ·ñ¸²¸Çʽµ¼Èë 0-·ñ£¬1-ÊÇ + BYTE byCustomHBDID;// HBDIDÊÇ·ñÊÇ×Ô¶¨Ò壬0-²»ÊÇ£¬1-ÊÇ£» + BYTE byRes[125]; +}NET_DVR_HBDLIB_COND, *LPNET_DVR_HBDLIB_COND; + +typedef struct tagNET_DVR_EXPORT_PUBLISH_SCHEDULE +{ + DWORD dwScheduleID;// ÈÕ³ÌË÷Òý + DOWNLOAD_DATA_CB fnDownloadFileCallBack; //Êý¾Ý»Øµ÷º¯Êý + void* pUser; //Óû§Êý¾ÝÖ¸Õë + BYTE byRes[32]; +}NET_DVR_EXPORT_PUBLISH_SCHEDULE, *LPNET_DVR_EXPORT_PUBLISH_SCHEDULE; + +typedef struct tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND +{ + DWORD dwSize; + DWORD dwAudioChannel;//ÓïÒô¶Ô½²Í¨µÀºÅ + BYTE byRes[128]; +}NET_DVR_GBT28181_AUDIO_OUTPUT_COND, *LPNET_DVR_GBT28181_AUDIO_OUTPUT_COND; + +//GBT28181ЭÒéµÄÓïÒôÊä³öͨµÀÅäÖà ÅäÖýṹ +typedef struct tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG +{ + DWORD dwSize; + char szAudioOutNumID[MAX_COMPRESSIONID_LEN];//É豸ÓïÒôÊä³ö±àÂëID + BYTE byRes[256]; +}NET_DVR_GBT28181_AUDIO_OUTPUT_CFG, *LPNET_DVR_GBT28181_AUDIO_OUTPUT_CFG; + +typedef struct tagNET_DVR_NOTICE_VIDEO_DATA +{ + DWORD dwSize; + DWORD dwFileSize; //Îļþ´óС£¬µ¥Î»£º×Ö½Ú + BYTE byNoticeNumber[MAX_NOTICE_NUMBER_LEN]; //¹«¸æ±àºÅ + BYTE byRes[2016]; +}NET_DVR_NOTICE_VIDEO_DATA, *LPNET_DVR_NOTICE_VIDEO_DATA; + +typedef struct tagNET_DVR_NOTICE_VIDEO_DATA_COND +{ + DWORD dwSize; + BYTE byRes[256]; //±£Áô +}NET_DVR_NOTICE_VIDEO_DATA_COND, *LPNET_DVR_NOTICE_VIDEO_DATA_COND; + +typedef struct tagNET_DVR_NOTICE_VIDEO_DATA_CFG +{ + DWORD dwSize; + DWORD dwDataLen; //Êý¾Ý³¤¶È + char* pDataBuffer; //Êý¾ÝÖ¸Õë + BYTE byDataType; //Êý¾ÝÀàÐÍ£º0-ÎÞЧ£¬1-½á¹¹ÌåÊý¾Ý£¨NET_DVR_NOTICE_VIDEO_DATA£©£¬2-ÊÓƵÊý¾Ý + BYTE byRes[63]; +}NET_DVR_NOTICE_VIDEO_DATA_CFG, *LPNET_DVR_NOTICE_VIDEO_DATA_CFG; + +typedef struct tagNET_DVR_UPGRADE_FIRMWARE_INFO +{ + DWORD dwMagicNumber; /* ħÊõ×ֶΣ¬¹Ì¶¨Öµ0x484b5753 */ + DWORD dwCheckSum; /* ÎļþͷУÑéºÍ */ + DWORD dwHeadLen; /* ÎļþÍ·³¤¶È */ + DWORD dwFileNums; /* Îļþ¸öÊý */ + DWORD dwLanguage; /* ÓïÑÔ£¬1-Ó¢ÎÄ»ò¶àÓïÑÔ£¬2-ÖÐÎÄ */ + DWORD dwDeviceClassID; /* 1 ¨C DS9000 DVR */ + DWORD dwOemCode; /* 1 ¨C private */ + BYTE byUpgradeVersion; /* Éý¼¶°æ±¾: 0xFE - ÐèÅжÏflash, ram, DSP ram µÄÈÝÁ¿*/ + BYTE byResFeature[15]; /* ±£Áô×ֶΠ*/ + BYTE byFlashSize; /* 0 - do not need check; 1 - 16M; 2 - 32M; 3 - 64M */ + BYTE byRamSize; /* 0 - do not need check; 1 - 128M; 2 - 256M; 3 - 512M; 4 - 1024M*/ + BYTE byDspRamSize; /* 0 - do not need check; 1 - 64M; 2 - 128M; 3 - 256M */ + BYTE byRes[17]; /* ±£Áô */ +}NET_DVR_UPGRADE_FIRMWARE_INFO, *LPNET_DVR_UPGRADE_FIRMWARE_INFO; + + +typedef struct tagNET_DVR_SCHEDULE_FILE_RET +{ + DWORD dwSize; + char szFileName[32]; //ÎļþÃû + DWORD dwFileLen; //Îļþ³¤¶È + BYTE byRes[64]; +}NET_DVR_SCHEDULE_FILE_RET, *LPNET_DVR_SCHEDULE_FILE_RET; + +#define NET_SDK_MAX_EXAM_ROUND_NO 64 //¿¼ÊÔ³¡´Î±àºÅ×î´ó³¤¶È +#define NET_SDK_MAX_EXAM_NO 64 //¿¼ÊÔ±àºÅ×î´ó³¤¶È +#define NET_SDK_MAX_EXAM_SUBJECT 64 //¿¼ÊÔ¿ÆÄ¿×î´ó³¤¶È +#define NET_SDK_MAX_TEACHER_NO 64 //¼à¿¼ÀÏʦ±àºÅ×î´ó³¤¶È +#define NET_SDK_MAX_TEACHER_NAME 64 //¼à¿¼ÀÏʦÐÕÃû×î´ó³¤¶È +#define NET_SDK_MAX_EXAMINEE_NO 64 //¿¼Éú±àºÅ×î´ó³¤¶È +#define NET_SDK_MAX_ADMISSION_TICKET 64 //×¼¿¼Ö¤ºÅ×î´ó³¤¶È + +typedef struct tagNET_DVR_EXAM_INFO_COND +{ + DWORD dwSize; + DWORD dwExamNumber; //¿¼ÊÔÐÅÏ¢ÊýÄ¿ + BYTE byRes[128]; +}NET_DVR_EXAM_INFO_COND, *LPNET_DVR_EXAM_INFO_COND; + +typedef struct tagNET_DVR_EXAM_INFO_CFG +{ + DWORD dwSize; + BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO/*64*/]; //¿¼ÊÔ³¡´Î±àºÅ£¨Ä³ÌþßÌ忼ÊÔ£© + BYTE byExamNo[NET_SDK_MAX_EXAM_NO/*64*/]; //¿¼ÊÔ±àºÅ£¨Ä³´Î¿¼ÊÔ£¬°üº¬¶à³¡¿¼ÊÔ£© + BYTE byExamSubject[NET_SDK_MAX_EXAM_SUBJECT/*64*/]; //¿¼ÊÔ¿ÆÄ¿ + BYTE byTeacherNo[NET_SDK_MAX_TEACHER_NO/*64*/]; //¼à¿¼ÀÏʦ±àºÅ + BYTE byTeacherName[NET_SDK_MAX_TEACHER_NAME/*64*/]; //¼à¿¼ÀÏʦÐÕÃû + NET_DVR_TIME struStartTime; //¿¼ÊÔ¿ªÊ¼Ê±¼ä + NET_DVR_TIME struEndTime; //¿¼ÊÔ½áÊøʱ¼ä + BYTE byExamInfoValid; //¿¼ÊÔÐÅÏ¢ÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚ¿¼ÊÔ³¡´Î±àºÅɾ³ý¿¼ÊÔÐÅÏ¢£¬¸Ã×Ö¶ÎΪ0ʱ´ú±íɾ³ý£© + BYTE byRes[127]; +}NET_DVR_EXAM_INFO_CFG, *LPNET_DVR_EXAM_INFO_CFG; + +typedef struct tagNET_DVR_EXAM_INFO_STATUS +{ + DWORD dwSize; + BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO/*64*/]; //¿¼ÊÔ³¡´Î±àºÅ£¨Ä³ÌþßÌ忼ÊÔ£© + BYTE byStatus; //Ï·¢×´Ì¬£º0-ÎÞЧ£¬1-ʧ°Ü£¬2-³É¹¦£¨´ú±í¸Ã¿¼ÊÔ³¡´ÎÏ·¢ÊÇ·ñ³É¹¦£© + BYTE byRes[127]; +}NET_DVR_EXAM_INFO_STATUS, *LPNET_DVR_EXAM_INFO_STATUS; + +typedef struct tagNET_DVR_EXAMINEE_INFO_COND +{ + DWORD dwSize; + DWORD dwExamineeNumber; //¿¼ÉúÐÅÏ¢ÊýÄ¿ + BYTE byRes[128]; +}NET_DVR_EXAMINEE_INFO_COND, *LPNET_DVR_EXAMINEE_INFO_COND; + +typedef struct tagNET_DVR_EXAMINEE_INFO_CFG +{ + DWORD dwSize; + BYTE byExamineeNo[NET_SDK_MAX_EXAMINEE_NO/*64*/]; //¿¼Éú±àºÅ + BYTE byAdmissionTicket[NET_SDK_MAX_ADMISSION_TICKET/*64*/]; //×¼¿¼Ö¤ºÅ + BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO/*64*/]; //¿¼ÊÔ³¡´Î±àºÅ£¨Ä³ÌþßÌ忼ÊÔ£© + BYTE byName[NAME_LEN/*32*/]; //ÐÕÃû + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¼Éú¹ØÁªµÄ¿¨ºÅ + BYTE bySex; //ÐÔ±ð£º0-ÎÞЧ£¬1-ÄУ¬2-Å® + BYTE byExamineeInfoValid; //¿¼ÉúÐÅÏ¢ÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚ¿¼Éú±àºÅºÍ¿¼ÊÔ³¡´Î±àºÅɾ³ý¿¼ÉúÐÅÏ¢£¬¸Ã×Ö¶ÎΪ0ʱ´ú±íɾ³ý£© + BYTE byRes[126]; +}NET_DVR_EXAMINEE_INFO_CFG, *LPNET_DVR_EXAMINEE_INFO_CFG; + +typedef struct tagNET_DVR_EXAMINEE_INFO_STATUS +{ + DWORD dwSize; + BYTE byExamineeNo[NET_SDK_MAX_EXAMINEE_NO/*64*/]; //¿¼Éú±àºÅ + BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO/*64*/]; //¿¼ÊÔ³¡´Î±àºÅ£¨Ä³ÌþßÌ忼ÊÔ£© + BYTE byStatus; //Ï·¢×´Ì¬£º0-ÎÞЧ£¬1-ʧ°Ü£¬2-³É¹¦£¨´ú±í¸Ã¿¼ÉúÐÅϢϷ¢ÊÇ·ñ³É¹¦£© + BYTE byRes[127]; +}NET_DVR_EXAMINEE_INFO_STATUS, *LPNET_DVR_EXAMINEE_INFO_STATUS; + +typedef struct tagNET_DVR_EXAM_COMPARE_RESULT_COND +{ + DWORD dwSize; + BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO/*64*/]; //¿¼ÊÔ³¡´Î±àºÅ£¨Ä³ÌþßÌ忼ÊÔ£© + BYTE byExamNo[NET_SDK_MAX_EXAM_NO/*64*/]; //¿¼ÊÔ±àºÅ£¨Ä³´Î¿¼ÊÔ£¬°üº¬¶à³¡¿¼ÊÔ£© + NET_DVR_TIME struStartTime; //¿ªÊ¼Ê±¼ä + NET_DVR_TIME struEndTime; //½áÊøʱ¼ä + BYTE byRes[512]; +}NET_DVR_EXAM_COMPARE_RESULT_COND, *LPNET_DVR_EXAM_COMPARE_RESULT_COND; + +typedef struct tagNET_DVR_EXAM_COMPARE_RESULT_CFG +{ + DWORD dwSize; + NET_DVR_TIME struTime; //ʱ¼ä + BYTE byExamineeNo[NET_SDK_MAX_EXAMINEE_NO/*64*/]; //¿¼Éú±àºÅ + BYTE byAdmissionTicket[NET_SDK_MAX_ADMISSION_TICKET/*64*/]; //×¼¿¼Ö¤ºÅ + BYTE byExamNo[NET_SDK_MAX_EXAM_NO/*64*/]; //¿¼ÊÔ±àºÅ£¨Ä³´Î¿¼ÊÔ£¬°üº¬¶à³¡¿¼ÊÔ£© + BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO/*64*/]; //¿¼ÊÔ³¡´Î±àºÅ£¨Ä³ÌþßÌ忼ÊÔ£© + BYTE byName[NAME_LEN/*32*/]; //ÐÕÃû + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¼Éú¹ØÁªµÄ¿¨ºÅ + DWORD dwPicDataLen; //±È¶Ô×¥ÅÄͼƬÊý¾Ý´óС£¬²»Îª0ÊDZíʾºóÃæ´øÊý¾Ý + char *pPicData; //±È¶Ô×¥ÅÄͼƬָÕë + BYTE byRes[256]; +}NET_DVR_EXAM_COMPARE_RESULT_CFG, *LPNET_DVR_EXAM_COMPARE_RESULT_CFG; + +typedef struct tagNET_DVR_BLOCKLIST_PICTURE_COND +{ + DWORD dwSize; + DWORD dwPictureNum; //ͼƬÊýÁ¿ + BYTE byRes[128]; +}NET_DVR_BLOCKLIST_PICTURE_COND, *LPNET_DVR_BLOCKLIST_PICTURE_COND; + +typedef struct tagNET_DVR_BLOCKLIST_PICTURE_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN/*32*/]; //¿¨ºÅ + BYTE byStatus; //״̬£º0-ÎÞЧ£¬£¬1-´¦ÀíÖУ¬2-ÉÏ´«Ê§°Ü£¬3-³É¹¦ + BYTE byRes[63]; +}NET_DVR_BLOCKLIST_PICTURE_STATUS, *LPNET_DVR_BLOCKLIST_PICTURE_STATUS; + +typedef struct tagNET_DVR_BLOCKLIST_PICTURE_CFG +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN/*32*/]; //¿¨ºÅ + BYTE byName[NAME_LEN/*32*/]; //ÐÕÃû + BYTE bySex; //ÐÔ±ð£º0-ÎÞЧ£¬1-ÄУ¬2-Å® + BYTE byPictureValid; //½ûÖ¹Ãûµ¥Í¼Æ¬ÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚ°´¿¨ºÅɾ³ý½ûÖ¹Ãûµ¥Í¼Æ¬£¬¸Ã×Ö¶ÎΪ0ʱ´ú±íɾ³ý£¬É¾³ýʱ²»´«µÝ½ûÖ¹Ãûµ¥Í¼Æ¬£© + BYTE byRes1[2]; + DWORD dwPictureLen; //½ûÖ¹Ãûµ¥Í¼Æ¬³¤¶È£¨Í¼Æ¬´óС²»³¬¹ý1M£© + char* pPictureBuffer; //½ûÖ¹Ãûµ¥Í¼Æ¬Ö¸Õë + BYTE byRes[128]; +}NET_DVR_BLOCKLIST_PICTURE_CFG, *LPNET_DVR_BLOCKLIST_PICTURE_CFG; + +typedef struct tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND +{ + DWORD dwSize; + DWORD dwBlockListNum; //½ûÖ¹Ãûµ¥ÊýÁ¿ + BYTE byRes[128]; +}NET_DVR_UPLOAD_ID_BLOCKLIST_COND, *LPNET_DVR_UPLOAD_ID_BLOCKLIST_COND; + +typedef struct tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG +{ + DWORD dwSize; + NET_DVR_ID_CARD_INFO struIDCardCfg;//Éí·ÝÖ¤ÐÅÏ¢£¨¸Ã½á¹¹ÌåÖÐÐÕÃûºÍÉí·ÝÖ¤ºÅÂëΪ±ØÌîÏÆäËû×Ö¶ÎΪѡÌîÏ + BYTE byBlockListValid; //Éí·ÝÖ¤½ûÖ¹Ãûµ¥ÊÇ·ñÓÐЧ£º0-ÎÞЧ£¬1-ÓÐЧ£¨ÓÃÓÚ°´Éí·ÝÖ¤ºÅÂëɾ³ýÉí·ÝÖ¤½ûÖ¹Ãûµ¥£¬¸Ã×Ö¶ÎΪ0ʱ´ú±íɾ³ý£© + BYTE byRes[127]; +}NET_DVR_UPLOAD_ID_BLOCKLIST_CFG, *LPNET_DVR_UPLOAD_ID_BLOCKLIST_CFG; + +typedef struct tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS +{ + DWORD dwSize; + BYTE byIDNum[MAX_ID_NUM_LEN]; //Éí·ÝÖ¤ºÅÂë + BYTE byStatus; //״̬£º0-ÎÞЧ£¬1-´¦ÀíÖУ¬2-ÉÏ´«Ê§°Ü£¬3-³É¹¦ + BYTE byRes[63]; +}NET_DVR_UPLOAD_ID_BLOCKLIST_STATUS, *LPNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS; + +typedef struct tagNET_DVR_ALARM_ISAPI_INFO +{ + char * pAlarmData; // ±¨¾¯Êý¾Ý + DWORD dwAlarmDataLen; // ±¨¾¯Êý¾Ý³¤¶È + BYTE byDataType; // 0-invalid,1-xml,2-json + BYTE byPicturesNumber; // ͼƬÊýÁ¿ + BYTE byRes[2]; + void * pPicPackData; // ͼƬ±ä³¤²¿·Ö + BYTE byRes1[32]; +}NET_DVR_ALARM_ISAPI_INFO, *LPNET_DVR_ALARM_ISAPI_INFO; + +typedef struct tagNET_DVR_ALARM_ISAPI_PICDATA +{ + DWORD dwPicLen; + BYTE byPicType; //ͼƬ¸ñʽ: 1-jpg, 2-wav, 3-mp4 + BYTE byRes[3]; + char szFilename[MAX_FILE_PATH_LEN]; + BYTE *pPicData; +}NET_DVR_ALARM_ISAPI_PICDATA, *LPNET_DVR_ALARM_ISAPI_PICDATA; + +typedef struct tagNET_DVR_FORMAT_HDD +{ + DWORD dwSize;//½á¹¹Ì峤¶È + DWORD dwDiskNo;//Ó²Å̺ţ¬´Ó0¿ªÊ¼£¬0xff±íʾ¶ÔËùÓÐÓ²ÅÌÓÐЧ£¨²»°üÀ¨Ö»¶ÁÓ²ÅÌ£© + NET_DVR_IPADDR struLocateIP;//¸ÃÓ²ÅÌËùÔÚÉ豸µÄIP£¨¶ÔÓ¦Ó²Å̹ÜÀí²ÎÊýV50ÖлñÈ¡µ½µÄszHDLocateIPÐÅÏ¢£© + BYTE byRes[16]; +}NET_DVR_FORMAT_HDD, *LPNET_DVR_FORMAT_HDD; + +typedef struct tagNET_DVR_CHECK_FACE_PICTURE_COND +{ + DWORD dwSize; + DWORD dwPictureNum; //ͼƬÊýÁ¿ + BYTE byCheckTemplate; //0-УÑéͼƬÊÇ·ñºÏ·¨£¨Ä¬ÈÏ£©£¬1-УÑéͼƬºÍ½¨Ä£Êý¾ÝÊÇ·ñÆ¥Åä + BYTE byRes[127]; +}NET_DVR_CHECK_FACE_PICTURE_COND, *LPNET_DVR_CHECK_FACE_PICTURE_COND; + +typedef struct tagNET_DVR_CHECK_FACE_PICTURE_CFG +{ + DWORD dwSize; + DWORD dwPictureNo; //ͼƬ±àºÅ + DWORD dwPictureLen; //ͼƬ³¤¶È£¨Í¼Æ¬´óС²»³¬¹ý200k£© + char* pPictureBuffer; //ͼƬָÕë + DWORD dwFaceTemplateLen; //ÈËÁ³½¨Ä£Êý¾Ý³¤¶È + char* pFaceTemplateBuffer; //ÈËÁ³½¨Ä£Êý¾ÝÖ¸Õë + BYTE byRes[248]; +}NET_DVR_CHECK_FACE_PICTURE_CFG, *LPNET_DVR_CHECK_FACE_PICTURE_CFG; + +typedef struct tagNET_DVR_CHECK_FACE_PICTURE_STATUS +{ + DWORD dwSize; + DWORD dwPictureNo; //ͼƬ±àºÅ + BYTE byCheckStatus; //УÑé½á¹û£º0-ÎÞЧ£¬1-½¨Ä£³É¹¦£¬2-½¨Ä£Ê§°Ü£¬3-ÈËÁ³Ä£¿éͨѶÒì³££¬4-ͼÏñÎÞÈËÁ³£¬5-ÈËÁ³³¯ÉÏ£¬6-ÈËÁ³³¯Ï£¬7-ÈËÁ³Æ«×ó£¬8-ÈËÁ³Æ«ÓÒ£¬9-ÈËÁ³Ë³Ê±Ðýת£¬ + //10 - ÈËÁ³ÄæʱÐýת£¬11-ÈËÑÛ¼ä¾àС£¬12-ÈËÁ³ºÍÄ£°åÆ¥Å䣬13-ÈËÁ³ºÍÄ£°å²»Æ¥Åä,14-´«ÊäÊý¾ÝÓÐÎó + BYTE byRes[127]; +}NET_DVR_CHECK_FACE_PICTURE_STATUS, *LPNET_DVR_CHECK_FACE_PICTURE_STATUS; + +typedef struct tagNET_SDK_NPQ_STATE_SINGLE +{ + DWORD dwRttUs; //rtt£¬µ¥Î»us + DWORD dwRealRttUs; //ʵʱrtt£¬µ¥Î»us + DWORD dwBitRate; //ÂëÂÊ£¬µ¥Î»bps + BYTE byLossFraction; //¶ª°üÂÊ£¬µ¥Î»1/256 + BYTE byLossFraction2; //¾­¹ý»Ö¸´Ö®ºóµÄ¶ª°üÂÊ£¬Ö»ÄÜÔÚ½ÓÊն˻ñÈ¡£¬µ¥Î»1/256 + BYTE byRes[126]; +}NET_SDK_NPQ_STATE_SINGLE, *LPNET_SDK_NPQ_STATE_SINGLE; + + +typedef struct tagNET_SDK_NPQ_STATE +{ + DWORD dwSize; + NET_SDK_NPQ_STATE_SINGLE struAudioState; //ÒôƵ´«Êä״̬ + NET_SDK_NPQ_STATE_SINGLE struVideoState; //ÊÓƵ´«Êä״̬ + BYTE byRes[256]; +}NET_SDK_NPQ_STATE, *LPNET_SDK_NPQ_STATE; + +typedef struct tagNET_SDK_NPQ_NOTIFY_PARAM +{ + LONG iVersion; //½á¹¹Ìå°æ±¾£¬ÓÃÓÚÒÔºó¼æÈÝ + DWORD dwBitRate; //ÂëÂÊ µ¥Î»bps + BOOL bHaveBitrate; //ÂëÂÊ×Ö¶ÎÊÇ·ñÓÐЧ±êÖ¾ + BOOL bHaveForceIframe; //Ç¿ÖÆIÖ¡×Ö¶ÎÊÇ·ñÓÐЧ±êÖ¾ + BOOL bForceIframe; //Ç¿ÖÆIÖ¡ + BOOL bHaveScale; //scale×Ö¶ÎÊÇ·ñÓÐЧ±êÖ¾,»Ø·Åʱ´Ë×Ö¶ÎÎÞЧ,Çëͨ¹ýSDK¿ì·Å½Ó¿ÚʵÏÖ + float fScale; //scaleÐÅÏ¢ 1¡¢2¡¢4¡¢8,»Ø·Åʱ´Ë×Ö¶ÎÎÞЧ,Çëͨ¹ýSDK¿ì·Å½Ó¿ÚʵÏÖ + BYTE res[240]; +}NET_SDK_NPQ_NOTIFY_PARAM, *LPNET_SDK_NPQ_NOTIFY_PARAM; + +//±¨¾¯ÐÅÏ¢²éѯÌõ¼þ½á¹¹Ìå +typedef struct tagNET_DVR_ALARM_SEARCH_COND +{ + DWORD dwSize; + NET_DVR_TIME_SEARCH_COND strStartTime; //¿ªÊ¼Ê±¼ä,ʱ¼äΪ¿ÕÔò´ú±í²»Í¨¹ýʱ¼äɸѡ¡£ + NET_DVR_TIME_SEARCH_COND strStopTime; //½áÊøʱ¼ä, ʱ¼äΪ¿ÕÔò´ú±í²»Í¨¹ýʱ¼äɸѡ¡£ + /* + ±¨¾¯ÃüÁ¸Ã×Ö¶ÎÖµÓ뱨¾¯²¼·ÀÀàÐÍÏàͬ£¬Ä¿Ç°Ö§³Ö£º + COMM_VCA_ALARM 0x4993 ÖÇÄܼì²â±¨¾¯ + COMM_UPLOAD_FACESNAP_RESULT 0x1112 ÈËÁ³Ê¶±ð½á¹ûÉÏ´« + COMM_SNAP_MATCH_ALAR 0x2902 ÈËÁ³±È¶Ô½á¹ûÉÏ´« + */ + DWORD dwAlarmComm; //Èô¸ÃÃüÁîΪ¿ÕÕâ´ú±í²»½øÐб¨¾¯ÃüÁî¹ýÂË¡£ + char sAlarmUID[64]; //UID±êʶ£¨ÉÏ´«±¨¾¯Ê±É豸·µ»ØµÄUID±êʶ£¬64×ֽڵij¤¶È£¬¿ÉÒÔʹÓÃʱ¼ä£¨¾«È·µ½ºÁÃ룩¼ÓÉÏËæ¼´ÊýµÄ·½Ê½×é³É£©,Ϊ¿ÕÔò´ú±í²»Çø·ÖUID + WORD wEventType;//ʼþÀàÐÍ£¬½ödwAlarmCommΪCOMM_VCA_ALARM 0x4993 ÖÇÄܼì²â±¨¾¯ÓÐЧ£¬0-±íʾËùÓÐʼþ,1-»ìºÏÄ¿±ê¼ì²â£¨mixedTargetDetection£©,2-À×ÊÓÄ¿±ê¼ì²â£¨radarVideoDetection£© + WORD wSubEventType;//×ÓʼþÀàÐÍ£¬0-±íʾËùÓÐ×Óʼþ£¬ÆäÓàÖµ¸ù¾ÝwEventTypeµÄÈ¡Öµ±ä»¯¶ø±ä»¯£¬¾ßÌå²Î¼ûÄÜÁ¦¼¯¡£ + BYTE bySupport; //±£Áô + BYTE byNoBoundary; //ÊÇ·ñ²»´øboundary£¬0-·ñ£¬1-ÊÇ£¬½ödwAlarmCommΪÖÇÄܼì²â±¨¾¯Ê±ÓÐЧ£¬µ±ÉèÖÃΪ1ʱÊä³öʼþÀàÐÍΪCOMM_ISAPI_ALARM + BYTE byRes[122]; +}NET_DVR_ALARM_SEARCH_COND, *LPNET_DVR_ALARM_SEARCH_COND; +//±¨¾¯ÐÅÏ¢²éѯ½á¹û½á¹¹Ìå +typedef struct tagNET_DVR_ALARM_SEARCH_RESULT +{ + DWORD dwSize; + /* + ±¨¾¯ÃüÁ¸Ã×Ö¶ÎÖµÓ뱨¾¯²¼·ÀÀàÐÍÏàͬ£¬Ä¿Ç°Ö§³Ö£º + COMM_VCA_ALARM 0x4993 ÖÇÄܼì²â±¨¾¯ + COMM_UPLOAD_FACESNAP_RESULT 0x1112 ÈËÁ³Ê¶±ð½á¹ûÉÏ´« + COMM_SNAP_MATCH_ALARM 0x2902 ÈËÁ³±È¶Ô½á¹ûÉÏ´« + COMM_ISAPI_ALARM 0x6009 ISAPI±¨¾¯ + */ + DWORD dwAlarmComm; + /* + ±¨¾¯ÐÅÏ¢£¬¸Ã×Ö¶ÎÖµÓ뱨¾¯ÐÅÏ¢Ïàͬ£¬Ä¿Ç°Ö§³Ö£º + µ±COMM_VCA_ALARMʱ£¬¸Ã±¨¾¯ÐÅϢΪJSON±¨ÎÄ + µ±COMM_UPLOAD_FACESNAP_RESULTʱ£¬¸Ã±¨¾¯ÐÅϢΪNET_VCA_FACESNAP_RESULT + µ±COMM_SNAP_MATCH_ALARMʱ£¬¸Ã±¨¾¯ÐÅϢΪNET_VCA_FACESNAP_MATCH_ALARM + µ±COMM_ISAPI_ALARMʱ£¬¸Ã±¨¾¯ÐÅϢΪNET_DVR_ALARM_ISAPI_INFO + */ + DWORD dwAlarmLen;//±¨¾¯ÐÅÏ¢£¬¼´pAlarmInfoÖ¸ÕëÖ¸ÏòµÄÊý¾Ý³¤¶È + char *pAlarmInfo; + NET_DVR_ALARMER struAlarmer; + BYTE byRes[128]; +}NET_DVR_ALARM_SEARCH_RESULT, *LPNET_DVR_ALARM_SEARCH_RESULT; + +typedef struct tagNET_DVR_FACE_AND_TEMPLATE_COND +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ£¨ÉèÖÃʱ¸Ã²ÎÊý²»ÉèÖã© + DWORD dwFaceNum; //ÉèÖûò»ñÈ¡ÈËÁ³ÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓÐÈËÁ³ÐÅÏ¢ + BYTE byRes[128]; //±£Áô +}NET_DVR_FACE_AND_TEMPLATE_COND, *LPNET_DVR_FACE_AND_TEMPLATE_COND; + +typedef struct tagNET_DVR_FACE_AND_TEMPLATE_CFG +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + DWORD dwFaceLen; //ÈËÁ³Í¼Æ¬³¤¶È£¨Í¼Æ¬´óС²»³¬¹ý200k£© + char* pFaceBuffer; //ÈËÁ³Í¼Æ¬Ö¸Õë + DWORD dwFaceTemplateLen; //ÈËÁ³½¨Ä£Êý¾Ý³¤¶È + char* pFaceTemplateBuffer; //ÈËÁ³½¨Ä£Êý¾ÝÖ¸Õë + BYTE byRes[116]; +}NET_DVR_FACE_AND_TEMPLATE_CFG, *LPNET_DVR_FACE_AND_TEMPLATE_CFG; + +typedef struct tagNET_DVR_FACE_AND_TEMPLATE_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + BYTE byRecvStatus;//ÈËÁ³Ï·¢×´Ì¬£¬°´×Ö½Ú±íʾ£¬0-ʧ°Ü£¬1-³É¹¦£¬2-ÄÚ´æÒÑÂú£¨ÈËÁ³Êý¾ÝÂú£© + BYTE byRes[131]; +}NET_DVR_FACE_AND_TEMPLATE_STATUS, *LPNET_DVR_FACE_AND_TEMPLATE_STATUS; + +typedef struct tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC +{ + DWORD dwMaxHeatMapValue;//×î´óÈȶÈÖµ + DWORD dwMinHeatMapValue;//×îСÈȶÈÖµ + DWORD dwTimeHeatMapValue;// (ʱ¼äÈȶÈÖµ)ƽ¾ùÈȶÈÖµ + WORD wArrayLine;//ͼƬÏñËصãÐÐÖµ + WORD wArrayColumn;//ͼƬÏñËصãÁÐÖµ £¨µ±ÐÐÁÐֵΪ0µÄʱºò£¬ÏñËصãÖµÄÚ´æÐÅÏ¢²»´æÔÚ£© + BYTE* pBuffer; //ÈȶÈͼƬÏñËصãÊý¾ÝÐÅÏ¢ + BYTE byRes[32]; +}NET_DVR_SINGLE_HEATMAP_RESULT_PDC, *LPNET_DVR_SINGLE_HEATMAP_RESULT_PDC; + +//ÈȶÈͼ±¨¾¯ÉÏ´« +typedef struct tagNET_DVR_HEATMAP_RESULT_PDC +{ + DWORD dwSize; + NET_DVR_TIME_EX struStartTime;/*¿ªÊ¼Ê±¼ä*/ + NET_DVR_TIME_EX struEndTime;/*½áÊøʱ¼ä*/ + NET_VCA_DEV_INFO struDevInfo;/*É豸ÐÅÏ¢*/ + WORD wDevInfoIvmsChannelEx; //ÓëNET_VCA_DEV_INFOÀïµÄbyIvmsChannelº¬ÒåÏàͬ£¬Äܱíʾ¸ü´óµÄÖµ¡£ÀÏ¿Í»§¶ËÓÃbyIvmsChannelÄܼÌÐø¼æÈÝ£¬µ«ÊÇ×î´óµ½255¡£Ð¿ͻ§¶Ë°æ±¾ÇëʹÓÃwDevInfoIvmsChannelEx¡£ + BYTE byBrokenNetHttp; //¶ÏÍøÐø´«±ê־룬0-²»ÊÇÖØ´«Êý¾Ý£¬1-ÖØ´«Êý¾Ý + BYTE byArrayUnitType;//¾ØÕóµ¥ÔªÊý¾ÝÀàÐÍ£¨¾ØÕóÐÅÏ¢ÖÐÿ¸öÏñËصãÊý¾ÝµÄÊý¾ÝÀàÐÍ£©,1-byte, 2-short,4- int + /* + struSingleHeatMap[0]:±íʾ°´ÈËÊýͳ¼ÆÖеĻ­ÃæÖÐÍ£ÁôÈËÊýµÄÈȶÈÖµ£» + struSingleHeatMap[1]:±íʾ°´ÈËÊýͳ¼ÆÖеĻ­ÃæÖÐÀ뿪ÈËÊýµÄÈȶÈÖµ£» + */ + NET_DVR_SINGLE_HEATMAP_RESULT_PDC struSingleHeatMap[2]; + WORD wCurNumber;//µ±Ç°ÈËÊý + WORD wLeaveNumber;//À뿪ÈËÊý + #if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pEventNotificationAlertBuff; //ÆäBuff¶ÔÓ¦EventNotificationAlert JSON Block("eventType": "heatmap") +#else + char* pEventNotificationAlertBuff; //ÆäBuff¶ÔÓ¦EventNotificationAlert JSON Block("eventType": "heatmap") + BYTE byRes2[4]; +#endif + DWORD dwEventNotificationAlertLen;//³¤¶È¶ÔÓ¦EventNotificationAlert JSON Block("eventType": "heatmap")Êý¾Ý³¤¶È + BYTE byRes1[48]; +}NET_DVR_HEATMAP_RESULT_PDC, *LPNET_DVR_HEATMAP_RESULT_PDC; + +//É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«ÊÓƵ¼ì²âÊý¾Ý +typedef struct _NET_AIOP_VIDEO_HEAD_ +{ + DWORD dwSize; //dwSize = sizeof(NET_AIOP_VIDEO_HEAD) + DWORD dwChannel; //É豸·ÖÎöͨµÀµÄͨµÀºÅ£» + NET_DVR_SYSTEM_TIME struTime; //ʱ¼ä + char szTaskID[64]; //ÊÓƵÈÎÎñID£¬À´×ÔÓÚÊÓƵÈÎÎñÅÉ·¢ + DWORD dwAIOPDataSize; //¶ÔÓ¦AIOPDdataÊý¾Ý³¤¶È + DWORD dwPictureSize; //¶ÔÓ¦·ÖÎöͼƬ³¤¶È + char szMPID[64]; //¼ì²âÄ£ÐÍ°üID£¬ÓÃÓÚÆ¥ÅäAIOPµÄ¼ì²âÊý¾Ý½âÎö£»¿ÉÒÔͨ¹ýURI(GET /ISAPI/Intelligent/AIOpenPlatform/algorithmModel/management?format=json)»ñÈ¡µ±Ç°É豸¼ÓÔصÄÄ£ÐÍ°üµÄlabel descriptionÐÅÏ¢£» + BYTE *pBufferAIOPData; //AIOPDdataÊý¾Ý + BYTE *pBufferPicture;//¶ÔÓ¦·ÖÎöͼƬÊý¾Ý + BYTE byPictureMode;//ͼƬÊý¾Ý´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬2-É豸±¾µØ´æ´¢£¬µ±byPictureModeΪ0ʱpBufferPictureΪ¶þ½øÖÆÊý¾Ý£¬ + //µ±byPictureModeΪ1ʱpBufferPictureΪÎ人ÔÆURL,µ±byPictureModeΪ2ʱpBufferPictureΪÉ豸±¾µØ´æ´¢URL£¨ÏÂÔØͼƬµÄʱºò£¬ÐèÒª»ùÓÚHTTPЭÒé×öÉ豸µÄÈÏÖ¤´¦Àí£¬ÊÇ»ùÓÚÉ豸µÄÓû§ÃûºÍÃÜÂëÈÏÖ¤£© + BYTE byCompressedDotMatrixMode;//ѹËõºóµÄµãÕóͼ´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byCompressedDotMatrixModeΪ0ʱpCompressedDotMatrixBuffΪ¶þ½øÖÆÊý¾Ý£¬µ±byCompressedDotMatrixModeΪ1ʱpCompressedDotMatrixBuffΪÎ人ÔÆURL + BYTE byRes2[2];//±£Áô×Ö½Ú + DWORD dwPresetIndex; //Ô¤ÖõãÐòºÅ + DWORD dwAddInfoPictureSize; //¶ÔÓ¦·ÖÎöµÄ¸½¼ÓͼƬ³¤¶È + BYTE *pAddInfoPictureBuffer;//¶ÔÓ¦·ÖÎöµÄ¸½¼ÓͼƬÊý¾Ý(¶ÔÓÚÈȳÉÏñ˫ͨµÀÉ豸£¬¸Ã½Úµã±íʾ·Ç±¨¾¯Í¨µÀµÄͼƬ) +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pFacePicBuff; //ÈËÁ³Ð¡Í¼Í¼Æ¬Ö¸Õë +#else + char* pFacePicBuff; //ÈËÁ³Ð¡Í¼Í¼Æ¬Ö¸Õë + BYTE byRes3[4]; +#endif + DWORD dwFacePicBuffLen;//³¤¶È¶ÔÓ¦pFacePicBuffÊý¾Ý³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pComparisonPicBuff; //µ×¿â±È¶ÔͼͼƬָÕë +#else + char* pComparisonPicBuff; //µ×¿â±È¶ÔͼͼƬָÕë + BYTE byRes4[4]; +#endif + DWORD dwComparisonPicBuffLen;//³¤¶È¶ÔÓ¦pComparisonPicBuffÊý¾Ý³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë +#else + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë + BYTE byRes5[4]; +#endif + DWORD dwCompressedDotMatrixBuffLen; //³¤¶È¶ÔÓ¦pCompressedDotMatrixBuffÊý¾Ý³¤¶È + BYTE byRes[132]; +}NET_AIOP_VIDEO_HEAD, *LPNET_AIOP_VIDEO_HEAD; + +//É豸֧³ÖAI¿ª·Åƽ̨½ÓÈ룬ÉÏ´«Í¼Æ¬¼ì²âÊý¾Ý +typedef struct _NET_AIOP_PICTURE_HEAD_ +{ + DWORD dwSize; //dwSize = sizeof(NET_AIOP_PICTURE_HEAD) + NET_DVR_SYSTEM_TIME struTime; //ʱ¼ä + char szPID[64]; //͸´«Ï·¢µÄͼƬID£¬À´×ÔÓÚͼƬÈÎÎñÅÉ·¢ + DWORD dwAIOPDataSize; //¶ÔÓ¦AIOPDdataÊý¾Ý³¤¶È + BYTE byStatus; //״ֵ̬£º0-³É¹¦£¬1-ͼƬ´óС´íÎó + BYTE byPictureMode;//ͼƬÊý¾Ý´«Êäģʽ(µ±dwPictureSize>0ʱÓÐЧ) 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byPictureModeΪ0ʱpBufferPictureΪ¶þ½øÖÆÊý¾Ý£¬µ±byPictureModeΪ1ʱpBufferPictureΪÎ人ÔÆURL + BYTE byCompressedDotMatrixMode;// /ѹËõºóµÄµãÕóͼ´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byCompressedDotMatrixModeΪ0ʱpCompressedDotMatrixBuffΪ¶þ½øÖÆÊý¾Ý£¬µ±byCompressedDotMatrixModeΪ1ʱpCompressedDotMatrixBuffΪÎ人ÔÆURL + BYTE byRes1[1]; + char szMPID[64]; //¼ì²âÄ£ÐÍ°üID£¬ÓÃÓÚÆ¥ÅäAIOPµÄ¼ì²âÊý¾Ý½âÎö£» + BYTE *pBufferAIOPData;//AIOPDdataÊý¾Ý + DWORD dwPresetIndex; //Ô¤ÖõãÐòºÅ + DWORD dwPictureSize; //ͼƬ»òURL³¤¶È +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + BYTE *pBufferPicture;//¶ÔÓ¦·ÖÎöͼƬÊý¾Ý»òURL +#else + BYTE *pBufferPicture;//¶ÔÓ¦·ÖÎöͼƬÊý¾Ý»òURL + BYTE byRes2[4]; +#endif + char szTaskID[64]; //ÈÎÎñID, Êý¾ÝÖÐÐÄͼƬÈÎÎñ·ÖÎö½á¹ûÉϱ¨Ð¯´ø´Ë×ֶΠ+#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë +#else + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë + BYTE byRes5[4]; +#endif + DWORD dwCompressedDotMatrixBuffLen; //³¤¶È¶ÔÓ¦pCompressedDotMatrixBuffÊý¾Ý³¤¶È + BYTE byRes[92]; +}NET_AIOP_PICTURE_HEAD, *LPNET_AIOP_PICTURE_HEAD; + +#define MAX_FILE_NAME_LEN 100 //×î´óÎļþÃû³¤ +typedef struct tagNET_DVR_DOOR_FILE_UPLOAD_PARAM +{ + DWORD dwSize; + DWORD dwFileSize; //Îļþ´óС£¬µ¥Î»£º×Ö½Ú + BYTE byFileName[MAX_FILE_NAME_LEN]; //ÎļþÃû³Æ + BYTE byRes1[256]; +}NET_DVR_DOOR_FILE_UPLOAD_PARAM, *LPNET_DVR_DOOR_FILE_UPLOAD_PARAM; + +#define AUDIO_FILE_NAME_LEN 32 //ÒôƵÎļþÃû³Æ³¤¶È +//ÉÏ´«ÒôƵ¿ØÖÆÎļþ +typedef struct tagNET_DVR_TRANS_AUDIO_INFO +{ + DWORD dwSize; //½á¹¹Ìå´óС + char sAudioName[AUDIO_FILE_NAME_LEN]; //ÒôƵÎļþÃû³Æ + BYTE byAudioFormat; //ÒôƵÊý¾Ý¸ñʽ£º0-wav + BYTE byRes[127]; +}NET_DVR_TRANS_AUDIO_INFO,*LPNET_DVR_TRANS_AUDIO_INFO; + +typedef struct _NET_AIOP_POLLING_VIDEO_HEAD_ +{ + DWORD dwSize; //dwSize = sizeof(NET_AIOP_POLLING_VIDEO_HEAD) + DWORD dwChannel; //É豸·ÖÎöͨµÀµÄͨµÀºÅ(×ßSDKЭÒé)£» + NET_DVR_SYSTEM_TIME struTime; //ʱ¼ä + char szTaskID[64]; //ÂÖѯץͼÈÎÎñID£¬À´×ÔÓÚÂÖѯץͼÈÎÎñÅÉ·¢ + DWORD dwAIOPDataSize; //¶ÔÓ¦AIOPDdataÊý¾Ý³¤¶È + DWORD dwPictureSize; //¶ÔÓ¦·ÖÎöͼƬ³¤¶È + char szMPID[64]; //¼ì²âÄ£ÐÍ°üID£¬ÓÃÓÚÆ¥ÅäAIOPµÄ¼ì²âÊý¾Ý½âÎö£» + BYTE *pBufferAIOPData;//AIOPDdataÊý¾Ý + BYTE *pBufferPicture;//¶ÔÓ¦·ÖÎöͼƬÊý¾Ý + BYTE byPictureMode;//ͼƬÊý¾Ý´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byPictureModeΪ0ʱpBufferPictureΪ¶þ½øÖÆÊý¾Ý£¬µ±byPictureModeΪ1ʱpBufferPictureΪÎ人ÔÆURL + BYTE byCompressedDotMatrixMode;// /ѹËõºóµÄµãÕóͼ´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byCompressedDotMatrixModeΪ0ʱpCompressedDotMatrixBuffΪ¶þ½øÖÆÊý¾Ý£¬µ±byCompressedDotMatrixModeΪ1ʱpCompressedDotMatrixBuffΪÎ人ÔÆURL + BYTE byRes2[2];//±£Áô×Ö½Ú + DWORD dwPresetIndex; //Ô¤ÖõãÐòºÅ +#if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë +#else + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë + BYTE byRes5[4]; +#endif + DWORD dwCompressedDotMatrixBuffLen; //³¤¶È¶ÔÓ¦pCompressedDotMatrixBuffÊý¾Ý³¤¶È + BYTE byRes[164]; +} NET_AIOP_POLLING_VIDEO_HEAD, *LPNET_AIOP_POLLING_VIDEO_HEAD; + +typedef struct _NET_AIOP_HISTORY_VIDEO_HEAD_ +{ + DWORD dwSize; //dwSize = sizeof(_NET_AIOP_HISTORY_VIDEO_HEAD_) + DWORD dwChannel; //É豸·ÖÎöͨµÀµÄͨµÀºÅ(×ßSDKЭÒé)£» + NET_DVR_SYSTEM_TIME struTime; //ʱ¼ä + char szTaskID[64]; //ÀúÊ·ÊÓƵÈÎÎñID£¬À´×ÔÓÚÊÓƵÈÎÎñÅÉ·¢ + DWORD dwAIOPDataSize; //AIOP dataÊý¾Ý³¤¶È + DWORD dwPictureSize; //¶ÔÓ¦·ÖÎöͼƬ³¤¶È + char szMPID[64]; //¼ì²âÄ£ÐÍ°üID£¬ÓÃÓÚÆ¥ÅäAIOPµÄ¼ì²âÊý¾Ý½âÎö£»¿ÉÒÔͨ¹ýURI(GET /ISAPI/Intelligent/AIOpenPlatform/algorithmModel/management?format=json)»ñÈ¡µ±Ç°É豸¼ÓÔصÄÄ£ÐÍ°üµÄlabel descriptionÐÅÏ¢£» + BYTE *pBufferAIOPData;//AIOPDdataÊý¾Ý + BYTE *pBufferPicture;//¶ÔÓ¦·ÖÎöͼƬÊý¾Ý + BYTE byPictureMode;//ͼƬÊý¾Ý´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byPictureModeΪ0ʱpBufferPictureΪ¶þ½øÖÆÊý¾Ý£¬µ±byPictureModeΪ1ʱpBufferPictureΪÎ人ÔÆURL + BYTE byRes[183]; +}NET_AIOP_HISTORY_VIDEO_HEAD, *LPNET_AIOP_HISTORY_VIDEO_HEAD; + + +typedef struct _NET_AIOP_POLLING_SNAP_HEAD_ +{ + DWORD dwSize; //dwSize = sizeof(NET_AIOP_POLLING_SNAP_HEAD) + DWORD dwChannel; //É豸·ÖÎöͨµÀµÄͨµÀºÅ(×ßSDKЭÒé)£» + NET_DVR_SYSTEM_TIME struTime; //ʱ¼ä + char szTaskID[64]; //ÂÖѯץͼÈÎÎñID£¬À´×ÔÓÚÂÖѯץͼÈÎÎñÅÉ·¢ + DWORD dwAIOPDataSize; //¶ÔÓ¦AIOPDdataÊý¾Ý³¤¶È + DWORD dwPictureSize; //¶ÔÓ¦·ÖÎöͼƬ³¤¶È + char szMPID[64]; //¼ì²âÄ£ÐÍ°üID£¬ÓÃÓÚÆ¥ÅäAIOPµÄ¼ì²âÊý¾Ý½âÎö£» + BYTE *pBufferAIOPData;//AIOPDdataÊý¾Ý + BYTE *pBufferPicture;//·ÖÎöͼƬÊý¾Ý + BYTE byPictureMode;//ͼƬÊý¾Ý´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byPictureModeΪ0ʱpBufferPictureΪ¶þ½øÖÆÊý¾Ý£¬µ±byPictureModeΪ1ʱpBufferPictureΪÎ人ÔÆURL + BYTE byCompressedDotMatrixMode;// /ѹËõºóµÄµãÕóͼ´«Êäģʽ 0-¶þ½øÖÆ£¬1-Î人ÔÆÔÆ´æ´¢£¬µ±byCompressedDotMatrixModeΪ0ʱpCompressedDotMatrixBuffΪ¶þ½øÖÆÊý¾Ý£¬µ±byCompressedDotMatrixModeΪ1ʱpCompressedDotMatrixBuffΪÎ人ÔÆURL + BYTE byRes2[2];//±£Áô×Ö½Ú + DWORD dwPresetIndex; //Ô¤ÖõãÐòºÅ + DWORD dwAddInfoPictureSize; //¶ÔÓ¦·ÖÎöµÄ¸½¼ÓͼƬ³¤¶È + BYTE *pAddInfoPictureBuffer;//¶ÔÓ¦·ÖÎöµÄ¸½¼ÓͼƬÊý¾Ý(¶ÔÓÚÈȳÉÏñ˫ͨµÀÉ豸£¬¸Ã½Úµã±íʾ·Ç±¨¾¯Í¨µÀµÄͼƬ) + #if (defined(OS_WINDOWS64) || defined(OS_POSIX64))//win64¼°linux64ÏÂÖ¸ÕëΪ8×Ö½Ú + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë +#else + char* pCompressedDotMatrixBuff; //ѹËõºóµÄµãÕóͼÐÅÏ¢Ö¸Õë + BYTE byRes5[4]; +#endif + DWORD dwCompressedDotMatrixBuffLen; //³¤¶È¶ÔÓ¦pCompressedDotMatrixBuffÊý¾Ý³¤¶È + BYTE byRes[156]; +} NET_AIOP_POLLING_SNAP_HEAD, *LPNET_AIOP_POLLING_SNAP_HEAD; + +typedef struct tagNET_DVR_AI_ALGORITHM_MODEL +{ + DWORD dwSize; + DWORD dwDescribeLength; //{AlgorithmModel} Îļþ³¤¶È + char* pDescribeBuffer; //{AlgorithmModel}Îļþ + BYTE byRes1[3];//±£Áô×Ö½Ú£¬Ê¹ËÄ×Ö½Ú¶ÔÆë + DWORD dwLicenseKeyLength; //licenseKeyÎļþ³¤¶È + char* pLicenseKeyBuffer; //licenseKeyÎļþ + BYTE byRes[120]; +}NET_DVR_AI_ALGORITHM_MODEL, *LPNET_DVR_AI_ALGORITHM_MODEL; + +typedef struct tagNET_DVR_AI_PICTUR_UPLOAD +{ + DWORD dwSize; + char szTaskID[64]; //ÈÎÎñid£¬strlen.max = 64,ÒµÎñƽ̨ͳһά»¤¹ÜÀí + char szPID[64]; //ͼƬid£¬strlen.max = 64£¬ÒµÎñƽ̨ͳһά»¤¹ÜÀí + BYTE byRes[128]; +}NET_DVR_AI_PICTUR_UPLOAD, *LPNET_DVR_AI_PICTUR_UPLOAD; + + +typedef struct _NET_DVR_CARD_RECORD +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; + BYTE byCardType; + BYTE byLeaderCard; + BYTE byUserType; + BYTE byRes1; + BYTE byDoorRight[MAX_DOOR_NUM_256]; + NET_DVR_VALID_PERIOD_CFG struValid; + BYTE byBelongGroup[MAX_GROUP_NUM_128]; + BYTE byCardPassword[CARD_PASSWORD_LEN]; + WORD wCardRightPlan[MAX_DOOR_NUM_256]; + DWORD dwMaxSwipeTimes; + DWORD dwSwipeTimes; + DWORD dwEmployeeNo; + BYTE byName[NAME_LEN]; + //°´Î»±íʾ£¬0-ÎÞȨÏÞ£¬1-ÓÐȨÏÞ + //µÚ0λ±íʾ£ºÈõµç±¨¾¯ + //µÚ1λ±íʾ£º¿ªÃÅÌáʾÒô + //µÚ2λ±íʾ£ºÏÞÖÆ¿Í¿¨ + //µÚ3λ±íʾ£ºÍ¨µÀ + //µÚ4λ±íʾ£º·´Ëø¿ªÃÅ + //µÚ5λ±íʾ£ºÑ²¸ü¹¦ÄÜ + DWORD dwCardRight; + BYTE byRes[256]; +}NET_DVR_CARD_RECORD, *LPNET_DVR_CARD_RECORD; + +typedef struct _NET_DVR_CARD_COND +{ + DWORD dwSize; + DWORD dwCardNum; //ÉèÖûò»ñÈ¡¿¨ÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓп¨ÐÅÏ¢ + BYTE byRes[64]; +}NET_DVR_CARD_COND, *LPNET_DVR_CARD_COND; + +typedef struct _NET_DVR_CARD_SEND_DATA +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //¿¨ºÅ + BYTE byRes[16]; +}NET_DVR_CARD_SEND_DATA, *LPNET_DVR_CARD_SEND_DATA; + +typedef struct _NET_DVR_CARD_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; + DWORD dwErrorCode; + BYTE byStatus; // ״̬£º0-ʧ°Ü£¬1-³É¹¦ + BYTE byRes[23]; +}NET_DVR_CARD_STATUS, *LPNET_DVR_CARD_STATUS; + +typedef struct _NET_DVR_FACE_RECORD +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + DWORD dwFaceLen; //ÈËÁ³Êý¾Ý³¤¶È + BYTE* pFaceBuffer; //ÈËÁ³Êý¾ÝÖ¸Õë + BYTE byRes[128]; +}NET_DVR_FACE_RECORD, *LPNET_DVR_FACE_RECORD; + +typedef struct _NET_DVR_FACE_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ + BYTE byErrorMsg[ERROR_MSG_LEN]; //Ï·¢´íÎóÐÅÏ¢£¬µ±byCardReaderRecvStatusΪ4ʱ£¬±íʾÒÑ´æÔÚÈËÁ³¶ÔÓ¦µÄ¿¨ºÅ + DWORD dwReaderNo; //ÈËÁ³¶Á¿¨Æ÷±àºÅ£¬¿ÉÓÃÓÚÏ·¢´íÎó·µ»Ø + BYTE byRecvStatus; //ÈËÁ³¶Á¿¨Æ÷״̬£¬°´×Ö½Ú±íʾ£¬0-ʧ°Ü£¬1-³É¹¦£¬2-ÖØÊÔ»òÈËÁ³ÖÊÁ¿²î£¬3-ÄÚ´æÒÑÂú(ÈËÁ³Êý¾ÝÂú)£¬4-ÒÑ´æÔÚ¸ÃÈËÁ³£¬5-·Ç·¨ÈËÁ³ID + //,6-Ëã·¨½¨Ä£Ê§°Ü£¬7-δÏ·¢¿¨È¨ÏÞ£¬8-䶨Ò壨±£Áô£©£¬9-ÈËÑÛ¼ä¾àС¾àС£¬10-ͼƬÊý¾Ý³¤¶ÈСÓÚ1KB£¬11-ͼƬ¸ñʽ²»·û£¨png/jpg/bmp£©,12-ͼƬÏñËØÊýÁ¿³¬¹ýÉÏÏÞ£¬13-ͼƬÏñËØÊýÁ¿µÍÓÚÏÂÏÞ£¬14-ͼƬÐÅϢУÑéʧ°Ü£¬15-ͼƬ½âÂëʧ°Ü£¬16-ÈËÁ³¼ì²âʧ°Ü£¬17-ÈËÁ³ÆÀ·Öʧ°Ü + BYTE byRes[131]; +}NET_DVR_FACE_STATUS, *LPNET_DVR_FACE_STATUS; + +typedef struct _NET_DVR_FACE_COND +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //ÈËÁ³¹ØÁªµÄ¿¨ºÅ£¨ÉèÖÃʱ¸Ã²ÎÊý¿É²»ÉèÖã© + DWORD dwFaceNum; // ÉèÖûò»ñÈ¡ÈËÁ³ÊýÁ¿£¬»ñȡʱÖÃΪ0xffffffff±íʾ»ñÈ¡ËùÓÐÈËÁ³ÐÅÏ¢ + DWORD dwEnableReaderNo; // ÈËÁ³¶Á¿¨Æ÷±àºÅ + BYTE byRes[124]; // ±£Áô +}NET_DVR_FACE_COND, *LPNET_DVR_FACE_COND; + +typedef struct _NET_DVR_FINGERPRINT_RECORD +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + DWORD dwFingerPrintLen; //Ö¸ÎÆÊý¾Ý³¤¶È + DWORD dwEnableReaderNo; //ÐèҪϷ¢Ö¸ÎƵĶÁ¿¨Æ÷±àºÅ + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 + BYTE byFingerType; //Ö¸ÎÆÀàÐÍ 0-ÆÕָͨÎÆ£¬1-вÆÈÖ¸ÎÆ + BYTE byRes1[30]; + BYTE byFingerData[MAX_FINGER_PRINT_LEN]; //Ö¸ÎÆÊý¾ÝÄÚÈÝ + BYTE byRes[96]; +}NET_DVR_FINGERPRINT_RECORD, *LPNET_DVR_FINGERPRINT_RECORD; + +typedef struct _NET_DVR_FINGERPRINT_STATUS +{ + DWORD dwSize; + BYTE byCardNo[ACS_CARD_NO_LEN]; //Ö¸ÎƹØÁªµÄ¿¨ºÅ + BYTE byCardReaderRecvStatus; //Ö¸ÎƶÁ¿¨Æ÷״̬£¬°´×Ö½Ú±íʾ£¬0-ʧ°Ü£¬1-³É¹¦£¬2-¸ÃÖ¸ÎÆÄ£×é²»ÔÚÏߣ¬3-ÖØÊÔ»òÖ¸ÎÆÖÊÁ¿²î£¬4-ÄÚ´æÒÑÂú£¬5-ÒÑ´æÔÚ¸ÃÖ¸ÎÆ£¬6-ÒÑ´æÔÚ¸ÃÖ¸ÎÆID£¬7-·Ç·¨Ö¸ÎÆID£¬8-¸ÃÖ¸ÎÆÄ£×éÎÞÐèÅäÖà + BYTE byFingerPrintID; //ÊÖÖ¸±àºÅ£¬ÓÐЧֵ·¶Î§Îª1-10 + BYTE byFingerType; //Ö¸ÎÆÀàÐÍ 0-ÆÕָͨÎÆ£¬1-вÆÈÖ¸ÎÆ + BYTE byRecvStatus; //Ö÷»ú´íÎó״̬£º0-³É¹¦£¬1-ÊÖÖ¸±àºÅ´íÎó£¬2-Ö¸ÎÆÀàÐÍ´íÎó£¬3-¿¨ºÅ´íÎ󣨿¨ºÅ¹æ¸ñ²»·ûºÏÉ豸ҪÇ󣩣¬4-Ö¸ÎÆδ¹ØÁª¹¤ºÅ»ò¿¨ºÅ£¨¹¤ºÅ»ò¿¨ºÅ×Ö¶ÎΪ¿Õ£©£¬5-¹¤ºÅ²»´æÔÚ£¬6-Ö¸ÎÆÊý¾Ý³¤¶ÈΪ0£¬7-¶Á¿¨Æ÷±àºÅ´íÎó£¬8-¹¤ºÅ´íÎó + BYTE byErrorMsg[ERROR_MSG_LEN]; //Ï·¢´íÎóÐÅÏ¢£¬µ±byCardReaderRecvStatusΪ5ʱ£¬±íʾÒÑ´æÔÚÖ¸ÎƶÔÓ¦µÄ¿¨ºÅ + DWORD dwCardReaderNo; //µ±byCardReaderRecvStatusΪ5ʱ£¬±íʾÒÑ´æÔÚÖ¸ÎƶÔÓ¦µÄÖ¸ÎƶÁ¿¨Æ÷±àºÅ£¬¿ÉÓÃÓÚÏ·¢´íÎ󷵻ء£0ʱ±íʾÎÞ´íÎóÐÅÏ¢ + BYTE byRes[20]; +}NET_DVR_FINGERPRINT_STATUS, *LPNET_DVR_FINGERPRINT_STATUS; + +typedef struct tagNET_DVR_FINGERPRINT_COND +{ + DWORD dwSize; + DWORD dwFingerprintNum; + BYTE byCardNo[ACS_CARD_NO_LEN]; + DWORD dwEnableReaderNo; + BYTE byFingerPrintID; + BYTE byRes[131]; +}NET_DVR_FINGERPRINT_COND, *LPNET_DVR_FINGERPRINT_COND; + +typedef struct tagNET_DVR_CAPTURE_DATA_COND +{ + DWORD dwSize; + char szPassword[128]; //ÃØÔ¿£¬×Ö·û´® + BYTE byRes[128]; +}NET_DVR_CAPTURE_DATA_COND, *LPNET_DVR_CAPTURE_DATA_COND; + +#define EZVIZ_CLASSSESSION_LEN 64 +#define EZVIZ_DEVICEID_LEN 32 +typedef struct tagNET_DVR_EZVIZ_USER_LOGIN_INFO +{ + char sEzvizServerAddress[NET_DVR_DEV_ADDRESS_MAX_LEN]; //ÔÆ·þÎñÆ÷µØÖ· + WORD wPort; //ÔÆ·þÎñÆ÷¶Ë¿Ú + BYTE byLogin; + BYTE byRes1[1]; + char sClassSession[EZVIZ_CLASSSESSION_LEN]; //ClassSession, ·þÎñÆ÷·ÖÅäµÄÒ»¸ö×Ö·û´®£¬Ã¿´ÎͨÐÅʱÐèÒª·¢Ë͸ø·þÎñÆ÷ + char sDeviceID[EZVIZ_DEVICEID_LEN]; //É豸ID£¬ ÓÉ·þÎñÆ÷·ÖÅäµÄ + BYTE byRes2[128]; +}NET_DVR_EZVIZ_USER_LOGIN_INFO, *LPNET_DVR_EZVIZ_USER_LOGIN_INFO; + +#define EZVIZ_REQURL_LEN 64 +#define EZVIZ_ACCESSTOKEN_LEN 128 +#define EZVIZ_CLIENTTYPE_LEN 32 +#define EZVIZ_FEATURECODE_LEN 64 +#define EZVIZ_OSVERSION_LEN 32 +#define EZVIZ_NETTYPE_LEN 32 +#define EZVIZ_SDKVERSION_LEN 32 +#define EZVIZ_APPID_LEN 64 +typedef struct tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO +{ + char sEzvizServerAddress[NET_DVR_DEV_ADDRESS_MAX_LEN]; //ÔÆ·þÎñÆ÷µØÖ· + BYTE byRes1[3]; + WORD wPort; //ÔÆ·þÎñÆ÷¶Ë¿Ú + BYTE byRes2[2]; + char sUrl[EZVIZ_REQURL_LEN]; + char sAccessToken[EZVIZ_ACCESSTOKEN_LEN]; //accessToken, ·þÎñÆ÷·ÖÅäµÄÒ»¸ö×Ö·û´®£¬Ã¿´ÎͨÐÅʱÐèÒª·¢Ë͸ø·þÎñÆ÷ + char sDeviceID[EZVIZ_DEVICEID_LEN]; //É豸ID£¬ ÓÉ·þÎñÆ÷·ÖÅäµÄ + char sClientType[EZVIZ_CLIENTTYPE_LEN]; //¿Í»§¶ËÀàÐÍ: 0: PC-¿Ø¼þ 1: ios 2: android + char sFeatureCode[EZVIZ_FEATURECODE_LEN]; //Ó²¼þÌØÕ÷Âë + char sOsVersion[EZVIZ_OSVERSION_LEN]; //ÖÕ¶Ëϵͳ°æ±¾, ÀýÈç: IOS 7.0.4, Android 2.3. + char sNetType[EZVIZ_NETTYPE_LEN]; //ÍøÂçÀàÐÍ, UNKNOWN GPRS EDGE UMTS HSDPA HSUPA HSPA CDMAEVDO_0 EVDO_A EVDO_B 1xRTT IDEN WIFI + char sSdkVersion[EZVIZ_SDKVERSION_LEN]; //Sdk°æ±¾ºÅ, v.1.0.20140720.45xx + char sAppID[EZVIZ_APPID_LEN]; //AppID£¬iosÉϱ¨BundleID£¬AndroidÉϱ¨°üÃû + BYTE byRes3[512]; +}NET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO, *LPNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO; + + +#define MAX_ERROR_MSG_LEN 256 //×î´ó±¨¾¯´íÎóÃèÊöÐÅÏ¢ +//±¨¾¯Òì³£ÀàÐÍ +typedef enum tagALARM_EXCEPTION_ERROR_ENUM +{ + ENUM_AEE_PARAM_ERROR = 1, //²ÎÊý´íÎó + ENUM_AEE_LENS_ERROR = 2, //³¤¶È²»Æ¥ÅäÄÚ²¿½á¹¹Ìå + ENUM_AEE_PIC_LENS_ERROR = 3, //´øͼƬ³¤¶È²»Æ¥Åä + ENUM_AEE_DEVID_LENS_ERROR = 4, //DeviceID³¤¶È²»Æ¥Åä + ENUM_AEE_NEW_ALLOC_ERROR = 5, //ÉêÇëÄÚ´æʧ°Ü + ENUM_AEE_JSON_FORMAT_ERROR = 6, //JOSN¸ñʽ´íÎó + ENUM_AEE_XML_FORMAT_ERROR = 7, //XML¸ñʽ´íÎó + ENUM_AEE_BINARY_PIC_ERROR = 8, //¶þ½øÖÆͼƬÊý¾Ý´¦ÀíÒì³£ + ENUM_AEE_PIC_NUM_ERROR = 9, //ͳ¼ÆͼƬÊý¾ÝÒì³£ + ENUM_AEE_GET_BOUNDARY_ERROR = 10, //ÌáÈ¡boundaryÊý¾ÝÒì³£ + ENUM_AEE_BOUNDARY_NUM_ERROR = 11, //ÌáÈ¡boundaryÊýÄ¿Òì³£ +}ALARM_EXCEPTION_ERROR_ENUM; + +//±¨¾¯Òì³£½á¹¹Ìå +typedef struct tagNET_ALARM_EXCEPTION +{ + DWORD dwAlarmType; //±¨¾¯ÀàÐÍ + BYTE byExceptionType; //±¨¾¯Òì³£ÀàÐÍ,²Î¼û ALARM_EXCEPTION_ERROR_ENUM + BYTE byRes[3]; // + char szErrMsg[MAX_ERROR_MSG_LEN]; //´íÎóÐÅÏ¢ÃèÊö + BYTE byRes1[248]; // +}NET_ALARM_EXCEPTION, *LPNET_ALARM_EXCEPTION; + + +enum ADDITIONAL_LIB +{ + PLAYCTRL = 0, + DSSDK, + STREAMCONVERT, + STREAMTRANS, + QOSSDK, + DLL_PATH_AUDIO, + EZVIZ_SSL_SDK, + ANALYZE_DATA_LIB, + DLL_LIBICONV, + SSLEAY32_SDK, + LIBEAY32_SDK, + HCNETUTILS_SDK, + NPQ_LIB, + LOAD_DLL_COUNT, +}; + +typedef struct tagNET_DVR_AUTOTEST_CFG_HEAD +{ + DWORD dwSize; + DWORD dwInfoType; //1±íʾÊÓƵ²âÊÔ£¬3±íʾÓïÒô¶Ô½²²âÊÔ + DWORD dwRetResult; + DWORD dwDataBodySize; //ºóÃæ¸úËæµÄ½á¹¹ÌåÄÚÈÝ´óС + void* lpDataBody; //ºóÃæ¸úËæµÄ½á¹¹Ìå + BYTE byRes[32]; +}NET_DVR_AUTOTEST_CFG_HEAD,*LPNET_DVR_AUTOTEST_CFG_HEAD; + +//ÊÓƵ²âÊԽṹÌåÈçÏ +typedef struct tagNET_DVR_AUTOTEST_VIDEO_CFG +{ + DWORD dwSplitScreenNums; //·ÖÆÁÊý£¬Ö§³Ö1¡¢4¡¢9 + DWORD dwVoCh; //ĬÈÏÌîд1 + DWORD dwInterface; //1±íʾCVBS¡¢2±íʾHDMI¡¢3±íʾVGA¡¢4±íʾ¸¨¿ÚHDMI +}NET_DVR_AUTOTEST_VIDEO_CFG,*LPNET_DVR_AUTOTEST_VIDEO_CFG; + +//ÒôƵ²âÊԽṹÌåÈçÏ +typedef struct tagNET_DVR_AUTOTEST_AUDIO_CFG +{ + DWORD dwVoCh; //ĬÈÏÌîд2 + DWORD dwOpen; //1¿ªÆô£¬0²»¿ªÆô +}NET_DVR_AUTOTEST_AUDIO_CFG, *LPNET_DVR_AUTOTEST_AUDIO_CFG; + +typedef struct tagNET_LOCAL_AUDIOCAST_PARAM +{ + BYTE byAudioBitRate; //ÒôƵÂëÂÊ ²Î¿¼ BITRATE_ENCODE_INDEX + BYTE byAudioSamplingRate; //ÒôƵ²ÉÑùÂÊ 0-ĬÈÏ£¬1-16kHZ£¬2-32kHZ£¬3-48kHZ, 4- 44.1kHZ,5-8kHZ + BYTE byRes[30]; +}NET_LOCAL_AUDIOCAST_PARAM, *LPNET_LOCAL_AUDIOCAST_PARAM; + +typedef struct tagNET_LOCAL_AUDIOCAST_CFG +{ + NET_LOCAL_AUDIOCAST_PARAM struAudioCastParam[MAX_AUDIOCAST_CFG_TYPE]; //µÚ1µ½3¸öÔªËØ·Ö±ð±íʾ£º MP3¡¢MPEG2¡¢AAC¹ã²¥²ÎÊýµÄÅäÖ㬶ÔÓ¦ÔªËز»ÌîÔòΪĬÈϲÎÊý¡£ÆäÓà±àÂëÀàÐ͹㲥²ÎÊý²»¿ÉÅäÖà + BYTE byRes[64]; +}NET_LOCAL_AUDIOCAST_CFG, *LPNET_LOCAL_AUDIOCAST_CFG; + +#if ((defined __linux__) || (defined _WIN64)) +typedef struct _NET_DVR_AUDIOENCInfo /* ÐÅÏ¢ */ +{ + DWORD in_frame_size; /* ÊäÈëÒ»Ö¡Êý¾Ý´óС(BYTES)£¬ÓÉGetInfoParamº¯Êý·µ»Ø */ + int reserved[16]; /* ±£Áô */ +} NET_DVR_AUDIOENC_INFO; +/* ±àÂëģʽ */ +typedef enum _ENUM_AUDIO_ENC_MODE +{ + AMR_MR475_ = 0, /* 4.75 kb/s */ + AMR_MR515_, /* 5.15 kb/s */ + AMR_MR59_, /* 5.90 kb/s */ + AMR_MR67_, /* 6.70 kb/s */ + AMR_MR74_, /* 7.40 kb/s */ + AMR_MR795_, /* 7.95 kb/s */ + AMR_MR102_, /* 10.2 kb/s */ + AMR_MR122_, /* 12.2 kb/s */ + + AMR_MRDTX_, /* ¾²ÒôÖ¡ */ + AMR_N_MODES_ +}ENUM_AUDIO_ENC_MODE; +// ÒôƵ±àÂë +typedef struct _NET_DVR_AUDIOENC_PROCESS_PARAM_ +{ + unsigned char *in_buf; /* ÊäÈëbuf */ + unsigned char *out_buf; /* Êä³öbuf */ + DWORD out_frame_size; /* ±àÂëÒ»Ö¡ºóµÄBYTEÊý */ + + int g726enc_reset; /* ÖØÖÿª¹Ø */ + int g711_type; /* g711±àÂëÀàÐÍ,0 - U law, 1- A law */ + ENUM_AUDIO_ENC_MODE enc_mode; /* ÒôƵ±àÂëģʽ£¬AMR±àÂëÅäÖà */ + int reserved[16]; /* ±£Áô */ +}NET_DVR_AUDIOENC_PROCESS_PARAM; + +typedef struct _NET_DVR_AUDIODECInfo /* ÐÅÏ¢ */ +{ + int nchans; /* ÉùµÀÊý */ + int sample_rate; /* ²ÉÑùÂÊ */ + int aacdec_profile; /* ±àÂëÓõĿò¼Ü */ + int reserved[16]; /* ±£Áô */ +} NET_DVR_AUDIODEC_INFO; + +// ÒôƵ½âÂë +typedef struct _NET_DVR_AUDIODEC_PROCESS_PARAM +{ + unsigned char *in_buf; /* ÊäÈëÊý¾Ýbuf */ + unsigned char *out_buf; /* Êä³öÊý¾Ýbuf */ + DWORD in_data_size; /* ÊäÈëin_bufÄÚÊý¾ÝbyteÊý */ + DWORD proc_data_size; /* Êä³ö½âÂë¿â´¦Àíin_bufÖÐÊý¾Ý´óСbytes */ + DWORD out_frame_size; /* ½âÂëÒ»Ö¡ºóÊý¾ÝBYTEÊý */ + NET_DVR_AUDIODEC_INFO dec_info; /* Êä³ö½âÂëÐÅÏ¢ */ + + int g726dec_reset; /* ÖØÖÿª¹Ø */ + int g711_type; /* g711±àÂëÀàÐÍ,0 - U law, 1- A law */ + int reserved[16]; /* ±£Áô */ +} NET_DVR_AUDIODEC_PROCESS_PARAM; + +const unsigned int G726_EBCIN_DECOUT_SIZE = 640; // G726¿â±àÂëÊäÈëÒ»Ö¡¼°½âÂëÊä³öÒ»Ö¡µÄ´óС£¨¶¨³¤£© +#if (defined __x86_64__) +const unsigned int G726_ENC_OUT_SIZE = 160; // G726¿âÊäÈëÒ»Ö¡±àÂëÊä³ö´óС£¨¶¨³¤£© +const unsigned int G726_DEC_IN_SIZE = 200; // G726¿âÊäÈëÒ»Ö¡µ½½âÂ볤¶È£¨¶¨³¤£© +#else // if (defined __i386__) +const unsigned int G726_ENC_OUT_SIZE = 80; // G726¿âÊäÈëÒ»Ö¡±àÂëÊä³ö´óС£¨¶¨³¤£© +const unsigned int G726_DEC_IN_SIZE = 80; // G726¿âÊäÈëÒ»Ö¡µ½½âÂ볤¶È£¨¶¨³¤£© +#endif // (defined __x86_64__) +#endif // (defined __linux__) + +/********************************SDK½Ó¿Úº¯ÊýÉùÃ÷*********************************/ +NET_DVR_API BOOL __stdcall NET_DVR_Init(); +NET_DVR_API BOOL __stdcall NET_DVR_Cleanup(); + +//NET_DVR_SetDVRMessageµÄÀ©Õ¹ +#ifdef _WIN32 +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessage(UINT nMessage,HWND hWnd); +NET_DVR_API BOOL __stdcall NET_DVR_SetExceptionCallBack_V30(UINT nMessage, HWND hWnd, void (CALLBACK* fExceptionCallBack)(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser), void *pUser); +#elif defined(__linux__) || defined(__APPLE__) +NET_DVR_API BOOL __stdcall NET_DVR_SetExceptionCallBack_V30(UINT reserved1, void* reserved2, void (CALLBACK* fExceptionCallBack)(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser), void *pUser); +/*LinuxרÓÐ */ +#if defined(__linux__) +NET_DVR_API BOOL NET_DVR_DrawAreaInit(INITINFO InitInfo, DWORD iUseSDL = 1); +NET_DVR_API BOOL NET_DVR_DrawAreaRelease(); +#endif +#endif + +NET_DVR_API BOOL __stdcall NET_DVR_LoadAllCom(); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessCallBack(BOOL (CALLBACK *fMessCallBack)(LONG lCommand,char *sDVRIP,char *pBuf,DWORD dwBufLen)); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessCallBack_EX(BOOL (CALLBACK *fMessCallBack_EX)(LONG lCommand,LONG lUserID,char *pBuf,DWORD dwBufLen)); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessCallBack_NEW(BOOL (CALLBACK *fMessCallBack_NEW)(LONG lCommand,char *sDVRIP,char *pBuf,DWORD dwBufLen, WORD dwLinkDVRPort)); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessageCallBack(BOOL (CALLBACK *fMessageCallBack)(LONG lCommand,char *sDVRIP,char *pBuf,DWORD dwBufLen, DWORD dwUser), DWORD dwUser); +typedef void (CALLBACK *MSGCallBack)(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessageCallBack_V30(MSGCallBack fMessageCallBack, void* pUser); +typedef BOOL (CALLBACK *MSGCallBack_V31)(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessageCallBack_V31(MSGCallBack_V31 fMessageCallBack, void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessageCallBack_V50(int iIndex, MSGCallBack fMessageCallBack, void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRMessageCallBack_V51(int iIndex, MSGCallBack fMsgCallBack, void* pUser); + +NET_DVR_API BOOL __stdcall NET_DVR_SetConnectTime(DWORD dwWaitTime = 3000, DWORD dwTryTimes = 3); +NET_DVR_API BOOL __stdcall NET_DVR_SetReconnect(DWORD dwInterval = 30000, BOOL bEnableRecon = TRUE); +NET_DVR_API DWORD __stdcall NET_DVR_GetSDKVersion(); +NET_DVR_API DWORD __stdcall NET_DVR_GetSDKBuildVersion(); +NET_DVR_API int __stdcall NET_DVR_IsSupport(); +NET_DVR_API BOOL __stdcall NET_DVR_StartListen(char *sLocalIP,WORD wLocalPort); +NET_DVR_API BOOL __stdcall NET_DVR_StopListen(); + +NET_DVR_API LONG __stdcall NET_DVR_StartListen_V30(char *sLocalIP, WORD wLocalPort, MSGCallBack DataCallback, void* pUserData = NULL); +NET_DVR_API BOOL __stdcall NET_DVR_StopListen_V30(LONG lListenHandle); +NET_DVR_API LONG __stdcall NET_DVR_Login(char *sDVRIP,WORD wDVRPort,char *sUserName,char *sPassword,LPNET_DVR_DEVICEINFO lpDeviceInfo); +NET_DVR_API LONG __stdcall NET_DVR_Login_V30(char *sDVRIP, WORD wDVRPort, char *sUserName, char *sPassword, LPNET_DVR_DEVICEINFO_V30 lpDeviceInfo); + +NET_DVR_API LONG __stdcall NET_DVR_Login_V40(LPNET_DVR_USER_LOGIN_INFO pLoginInfo,LPNET_DVR_DEVICEINFO_V40 lpDeviceInfo); +NET_DVR_API BOOL __stdcall NET_DVR_Login_Check(char *sDVRIP, WORD wDVRPort, char *sUserName, char *sPassword, LPNET_DVR_DEVICEINFO_V30 lpDeviceInfo); +NET_DVR_API BOOL __stdcall NET_DVR_Logout(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_Logout_V30(LONG lUserID); +NET_DVR_API DWORD __stdcall NET_DVR_GetLastError(); +NET_DVR_API void __stdcall NET_DVR_GetLastErrorModelCode(DWORD *pModelCode, DWORD *pMErrDevSelfEx); +NET_DVR_API char* __stdcall NET_DVR_GetErrorMsg(LONG *pErrorNo = NULL); +NET_DVR_API BOOL __stdcall NET_DVR_SetShowMode(DWORD dwShowType,COLORREF colorKey); +NET_DVR_API BOOL __stdcall NET_DVR_GetDVRIPByResolveSvr(char *sServerIP, WORD wServerPort, BYTE *sDVRName,WORD wDVRNameLen,BYTE *sDVRSerialNumber,WORD wDVRSerialLen,char* sGetIP); +NET_DVR_API BOOL __stdcall NET_DVR_GetDVRIPByResolveSvr_EX(char *sServerIP, WORD wServerPort, BYTE *sDVRName, WORD wDVRNameLen, BYTE *sDVRSerialNumber, WORD wDVRSerialLen, char* sGetIP, DWORD *dwPort); +NET_DVR_API BOOL __stdcall NET_DVR_GetDVRNAMEByResolveSvr(char const *sServerIP, WORD wServerPort, char const *sIP, char *sDVRName); + +//Ô¤ÀÀÏà¹Ø½Ó¿Ú +NET_DVR_API LONG __stdcall NET_DVR_PlayDirect(char *sDVRIP, char *sUserName, char *sPassword, \ + LPNET_DVR_CLIENTINFO lpClientInfo, void(CALLBACK *fRealDataCallBack_V30) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser) = NULL, void* pUser = NULL, BOOL bBlocked = FALSE); +NET_DVR_API LONG __stdcall NET_DVR_RealPlay(LONG lUserID,LPNET_DVR_CLIENTINFO lpClientInfo); +NET_DVR_API LONG __stdcall NET_DVR_RealPlay_V30(LONG lUserID, LPNET_DVR_CLIENTINFO lpClientInfo, void(CALLBACK *fRealDataCallBack_V30) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser) = NULL, void* pUser = NULL, BOOL bBlocked = FALSE); +NET_DVR_API BOOL __stdcall NET_DVR_StopRealPlay(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_StopPlayDirect(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_RigisterDrawFun(LONG lRealHandle,void (CALLBACK* fDrawFun)(LONG lRealHandle,HDC hDc,DWORD dwUser),DWORD dwUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPlayerBufNumber(LONG lRealHandle,DWORD dwBufNum); +NET_DVR_API BOOL __stdcall NET_DVR_ThrowBFrame(LONG lRealHandle,DWORD dwNum); +NET_DVR_API BOOL __stdcall NET_DVR_SetAudioMode(DWORD dwMode); +NET_DVR_API BOOL __stdcall NET_DVR_OpenSound(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_CloseSound(); +NET_DVR_API BOOL __stdcall NET_DVR_OpenSoundShare(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_CloseSoundShare(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_Volume(LONG lRealHandle,WORD wVolume); +NET_DVR_API BOOL __stdcall NET_DVR_SaveRealData(LONG lRealHandle,char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_StopSaveRealData(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetRealDataCallBack(LONG lRealHandle,void(CALLBACK *fRealDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetRealDataCallBackEx(LONG lRealHandle,void(CALLBACK *fRealDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,void *pUser),void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetStandardDataCallBack(LONG lRealHandle,void(CALLBACK *fStdDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetStandardDataCallBackEx(LONG lRealHandle,void(CALLBACK *fStdDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,void *pUser),void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetTransparentDataCallBack(LONG lRealHandle, void(CALLBACK *fTpDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void *pUser), void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_CapturePicture(LONG lRealHandle,char *sPicFileName);//bmp +NET_DVR_API BOOL __stdcall NET_DVR_SetCapturePictureMode(DWORD dwCaptureMode); + +//¶¯Ì¬Éú³ÉIÖ¡ +NET_DVR_API BOOL __stdcall NET_DVR_MakeKeyFrame(LONG lUserID, LONG lChannel);//Ö÷ÂëÁ÷ +NET_DVR_API BOOL __stdcall NET_DVR_MakeKeyFrameSub(LONG lUserID, LONG lChannel);//×ÓÂëÁ÷ + +//ÔÆ̨¿ØÖÆÏà¹Ø½Ó¿Ú +NET_DVR_API BOOL __stdcall NET_DVR_PTZControl(LONG lRealHandle,DWORD dwPTZCommand,DWORD dwStop); +NET_DVR_API BOOL __stdcall NET_DVR_PTZControl_Other(LONG lUserID,LONG lChannel,DWORD dwPTZCommand,DWORD dwStop); +NET_DVR_API BOOL __stdcall NET_DVR_TransPTZ(LONG lRealHandle,char *pPTZCodeBuf,DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_TransPTZ_Other(LONG lUserID,LONG lChannel,char *pPTZCodeBuf,DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_PTZPreset(LONG lRealHandle,DWORD dwPTZPresetCmd,DWORD dwPresetIndex); +NET_DVR_API BOOL __stdcall NET_DVR_PTZPreset_Other(LONG lUserID,LONG lChannel,DWORD dwPTZPresetCmd,DWORD dwPresetIndex); +NET_DVR_API BOOL __stdcall NET_DVR_TransPTZ_EX(LONG lRealHandle,char *pPTZCodeBuf,DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_PTZControl_EX(LONG lRealHandle,DWORD dwPTZCommand,DWORD dwStop); +NET_DVR_API BOOL __stdcall NET_DVR_PTZPreset_EX(LONG lRealHandle,DWORD dwPTZPresetCmd,DWORD dwPresetIndex); +NET_DVR_API BOOL __stdcall NET_DVR_PTZCruise(LONG lRealHandle,DWORD dwPTZCruiseCmd,BYTE byCruiseRoute, BYTE byCruisePoint, WORD wInput); +NET_DVR_API BOOL __stdcall NET_DVR_PTZCruise_Other(LONG lUserID,LONG lChannel,DWORD dwPTZCruiseCmd,BYTE byCruiseRoute, BYTE byCruisePoint, WORD wInput); +NET_DVR_API BOOL __stdcall NET_DVR_PTZCruise_EX(LONG lRealHandle,DWORD dwPTZCruiseCmd,BYTE byCruiseRoute, BYTE byCruisePoint, WORD wInput); +NET_DVR_API BOOL __stdcall NET_DVR_PTZTrack(LONG lRealHandle, DWORD dwPTZTrackCmd); +NET_DVR_API BOOL __stdcall NET_DVR_PTZTrack_Other(LONG lUserID, LONG lChannel, DWORD dwPTZTrackCmd); +NET_DVR_API BOOL __stdcall NET_DVR_PTZTrack_EX(LONG lRealHandle, DWORD dwPTZTrackCmd); +NET_DVR_API BOOL __stdcall NET_DVR_PTZControlWithSpeed(LONG lRealHandle, DWORD dwPTZCommand, DWORD dwStop, DWORD dwSpeed); +NET_DVR_API BOOL __stdcall NET_DVR_PTZControlWithSpeed_Other(LONG lUserID, LONG lChannel, DWORD dwPTZCommand, DWORD dwStop, DWORD dwSpeed); +NET_DVR_API BOOL __stdcall NET_DVR_PTZControlWithSpeed_EX(LONG lRealHandle, DWORD dwPTZCommand, DWORD dwStop, DWORD dwSpeed); +NET_DVR_API BOOL __stdcall NET_DVR_GetPTZCruise(LONG lUserID,LONG lChannel,LONG lCruiseRoute, LPNET_DVR_CRUISE_RET lpCruiseRet); + + +//Îļþ²éÕÒÓë»Ø·Å +NET_DVR_API LONG __stdcall NET_DVR_FindFile(LONG lUserID,LONG lChannel,DWORD dwFileType, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFile(LONG lFindHandle,LPNET_DVR_FIND_DATA lpFindData); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFile_Card(LONG lFindHandle, LPNET_DVR_FINDDATA_CARD lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindClose(LONG lFindHandle); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFile_V30(LONG lFindHandle, LPNET_DVR_FINDDATA_V30 lpFindData); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFile_V40(LONG lFindHandle, LPNET_DVR_FINDDATA_V40 lpFindData); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFile_V50(LONG lFindHandle, LPNET_DVR_FINDDATA_V50 lpFindData); +NET_DVR_API LONG __stdcall NET_DVR_FindFile_V30(LONG lUserID, LPNET_DVR_FILECOND pFindCond); +NET_DVR_API LONG __stdcall NET_DVR_FindFile_V50(LONG lUserID, LPNET_DVR_FILECOND_V50 pFindCond); +NET_DVR_API BOOL __stdcall NET_DVR_FindClose_V30(LONG lFindHandle); + +NET_DVR_API BOOL __stdcall NET_DVR_LockFileByName(LONG lUserID, char *sLockFileName); +NET_DVR_API BOOL __stdcall NET_DVR_UnlockFileByName(LONG lUserID, char *sUnlockFileName); +NET_DVR_API BOOL __stdcall NET_DVR_LockFileByNameV40(LONG lUserID, BOOL bLock, const NET_DVR_LOCK_FILE_BY_NAME_PARA *lpLockFilePara); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByName(LONG lUserID,char *sPlayBackFileName, HWND hWnd); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByTime(LONG lUserID,LONG lChannel, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime, HWND hWnd); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackReverseByName(LONG lUserID, char *sPlayBackFileName, HWND hWnd); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByName_V50(LONG lUserID, LPNET_DVR_PLAY_BY_NAME_PARA pParam); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackReverseByName_V50(LONG lUserID, LPNET_DVR_PLAY_BY_NAME_PARA pParam); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByTime_PCNVR(LONG lUserID, NET_DVR_PLAYBCK_BYTIME_COND_PCNVR const *pPlaybackParams); + +NET_DVR_API BOOL __stdcall NET_DVR_PlayBackControl(LONG lPlayHandle,DWORD dwControlCode,DWORD dwInValue,DWORD *LPOutValue); +NET_DVR_API BOOL __stdcall NET_DVR_StopPlayBack(LONG lPlayHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetPlayDataCallBack(LONG lPlayHandle,void(CALLBACK *fPlayDataCallBack) (LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPlayBackESCallBack(LONG lPlayHandle, void (CALLBACK *fPlayESCallBack)(LONG lPlayHandle, NET_DVR_PACKET_INFO_EX *struPackInfo, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPlayDataCallBack_V40(LONG lPlayHandle,void(CALLBACK *fPlayDataCallBack_V40) (LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,void *pUser),void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_PlayBackSaveData(LONG lPlayHandle,char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_StopPlayBackSave(LONG lPlayHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetPlayBackOsdTime(LONG lPlayHandle, LPNET_DVR_TIME lpOsdTime); +NET_DVR_API BOOL __stdcall NET_DVR_PlayBackCaptureFile(LONG lPlayHandle,char *sFileName); +NET_DVR_API LONG __stdcall NET_DVR_GetFileByName(LONG lUserID,char *sDVRFileName,char *sSavedFileName); +NET_DVR_API LONG __stdcall NET_DVR_GetFileByName_V50(LONG lUserID, LPNET_DVR_DOWNLOAD_BY_NAME_COND pParam); +NET_DVR_API LONG __stdcall NET_DVR_GetFileByTime(LONG lUserID,LONG lChannel, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime, char *sSavedFileName); +NET_DVR_API BOOL __stdcall NET_DVR_StopGetFile(LONG lFileHandle); +NET_DVR_API int __stdcall NET_DVR_GetDownloadPos(LONG lFileHandle); +NET_DVR_API int __stdcall NET_DVR_GetPlayBackPos(LONG lPlayHandle); + +//Éý¼¶ +NET_DVR_API LONG __stdcall NET_DVR_AdapterUpgrade(LONG lUserID, char *sFileName); +NET_DVR_API LONG __stdcall NET_DVR_Upgrade(LONG lUserID, char *sFileName); +NET_DVR_API LONG __stdcall NET_DVR_VcalibUpgrade(LONG lUserID, LONG lChannel, char const *sFileName); +NET_DVR_API int __stdcall NET_DVR_GetUpgradeState(LONG lUpgradeHandle); +NET_DVR_API int __stdcall NET_DVR_GetUpgradeProgress(LONG lUpgradeHandle); +NET_DVR_API BOOL __stdcall NET_DVR_CloseUpgradeHandle(LONG lUpgradeHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetNetworkEnvironment(DWORD dwEnvironmentLevel); +//Ô¶³Ì¸ñʽ»¯Ó²ÅÌ +NET_DVR_API LONG __stdcall NET_DVR_FormatDisk(LONG lUserID,LONG lDiskNumber); +NET_DVR_API LONG __stdcall NET_DVR_FormatDisk_V50(LONG lUserID, NET_DVR_FORMAT_HDD *lpStruHddFormatCond); +NET_DVR_API BOOL __stdcall NET_DVR_GetFormatProgress(LONG lFormatHandle, LONG *pCurrentFormatDisk,LONG *pCurrentDiskPos,LONG *pFormatStatic); +NET_DVR_API BOOL __stdcall NET_DVR_CloseFormatHandle(LONG lFormatHandle); +//±¨¾¯ +NET_DVR_API LONG __stdcall NET_DVR_SetupAlarmChan(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_CloseAlarmChan(LONG lAlarmHandle); +NET_DVR_API LONG __stdcall NET_DVR_SetupAlarmChan_V30(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_CloseAlarmChan_V30(LONG lAlarmHandle); +//ÓïÒô¶Ô½² +NET_DVR_API LONG __stdcall NET_DVR_StartVoiceCom(LONG lUserID, void(CALLBACK *fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, DWORD dwUser), DWORD dwUser); +NET_DVR_API LONG __stdcall NET_DVR_StartVoiceCom_V30(LONG lUserID, DWORD dwVoiceChan, BOOL bNeedCBNoEncData, void(CALLBACK *fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetVoiceComClientVolume(LONG lVoiceComHandle, WORD wVolume); +NET_DVR_API BOOL __stdcall NET_DVR_StopVoiceCom(LONG lVoiceComHandle); +//ÓïÒôת·¢ +NET_DVR_API LONG __stdcall NET_DVR_StartVoiceCom_MR(LONG lUserID, void(CALLBACK *fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, DWORD dwUser), DWORD dwUser); +NET_DVR_API LONG __stdcall NET_DVR_StartVoiceCom_MR_V30(LONG lUserID, DWORD dwVoiceChan, void(CALLBACK *fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_VoiceComSendData(LONG lVoiceComHandle, char *pSendBuf, DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_GetCurrentAudioCompress(LONG lUserID, LPNET_DVR_COMPRESSION_AUDIO lpCompressAudio); +NET_DVR_API BOOL __stdcall NET_DVR_GetCurrentAudioCompress_V50(LONG lUserID, LPNET_DVR_AUDIO_CHANNEL lpAudioChannel, LPNET_DVR_COMPRESSION_AUDIO lpCompressAudio); +//ÓïÒô¹ã²¥ +NET_DVR_API BOOL __stdcall NET_DVR_ClientAudioStart(); +NET_DVR_API BOOL __stdcall NET_DVR_ClientAudioStart_V30(void(CALLBACK *fVoiceDataCallBack)(char *pRecvDataBuffer, DWORD dwBufSize, void * pUser), void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_ClientAudioStop(); +NET_DVR_API BOOL __stdcall NET_DVR_AddDVR(LONG lUserID); +NET_DVR_API LONG __stdcall NET_DVR_AddDVR_V30(LONG lUserID, DWORD dwVoiceChan); +NET_DVR_API BOOL __stdcall NET_DVR_DelDVR(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_DelDVR_V30(LONG lVoiceHandle); +//͸Ã÷ͨµÀÉèÖà +NET_DVR_API LONG __stdcall NET_DVR_SerialStart(LONG lUserID,LONG lSerialPort,void(CALLBACK *fSerialDataCallBack)(LONG lSerialHandle,char *pRecvDataBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); +//485×÷Ϊ͸Ã÷ͨµÀʱ£¬ÐèÒªÖ¸Ã÷ͨµÀºÅ£¬ÒòΪ²»Í¬Í¨µÀºÅ485µÄÉèÖÿÉÒÔ²»Í¬(±ÈÈ粨ÌØÂÊ) +NET_DVR_API LONG __stdcall NET_DVR_SerialStart_V40(LONG lUserID,void* lpInBuffer, LONG dwInBufferSize, void(CALLBACK *fSerialDataCallBack)(LONG lSerialHandle, LONG lCHannel, char *pRecvDataBuffer, DWORD dwBufSize, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SerialSend(LONG lSerialHandle, LONG lChannel, char *pSendBuf,DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_SerialStop(LONG lSerialHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SendTo232Port(LONG lUserID, char *pSendBuf, DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_SendToSerialPort(LONG lUserID, DWORD dwSerialPort, DWORD dwSerialIndex, char *pSendBuf, DWORD dwBufSize); + +#if (!defined __linux__) && (!defined _WIN64) +//Decoding nBitrate = 16000 +NET_DVR_API void* __stdcall NET_DVR_InitG722Decoder(int nBitrate = 16000); +NET_DVR_API BOOL __stdcall NET_DVR_DecodeG722Frame(void *pDecHandle, BYTE* pInBuffer, BYTE* pOutBuffer); +//Encoding +NET_DVR_API void* __stdcall NET_DVR_InitG722Encoder(); +NET_DVR_API BOOL __stdcall NET_DVR_EncodeG722Frame(void *pEncodeHandle, BYTE* pInBuffer, BYTE* pOutBuffer); +#elif ((defined __linux__) || (defined _WIN64)) +NET_DVR_API void* __stdcall NET_DVR_InitG722Decoder(); +NET_DVR_API BOOL __stdcall NET_DVR_DecodeG722Frame(void *handle, NET_DVR_AUDIODEC_PROCESS_PARAM * param); +//Encoding +NET_DVR_API void* __stdcall NET_DVR_InitG722Encoder(NET_DVR_AUDIOENC_INFO* enc_info); +NET_DVR_API BOOL __stdcall NET_DVR_EncodeG722Frame(void *handle, NET_DVR_AUDIOENC_PROCESS_PARAM* param); +#endif // _WIN32 +NET_DVR_API void __stdcall NET_DVR_ReleaseG722Decoder(void *pDecHandle); +NET_DVR_API void __stdcall NET_DVR_ReleaseG722Encoder(void *pEncodeHandle); + +//½âÂë +NET_DVR_API void* __stdcall NET_DVR_InitG726Decoder(void** pDecMoudle); +NET_DVR_API void __stdcall NET_DVR_ReleaseG726Decoder(void *pDecHandle); +NET_DVR_API BOOL __stdcall NET_DVR_DecodeG726Frame(void *pDecMoudle, BYTE* pInBuffer, BYTE* pOutBuffer, BYTE byReset); + +//±àÂë +NET_DVR_API void* __stdcall NET_DVR_InitG726Encoder(void** pEncMoudle); +NET_DVR_API BOOL __stdcall NET_DVR_EncodeG726Frame(void *pEncMoudle, BYTE* pInBuffer, BYTE* pOutBuffer, BYTE byReset); +NET_DVR_API void __stdcall NET_DVR_ReleaseG726Encoder(void *pEncHandle); + +//Ô¶³Ì¿ØÖƱ¾µØÏÔʾ +NET_DVR_API BOOL __stdcall NET_DVR_ClickKey(LONG lUserID, LONG lKeyIndex); + +NET_DVR_API BOOL __stdcall NET_DVR_DoorBellControl(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_Preview(LONG lUserID, LONG lPicNum); +NET_DVR_API BOOL __stdcall NET_DVR_PreviewOne(LONG lUserID, LONG lChannel); +NET_DVR_API BOOL __stdcall NET_DVR_PlayBackByNameLocDisplay(LONG lUserID, char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_PlayBackByTimeLocDisplay(LONG lUserID, LONG lChannel, NET_DVR_TIME const *lpStartTime, NET_DVR_TIME const *lpStopTime); +NET_DVR_API BOOL __stdcall NET_DVR_StopLocDisplayPlay(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_PlayControlLocDisplay(LONG lUserID, DWORD dwControlCode); +//Ô¶³Ì¿ØÖÆÉ豸¶ËÊÖ¶¯Â¼Ïñ +NET_DVR_API BOOL __stdcall NET_DVR_StartDVRRecord(LONG lUserID,LONG lChannel,LONG lRecordType); +NET_DVR_API BOOL __stdcall NET_DVR_StopDVRRecord(LONG lUserID,LONG lChannel); +//½âÂ뿨 +NET_DVR_API BOOL __stdcall NET_DVR_InitDevice_Card(long *pDeviceTotalChan); +NET_DVR_API BOOL __stdcall NET_DVR_ReleaseDevice_Card(); +NET_DVR_API BOOL __stdcall NET_DVR_InitDDraw_Card(HWND hParent,COLORREF colorKey); +NET_DVR_API BOOL __stdcall NET_DVR_ReleaseDDraw_Card(); +NET_DVR_API LONG __stdcall NET_DVR_RealPlay_Card(LONG lUserID,LPNET_DVR_CARDINFO lpCardInfo,long lChannelNum); +NET_DVR_API BOOL __stdcall NET_DVR_ResetPara_Card(LONG lRealHandle,LPNET_DVR_DISPLAY_PARA lpDisplayPara); +NET_DVR_API BOOL __stdcall NET_DVR_RefreshSurface_Card(); +NET_DVR_API BOOL __stdcall NET_DVR_ClearSurface_Card(); +NET_DVR_API BOOL __stdcall NET_DVR_RestoreSurface_Card(); +NET_DVR_API BOOL __stdcall NET_DVR_OpenSound_Card(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_CloseSound_Card(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetVolume_Card(LONG lRealHandle,WORD wVolume); +NET_DVR_API BOOL __stdcall NET_DVR_AudioPreview_Card(LONG lRealHandle,BOOL bEnable); +NET_DVR_API LONG __stdcall NET_DVR_GetCardLastError_Card(); +NET_DVR_API BOOL __stdcall NET_DVR_SetDspErrMsg_Card(DWORD dwMessage, HANDLE hWnd); +NET_DVR_API BOOL __stdcall NET_DVR_ResetDSP_Card(LONG iChannelNum); +NET_DVR_API HANDLE __stdcall NET_DVR_GetChanHandle_Card(LONG lRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_CapturePicture_Card(LONG lRealHandle, char *sPicFileName); +NET_DVR_API BOOL __stdcall NET_DVR_GetSerialNum_Card(long lChannelNum,DWORD *pDeviceSerialNo); +NET_DVR_API LONG __stdcall NET_DVR_FindDVRLog(LONG lUserID, LONG lSelectMode, DWORD dwMajorType,DWORD dwMinorType, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); +NET_DVR_API LONG __stdcall NET_DVR_FindNextLog(LONG lLogHandle, LPNET_DVR_LOG lpLogData); +NET_DVR_API BOOL __stdcall NET_DVR_FindLogClose(LONG lLogHandle); +NET_DVR_API LONG __stdcall NET_DVR_FindDVRLog_V30(LONG lUserID, LONG lSelectMode, DWORD dwMajorType,DWORD dwMinorType, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime, BOOL bOnlySmart = FALSE); +NET_DVR_API LONG __stdcall NET_DVR_FindNextLog_V30(LONG lLogHandle, LPNET_DVR_LOG_V30 lpLogData); +NET_DVR_API LONG __stdcall NET_DVR_FindDVRLog_V50(LONG lUserID, LPNET_DVR_FIND_LOG_COND pFindCond); +NET_DVR_API LONG __stdcall NET_DVR_FindNextLog_V50(LONG lLogHandle, LPNET_DVR_LOG_V50 lpLogData); +NET_DVR_API BOOL __stdcall NET_DVR_FindLogClose_V30(LONG lLogHandle); +NET_DVR_API LONG __stdcall NET_DVR_FindAlarmHostLog(LONG lUserID, LONG lSelectMode, NET_DVR_ALARMHOST_SEARCH_LOG_PARAM *lpSearchParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextAlarmHostLog(LONG lFindHandle, NET_DVR_ALARMHOST_LOG_RET *lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindAlarmHostLogClose(LONG lFindHandle); +NET_DVR_API LONG __stdcall NET_DVR_FindFile_PCNVR(LONG lUserID, LPNET_DVR_FILE_COND_PCNVR const pFindCond); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFile_PCNVR(LONG lFindHandle, LPNET_DVR_FINDDATA_PCNVR lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindClose_PCNVR(LONG lFindHandle); +NET_DVR_API LONG __stdcall NET_DVR_FindFileByCard(LONG lUserID,LONG lChannel,DWORD dwFileType, int nFindType, BYTE *sCardNumber, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); +NET_DVR_API BOOL __stdcall NET_DVR_CaptureJPEGPicture(LONG lUserID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, char *sPicFileName); +NET_DVR_API BOOL __stdcall NET_DVR_CaptureJPEGPicture_NEW(LONG lUserID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, char *sJpegPicBuffer, DWORD dwPicSize, LPDWORD lpSizeReturned); +NET_DVR_API BOOL __stdcall NET_DVR_CapturePicture_V50(LONG lUserID, LONG lChannel, LPNET_DVR_PICPARAM_V50 lpPicParam, char *sPicBuffer, DWORD dwPicSize, LPDWORD lpSizeReturned); +NET_DVR_API BOOL __stdcall NET_DVR_CaptureJPEGPicture_WithAppendData(LONG lUserID, LONG lChannel, NET_DVR_JPEGPICTURE_WITH_APPENDDATA *lpJpegWithAppend); +NET_DVR_API BOOL __stdcall NET_DVR_GetRealPlayOsdTime(LONG iRealHandle, LPNET_DVR_TIME lpOsdTime); +NET_DVR_API BOOL __stdcall NET_DVR_RealPlayPause(LONG iRealHandle); +NET_DVR_API BOOL __stdcall NET_DVR_RealPlayRestart(LONG iRealHandle, HWND hPlayWnd); +NET_DVR_API int __stdcall NET_DVR_GetRealPlayerIndex(LONG lRealHandle); +NET_DVR_API int __stdcall NET_DVR_GetPlayBackPlayerIndex(LONG lPlayHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetScaleCFG(LONG lUserID, DWORD dwScale); +NET_DVR_API BOOL __stdcall NET_DVR_GetScaleCFG(LONG lUserID, DWORD *lpOutScale); +NET_DVR_API BOOL __stdcall NET_DVR_SetScaleCFG_V30(LONG lUserID, LPNET_DVR_SCALECFG pScalecfg); +NET_DVR_API BOOL __stdcall NET_DVR_GetScaleCFG_V30(LONG lUserID, LPNET_DVR_SCALECFG pScalecfg); +NET_DVR_API BOOL __stdcall NET_DVR_SetATMPortCFG(LONG lUserID, WORD wATMPort); +NET_DVR_API BOOL __stdcall NET_DVR_GetATMPortCFG(LONG lUserID, WORD *LPOutATMPort); +NET_DVR_API BOOL __stdcall NET_DVR_InitDDrawDevice(); +NET_DVR_API BOOL __stdcall NET_DVR_ReleaseDDrawDevice(); +NET_DVR_API LONG __stdcall NET_DVR_GetDDrawDeviceTotalNums(); +NET_DVR_API BOOL __stdcall NET_DVR_SetDDrawDevice(LONG lPlayPort, DWORD nDeviceNum); + +NET_DVR_API BOOL __stdcall NET_DVR_PTZSelZoomIn(LONG lRealHandle, LPNET_DVR_POINT_FRAME pStruPointFrame); +NET_DVR_API BOOL __stdcall NET_DVR_PTZSelZoomIn_EX(LONG lUserID, LONG lChannel, LPNET_DVR_POINT_FRAME pStruPointFrame); +NET_DVR_API BOOL __stdcall NET_DVR_StartDecode(LONG lUserID, LONG lChannel, LPNET_DVR_DECODERINFO lpDecoderinfo); +NET_DVR_API BOOL __stdcall NET_DVR_StopDecode(LONG lUserID, LONG lChannel); +NET_DVR_API BOOL __stdcall NET_DVR_GetDecoderState(LONG lUserID, LONG lChannel, LPNET_DVR_DECODERSTATE lpDecoderState); +NET_DVR_API BOOL __stdcall NET_DVR_SetDecInfo(LONG lUserID, LONG lChannel, LPNET_DVR_DECCFG lpDecoderinfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetDecInfo(LONG lUserID, LONG lChannel, LPNET_DVR_DECCFG lpDecoderinfo); +NET_DVR_API BOOL __stdcall NET_DVR_SetDecTransPort(LONG lUserID, LPNET_DVR_PORTCFG lpTransPort); +NET_DVR_API BOOL __stdcall NET_DVR_GetDecTransPort(LONG lUserID, LPNET_DVR_PORTCFG lpTransPort); +NET_DVR_API BOOL __stdcall NET_DVR_DecPlayBackCtrl(LONG lUserID, LONG lChannel, DWORD dwControlCode, DWORD dwInValue,DWORD *LPOutValue, LPNET_DVR_PLAYREMOTEFILE lpRemoteFileInfo); +NET_DVR_API BOOL __stdcall NET_DVR_StartDecSpecialCon(LONG lUserID, LONG lChannel, LPNET_DVR_DECCHANINFO lpDecChanInfo); +NET_DVR_API BOOL __stdcall NET_DVR_StopDecSpecialCon(LONG lUserID, LONG lChannel, LPNET_DVR_DECCHANINFO lpDecChanInfo); +NET_DVR_API BOOL __stdcall NET_DVR_DecCtrlDec(LONG lUserID, LONG lChannel, DWORD dwControlCode); +NET_DVR_API BOOL __stdcall NET_DVR_DecCtrlScreen(LONG lUserID, LONG lChannel, DWORD dwControl); +NET_DVR_API BOOL __stdcall NET_DVR_GetDecCurLinkStatus(LONG lUserID, LONG lChannel, LPNET_DVR_DECSTATUS lpDecStatus); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStartDynamic(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DYNAMIC_DEC lpDynamicInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStopDynamic(LONG lUserID, DWORD dwDecChanNum); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDecChanInfo(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_INFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetLoopDecChanInfo(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopDecChanInfo(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetLoopDecChanEnable(LONG lUserID, DWORD dwDecChanNum, DWORD dwEnable); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopDecChanEnable(LONG lUserID, DWORD dwDecChanNum, LPDWORD lpdwEnable); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopDecEnable(LONG lUserID, LPDWORD lpdwEnable); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetDecChanEnable(LONG lUserID, DWORD dwDecChanNum, DWORD dwEnable); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDecChanEnable(LONG lUserID, DWORD dwDecChanNum, LPDWORD lpdwEnable); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDecChanStatus(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_STATUS lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetVideoStandard(LONG lUserID, DWORD dwDecChanNum, LPDWORD lpdwVideoStandard); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetVideoStandard(LONG lUserID, DWORD dwDecChanNum, DWORD dwVideoStandard); + +//2007-12-22 Ôö¼ÓÖ§³Ö½Ó¿Ú +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetTranInfo(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG lpTranInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetTranInfo(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG lpTranInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetRemotePlay(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_REMOTE_PLAY lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetRemotePlayControl(LONG lUserID, DWORD dwDecChanNum, DWORD dwControlCode, DWORD dwInValue, DWORD *LPOutValue); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetRemotePlayStatus(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS lpOuter); +//2009-4-13 ÐÂÔö +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStartDynamic_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PU_STREAM_CFG lpDynamicInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetLoopDecChanInfo_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopDecChanInfo_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDecChanInfo_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetTranInfo_V30(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 lpTranInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetTranInfo_V30(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 lpTranInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDisplayCfg(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG lpDisplayCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetDisplayCfg(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG lpDisplayCfg); + +NET_DVR_API LONG __stdcall NET_DVR_MatrixStartPassiveDecode(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_PASSIVEMODE lpPassiveMode /*, void(CALLBACK *fPassiveDataCallBack)(LONG lPassiveHandle, char * pSendBuf, DWORD dwBufSize, DWORD dwStatus, DWORD dwUser), DWORD dwUser*/); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSendData(LONG lPassiveHandle, char *pSendBuf, DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStopPassiveDecode(LONG lPassiveHandle); +NET_DVR_API BOOL __stdcall NET_DVR_UploadLogo(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_DISP_LOGOCFG lpDispLogoCfg, char *sLogoBuffer); +#define NET_DVR_SHOWLOGO 1 /*ÏÔʾLOGO*/ +#define NET_DVR_HIDELOGO 2 /*Òþ²ØLOGO*/ +NET_DVR_API BOOL __stdcall NET_DVR_LogoSwitch(LONG lUserID, DWORD dwDecChan, DWORD dwLogoSwitch); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDeviceStatus(LONG lUserID, LPNET_DVR_DECODER_WORK_STATUS lpDecoderCfg); + +#define DISP_CMD_ENLARGE_WINDOW 1 /*ÏÔʾͨµÀ·Å´óij¸ö´°¿Ú*/ +#define DISP_CMD_RENEW_WINDOW 2 /*ÏÔʾͨµÀ´°¿Ú»¹Ô­*/ +#define DISP_CMD_OPENAUDIO 3 /*ÏÔʾͨµÀ´ò¿ªÒôƵ*/ +#define DISP_CMD_CLOSEAUDIO 4 /*ÏÔʾͨµÀ¹Ø±ÕÒôƵ*/ + +NET_DVR_API BOOL __stdcall NET_DVR_MatrixDiaplayControl(LONG lUserID, DWORD dwDispChanNum, DWORD dwDispChanCmd, DWORD dwCmdParam); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixPassiveDecodeControl(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PASSIVEDECODE_CONTROL lpInter); +NET_DVR_API LONG __stdcall NET_DVR_MatrixGetPassiveDecodeStatus(LONG lPassiveHandle); + +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDecChanCfg(LONG lUserID, DWORD dwDecChan, LPNET_DVR_MATRIX_DECCHAN_CONTROL lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetDecChanCfg(LONG lUserID, DWORD dwDecChan, LPNET_DVR_MATRIX_DECCHAN_CONTROL lpInter); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByTime_NEW(LONG lUserID, LONG lChannel, NET_DVR_TIME const *lpStartTime, NET_DVR_TIME const *lpStopTime, LONG lLongitude, LONG lLatitude, HWND hWnd); +NET_DVR_API BOOL __stdcall NET_DVR_RefreshPlay(LONG lPlayHandle); + +//»Ö¸´Ä¬ÈÏÖµ +NET_DVR_API BOOL __stdcall NET_DVR_RestoreConfig(LONG lUserID); +//±£´æ²ÎÊý +NET_DVR_API BOOL __stdcall NET_DVR_SaveConfig(LONG lUserID); +//ÖØÆô +NET_DVR_API BOOL __stdcall NET_DVR_RebootDVR(LONG lUserID); +//¹Ø±ÕDVR +NET_DVR_API BOOL __stdcall NET_DVR_ShutDownDVR(LONG lUserID); + +//²ÎÊýÅäÖà begin +NET_DVR_API BOOL __stdcall NET_DVR_GetDVRConfig(LONG lUserID, DWORD dwCommand,LONG lChannel, LPVOID lpOutBuffer, DWORD dwOutBufferSize, LPDWORD lpBytesReturned); +NET_DVR_API BOOL __stdcall NET_DVR_SetDVRConfig(LONG lUserID, DWORD dwCommand,LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_GetDVRWorkState_V30(LONG lUserID, LPNET_DVR_WORKSTATE_V30 lpWorkState); +NET_DVR_API BOOL __stdcall NET_DVR_GetDVRWorkState(LONG lUserID, LPNET_DVR_WORKSTATE lpWorkState); +NET_DVR_API BOOL __stdcall NET_DVR_SetVideoEffect(LONG lUserID, LONG lChannel, DWORD dwBrightValue, DWORD dwContrastValue, DWORD dwSaturationValue, DWORD dwHueValue); +NET_DVR_API BOOL __stdcall NET_DVR_GetVideoEffect(LONG lUserID, LONG lChannel, DWORD *pBrightValue, DWORD *pContrastValue, DWORD *pSaturationValue, DWORD *pHueValue); +NET_DVR_API BOOL __stdcall NET_DVR_ClientGetframeformat(LONG lUserID, LPNET_DVR_FRAMEFORMAT lpFrameFormat); +NET_DVR_API BOOL __stdcall NET_DVR_ClientSetframeformat(LONG lUserID, LPNET_DVR_FRAMEFORMAT lpFrameFormat); +NET_DVR_API BOOL __stdcall NET_DVR_ClientGetframeformat_V30(LONG lUserID, LPNET_DVR_FRAMEFORMAT_V30 lpFrameFormat); +NET_DVR_API BOOL __stdcall NET_DVR_ClientSetframeformat_V30(LONG lUserID, LPNET_DVR_FRAMEFORMAT_V30 lpFrameFormat); +NET_DVR_API BOOL __stdcall NET_DVR_GetAtmFrameFormat_V30(LONG lUserID, LONG lAtmChannel, LPNET_DVR_ATM_FRAMEFORMAT_V30 lpFrameFormat); +NET_DVR_API BOOL __stdcall NET_DVR_SetAtmFrameFormat_V30(LONG lUserID, LONG lAtmChannel, LPNET_DVR_ATM_FRAMEFORMAT_V30 lpFrameFormat); +NET_DVR_API BOOL __stdcall NET_DVR_GetAtmProtocol(LONG lUserID, LPNET_DVR_ATM_PROTOCOL lpAtmProtocol); +NET_DVR_API BOOL __stdcall NET_DVR_GetAlarmOut_V30(LONG lUserID, LPNET_DVR_ALARMOUTSTATUS_V30 lpAlarmOutState); +NET_DVR_API BOOL __stdcall NET_DVR_GetAlarmOut(LONG lUserID, LPNET_DVR_ALARMOUTSTATUS lpAlarmOutState); +NET_DVR_API BOOL __stdcall NET_DVR_SetAlarmOut(LONG lUserID, LONG lAlarmOutPort,LONG lAlarmOutStatic); + +//ÊÓƵ²ÎÊýµ÷½Ú +NET_DVR_API BOOL __stdcall NET_DVR_ClientSetVideoEffect(LONG lRealHandle,DWORD dwBrightValue,DWORD dwContrastValue, DWORD dwSaturationValue,DWORD dwHueValue); +NET_DVR_API BOOL __stdcall NET_DVR_ClientGetVideoEffect(LONG lRealHandle,DWORD *pBrightValue,DWORD *pContrastValue, DWORD *pSaturationValue,DWORD *pHueValue); + +//ÅäÖÃÎļþ +NET_DVR_API BOOL __stdcall NET_DVR_GetConfigFile(LONG lUserID, char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_SetConfigFile(LONG lUserID, char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_GetConfigFile_V30(LONG lUserID, char *sOutBuffer, DWORD dwOutSize, DWORD *pReturnSize); + +NET_DVR_API BOOL __stdcall NET_DVR_GetConfigFile_EX(LONG lUserID, char *sOutBuffer, DWORD dwOutSize); +NET_DVR_API BOOL __stdcall NET_DVR_SetConfigFile_EX(LONG lUserID, char *sInBuffer, DWORD dwInSize); + +//ÆôÓÃÈÕÖ¾ÎļþдÈë½Ó¿Ú +NET_DVR_API BOOL __stdcall NET_DVR_SetLogToFile(DWORD nLogLevel = 0, char * strLogDir = NULL, BOOL bAutoDel = TRUE); +NET_DVR_API BOOL __stdcall NET_DVR_GetSDKState(LPNET_DVR_SDKSTATE pSDKState); +NET_DVR_API BOOL __stdcall NET_DVR_GetSDKAbility(LPNET_DVR_SDKABL pSDKAbl); +NET_DVR_API BOOL __stdcall NET_DVR_GetPTZProtocol(LONG lUserID, NET_DVR_PTZCFG *pPtzcfg); +NET_DVR_API BOOL __stdcall NET_DVR_GetPTZCtrl_Other(LONG iUserID, LONG iChannel); +NET_DVR_API BOOL __stdcall NET_DVR_GetPTZCtrl(LONG iRealHandle); +//Ç°Ãæ°åËø¶¨ +NET_DVR_API BOOL __stdcall NET_DVR_LockPanel(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_UnLockPanel(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_StartPanelKey(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_StopPanelKey(LONG lUserID); + +NET_DVR_API BOOL __stdcall NET_DVR_SetRtspConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_RTSPCFG lpInBuffer, DWORD dwInBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_GetRtspConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_RTSPCFG lpOutBuffer, DWORD dwOutBufferSize); + +//ÄÜÁ¦¼¯»ñÈ¡ +NET_DVR_API BOOL __stdcall NET_DVR_GetDeviceAbility(LONG lUserID, DWORD dwAbilityType, char* pInBuf, DWORD dwInLength, char* pOutBuf, DWORD dwOutLength); +NET_DVR_API BOOL __stdcall NET_DVR_SetSimAbilityPath(char * szSimAbilityPath, char *szSDCard); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSubSystemInfo(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetSubSystemInfo(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetCodeSplitter(LONG lUserID, DWORD dwCodeChan, LPNET_DVR_CODESPLITTERINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetCodeSplitter(LONG lUserID, DWORD dwCodeChan, LPNET_DVR_CODESPLITTERINFO lpInter); + +//ÖÇÄÜ +//ÉèÖÃ/»ñÈ¡²ÎÊý¹Ø¼ü×Ö +NET_DVR_API BOOL __stdcall NET_DVR_SetBehaviorParamKey(LONG lUserID, LONG lChannel, DWORD dwParameterKey,int nValue); +NET_DVR_API BOOL __stdcall NET_DVR_GetBehaviorParamKey(LONG lUserID, LONG lChannel, DWORD dwParameterKey,int *pValue); + +//»ñÈ¡/ÉèÖÃÐÐΪ·ÖÎöÄ¿±êµþ¼Ó½Ó¿Ú +NET_DVR_API BOOL __stdcall NET_DVR_GetVCADrawMode(LONG lUserID, LONG lChannel, LPNET_VCA_DRAW_MODE lpDrawMode); + + + +NET_DVR_API BOOL __stdcall NET_DVR_SetVCADrawMode(LONG lUserID, LONG lChannel, LPNET_VCA_DRAW_MODE lpDrawMode); + +//Çò»ú¸ú×ÙģʽÉèÖÃ½Ó¿Ú +NET_DVR_API BOOL __stdcall NET_DVR_SetTrackMode(LONG lUserID, LONG lChannel, LPNET_DVR_TRACK_MODE lpTrackMode); +NET_DVR_API BOOL __stdcall NET_DVR_GetTrackMode(LONG lUserID, LONG lChannel, LPNET_DVR_TRACK_MODE lpTrackMode); + +//ÖØÆôÖÇÄÜ¿â +NET_DVR_API BOOL __stdcall NET_VCA_RestartLib(LONG lUserID, LONG lChannel); + +NET_DVR_API BOOL __stdcall NET_DVR_SaveRealData_V30(LONG lRealHandle, DWORD dwTransType, char *sFileName); + +#if ((!defined __linux__) && (!defined _WIN64)) +NET_DVR_API BOOL __stdcall NET_DVR_EncodeG711Frame(DWORD iType, BYTE *pInBuffer, BYTE *pOutBuffer); +NET_DVR_API BOOL __stdcall NET_DVR_DecodeG711Frame(DWORD iType, BYTE *pInBuffer, BYTE *pOutBuffer); +#elif ((defined __linux__) || (defined _WIN64)) +NET_DVR_API BOOL __stdcall NET_DVR_EncodeG711Frame(LPVOID handle, NET_DVR_AUDIOENC_PROCESS_PARAM *p_enc_proc_param); +NET_DVR_API BOOL __stdcall NET_DVR_DecodeG711Frame(LPVOID handle, NET_DVR_AUDIODEC_PROCESS_PARAM *p_dec_proc_param); +NET_DVR_API LPVOID __stdcall NET_DVR_InitG711Decoder(); +NET_DVR_API LPVOID __stdcall NET_DVR_InitG711Encoder(NET_DVR_AUDIOENC_INFO *enc_info); +NET_DVR_API BOOL __stdcall NET_DVR_ReleaseG711Encoder(LPVOID pEncodeHandle); +NET_DVR_API BOOL __stdcall NET_DVR_ReleaseG711Decoder(LPVOID pDecHandle); +#endif //(defined _WIN32) + +NET_DVR_API LONG __stdcall NET_DVR_FindFileByEvent(LONG lUserID, LPNET_DVR_SEARCH_EVENT_PARAM lpSearchEventParam); +NET_DVR_API LONG __stdcall NET_DVR_FindFileByEvent_V40(LONG lUserID, LPNET_DVR_SEARCH_EVENT_PARAM_V40 lpSearchEventParam); +NET_DVR_API LONG __stdcall NET_DVR_FindFileByEvent_V50(LONG lUserID, LPNET_DVR_SEARCH_EVENT_PARAM_V50 lpSearchEventParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextEvent(LONG lSearchHandle, LPNET_DVR_SEARCH_EVENT_RET lpSearchEventRet); +NET_DVR_API LONG __stdcall NET_DVR_FindNextEvent_V40(LONG lSearchHandle, LPNET_DVR_SEARCH_EVENT_RET_V40 lpSearchEventRet); +NET_DVR_API LONG __stdcall NET_DVR_FindNextEvent_V50(LONG lFindHandle, LPNET_DVR_SEARCH_EVENT_RET_V50 lpSearchEventRet); +//Í£Ö¹²ÉÓà NET_DVR_FindClose + +NET_DVR_API LONG __stdcall NET_DVR_FindPDCInfo(LONG lUserID, LONG lChannel, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); +NET_DVR_API LONG __stdcall NET_DVR_FindNextPDCInfo(LONG lFindHandle,LPNET_DVR_PDC_QUERY lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindPDCClose(LONG lFindHandle); + +// ±ê¶¨Ð£Ñé +#define NET_DVR_PDC_VERIFY_CALIBRATION 1 //µ±ÖµÎª1ÊÇΪPDC±ê¶¨Ð£Ñé pdc´«ÈëֵΪNET_VCA_POINT ´«³öֵΪ NET_VCA_RECT½á¹¹ +#define NET_DVR_VERIFY_BEHAVIOR_CALIBRATION 2 // ÐÐΪ·ÖÎö±ê¶¨ÏßУÑé +#define NET_DVR_VERIFY_ITS_CALIBRATION 3 // ÖÇÄܽ»Í¨±ê¶¨Ð£Ñé +#define NET_DVR_VERIFY_BV_CALIBRATION 5 //Ë«Ä¿±ê¶¨Ð£Ñé + +NET_DVR_API BOOL __stdcall NET_DVR_VerifyCalibration(LONG lUserID, DWORD dwCommand, LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpOuterBuffer, DWORD dwOuterBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_ResetCounter(LONG lUserID,LONG lChannel); + +NET_DVR_API BOOL __stdcall NET_DVR_GetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); +NET_DVR_API BOOL __stdcall NET_DVR_SetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); +NET_DVR_API BOOL __stdcall NET_DVR_SetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); +NET_DVR_API BOOL __stdcall NET_DVR_GetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); +NET_DVR_API LONG __stdcall NET_DVR_FindNextLog_MATRIX(LONG lLogHandle, LPNET_DVR_LOG_MATRIX lpLogData); +NET_DVR_API LONG __stdcall NET_DVR_FindDVRLog_Matrix(LONG lUserID, LONG lSelectMode, DWORD dwMajorType, DWORD dwMinorType, LPNET_DVR_VEDIOPLATLOG lpVedioPlatLog, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); + +NET_DVR_API BOOL __stdcall NET_DVR_ManualSnap(LONG lUserID, NET_DVR_MANUALSNAP const* lpInter, LPNET_DVR_PLATE_RESULT lpOuter); +NET_DVR_API BOOL __stdcall NET_DVR_ContinuousShoot(LONG lUserID, LPNET_DVR_SNAPCFG lpInter); + +NET_DVR_API BOOL __stdcall NET_DVR_GetPTZProtocol_Ex(LONG lUserID, LONG lChannel, NET_DVR_PTZCFG *pPtzcfg); + +NET_DVR_API LONG __stdcall NET_DVR_StartEmailTest(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_StopEmailTest(LONG lEmailTestHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetEmailTestProgress(LONG lEmailTestHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_GetIPCProtoList(LONG lUserID, LPNET_DVR_IPC_PROTO_LIST lpProtoList); +NET_DVR_API BOOL __stdcall NET_DVR_GetIPCProtoList_V41(LONG lUserID, LPNET_DVR_IPC_PROTO_LIST_V41 lpProtoList); +NET_DVR_API LONG __stdcall NET_DVR_SmartSearch(LONG lUserID, LPNET_DVR_SMART_SEARCH_PARAM lpSmartSearchParam); +NET_DVR_API LONG __stdcall NET_DVR_SmartSearch_V40(LONG lUserID, LPNET_DVR_SMART_SEARCH_PARAM_V40 lpSmartSearchParam); +NET_DVR_API LONG __stdcall NET_DVR_SearchNextInfo(LONG lSearchHandle, LPNET_DVR_SMART_SEARCH_RET lpSmartSearchRet); +NET_DVR_API BOOL __stdcall NET_DVR_StopSearch(LONG lSearchHandle); + +// IP San ÎļþĿ¼²éÕÒ +NET_DVR_API LONG __stdcall NET_DVR_FindIpSanDirectory(LONG lUserID, LPNET_DVR_IPSAN_SERACH_PARAM lpIpsanSearchParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextDirectory(LONG lFindHandle, LPNET_DVR_IPSAN_SERACH_RET lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindDirectoryClose(LONG lFindHandle); + +typedef void (CALLBACK *REALDATACALLBACK) (LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser); + +NET_DVR_API LONG __stdcall NET_DVR_ZeroStartPlay(LONG lUserID, LPNET_DVR_CLIENTINFO lpClientInfo, REALDATACALLBACK fRealDataCallBack_V30 = NULL, void* pUser = NULL, BOOL bBlocked = TRUE); + +NET_DVR_API BOOL __stdcall NET_DVR_ZeroStopPlay(LONG lPlayHandle); +NET_DVR_API BOOL __stdcall NET_DVR_ZeroMakeKeyFrame(LONG lUserID, LONG lZeroChan); +NET_DVR_API BOOL __stdcall NET_DVR_PlayBackControl_V40(LONG lPlayHandle,DWORD dwControlCode, LPVOID lpInBuffer = NULL, DWORD dwInLen = 0, LPVOID lpOutBuffer = NULL, DWORD *lpOutLen = NULL); +NET_DVR_API BOOL __stdcall NET_DVR_ZeroTurnOver(LONG lUserID, LONG lChannel, BOOL bNextPreview); +NET_DVR_API LONG __stdcall NET_DVR_RealPlay_Card_V30(LONG lUserID, NET_DVR_CARDINFO const *lpCardInfo, LONG lChannelNum, DWORD dwMode, BOOL bBlock, REALDATACALLBACK fRealDataCallBack_V30, void* pUser); + + +NET_DVR_API BOOL __stdcall NET_DVR_GetDiskList(LONG lUserID, LPNET_DVR_DISKABILITY_LIST lpDiskList); +NET_DVR_API LONG __stdcall NET_DVR_Backup(LONG lUserID, DWORD dwBackupType, LPVOID lpBackupBuff, DWORD dwBackupBuffSize); +NET_DVR_API LONG __stdcall NET_DVR_BackupByName(LONG lUserID, LPNET_DVR_BACKUP_NAME_PARAM lpBackupByName); +NET_DVR_API LONG __stdcall NET_DVR_BackupByTime(LONG lUserID, LPNET_DVR_BACKUP_TIME_PARAM lpBackupBytime); +NET_DVR_API BOOL __stdcall NET_DVR_GetBackupProgress(LONG lHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_StopBackup(LONG lHandle); + +NET_DVR_API BOOL __stdcall NET_DVR_GetSadpInfoList(LONG lUserID, LPNET_DVR_SADPINFO_LIST lpSadpInfoList); +NET_DVR_API BOOL __stdcall NET_DVR_UpdateSadpInfo(LONG lUserID, LPNET_DVR_SADP_VERIFY lpSadpVerify, LPNET_DVR_SADPINFO lpSadpInfo); + +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSubDecSystemJoinInfo(LONG lUserID, LPNET_DVR_ALLDECSUBSYSTEMJOININFO lpInter); + +NET_DVR_API BOOL __stdcall NET_DVR_SetCodeSplitterAssociate(LONG lUserID, DWORD dwDecoderChan, DWORD dwSlotNum, LPNET_DVR_CODESPLITTERASSOCIATE lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_GetCodeSplitterAssociate(LONG lUserID, DWORD dwDecoderChan, DWORD dwSlotNum, LPNET_DVR_CODESPLITTERASSOCIATE lpInter); + +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetCDRWScheme(LONG lUserID, LPNET_DVR_INQUEST_CDRW_CFG lpCDRWCfg); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSetCDRWScheme(LONG lUserID, LPNET_DVR_INQUEST_CDRW_CFG lpCDRWCfg); +NET_DVR_API BOOL __stdcall NET_DVR_InquestDeleteFile(LONG lUserID, LPNET_DVR_INQUEST_FILES lpDeleteFile); +NET_DVR_API BOOL __stdcall NET_DVR_InquestCDWByFile(LONG lUserID, LPNET_DVR_INQUEST_FILES lpCdrwFile); +NET_DVR_API LONG __stdcall NET_DVR_InquestUploadFile(LONG lUserID, char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_InquestUploadClose(LONG lUploadHandle); +NET_DVR_API LONG __stdcall NET_DVR_InquestGetUploadState(LONG lUploadHandle, LPDWORD pProgress); +NET_DVR_API BOOL __stdcall NET_DVR_InquestStartCDW( LONG lUserID, BOOL bPause); +NET_DVR_API BOOL __stdcall NET_DVR_InquestStopCDW(LONG lUserID, BOOL bCancelWrite); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetCDWState(LONG lUserID, LPNET_DVR_INQUEST_CDRW_STATUS pStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetPIPStatus(LONG lUserID, LPNET_DVR_INQUEST_PIP_STATUS pStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSetPIPStatus(LONG lUserID, LPNET_DVR_INQUEST_PIP_STATUS pStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestCheckSecretKey(LONG lUserID, BOOL *bSecretSet); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSetSecretKey(LONG lUserID, LPNET_DVR_INQUEST_SECRET_INFO pSecretInfo); +NET_DVR_API BOOL __stdcall NET_DVR_InquestStreamEncrypt(LONG lUserID, LONG lChannel, BOOL bEncrypt); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetEncryptState(LONG lUserID, LONG lChannel, BOOL *bEncrypt); +NET_DVR_API LONG __stdcall NET_DVR_InquestFindFile(LONG lUserID); +NET_DVR_API LONG __stdcall NET_DVR_InquestFindNextFile(LONG lFindHandle, LPNET_DVR_INQUEST_FILEINFO lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_InquestFindClose(LONG lFindHandle); + +// 9000RH +NET_DVR_API LONG __stdcall NET_DVR_RaidFastConfig(LONG lUserID, char *sName); +NET_DVR_API BOOL __stdcall NET_DVR_FastConfigProcess(LONG lHandle, DWORD *pState); +NET_DVR_API BOOL __stdcall NET_DVR_CloseFastConfig(LONG lHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetArraySpaceAlloc(LONG lUserID, DWORD dwSlot, LPNET_DVR_ARRAY_SPACE_ALLOC_INFO lpOutBuf); +NET_DVR_API BOOL __stdcall NET_DVR_DelArray(LONG lUserID, DWORD dwID); +NET_DVR_API BOOL __stdcall NET_DVR_CreateArray(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam); +NET_DVR_API BOOL __stdcall NET_DVR_CalcArraySize(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam, UINT64* lpArraySize); +NET_DVR_API BOOL __stdcall NET_DVR_MigrateArray(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam); +NET_DVR_API BOOL __stdcall NET_DVR_RebuildArray(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam); +NET_DVR_API BOOL __stdcall NET_DVR_CreateVD(LONG lUserID, LPNET_DVR_OPERATE_VD_PARAM lpVDParam); +NET_DVR_API BOOL __stdcall NET_DVR_CreateVDEx(LONG lUserID, LPNET_DVR_OPERATE_VD_PARAM_EX lpVDParamEx); +NET_DVR_API BOOL __stdcall NET_DVR_DelVD(LONG lUserID, DWORD dwID); +NET_DVR_API BOOL __stdcall NET_DVR_RepairVD(LONG lUserID, DWORD dwID); +NET_DVR_API BOOL __stdcall NET_DVR_SetSpareDisk(LONG lUserID, LPNET_DVR_SPARE_DISK_PARAM lpSpareDisk); +NET_DVR_API BOOL __stdcall NET_DVR_GetPDList(LONG lUserID, LPNET_DVR_PHY_DISK_LIST lpPDList); +NET_DVR_API BOOL __stdcall NET_DVR_GetArrayList(LONG lUserID, LPNET_DVR_ARRAY_LIST lpArrayList); +NET_DVR_API BOOL __stdcall NET_DVR_GetVDList(LONG lUserID, LPNET_DVR_VD_LIST lpVDList); +NET_DVR_API LONG __stdcall NET_DVR_ExpandDisk(LONG lUserID,DWORD dwVDSLot); +NET_DVR_API BOOL __stdcall NET_DVR_GetExpandProgress(LONG lExpandHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_CloseExpandHandle(LONG lExpandHandle); +NET_DVR_API LONG __stdcall NET_DVR_AlgoDebugStart(LONG lUserID, LONG lCHannel, void(CALLBACK *fAlgoLibInfoCallBack)(LONG lHandle, LONG lChannel,char *pRecvDataBuffer, DWORD dwBufSize, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_AlgoDebugSend(LONG lHandle, LONG lChannel, char *pSendBuf, DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_AlgoDebugStop(LONG lHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetLogPrint(BOOL bLogPrint); +NET_DVR_API BOOL __stdcall NET_DVR_SetLogPrintAction(DWORD nLogLevel, DWORD nToDevice, BOOL bEnable, int Reserve1, int Reserve2); + +NET_DVR_API BOOL __stdcall NET_DVR_GetPositionRule(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG lpPositionRule); +NET_DVR_API BOOL __stdcall NET_DVR_GetPositionRule_V41(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG_V41 lpPositionRule); +NET_DVR_API BOOL __stdcall NET_DVR_SetPositionRule(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG lpPositionRule); +NET_DVR_API BOOL __stdcall NET_DVR_SetPositionRule_V41(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG_V41 lpPositionRule); +NET_DVR_API BOOL __stdcall NET_DVR_SetPositionLimitAngle(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); +NET_DVR_API BOOL __stdcall NET_DVR_GetPositionLimitAngle(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); +NET_DVR_API BOOL __stdcall NET_DVR_GetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); +NET_DVR_API BOOL __stdcall NET_DVR_SetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); +NET_DVR_API BOOL __stdcall NET_DVR_SetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); +NET_DVR_API BOOL __stdcall NET_DVR_GetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); +NET_DVR_API BOOL __stdcall NET_DVR_SetPatrolLimitAngle(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); +NET_DVR_API BOOL __stdcall NET_DVR_GetPatrolLimitAngle(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); +NET_DVR_API BOOL __stdcall NET_DVR_SetSceneMode(LONG lUserID, LONG lChannel, DWORD dwSceneMode); +NET_DVR_API BOOL __stdcall NET_DVR_GetSceneMode(LONG lUserID, LONG lChannel, DWORD *pSceneMode); +NET_DVR_API BOOL __stdcall NET_DVR_GetVCAVersion(LONG lUserID, LONG lChannel, LPNET_DVR_VCA_VERSION lpVersion); + +NET_DVR_API BOOL __stdcall NET_DVR_ContinuousShoot(LONG lUserID, LPNET_DVR_SNAPCFG lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixPicAdjust(LONG lUserID, DWORD dwDispChan, DWORD dwPicAdjust, DWORD dwCmdParam); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmJoinedRecord(LONG lUserID, DWORD dwChan, DWORD dwAlarmSeq, DWORD dwRecordTime, DWORD dwRes); +NET_DVR_API BOOL __stdcall NET_DVR_GetUnitedMatrixInfo(LONG lUserID, LPNET_DVR_UNITEDMATRIXINFO lpInter); +typedef LONG(CALLBACK * REGCallBack)(LONG lUserID, LPNET_DVR_REGCALLBACKPARAM pRegCallbackParam, LPNET_DVR_LOGONREPONSEPARAM pInterParam, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetRegisterCallBack(REGCallBack fRegCallBack, void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_PreviewRequest(LONG lUserID, LONG lChannel, LPNET_DVR_PREVIEWPARAM lpPreviewParam, LPNET_DVR_DEVICENATINFO lpOuter); +typedef LONG(CALLBACK * PREVIEWRESPONSECallBack)(LONG lUserID, LONG lStreamHandle, LPNET_DVR_PREVIEWCALLBACKPARAM pPewviewCallbackParam,void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPreviewResponseCallBack(PREVIEWRESPONSECallBack fPreviewResponseCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_PlaybackRequest(LONG lUserID, LPNET_DVR_PLAYBACKREQUESTPARAM lpPlayBackRequestParam); +typedef LONG(CALLBACK * PLAYBACKRESPONSECallBack)(LONG lUserID, LONG lPlaybackHandle, LPNET_DVR_PLAYBACKCALLBACKPARAM lpPlaybackParam,void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPlaybackResponseCallBack(PLAYBACKRESPONSECallBack fPlaybackResponseCallBack, void *pUser); +typedef LONG(CALLBACK * VOICERESPONSECallBack)(LONG lUserID, LONG lVoiceHandle, LONG lVoiceChannel, BYTE nAudioType, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetVoiceResponseCallBack(VOICERESPONSECallBack fVoiceResponseCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_VoiceRequest(LONG lUserID, LPNET_DVR_VOICEREQUESTPARAM lpVoiceParam); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmSetupRequest(LONG lUserID, LPNET_DVR_ALARMSETUPREQUESTPARAM lpAlarmSetupParam); +NET_DVR_API BOOL __stdcall NET_DVR_GetDialParam(LONG lUserID, LPNET_DVR_DIALREQUEST lpDialRequest, LPNET_DVR_DIALPARAM lpDialParam); +NET_DVR_API BOOL __stdcall NET_DVR_SetDialParam(LONG lUserID, LPNET_DVR_DIALREQUEST lpDialRequest, LPNET_DVR_DIALPARAM lpDialParam); +NET_DVR_API BOOL __stdcall NET_DVR_GetSmsListInfo(LONG lUserID, LPNET_DVR_TIME_EX lpStartTime, LPNET_DVR_TIME_EX lpStopTime, LPNET_DVR_SMSLISTINFO lpSmsListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetSmsContent(LONG lUserID, DWORD dwSmsIndex, LPNET_DVR_SMSCONTENT lpSmsContent); +NET_DVR_API BOOL __stdcall NET_DVR_SendSms(LONG lUserID, LPNET_DVR_SMSCONTENT lpSmsContent); +NET_DVR_API LONG __stdcall NET_DVR_StartServer(char *sLocalIP, WORD wLocalPort, BYTE byMode); +NET_DVR_API BOOL __stdcall NET_DVR_StopServer(LONG lServerHandle); +NET_DVR_API LONG __stdcall NET_DVR_StartRecvNakedDataListen(NAKED_DATA_TYPE type, LPNET_DVR_NAKED_DATA_PARAM pParams); +NET_DVR_API BOOL __stdcall NET_DVR_StopRecvNakedDataListen(LONG lNakedDataRecvHandle); +typedef void(CALLBACK * NAKEDDAtACALLBACK)(DWORD typeInfo, char *pInfo, DWORD dwInfoLen,DWORD dwIPLen, void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetNakedDataRecvCallBack(LONG lNakedDataRecvHandle, void(CALLBACK *fNakedDataCallBack)(DWORD dwTypeInfo, NET_DVR_NAKED_DATA_INFO *pStruNakedDataInfo, char *pInfo, DWORD dwInfoLen, void* pUser), void* pUser); + +typedef LONG(CALLBACK * ALARMSETUPRESPONSECallBack)(LONG lUserID, LONG lAlarmHandle, void * pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetAlarmSetupResponseCallBack(ALARMSETUPRESPONSECallBack fAlarmSetupResponseCallBack, void * pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SpringJPEGPicture(LONG lUserID, LONG lChannel, NET_DVR_PUSHJPEGPARA const *lpJpegPara); +NET_DVR_API BOOL __stdcall NET_DVR_SetPushModeParam(LPNET_DVR_PUSHMODEPARAM pPushParam); + +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostSetupAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostCloseAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_BypassAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_UnBypassAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostAssistantControl(LONG lUserID, DWORD dwType, DWORD dwNumber, DWORD dwCmdParam); +NET_DVR_API BOOL __stdcall NET_DVR_SetAirCondition(LONG lUserID, LONG l485Index, NET_DVR_AIR_CONDITION_PARAM* lpAirConditionParam); +NET_DVR_API BOOL __stdcall NET_DVR_GetAirCondition(LONG lUserID, LONG l485Index, NET_DVR_AIR_CONDITION_PARAM* lpAirConditionParam); +NET_DVR_API BOOL __stdcall NET_DVR_GetDeviceTypeList(LONG lUserID, NET_DVR_DEVICE_TYPE_LIST *lpDeviceTypeList); +NET_DVR_API BOOL __stdcall NET_DVR_GetDeviceProtoList(LONG lUserID, LONG lDeviceType, NET_DVR_DEVICE_PROTO_LIST *lpDeviceProtoList); +NET_DVR_API BOOL __stdcall NET_DVR_GetBatteryVoltage(LONG lUserID, float *pVoltage); +NET_DVR_API BOOL __stdcall NET_DVR_SetAlarmDeviceUser(LONG lUserID, LONG lUserIndex, NET_DVR_ALARM_DEVICE_USER* lpDeviceUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetAlarmDeviceUser(LONG lUserID, LONG lUserIndex, NET_DVR_ALARM_DEVICE_USER* lpDeviceUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetKeyboardUser(LONG lUserID, LONG lUserIndex, NET_DVR_KEYBOARD_USER* lpKeyboardUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetKeyboardUser(LONG lUserID, LONG lUserIndex, NET_DVR_KEYBOARD_USER* lpKeyboardUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetOperateUser(LONG lUserID, LONG lUserIndex, NET_DVR_OPERATE_USER* lpOperateUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetOperateUser(LONG lUserID, LONG lUserIndex, NET_DVR_OPERATE_USER* lpOperateUser); +NET_DVR_API BOOL __stdcall NET_DVR_ControlGateway(LONG lUserID, LONG lGatewayIndex, DWORD dwStaic); +NET_DVR_API BOOL __stdcall NET_DVR_SetAlarmHostOut(LONG lUserID, LONG lAlarmOutPort, LONG lAlarmOutStatic); +typedef void(CALLBACK *fAlarmHostSerialDataCallBack) +(LONG lSerialHandle, LONG lPort, LONG lDateType, char *pRecvDataBuffer, DWORD dwBufSize,void *pUser); +NET_DVR_API LONG __stdcall NET_DVR_AlarmHostSerialStart(LONG lUserID, LONG lSerialType, fAlarmHostSerialDataCallBack cbSerialDataCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostSerialSend(LONG lSerialHandle,LONG lPort,char *pSendBuf,DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostSerialStop(LONG lSerialHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetMatrixPuChan(LONG lUserID, LONG lChanType, NET_DVR_PU_CHAN_LIST* lpChanList); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAlarmOffMonitor(LONG lUserID, DWORD dwMonID, DWORD dwCamID); +NET_DVR_API BOOL __stdcall NET_DVR_GetCameraListInfo(LONG lUserID, DWORD dwCamNum, DWORD dwStartCam, LPNET_DVR_MATRIX_CAMERALIST lpCamListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetMonitorListInfo(LONG lUserID, DWORD dwMonNum, DWORD dwStartMon, LPNET_DVR_MATRIX_MONITORLIST lpMonListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetGlobalNum(LONG lUserID, DWORD *dwCamNum, DWORD *dwMonNum); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetUnitedMatrixInfo(LONG lUserID, LPNET_DVR_ALLUNITEDMATRIXINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetUnitedMatrixInfo(LONG lUserID, LPNET_DVR_ALLUNITEDMATRIXINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetGatewayInfo(LONG lUserID, LPNET_DVR_MATRIXGATEWAYINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetGatewayInfo(LONG lUserID, LPNET_DVR_MATRIXGATEWAYINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSpanSwitch(LONG lUserID, BYTE nSwitchMode, LPNET_DVR_MATRIXSWITCH lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStartSwitch(LONG lUserID, LPNET_DVR_MATRIXSWITCHCTRL lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetConfigFile(LONG lUserID, LPNET_DVR_MATRIXDATABASE lpInter, char *sInBuffer, DWORD dwInSize); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetConfigFile(LONG lUserID, LPNET_DVR_MATRIXDATABASE lpInter, char *sOutBuffer, DWORD dwOutSize, DWORD *pReturnSize); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSubSystemInfo_V40(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO_V40 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetSubSystemInfo_V40(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO_V40 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSubDecSystemJoinInfo_V40(LONG lUserID, LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V40 lpInter); +typedef void (CALLBACK *FLOWTESTCALLBACK)(LONG lFlowHandle, LPNET_DVR_FLOW_INFO pFlowInfo, void *pUser); +NET_DVR_API LONG __stdcall NET_DVR_StartNetworkFlowTest(LONG lUserID, NET_DVR_FLOW_TEST_PARAM* pFlowTest, FLOWTESTCALLBACK fFlowTestCallback, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_StopNetworkFlowTest(LONG lHandle); +NET_DVR_API LONG __stdcall NET_DVR_FindRecordLabel(LONG lUserID, LPNET_DVR_FIND_LABEL lpFindLabel); +NET_DVR_API LONG __stdcall NET_DVR_FindNextLabel(LONG lFindHandle, LPNET_DVR_FINDLABEL_DATA lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_StopFindLabel(LONG lFindHandle); +NET_DVR_API BOOL __stdcall NET_DVR_InsertRecordLabel(LONG lPlayHandle, NET_DVR_RECORD_LABEL* lpRecordLabel, NET_DVR_LABEL_IDENTIFY *lpLableIdentify); +NET_DVR_API BOOL __stdcall NET_DVR_DelRecordLabel(LONG lUserID, NET_DVR_DEL_LABEL_PARAM* lpDelLabelParam); +NET_DVR_API BOOL __stdcall NET_DVR_ModifyRecordLabel(LONG lUserID, NET_DVR_MOD_LABEL_PARAM * lpModLabelParam); +NET_DVR_API BOOL __stdcall NET_DVR_CapturePlaybackPictureBlock(LONG lPlayHandle, char *sPicFileName, DWORD dwTimeOut); +NET_DVR_API BOOL __stdcall NET_DVR_CapturePlaybackPictureBlock_New(LONG lPlayHandle, char *pPicBuf, DWORD dwPicSize, DWORD *lpSizeReturned); +NET_DVR_API LONG __stdcall NET_DVR_FindPicture(LONG lUserID, NET_DVR_FIND_PICTURE_PARAM* pFindParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextPicture(LONG lFindHandle,LPNET_DVR_FIND_PICTURE lpFindData); +NET_DVR_API LONG __stdcall NET_DVR_FindNextPicture_V40(LONG lFindHandle,LPNET_DVR_FIND_PICTURE_V40 lpFindData); +NET_DVR_API LONG __stdcall NET_DVR_FindNextPicture_V50(LONG lFindHandle, LPNET_DVR_FIND_PICTURE_V50 lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_CloseFindPicture(LONG lFindHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetPicture(LONG lUserID,char *sDVRFileName,const char *sSavedFileName); +NET_DVR_API BOOL __stdcall NET_DVR_GetPicture_V30(LONG lUserID, char *sDVRFileName, char *sSavedFileBuf, DWORD dwBufLen, DWORD *lpdwRetLen); +NET_DVR_API BOOL __stdcall NET_DVR_GetPicture_V50(LONG lUserID, LPNET_DVR_PIC_PARAM lpPicParam); +NET_DVR_API LONG __stdcall NET_DVR_BackupPicture(LONG lUserID, NET_DVR_BACKUP_PICTURE_PARAM *lpBackupPicture); +NET_DVR_API LONG __stdcall NET_DVR_GetUpgradeStep(LONG lUpgradeHandle, LONG *pSubProgress); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetEncodeJoint(LONG lUserID, LONG lChannel, LPNET_DVR_ENCODE_JOINT_PARAM lpEncodeJoint); +NET_DVR_API BOOL __stdcall NET_DVR_GetLocalIP(char strIP[16][16], DWORD *pValidNum, BOOL *pEnableBind); +NET_DVR_API BOOL __stdcall NET_DVR_SetValidIP(DWORD dwIPIndex, BOOL bEnableBind); +NET_DVR_API BOOL __stdcall NET_DVR_GetLocalIPv6(BYTE strIP[16][16], DWORD *pValidNum, BOOL *pEnableBind); +NET_DVR_API BOOL __stdcall NET_DVR_SetValidIPv6(DWORD dwIPIndex, BOOL bEnableBind); +NET_DVR_API BOOL __stdcall NET_DVR_GetVcaDevWorkState(LONG lUserID, LPNET_DVR_VCA_DEV_WORKSTATUS lpWorkState); +NET_DVR_API BOOL __stdcall NET_DVR_SetRecvTimeOut(DWORD nRecvTimeOut = 5000); //×îС3000ºÁÃë +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDisplayCfg_V40(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG_V40 lpDisplayCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetDisplayCfg_V40(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG_V40 lpDisplayCfg); +NET_DVR_API BOOL __stdcall NET_DVR_ShutterCompensation(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_CorrectDeadPixel(LONG lUserID, LONG lChannel, LPNET_DVR_CORRECT_DEADPIXEL_PARAM lpInParam); +NET_DVR_API BOOL __stdcall NET_DVR_CustomConfig(LONG lUserID, LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpOutBuffer, DWORD dwOutBufferSize, LPDWORD lpBytesReturned); +NET_DVR_API BOOL __stdcall NET_DVR_GetHistoricDataInfo(LONG lUserID, LONG lChannel, LPNET_DVR_HISTORICDATACFG lpHisData); +NET_DVR_API BOOL __stdcall NET_DVR_GetHistoricData(LONG lUserID, LONG lChannel, LPNET_DVR_PLATE_RESULT lpOuter); +NET_DVR_API BOOL __stdcall NET_DVR_ClearHistoricData(LONG lUserID, LONG lChannel); +NET_DVR_API BOOL __stdcall NET_VPD_SetShutter(LONG lUserID, LONG lChannel, LPNET_VPD_SHUTTER lpShutter); +NET_DVR_API BOOL __stdcall NET_VPD_SendPicture(LONG lUserID, DWORD dwFields, BYTE const *sImageBuffer, DWORD dwWidth, DWORD dwHeight); +NET_DVR_API LONG __stdcall NET_DVR_InquestUploadFile_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, char *sFileName); +NET_DVR_API BOOL __stdcall NET_DVR_InquestDeleteFile_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_FILES lpDeleteFile); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetPIPStatus_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS lpStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSetPIPStatus_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS lpStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetPIPStatus_V40(LONG lUserID, NET_DVR_INQUEST_ROOM const *lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS_V40 lpStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSetPIPStatus_V40(LONG lUserID, NET_DVR_INQUEST_ROOM const *lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS_V40 lpStatus); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetSystemInfo(LONG lUserID, LPNET_DVR_INQUEST_SYSTEM_INFO lpSystemInfo); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSetSystemInfo(LONG lUserID, LPNET_DVR_INQUEST_SYSTEM_INFO lpSystemInfo); +NET_DVR_API BOOL __stdcall NET_DVR_InquestSendMessage(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_MESSAGE lpInquestMessage); +NET_DVR_API BOOL __stdcall NET_DVR_InquestStartCDW_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, BOOL bNotBurn); +NET_DVR_API BOOL __stdcall NET_DVR_InquestStopCDW_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, BOOL bCancelWrite); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetCDWState_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_CDRW_STATUS pStatus); +NET_DVR_API LONG __stdcall NET_DVR_InquestResumeEvent(LONG lUserID, LPNET_DVR_INQUEST_RESUME_EVENT lpResumeEvent); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetResumeProgress(LONG lHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_InquestStopResume(LONG lHandle); +NET_DVR_API LONG __stdcall NET_DVR_InquestFindFile_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM pInquestRoom); +NET_DVR_API BOOL __stdcall NET_DVR_InquestGetDeviceVersion(LONG lUserID, LPNET_DVR_INQUEST_DEVICE_VERSION lpVersionInfo); +NET_DVR_API BOOL __stdcall NET_DVR_SetSDKSecretKey(LONG lUserID, char *sSecretKey); +NET_DVR_API BOOL __stdcall NET_DVR_LockFileByTime(LONG lUserID, LPNET_DVR_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); +NET_DVR_API BOOL __stdcall NET_DVR_UnlockFileByTime(LONG lUserID, LPNET_DVR_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); +NET_DVR_API BOOL __stdcall NET_DVR_ScreenZoomIn(LONG lUserID, LPNET_DVR_SCREENZOOM pStruScreen); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetAllCameraInfo(LONG lUserID, LPNET_DVR_MATRIX_CAMERALIST lpCamListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSingleCameraInfo(LONG lUserID, DWORD dwCameraId, LPNET_MATRIX_CAMERAINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAddCamera(LONG lUserID, DWORD dwCameraNum, BYTE *pBuffer, DWORD dwBufLength); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixModCameraInfo(LONG lUserID, LPNET_MATRIX_CAMERAINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixDelCamera(LONG lUserID, DWORD dwCameraId); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetAllMonitorInfo(LONG lUserID, LPNET_DVR_MATRIX_MONITORLIST lpMonListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSingleMonitorInfo(LONG lUserID, DWORD dwMonitorId, LPNET_MATRIX_MONITORINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAddMonitor(LONG lUserID, DWORD dwMonitorNum, BYTE *pBuffer, DWORD dwBufLength); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixModMonitorInfo(LONG lUserID, LPNET_MATRIX_MONITORINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixDelMonitor(LONG lUserID, DWORD dwMonitorId); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetAllMatrixInfo(LONG lUserID, LPNET_DVR_MATRIXLIST lpMatrixListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetSingleMatrixInfo(LONG lUserID, DWORD dwMatrixId, LPNET_MATRIX_MATRIXINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_AddMatrix(LONG lUserID, LPNET_MATRIX_MATRIXINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_ModMatrixInfo(LONG lUserID, LPNET_MATRIX_MATRIXINFO lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_DelMatrix(LONG lUserID, DWORD dwMatrixId); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetUartParam(LONG lUserID, DWORD dwSerialChan, LPNET_MATRIX_UARTPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetUartParam(LONG lUserID, DWORD dwSerialChan , LPNET_MATRIX_UARTPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetUserInfo(LONG lUserID, DWORD dwUserNum, LPNET_MATRIX_USERPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAddUser(LONG lUserID, DWORD dwUserNum, LPNET_MATRIX_USERPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixModUserInfo(LONG lUserID, DWORD dwUserNum, LPNET_MATRIX_USERPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixDelUser(LONG lUserID, DWORD dwUserNum); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetResourceInfo(LONG lUserID, DWORD dwResourceNum, LPNET_MATRIX_RESOURSEGROUPPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAddResourceInfo(LONG lUserID, DWORD dwResourceNum, LPNET_MATRIX_RESOURSEGROUPPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixModResourceInfo(LONG lUserID, DWORD dwResourceNum, LPNET_MATRIX_RESOURSEGROUPPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixDelResourceInfo(LONG lUserID, DWORD dwResourceNum); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetUserGroupInfo(LONG lUserID, DWORD dwUserGroupNum, LPNET_MATRIX_USERGROUPPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAddUserGroupInfo(LONG lUserID, DWORD dwUserGroupNum, LPNET_MATRIX_USERGROUPPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixModUserGroupInfo(LONG lUserID, DWORD dwUserGroupNum, LPNET_MATRIX_USERGROUPPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixDelUserGroup (LONG lUserID, DWORD dwUserGroupNum); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetAllTrunkInfo(LONG lUserID, LPNET_DVR_MATRIX_TRUNKLIST lpTrunkListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetTrunkInfo(LONG lUserID, DWORD dwTrunkNum, LPNET_MATRIX_TRUNKPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAddTrunk(LONG lUserID, LPNET_MATRIX_TRUNKPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixModTrunkInfo(LONG lUserID, LPNET_MATRIX_TRUNKPARAM lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixTrunkCtrl(LONG lUserID, DWORD dwTrunkNum, BYTE byCtrlMode); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixTrunkStatusQuery(LONG lUserID, DWORD dwTrunkNum, BYTE *byTrunkStatus); + +NET_DVR_API BOOL __stdcall NET_DVR_FindBackgroundPic(LONG lUserID, DWORD dwPicID, BYTE *pPicBuffer, DWORD *lpPicLen); +NET_DVR_API BOOL __stdcall NET_DVR_DetectImage(LONG lUserID, LPNET_VCA_FD_PROCIMG_CFG lpFDProcImg,LPNET_VCA_FD_PROCIMG_RESULT lpOutBuf); +NET_DVR_API BOOL __stdcall NET_DVR_GetPictureModel(LONG lUserID, LPNET_VCA_REGISTER_PIC lpInBuf, LPNET_VCA_PICMODEL_RESULT lpOutBuf); +NET_DVR_API BOOL __stdcall NET_DVR_AddBlockList(LONG lUserID,LONG lChannel,LPNET_VCA_BLOCKLIST_PARA lpInter); +NET_DVR_API LONG __stdcall NET_DVR_FindBlockList(LONG lUserID, LPNET_VCA_BLOCKLIST_COND lpBlockListCond); +NET_DVR_API LONG __stdcall NET_DVR_FindNextBlockList(LONG lFindHandle,LPNET_VCA_BLOCKLIST_INFO lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindBlockListClose(LONG lFindHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetBlockListPicture(LONG lUserID, DWORD dwRegisterID, LPNET_VCA_BLOCKLIST_PIC lpOutBuffer); +NET_DVR_API BOOL __stdcall NET_DVR_UpdateBlockList(LONG lUserID,LONG lChannel, LPNET_VCA_BLOCKLIST_PARA lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_DelBlockList(LONG lUserID,LONG lChannel, DWORD dwRegisterID); +NET_DVR_API LONG __stdcall NET_DVR_FindSnapPicture(LONG lUserID, LPNET_VCA_FIND_PICTURECOND lpFindParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextSnapPic(LONG lFindHandle,LPNET_VCA_SUB_SNAPPIC_DATA lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_FindSnapPicClose(LONG lFindHandle); +NET_DVR_API LONG __stdcall NET_DVR_AdvanceFindSnapPicture(LONG lUserID, LPNET_VCA_FIND_PICTURECOND_ADVANCE lpFindParam); +NET_DVR_API LONG __stdcall NET_DVR_FindFaceMatchAlarm(LONG lUserID, LPNET_VCA_FIND_PICTURECOND lpFindParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextFaceMatchAlarm(LONG lFindHandle, LPNET_VCA_FACESNAP_MATCH_ALARM_LOG lpFaceMatchAlarmLog); +NET_DVR_API BOOL __stdcall NET_DVR_FindFaceMatchAlarmClose(LONG lFindHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetFaceMatchPic(LONG lUserID, LPNET_VCA_FACEMATCH_PICCOND lpMatchCond, LPNET_VCA_FACEMATCH_PICTURE lpMatchPic); +NET_DVR_API BOOL __stdcall NET_DVR_FastAddBlockList(LONG lUserID,LONG lChannel,LPNET_VCA_BLOCKLIST_FASTREGISTER_PARA lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetRemotePlay_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDisplayCfg_V41(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_MATRIX_VOUTCFG lpVoutCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetDisplayCfg_V41(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_MATRIX_VOUTCFG lpDisplayCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDeviceStatus_V41(LONG lUserID, LPNET_DVR_DECODER_WORK_STATUS_V41 lpDecoderCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSceneCfg(LONG lUserID, DWORD dwSceneNum, LPNET_DVR_MATRIX_SCENECFG lpSceneCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetSceneCfg(LONG lUserID, DWORD dwSceneNum, LPNET_DVR_MATRIX_SCENECFG lpSceneCfg); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSceneControl(LONG lUserID, DWORD dwSceneNum, DWORD dwCmd, DWORD dwCmdParam); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetCurrentSceneMode(LONG lUserID, DWORD *dwSceneNum); +NET_DVR_API BOOL __stdcall NET_DVR_GetAllValidWinInfo(LONG lUserID, LPNET_DVR_WINLIST lpWinListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_ScreenWinCtrl(LONG lUserID, DWORD dwWinIndex, DWORD dwCommand, LPNET_DVR_SCREEN_WINCFG lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_GetScreenInputStatus(LONG lUserID, LPNET_DVR_SCREENINPUTSTATUS lpStatus); +NET_DVR_API LONG __stdcall NET_DVR_PicUpload(LONG lUserID, char const *sFileName, LPNET_DVR_PICTURECFG lpPictureCfg); +NET_DVR_API LONG __stdcall NET_DVR_GetPicUploadProgress(LONG lUploadHandle); +NET_DVR_API BOOL __stdcall NET_DVR_CloseUploadHandle(LONG lUploadHandle); +NET_DVR_API BOOL __stdcall NET_DVR_PicControl(LONG lUserID, BYTE byUseType, BYTE byPicIndex, BYTE byCtrlCmd); +NET_DVR_API LONG __stdcall NET_DVR_GetPicUploadState(LONG lUploadHandle); +NET_DVR_API BOOL __stdcall NET_DVR_ScreenCtrl(LONG lUserID, DWORD dwDeviceNum, LPNET_DVR_SCREEN_CONTROL lpStruScreenCtrl); +typedef void (CALLBACK *SCREENPICDATACB)(LONG nScreenPicHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void *pUser); +NET_DVR_API LONG __stdcall NET_DVR_StartScreenPic(LONG nUserID, DWORD nInputNum, SCREENPICDATACB PicDataCallback, void *pUserData); +NET_DVR_API BOOL __stdcall NET_DVR_StopScreenPic(LONG nScreenPicHandle); +NET_DVR_API BOOL __stdcall NET_DVR_FocusOnePush(LONG lUserID, LONG lChannel); +NET_DVR_API BOOL __stdcall NET_DVR_ResetLens(LONG lUserID, LONG lChannel); + +typedef void(CALLBACK *fRemoteConfigCallback)(DWORD dwType, void* lpBuffer, DWORD dwBufLen, void* pUserData); +NET_DVR_API LONG __stdcall NET_DVR_StartRemoteConfig(LONG lUserID, DWORD dwCommand, LPVOID lpInBuffer, DWORD dwInBufferLen, fRemoteConfigCallback cbStateCallback, LPVOID pUserData); +NET_DVR_API BOOL __stdcall NET_DVR_StopRemoteConfig(LONG lHandle); +NET_DVR_API LONG __stdcall NET_DVR_GetNextRemoteConfig(LONG lHandle, void* lpOutBuff, DWORD dwOutBuffSize); +NET_DVR_API BOOL __stdcall NET_DVR_GetRemoteConfigState(LONG lHandle, void *pState); +NET_DVR_API BOOL __stdcall NET_DVR_SendRemoteConfig(LONG lHandle, DWORD dwDataType, char *pSendBuf, DWORD dwBufSize); +NET_DVR_API LONG __stdcall NET_DVR_SendWithRecvRemoteConfig(LONG lHandle, void* lpInBuff, DWORD dwInBuffSize, void* lpOutBuff, DWORD dwOutBuffSize, DWORD *dwOutDataLen); + +typedef void(CALLBACK *fLongCfgStateCallback)(LONG lHandle, DWORD dwState, LPVOID pUserData); +NET_DVR_API BOOL __stdcall NET_DVR_CloseLongCfgHandle(LONG lHandle); +NET_DVR_API LONG __stdcall NET_DVR_RaidPullDiskStart(LONG lUserID, LONG lRaidID, fLongCfgStateCallback cbStateCallback, LPVOID pUserData); +NET_DVR_API LONG __stdcall NET_DVR_ScanRaidStart(LONG lUserID, fLongCfgStateCallback cbStateCallback, LPVOID pUserData); +NET_DVR_API LONG __stdcall NET_DVR_SetAccessCameraInfo(LONG lUserID, DWORD dwChannel, LPNET_DVR_ACCESS_CAMERA_INFO lpCameraInfo, fLongCfgStateCallback cbStateCallback, LPVOID pUserData); + +NET_DVR_API BOOL __stdcall NET_DVR_InquiryRecordTimeSpan(LONG lUserID, DWORD dwChannel, NET_DVR_RECORD_TIME_SPAN_INQUIRY const *lpInquiry, LPNET_DVR_RECORD_TIME_SPAN lpResult); +NET_DVR_API BOOL __stdcall NET_DVR_UpdateRecordIndex(LONG lUserID, DWORD dwChannel); +NET_DVR_API BOOL __stdcall NET_DVR_GetUpnpNatState(LONG lUserID, LPNET_DVR_UPNP_NAT_STATE lpState); + +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopPlanArray(LONG lUserID, DWORD dwArrayNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetLoopPlanArray(LONG lUserID, DWORD dwArrayNum, NET_DVR_MATRIX_LOOP_DECINFO_V30 const *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetAlarmShowMode(LONG lUserID, LPNET_DVR_ALARMMODECFG lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetAlarmShowMode(LONG lUserID, NET_DVR_ALARMMODECFG const *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStartDynamicAssociateDecode(LONG lUserID, DWORD dwDecChanNum, NET_DVR_DYNAMICDECODE const *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAlarmTurn(LONG lUserID, DWORD dwDecChanNum, DWORD dwTurnParam); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixAlarmShowControl(LONG lUserID, DWORD dwDecChanNum, DWORD dwShowMode); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetPlanDecode(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PLANDECODE lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetPlanDecode(LONG lUserID, DWORD dwDecChanNum, NET_DVR_PLANDECODE const *lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetLoopDecChanInfo_EX(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_EX lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopDecChanInfo_EX(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_EX lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStartDynamic_EX(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PU_STREAM_CFG_EX lpDynamicInfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetTrunkListInfo(LONG lUserID, DWORD dwTrunkNum, DWORD dwStartTrunk, LPNET_DVR_MATRIX_TRUNKLIST lpTrunkListInfo, DWORD *pReturnSize); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetSubDecSystemJoinInfo_V41(LONG lUserID, LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V41 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostSubSystemSetupAlarmChan(LONG lUserID, DWORD dwSubSystemNum); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostSubSystemCloseAlarmChan(LONG lUserID, DWORD dwSubSystemNum); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostClearAlarm(LONG lUserID, DWORD dwSubSystemNum); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostArrayBypass(LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostArrayBypassResume (LONG lUserID); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostSetReportMode(LONG lUserID, LONG lCenterNum, LPVOID lpInputBuf, DWORD dwInputBufLen); +NET_DVR_API BOOL __stdcall NET_DVR_AlarmHostGetReportMode(LONG lUserID, LPVOID lpOutputBuf, DWORD dwOutputBufLen); +NET_DVR_API LONG __stdcall NET_DVR_StartUploadAudio(LONG lUserID, DWORD dwAudioNum, DWORD dwAudioType, char const *sAudioFileName); +NET_DVR_API LONG __stdcall NET_DVR_StartDownloadAudio(LONG lUserID, DWORD dwAudioNum, char const *sAudioFileName); +NET_DVR_API BOOL __stdcall NET_DVR_StopAudioOperate(LONG lAudioHandle); +NET_DVR_API LONG __stdcall NET_DVR_GetAudioProgress(LONG lAudioHandle); +NET_DVR_API BOOL __stdcall NET_DVR_AudioCtrl(LONG lUserID, DWORD dwAudioNum, DWORD dwCtrlParam); +NET_DVR_API BOOL __stdcall NET_DVR_GetDeviceConfig(LONG lUserID, DWORD dwCommand, DWORD dwCount, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpStatusList, LPVOID lpOutBuffer, DWORD dwOutBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_SetDeviceConfig(LONG lUserID, DWORD dwCommand, DWORD dwCount, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpStatusList, LPVOID lpInParamBuffer, DWORD dwInParamBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_LockStreamFileByTime(LONG lUserID, LPNET_DVR_STREAM_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); +NET_DVR_API BOOL __stdcall NET_DVR_UnlockStreamFileByTime(LONG lUserID, LPNET_DVR_STREAM_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); +NET_DVR_API BOOL __stdcall NET_DVR_StartManualRecord(LONG lUserID, LPNET_DVR_MANUAL_RECORD_PARA lpManualRecPara); +NET_DVR_API BOOL __stdcall NET_DVR_StopManualRecord(LONG lUserID, LPNET_DVR_STREAM_INFO pIDInfo); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackReverseByName(LONG lUserID, char *sPlayBackFileName, HWND hWnd); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByTime_V40(LONG lUserID, NET_DVR_VOD_PARA const* pVodPara); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackByTime_V50(LONG lUserID, NET_DVR_VOD_PARA_V50 const* pVodPara); +NET_DVR_API LONG __stdcall NET_DVR_PlayBackReverseByTime_V40(LONG lUserID, HWND hWnd, LPNET_DVR_PLAYCOND pPlayCond); +NET_DVR_API LONG __stdcall NET_DVR_GetFileByTime_V40(LONG lUserID, char *sSavedFileName, LPNET_DVR_PLAYCOND pDownloadCond); +NET_DVR_API LONG __stdcall NET_DVR_FindFile_V40(LONG lUserID, LPNET_DVR_FILECOND_V40 pFindCond); +NET_DVR_API LONG __stdcall NET_DVR_SetupAlarmChan_V41(LONG lUserID, LPNET_DVR_SETUPALARM_PARAM lpSetupParam); +NET_DVR_API BOOL __stdcall NET_DVR_AddDataBase(LONG lUserID, LPNET_VCA_DATABASE_PARAM lpInBuf); +NET_DVR_API LONG __stdcall NET_DVR_FindDataBase(LONG lUserID, LPNET_VCA_FIND_DATABASE_COND lpInBuf); +NET_DVR_API LONG __stdcall NET_DVR_FindNextDataBase(LONG lFindHandle, LPNET_VCA_DATABASE_PARAM lpOutBuf); +NET_DVR_API BOOL __stdcall NET_DVR_FindDataBaseClose(LONG lFindHandle); +NET_DVR_API BOOL __stdcall NET_DVR_UpdateDataBase(LONG lUserID, LPNET_VCA_DATABASE_PARAM lpInBuf); +NET_DVR_API BOOL __stdcall NET_DVR_DeleteDataBase(LONG lUserID, LPNET_VCA_DELETE_DATABASE_COND lpCond); +typedef void(CALLBACK *fSearchDBCallBack)(LONG lHandle, DWORD dwType, DWORD dwResultNum, BYTE* pBuffer, DWORD dwBufSize,void *pUser); +NET_DVR_API LONG __stdcall NET_DVR_InquireSnapDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_INQUIRE_SNAPDB_COND lpInBuf, fSearchDBCallBack cbSearchDBCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetInquireSnapDBProgress(LONG lInquireHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_DeleteSnapDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DELETE_SNAPRECORD_COND lpInBuf); +NET_DVR_API LONG __stdcall NET_DVR_SearchSnapDB(LONG lUserID, LPNET_VCA_SEARCH_SNAPDB_COND lpInBuf, fSearchDBCallBack cbSearchDBCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetSearchSnapDBProgress(LONG lSearchHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_AddFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DATARECORD_INFO lpInBuf); +NET_DVR_API BOOL __stdcall NET_DVR_FastAddFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_FAST_DATARECORD_INFO lpInBuf); +NET_DVR_API LONG __stdcall NET_DVR_InquireFaceDBRecord(LONG lUserID, LPNET_VCA_DATARECORD_COND lpInBuf,fSearchDBCallBack cbInquireDBCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetInquireFaceDBProgress(LONG lInquireHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_UpdateFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DATARECORD_INFO lpInBuf); +NET_DVR_API BOOL __stdcall NET_DVR_DeleteFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DELETE_RECORD_COND lpInBuf); +typedef void(CALLBACK *fSearchDBCallBack)(LONG lSearchHandle, DWORD dwType, DWORD dwResultNum, BYTE* pBuffer, DWORD dwBufSize,void *pUser); +NET_DVR_API LONG __stdcall NET_DVR_SearchFaceDB(LONG lUserID, LPNET_VCA_SEARCH_FACEDB_COND lpInBuf,fSearchDBCallBack cbSearchDBCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_GetSearchFaceDBProgress(LONG lSearchHandle, DWORD* pState); +NET_DVR_API BOOL __stdcall NET_DVR_StopSearchDB(LONG lHandle); +NET_DVR_API BOOL __stdcall NET_DVR_FindMatchPicture(LONG lUserID, LPNET_VCA_FIND_MATCHPIC_COND lpFindCond, LPNET_VCA_FIND_MATCHPIC_RESULT lpFindResult); +NET_DVR_API BOOL __stdcall NET_DVR_RemoteControl(LONG lUserID, DWORD dwCommand, LPVOID lpInBuffer, DWORD dwInBufferSize); +NET_DVR_API LONG __stdcall NET_DVR_GetBMPByTime(LONG lUserID, LONG lChannel, NET_DVR_TIME const *lpTime, char const *sFilename); +NET_DVR_API BOOL __stdcall NET_DVR_CommandDevice(LONG lUserID, DWORD dwOutCommand, LPVOID lpInBuffer, DWORD dwInBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_TestDVRAlive(LONG lUserID); + +NET_DVR_API BOOL __stdcall NET_DVR_PicViewRequest(LONG lUserID, NET_DVR_PIC_VIEW_PARAM *lpPicViewParam); +typedef LONG (CALLBACK *PicViewCallBack)(LPNET_DVR_PICVIEW_CALLBACKPARAM pStruPicViewParam, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPicViewResponseCallBack(PicViewCallBack fPicViewResponseCallBack, void *pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetPicViewDataCallBack(LONG lPicViewHandle, SCREENPICDATACB fPicDataCallback, void *pUserData); +NET_DVR_API BOOL __stdcall NET_DVR_GetDevList(LONG lUserID, LPNET_DVR_DEVLIST lpDevListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_GetScreenList(LONG lUserID, LPNET_DVR_SCREENLIST lpScreenListInfo); +NET_DVR_API BOOL __stdcall NET_DVR_SetScreenRelation(LONG lUserID, NET_DVR_DISP_SCREEN const* lpScreenInfo); +NET_DVR_API BOOL __stdcall NET_DVR_TextShowCtrl(LONG lUserID, DWORD dwDeviceIndex, LPNET_DVR_TEXTSHOW lpText); +NET_DVR_API LONG __stdcall NET_DVR_StartUpgrade(LONG lUserID, LPNET_DVR_OPERATE_DEVICE lpStruOperate, DVCS_UPGRADESTATE_CB UpgradeStateCallback, void *pUserData); +NET_DVR_API BOOL __stdcall NET_DVR_StopUpgrade(LONG lUserID, LPNET_DVR_OPERATE_DEVICE lpStruOperate, LONG lUpgradeHandle); +NET_DVR_API BOOL __stdcall NET_DVR_AddNetSignal(LONG lUserID, LPNET_DVR_NETSIGNAL_INFO lpStruSignal, void* lpOutBuf , DWORD dwBufLen); +NET_DVR_API LONG __stdcall NET_DVR_StartPicPreview(LONG lUserID, NET_DVR_START_PIC_VIEW_INFO const* lpStruStartPicView, SCREENPICDATACB PicDataCallback, void *pUserData); +NET_DVR_API BOOL __stdcall NET_DVR_GetDeviceStatus(LONG lUserID, DWORD dwCommand, DWORD dwCount, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpStatusList, LPVOID lpOutBuffer, DWORD dwOutBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_GetPlanList(LONG lUserID, DWORD dwDevNum, LPNET_DVR_PLAN_LIST lpPlanList); +NET_DVR_API BOOL __stdcall NET_DVR_GetInputSignalList(LONG lUserID, DWORD dwDevNum, LPNET_DVR_INPUT_SIGNAL_LIST lpInputSignalList); +NET_DVR_API BOOL __stdcall NET_DVR_GetInputSignalList_V40(LONG lUserID, DWORD dwDevNum, LPNET_DVR_INPUT_SIGNAL_LIST lpInputSignalList); + +NET_DVR_API LONG __stdcall NET_DVR_UploadFile(LONG lUserID, DWORD dwUploadType, LPVOID lpInBuffer, DWORD dwInBufferSize, char* sFileName); +NET_DVR_API LONG __stdcall NET_DVR_UploadFile_V40(LONG lUserID, DWORD dwUploadType, LPVOID lpInBuffer, DWORD dwInBufferSize, char const * sFileName, LPVOID lpOutBuffer, DWORD dwOutBufferSize); +NET_DVR_API LONG __stdcall NET_DVR_GetUploadState(LONG lUploadHandle, LPDWORD pProgress); +NET_DVR_API BOOL __stdcall NET_DVR_GetUploadResult(LONG lUploadHandle, LPVOID lpOutBuffer, DWORD dwOutBufferSize); +NET_DVR_API BOOL __stdcall NET_DVR_UploadClose(LONG lUploadHandle); +NET_DVR_API LONG __stdcall NET_DVR_StartUploadFile(LONG lUserID, LPNET_DVR_UPLOAD_PARAM lpStruUploadParam); +NET_DVR_API LONG __stdcall NET_DVR_GetUploadFileProgress(LONG lFileHandle); +NET_DVR_API LONG __stdcall NET_DVR_GetUploadFileState(LONG lFileHandle); +NET_DVR_API BOOL __stdcall NET_DVR_StopUploadFile (LONG lFileHandle); +NET_DVR_API LONG __stdcall NET_DVR_StartDownloadFile(LONG lUserID, LPNET_DVR_DOWNLOAD_PARAM lpStruDownloadParam); +NET_DVR_API LONG __stdcall NET_DVR_GetDownloadFileProgress(LONG lFileHandle); +NET_DVR_API LONG __stdcall NET_DVR_GetDownloadFileState(LONG lFileHandle); +NET_DVR_API BOOL __stdcall NET_DVR_StopDownloadFile (LONG lFileHandle); +NET_DVR_API BOOL __stdcall NET_DVR_DownloadControl(LONG lDownloadHandle, NET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM enumDownloadType, void* lpInBuffer, DWORD dwInBufferLen, void* lpOutBuffer, DWORD dwOutBufferLen); +NET_DVR_API LONG __stdcall NET_DVR_UploadSend(LONG lUploadHandle, const NET_DVR_SEND_PARAM_IN *pstruSendParamIN, void* lpOutBuffer); + + +NET_DVR_API BOOL __stdcall NET_DVR_GetMobileDevStatus(LONG lUserID, DWORD dwStatusType, LPNET_DVR_MB_MOBILEDEV_STATUS lpstruMobileDevStatus); +NET_DVR_API BOOL __stdcall NET_DVR_SetVoiceDataCallBack(LONG lVoiceComHandle, BOOL bNeedCBNoEncData, void(CALLBACK *fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetTransparentParam(LONG lUserID, char *sInBuffer, DWORD dwInSize); +NET_DVR_API BOOL __stdcall NET_DVR_GetTransparentParam(LONG lUserID, char *sInBuffer, DWORD dwInSize, char *sOutBuffer, DWORD dwOutSize); + +NET_DVR_API BOOL __stdcall NET_DVR_SetSDKLocalConfig(LPNET_DVR_SDKLOCAL_CFG lpSdkLocalCfg); +NET_DVR_API BOOL __stdcall NET_DVR_GetSDKLocalConfig(LPNET_DVR_SDKLOCAL_CFG lpSdkLocalCfg); + +NET_DVR_API BOOL __stdcall NET_DVR_SetSDKLocalCfg(NET_SDK_LOCAL_CFG_TYPE enumType, const void *lpInBuff); +NET_DVR_API BOOL __stdcall NET_DVR_GetSDKLocalCfg(NET_SDK_LOCAL_CFG_TYPE enumType, void* lpOutBuff); + +NET_DVR_API LONG __stdcall NET_DVR_OpticalUpgrade(LONG lUserID, char const *sFileName, LPNET_DVR_OPTICAL_INFO lpOpticalInfo); +typedef void(CALLBACK *fGPSDataCallback)(LONG nHandle, DWORD dwState, void* lpBuffer, DWORD dwBufLen, void* pUserData); +NET_DVR_API LONG __stdcall NET_DVR_GetVehicleGpsInfo(LONG nUserID, LPNET_DVR_GET_GPS_DATA_PARAM lpGPSDataParam, fGPSDataCallback cbGPSDataCallback, void* pUser); + +NET_DVR_API BOOL __stdcall NET_DVR_ClosePreview(LONG lUserID, DWORD nSessionID); +NET_DVR_API BOOL __stdcall NET_DVR_ClosePlayBack(LONG lUserID, DWORD nSessionID); +NET_DVR_API LONG __stdcall NET_DVR_RealPlay_V40(LONG lUserID, LPNET_DVR_PREVIEWINFO lpPreviewInfo, REALDATACALLBACK fRealDataCallBack_V30 = NULL, void* pUser = NULL); +NET_DVR_API LONG __stdcall NET_DVR_RealPlaySpecial(LONG lUserID, LPNET_DVR_PREVIEWINFO_SPECIAL lpPreviewInfo, REALDATACALLBACK fRealDataCallBack_V30 = NULL, void* pUser = NULL); +NET_DVR_API BOOL __stdcall NET_DVR_GetLinkAddr(LONG lLinkHandle, NET_DVR_LINK_KIND enumLinkKind, LPNET_DVR_LINK_ADDR lpLinkAddr); + +NET_DVR_API LONG __stdcall NET_DVR_StartDownload(LONG lUserID, DWORD dwDownloadType, LPVOID lpInBuffer, DWORD dwInBufferSize, const char *sFileName); +NET_DVR_API LONG __stdcall NET_DVR_GetDownloadState(LONG lDownloadHandle, LPDWORD pProgress); +NET_DVR_API int __stdcall NET_DVR_GetDownloadStateInfo(LONG lDownloadHandle, void* pStatusInfo); +NET_DVR_API BOOL __stdcall NET_DVR_StopDownload(LONG lHandle); + +NET_DVR_API BOOL __stdcall NET_DVR_MatrixStartDynamic_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PU_STREAM_CFG_V41 lpDynamicInfo); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetLoopDecChanInfo_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V41 lpOuter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixSetLoopDecChanInfo_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V41 lpInter); +NET_DVR_API BOOL __stdcall NET_DVR_MatrixGetDecChanInfo_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_INFO_V41 lpOuter); + +NET_DVR_API LONG __stdcall NET_DVR_StartT1Test(LONG lUserID, LPNET_DVR_ALARMHOST_DOWNLOAD_PARAM lpStruDownloadParam); +NET_DVR_API BOOL __stdcall NET_DVR_StopTT1Test(BOOL lHandle); +NET_DVR_API BOOL __stdcall NET_DVR_GetT1TestStatus(LONG lHandle, LONG *pStatus); +NET_DVR_API BOOL __stdcall NET_DVR_SendT1TestData(LONG lHandle, DWORD dwDataType, char *pSendBuf, DWORD dwSendBufLen); + +NET_DVR_API BOOL __stdcall NET_DVR_UploadLogo_NEW(LONG lUserID, DWORD dwLogoNo, LPNET_DVR_MATRIX_LOGO_INFO lpLogoInfo, char *sLogoBuffer); +NET_DVR_API BOOL __stdcall NET_DVR_DownloadLogo(LONG lUserID, DWORD dwLogoNo, LPNET_DVR_MATRIX_LOGO_INFO lpLogoInfo, char *sLogoBuffer, DWORD dwLogoBufferSize); +NET_DVR_API LONG __stdcall NET_DVR_StartPassiveTransCode(LONG lUserID, NET_DVR_STREAM_INFO const *pStreamInfo, NET_DVR_COMPRESSIONCFG_V30 const *pDstTransInfo, NET_DVR_PASSIVETRANSINFO const *pPassiveTransInfo, void(CALLBACK *fTransCodeDataCallBack) (LONG lPassiveHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser) = NULL, void* pUser = NULL); +NET_DVR_API BOOL __stdcall NET_DVR_TransCodeInputData(LONG lPassiveHandle, BYTE *pBuffer, DWORD dwBufSize); +NET_DVR_API BOOL __stdcall NET_DVR_StopPassiveTransCode(LONG lPassiveHandle); +NET_DVR_API LONG __stdcall NET_DVR_GetPassiveTransChanNum(LONG lPassiveHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetDeviceConfigEx(LONG lUserID, DWORD dwCommand, DWORD dwCount, NET_DVR_IN_PARAM *lpInParam, NET_DVR_OUT_PARAM *lpOutParam); + +NET_DVR_API BOOL __stdcall NET_DVR_GetSTDConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_STD_CONFIG lpConfigParam); +NET_DVR_API BOOL __stdcall NET_DVR_SetSTDConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_STD_CONFIG lpConfigParam); +NET_DVR_API BOOL __stdcall NET_DVR_GetSTDAbility(LONG lUserID, DWORD dwAbilityType, LPNET_DVR_STD_ABILITY lpAbilityParam); +NET_DVR_API BOOL __stdcall NET_DVR_STDControl(LONG lUserID, DWORD dwCommand, LPNET_DVR_STD_CONTROL lpControlParam); +NET_DVR_API BOOL __stdcall NET_DVR_STDXMLConfig(LONG lUserID, NET_DVR_XML_CONFIG_INPUT* lpInputParam, NET_DVR_XML_CONFIG_OUTPUT* lpOutputParam); +NET_DVR_API LONG __stdcall NET_DVR_Upgrade_V40(DWORD lUserID, DWORD dwUpgradeType, char const *sFileName, void *pInbuffer, DWORD dwBufferLen); +NET_DVR_API LONG __stdcall NET_DVR_Upgrade_V50(DWORD lUserID, LPNET_DVR_UPGRADE_PARAM lpUpgradeParam); + +NET_DVR_API BOOL __stdcall NET_DVR_DetectImage_V50(LONG lUserID, LPNET_VCA_FD_PROCIMG_CFG lpFDProcImg,LPNET_VCA_FD_PROCIMG_RESULT_V50 lpOutBuf); + +NET_DVR_API LONG __stdcall NET_DVR_SmartSearchPicture(LONG lUserID, NET_DVR_SMART_SEARCH_PIC_PARA * pFindParam); +NET_DVR_API LONG __stdcall NET_DVR_FindNextSmartPicture(LONG lFindHandle,LPNET_DVR_SMART_SEARCH_PIC_RET lpFindData); +NET_DVR_API BOOL __stdcall NET_DVR_CloseSmartSearchPicture(LONG lFindHandle); +NET_DVR_API BOOL __stdcall NET_DVR_SetESCallBack(LONG iRealHandle, void (__stdcall *fnESCallback)(LONG lPreviewHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_SetESRealPlayCallBack(LONG iRealHandle, void(__stdcall *fPlayESCallBack)(LONG lPreviewHandle, NET_DVR_PACKET_INFO_EX *pstruPackInfo, void* pUser), void* pUser); +NET_DVR_API BOOL __stdcall NET_DVR_ActivateDevice(char* sDVRIP, WORD wDVRPort, LPNET_DVR_ACTIVATECFG lpActivateCfg); +NET_DVR_API BOOL __stdcall NET_DVR_GetAddrInfoByServer(DWORD dwQueryType, void* pInBuf, DWORD dwInBufLen, void* pOutBuf, DWORD dwOutBufLen); +NET_DVR_API BOOL __stdcall NET_DVR_StartGetDevState(LPNET_DVR_CHECK_DEV_STATE pParams); +NET_DVR_API BOOL __stdcall NET_DVR_StopGetDevState(); +NET_DVR_API BOOL __stdcall NET_DVR_RigisterPlayBackDrawFun(LONG lPlayHandle, void (__stdcall *fDrawFun)(LONG lPlayHandle, HDC hDc, DWORD dwUser), DWORD dwUser); + +NET_DVR_API BOOL __stdcall NET_DVR_SetSDKInitCfg(NET_SDK_INIT_CFG_TYPE enumType, void* const lpInBuff); +NET_DVR_API BOOL __stdcall NET_DVR_ReleaseSDKMemPool(LPNET_DVR_SDKMEMPOOL_CFG lpSdkMemPoolCfg); + +NET_DVR_API BOOL __stdcall NET_DVR_CapturePictureBlock(LONG iRealHandle, char const *sPicFileName, DWORD dwTimeOut); + + +NET_DVR_API BOOL __stdcall NET_DVR_CapturePictureBlock_New(LONG iRealHandle, char *pPicBuf, DWORD dwPicSize, DWORD *lpSizeReturned); + +NET_DVR_API BOOL __stdcall NET_DVR_ChangeWndResolution(LONG iRealHandle); + +NET_DVR_API LONG __stdcall NET_DVR_SDKChannelToISAPI(LONG lUserID, LONG lInChannel, BOOL bSDKToISAPI); + +NET_DVR_API BOOL __stdcall NET_DVR_STDXMLConfig_Conv(LONG lUserID, NET_DVR_XML_CONFIG_INPUT* lpInputParam, NET_DVR_XML_CONFIG_OUTPUT* lpOutputParam); + +NET_DVR_API BOOL __stdcall NET_DVR_SetDevXmlLen(LONG lUserID, const WORD wDevXmlLen); + +NET_DVR_API LONG __stdcall NET_DVR_SetupAlarmChan_V50(LONG iUserID, LPNET_DVR_SETUPALARM_PARAM_V50 lpSetupParam, char *pSub, DWORD dwSubSize); + +NET_DVR_API BOOL __stdcall NET_DVR_GetAlarmSubscribe(LONG lAlarmHandle, char *pData, DWORD dwDataLen); + +NET_DVR_API BOOL __stdcall NET_DVR_SetAlarmSubscribe(LONG lAlarmHandle, char *pData, DWORD dwDataLen); + +NET_DVR_API BOOL __stdcall NET_DVR_GetNPQStat(LONG lHandle, NET_SDK_NPQ_STATE* pStruStat); + +NET_DVR_API BOOL __stdcall NET_DVR_SetNPQNotifyParam(LONG lHandle, NET_SDK_NPQ_NOTIFY_PARAM* pNotifyParam); + +NET_DVR_API BOOL __stdcall NET_DVR_PlaybackGetNPQStat(LONG lHandle, NET_SDK_NPQ_STATE* pStruStat); +NET_DVR_API BOOL __stdcall NET_DVR_RenderPrivateData(LONG lRealHandle, int iIntelType, BOOL bTrue); +NET_DVR_API BOOL __stdcall NET_DVR_RenderPrivateDataEx(LONG lRealHandle, int iIntelType, int iSubType, BOOL bTrue); + +NET_DVR_API BOOL __stdcall NET_DVR_PlaybackSetNPQNotifyParam(LONG lHandle, NET_SDK_NPQ_NOTIFY_PARAM* pNotifyParam); + +NET_DVR_API BOOL __stdcall NET_DVR_EnableRelogon(BOOL bEnable, DWORD dwReserved); + +NET_DVR_API LONG __stdcall NET_DVR_CreateEzvizUser(LPNET_DVR_EZVIZ_USER_LOGIN_INFO pLoginInfo, LPNET_DVR_DEVICEINFO_V30 pDeviceInfo); +NET_DVR_API BOOL __stdcall NET_DVR_DeleteEzvizUser(LONG iUserID); + +NET_DVR_API LONG __stdcall NET_DVR_CreateOpenEzvizUser(LPNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO pLoginInfo, LPNET_DVR_DEVICEINFO_V40 pDeviceInfo); +NET_DVR_API BOOL __stdcall NET_DVR_DeleteOpenEzvizUser(LONG iUserID); + +NET_DVR_API BOOL __stdcall NET_DVR_LoadAdditionalLib(ADDITIONAL_LIB libType, char const *sDllName); + +#endif // + diff --git a/include/HkStreamer.h b/include/HkStreamer.h new file mode 100644 index 0000000..38a884d --- /dev/null +++ b/include/HkStreamer.h @@ -0,0 +1,38 @@ +#ifndef _HK_STREAMER_ +#define _HK_STREAMER_ + +// // #ifdef __LINUX__ +// typedef unsigned char UCHAR; +// typedef unsigned char* PBYTE; +// typedef char* LPTSTR; +// typedef unsigned short USHORT; + +// typedef unsigned long ULONG; +// typedef unsigned long unsigned long ; +// // #endif //#ifdef __LINUX__ + +typedef struct { + char sDeviceAddress[129]; + char sUserName[64]; + char sPassword[64]; +} LoginInfo, *LPLoginInfo; + +typedef struct +{ + unsigned long dwYear; //å¹´ + unsigned long dwMonth; //月 + unsigned long dwDay; //æ—¥ + unsigned long dwHour; //æ—¶ + unsigned long dwMinute; //分 + unsigned long dwSecond; //秒 +} StreamDate, *LStreamDate; +typedef struct { + unsigned long lChannel; + StreamDate start; + StreamDate end; +} StreamCon, *LPStream; + +#define HPR_OK 0 +#define HPR_ERROR -1 +int playback(LPLoginInfo loginInfo, LPStream stream); +#endif \ No newline at end of file diff --git a/include/plaympeg4.h b/include/plaympeg4.h new file mode 100644 index 0000000..7a5682a --- /dev/null +++ b/include/plaympeg4.h @@ -0,0 +1,760 @@ +#ifndef _PLAYM4_H_ +#define _PLAYM4_H_ + +#if defined( _WINDLL) + #define PLAYM4_API extern "C" __declspec(dllexport) +#else + #define PLAYM4_API extern "C" __declspec(dllimport) +#endif + +//Max channel numbers +#define PLAYM4_MAX_SUPPORTS 500 +//Wave coef range; +#define MIN_WAVE_COEF -100 +#define MAX_WAVE_COEF 100 + +//Timer type +#define TIMER_1 1 //Only 16 timers for every process.Default TIMER; +#define TIMER_2 2 //Not limit;But the precision less than TIMER_1; + +//BUFFER AND DATA TYPE +#define BUF_VIDEO_SRC (1) //mixed input,total src buffer size;splited input,video src buffer size +#define BUF_AUDIO_SRC (2) //mixed input,not defined;splited input,audio src buffer size +#define BUF_VIDEO_RENDER (3) //video render node count +#define BUF_AUDIO_RENDER (4) //audio render node count +#define BUF_VIDEO_DECODED (5) //video decoded node count to render +#define BUF_AUDIO_DECODED (6) //audio decoded node count to render +#define BUF_DISPLAY_NODE (7) //display node + +//Error code +#define PLAYM4_NOERROR 0 //no error +#define PLAYM4_PARA_OVER 1 //input parameter is invalid; +#define PLAYM4_ORDER_ERROR 2 //The order of the function to be called is error. +#define PLAYM4_TIMER_ERROR 3 //Create multimedia clock failed; +#define PLAYM4_DEC_VIDEO_ERROR 4 //Decode video data failed. +#define PLAYM4_DEC_AUDIO_ERROR 5 //Decode audio data failed. +#define PLAYM4_ALLOC_MEMORY_ERROR 6 //Allocate memory failed. +#define PLAYM4_OPEN_FILE_ERROR 7 //Open the file failed. +#define PLAYM4_CREATE_OBJ_ERROR 8 //Create thread or event failed +#define PLAYM4_CREATE_DDRAW_ERROR 9 //Create DirectDraw object failed. +#define PLAYM4_CREATE_OFFSCREEN_ERROR 10 //failed when creating off-screen surface. +#define PLAYM4_BUF_OVER 11 //buffer is overflow +#define PLAYM4_CREATE_SOUND_ERROR 12 //failed when creating audio device. +#define PLAYM4_SET_VOLUME_ERROR 13 //Set volume failed +#define PLAYM4_SUPPORT_FILE_ONLY 14 //The function only support play file. +#define PLAYM4_SUPPORT_STREAM_ONLY 15 //The function only support play stream. +#define PLAYM4_SYS_NOT_SUPPORT 16 //System not support. +#define PLAYM4_FILEHEADER_UNKNOWN 17 //No file header. +#define PLAYM4_VERSION_INCORRECT 18 //The version of decoder and encoder is not adapted. +#define PLAYM4_INIT_DECODER_ERROR 19 //Initialize decoder failed. +#define PLAYM4_CHECK_FILE_ERROR 20 //The file data is unknown. +#define PLAYM4_INIT_TIMER_ERROR 21 //Initialize multimedia clock failed. +#define PLAYM4_BLT_ERROR 22 //Blt failed. +#define PLAYM4_UPDATE_ERROR 23 //Update failed. +#define PLAYM4_OPEN_FILE_ERROR_MULTI 24 //openfile error, streamtype is multi +#define PLAYM4_OPEN_FILE_ERROR_VIDEO 25 //openfile error, streamtype is video +#define PLAYM4_JPEG_COMPRESS_ERROR 26 //JPEG compress error +#define PLAYM4_EXTRACT_NOT_SUPPORT 27 //Don't support the version of this file. +#define PLAYM4_EXTRACT_DATA_ERROR 28 //extract video data failed. +#define PLAYM4_SECRET_KEY_ERROR 29 //Secret key is error //add 20071218 +#define PLAYM4_DECODE_KEYFRAME_ERROR 30 //add by hy 20090318 +#define PLAYM4_NEED_MORE_DATA 31 //add by hy 20100617 +#define PLAYM4_INVALID_PORT 32 //add by cj 20100913 +#define PLAYM4_NOT_FIND 33 //add by cj 20110428 +#define PLAYM4_NEED_LARGER_BUFFER 34 //add by pzj 20130528 +#define PLAYM4_FAIL_UNKNOWN 99 //Fail, but the reason is unknown; + +//ÓãÑÛ¹¦ÄÜ´íÎóÂë +#define PLAYM4_FEC_ERR_ENABLEFAIL 100 // ÓãÑÛÄ£¿é¼ÓÔØʧ°Ü +#define PLAYM4_FEC_ERR_NOTENABLE 101 // ÓãÑÛÄ£¿éûÓмÓÔØ +#define PLAYM4_FEC_ERR_NOSUBPORT 102 // ×Ӷ˿ÚûÓзÖÅä +#define PLAYM4_FEC_ERR_PARAMNOTINIT 103 // ûÓгõʼ»¯¶ÔÓ¦¶Ë¿ÚµÄ²ÎÊý +#define PLAYM4_FEC_ERR_SUBPORTOVER 104 // ×Ӷ˿ÚÒѾ­ÓÃÍê +#define PLAYM4_FEC_ERR_EFFECTNOTSUPPORT 105 // ¸Ã°²×°·½Ê½ÏÂÕâÖÖЧ¹û²»Ö§³Ö +#define PLAYM4_FEC_ERR_INVALIDWND 106 // ·Ç·¨µÄ´°¿Ú +#define PLAYM4_FEC_ERR_PTZOVERFLOW 107 // PTZλÖÃÔ½½ç +#define PLAYM4_FEC_ERR_RADIUSINVALID 108 // Ô²ÐIJÎÊý·Ç·¨ +#define PLAYM4_FEC_ERR_UPDATENOTSUPPORT 109 // Ö¸¶¨µÄ°²×°·½Ê½ºÍ½ÃÕýЧ¹û£¬¸Ã²ÎÊý¸üв»Ö§³Ö +#define PLAYM4_FEC_ERR_NOPLAYPORT 110 // ²¥·Å¿â¶Ë¿ÚûÓÐÆôÓà +#define PLAYM4_FEC_ERR_PARAMVALID 111 // ²ÎÊýΪ¿Õ +#define PLAYM4_FEC_ERR_INVALIDPORT 112 // ·Ç·¨×Ó¶Ë¿Ú +#define PLAYM4_FEC_ERR_PTZZOOMOVER 113 // PTZ½ÃÕý·¶Î§Ô½½ç +#define PLAYM4_FEC_ERR_OVERMAXPORT 114 // ½ÃÕýͨµÀ±¥ºÍ£¬×î´óÖ§³ÖµÄ½ÃÕýͨµÀΪËĸö +#define PLAYM4_FEC_ERR_ENABLED 115 //¸Ã¶Ë¿ÚÒѾ­ÆôÓÃÁËÓãÑÛÄ£¿é +#define PLAYM4_FEC_ERR_D3DACCENOTENABLE 116 // D3D¼ÓËÙûÓпªÆô + + +//Max display regions. +#define MAX_DISPLAY_WND 4 + +//Display type +#define DISPLAY_NORMAL 0x00000001 +#define DISPLAY_QUARTER 0x00000002 +#define DISPLAY_YC_SCALE 0x00000004 //add by gb 20091116 +#define DISPLAY_NOTEARING 0x00000008 +//Display buffers +#define MAX_DIS_FRAMES 50 +#define MIN_DIS_FRAMES 1 + +//Locate by +#define BY_FRAMENUM 1 +#define BY_FRAMETIME 2 + +//Source buffer +#define SOURCE_BUF_MAX 1024*100000 +#define SOURCE_BUF_MIN 1024*50 + +//Stream type +#define STREAME_REALTIME 0 +#define STREAME_FILE 1 + +//frame type +#define T_AUDIO16 101 +#define T_AUDIO8 100 +#define T_UYVY 1 +#define T_YV12 3 +#define T_RGB32 7 + +//capability +#define SUPPORT_DDRAW 1 +#define SUPPORT_BLT 2 +#define SUPPORT_BLTFOURCC 4 +#define SUPPORT_BLTSHRINKX 8 +#define SUPPORT_BLTSHRINKY 16 +#define SUPPORT_BLTSTRETCHX 32 +#define SUPPORT_BLTSTRETCHY 64 +#define SUPPORT_SSE 128 +#define SUPPORT_MMX 256 + +// ÒÔϺ궨ÒåÓÃÓÚHIK_MEDIAINFO½á¹¹ +#define FOURCC_HKMI 0x484B4D49 // "HKMI" HIK_MEDIAINFO½á¹¹±ê¼Ç +// ϵͳ·â×°¸ñʽ +#define SYSTEM_NULL 0x0 // ûÓÐϵͳ²ã£¬´¿ÒôƵÁ÷»òÊÓƵÁ÷ +#define SYSTEM_HIK 0x1 // º£¿µÎļþ²ã +#define SYSTEM_MPEG2_PS 0x2 // PS·â×° +#define SYSTEM_MPEG2_TS 0x3 // TS·â×° +#define SYSTEM_RTP 0x4 // rtp·â×° +#define SYSTEM_RTPHIK 0x401 // rtp·â×° + +// ÊÓƵ±àÂëÀàÐÍ +#define VIDEO_NULL 0x0 // ûÓÐÊÓƵ +#define VIDEO_H264 0x1 // º£¿µH.264 +#define VIDEO_MPEG4 0x3 // ±ê×¼MPEG4 +#define VIDEO_MJPEG 0x4 +#define VIDEO_AVC264 0x0100 + +// ÒôƵ±àÂëÀàÐÍ +#define AUDIO_NULL 0x0000 // ûÓÐÒôƵ +#define AUDIO_ADPCM 0x1000 // ADPCM +#define AUDIO_MPEG 0x2000 // MPEG ϵÁÐÒôƵ£¬½âÂëÆ÷ÄÜ×ÔÊÊÓ¦¸÷ÖÖMPEGÒôƵ +#define AUDIO_AAC 0X2001 // AAC ±àÂë +// GϵÁÐÒôƵ +#define AUDIO_RAW_DATA8 0x7000 //²ÉÑùÂÊΪ8kµÄԭʼÊý¾Ý +#define AUDIO_RAW_UDATA16 0x7001 //²ÉÑùÂÊΪ16kµÄԭʼÊý¾Ý£¬¼´L16 +#define AUDIO_G711_U 0x7110 +#define AUDIO_G711_A 0x7111 +#define AUDIO_G722_1 0x7221 +#define AUDIO_G723_1 0x7231 +#define AUDIO_G726_U 0x7260 +#define AUDIO_G726_A 0x7261 +#define AUDIO_G726_16 0x7262 +#define AUDIO_G729 0x7290 +#define AUDIO_AMR_NB 0x3000 + +#define SYNCDATA_VEH 1 //ͬ²½Êý¾Ý:³µÔØÐÅÏ¢ +#define SYNCDATA_IVS 2 //ͬ²½Êý¾Ý:ÖÇÄÜÐÅÏ¢ + +//motion flow type +#define MOTION_FLOW_NONE 0 +#define MOTION_FLOW_CPU 1 +#define MOTION_FLOW_GPU 2 + +//ÒôÊÓƵ¼ÓÃÜÀàÐÍ +#define ENCRYPT_AES_3R_VIDEO 1 +#define ENCRYPT_AES_10R_VIDEO 2 +#define ENCRYPT_AES_3R_AUDIO 1 +#define ENCRYPT_AES_10R_AUDIO 2 + +//Frame position +typedef struct{ + long nFilePos; + long nFrameNum; + long nFrameTime; + long nErrorFrameNum; + SYSTEMTIME *pErrorTime; + long nErrorLostFrameNum; + long nErrorFrameSize; +}FRAME_POS,*PFRAME_POS; + +//Frame Info +typedef struct{ + long nWidth; + long nHeight; + long nStamp; + long nType; + long nFrameRate; + DWORD dwFrameNum; +}FRAME_INFO; + +typedef struct +{ + long nPort; //ͨµÀºÅ + char *pBuf; //·µ»ØµÄµÚһ·ͼÏñÊý¾ÝÖ¸Õë + unsigned int nBufLen; //·µ»ØµÄµÚһ·ͼÏñÊý¾Ý´óС + char *pBuf1; //·µ»ØµÄµÚ¶þ·ͼÏñÊý¾ÝÖ¸Õë + unsigned int nBufLen1; //·µ»ØµÄµÚ¶þ·ͼÏñÊý¾Ý´óС + char *pBuf2; //·µ»ØµÄµÚÈý·ͼÏñÊý¾ÝÖ¸Õë + unsigned int nBufLen2; //·µ»ØµÄµÚÈý·ͼÏñÊý¾Ý´óС + unsigned int nWidth; //»­Ãæ¿í + unsigned int nHeight; //»­Ãæ¸ß + unsigned int nStamp; //ʱ±êÐÅÏ¢£¬µ¥Î»ºÁÃë + unsigned int nType; //Êý¾ÝÀàÐÍ + void *pUser; //Óû§Êý¾Ý + unsigned int reserved[4]; //±£Áô +}DISPLAY_INFO_YUV; + +//Frame +typedef struct{ + char *pDataBuf; + long nSize; + long nFrameNum; + BOOL bIsAudio; + long nReserved; +}FRAME_TYPE; + +//Watermark Info //add by gb 080119 +typedef struct{ + char *pDataBuf; + long nSize; + long nFrameNum; + BOOL bRsaRight; + long nReserved; +}WATERMARK_INFO; + +typedef struct SYNCDATA_INFO +{ + DWORD dwDataType; //ºÍÂëÁ÷Êý¾Ýͬ²½µÄ¸½ÊôÐÅÏ¢ÀàÐÍ£¬Ä¿Ç°ÓУºÖÇÄÜÐÅÏ¢£¬³µÔØÐÅÏ¢ + DWORD dwDataLen; //¸½ÊôÐÅÏ¢Êý¾Ý³¤¶È + BYTE* pData; //Ö¸Ïò¸½ÊôÐÅÏ¢Êý¾Ý½á¹¹µÄÖ¸Õë,±ÈÈçIVS_INFO½á¹¹ +} SYNCDATA_INFO; + +#ifndef _HIK_MEDIAINFO_FLAG_ +#define _HIK_MEDIAINFO_FLAG_ +typedef struct _HIK_MEDIAINFO_ // modified by gb 080425 +{ + unsigned int media_fourcc; // "HKMI": 0x484B4D49 Hikvision Media Information + unsigned short media_version; // °æ±¾ºÅ£ºÖ¸±¾ÐÅÏ¢½á¹¹°æ±¾ºÅ£¬Ä¿Ç°Îª0x0101,¼´1.01°æ±¾£¬01£ºÖ÷°æ±¾ºÅ£»01£º×Ó°æ±¾ºÅ¡£ + unsigned short device_id; // É豸ID£¬±ãÓÚ¸ú×Ù/·ÖÎö + + unsigned short system_format; // ϵͳ·â×°²ã + unsigned short video_format; // ÊÓƵ±àÂëÀàÐÍ + + unsigned short audio_format; // ÒôƵ±àÂëÀàÐÍ + unsigned char audio_channels; // ͨµÀÊý + unsigned char audio_bits_per_sample; // ÑùλÂÊ + unsigned int audio_samplesrate; // ²ÉÑùÂÊ + unsigned int audio_bitrate; // ѹËõÒôƵÂëÂÊ,µ¥Î»£ºbit + + unsigned int reserved[4]; // ±£Áô +}HIK_MEDIAINFO; +#endif + +typedef struct +{ + long nPort; + char * pBuf; + long nBufLen; + long nWidth; + long nHeight; + long nStamp; + long nType; + long nUser; +}DISPLAY_INFO; + +typedef struct +{ + long nPort; + char *pVideoBuf; + long nVideoBufLen; + char *pPriBuf; + long nPriBufLen; + long nWidth; + long nHeight; + long nStamp; + long nType; + long nUser; +}DISPLAY_INFOEX; + +typedef struct PLAYM4_SYSTEM_TIME //¾ø¶Ôʱ¼ä +{ + DWORD dwYear; //Äê + DWORD dwMon; //Ô + DWORD dwDay; //ÈÕ + DWORD dwHour; //ʱ + DWORD dwMin; //·Ö + DWORD dwSec; //Ãë + DWORD dwMs; //ºÁÃë +} PLAYM4_SYSTEM_TIME; + +//ENCRYPT Info +typedef struct{ + long nVideoEncryptType; //ÊÓƵ¼ÓÃÜÀàÐÍ + long nAudioEncryptType; //ÒôƵ¼ÓÃÜÀàÐÍ + long nSetSecretKey; //ÊÇ·ñÉèÖã¬1±íʾÉèÖÃÃÜÔ¿£¬0±íʾûÓÐÉèÖÃÃÜÔ¿ +}ENCRYPT_INFO; + +////////////////////////////////////////////////////////////////////////////// +//API +////////////////////////////////////////////////////////////////////////////// + +////////////////ver 1.0/////////////////////////////////////// +//Initialize DirecDraw.Now invalid. +PLAYM4_API BOOL __stdcall PlayM4_InitDDraw(HWND hWnd); +//Release directDraw; Now invalid. +PLAYM4_API BOOL __stdcall PlayM4_RealeseDDraw(); +PLAYM4_API BOOL __stdcall PlayM4_OpenFile(LONG nPort,LPSTR sFileName); +PLAYM4_API BOOL __stdcall PlayM4_CloseFile(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_Play(LONG nPort, HWND hWnd); +PLAYM4_API BOOL __stdcall PlayM4_Stop(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_Pause(LONG nPort,DWORD nPause); +PLAYM4_API BOOL __stdcall PlayM4_Fast(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_Slow(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_OneByOne(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetPlayPos(LONG nPort,float fRelativePos); +PLAYM4_API float __stdcall PlayM4_GetPlayPos(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetFileEndMsg(LONG nPort,HWND hWnd,UINT nMsg); +PLAYM4_API BOOL __stdcall PlayM4_SetVolume(LONG nPort,WORD nVolume); +PLAYM4_API BOOL __stdcall PlayM4_StopSound(); +PLAYM4_API BOOL __stdcall PlayM4_PlaySound(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_OpenStream(LONG nPort,PBYTE pFileHeadBuf,DWORD nSize,DWORD nBufPoolSize); +PLAYM4_API BOOL __stdcall PlayM4_InputData(LONG nPort,PBYTE pBuf,DWORD nSize); +PLAYM4_API BOOL __stdcall PlayM4_CloseStream(LONG nPort); +PLAYM4_API int __stdcall PlayM4_GetCaps(); +PLAYM4_API DWORD __stdcall PlayM4_GetFileTime(LONG nPort); +PLAYM4_API DWORD __stdcall PlayM4_GetPlayedTime(LONG nPort); +PLAYM4_API DWORD __stdcall PlayM4_GetPlayedFrames(LONG nPort); + +//23 +////////////////ver 2.0 added/////////////////////////////////////// +PLAYM4_API BOOL __stdcall PlayM4_SetDecCallBack(LONG nPort,void (CALLBACK* DecCBFun)(long nPort,char * pBuf,long nSize,FRAME_INFO * pFrameInfo, long nReserved1,long nReserved2)); +PLAYM4_API BOOL __stdcall PlayM4_SetDisplayCallBackYUV(LONG nPort, void (CALLBACK* DisplayCBFun)(DISPLAY_INFO_YUV *pstDisplayInfo), BOOL bTrue, void* pUser); +PLAYM4_API BOOL __stdcall PlayM4_SetDisplayCallBack(LONG nPort,void (CALLBACK* DisplayCBFun)(long nPort,char * pBuf,long nSize,long nWidth,long nHeight,long nStamp,long nType,long nReserved)); +PLAYM4_API BOOL __stdcall PlayM4_ConvertToBmpFile(char * pBuf,long nSize,long nWidth,long nHeight,long nType,char *sFileName); +PLAYM4_API DWORD __stdcall PlayM4_GetFileTotalFrames(LONG nPort); +PLAYM4_API DWORD __stdcall PlayM4_GetCurrentFrameRate(LONG nPort); +PLAYM4_API DWORD __stdcall PlayM4_GetPlayedTimeEx(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetPlayedTimeEx(LONG nPort,DWORD nTime); +PLAYM4_API DWORD __stdcall PlayM4_GetCurrentFrameNum(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetStreamOpenMode(LONG nPort,DWORD nMode); +PLAYM4_API DWORD __stdcall PlayM4_GetFileHeadLength(); +PLAYM4_API DWORD __stdcall PlayM4_GetSdkVersion(); +//11 +////////////////ver 2.2 added/////////////////////////////////////// +PLAYM4_API DWORD __stdcall PlayM4_GetLastError(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_RefreshPlay(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetOverlayMode(LONG nPort,BOOL bOverlay,COLORREF colorKey); +PLAYM4_API BOOL __stdcall PlayM4_GetPictureSize(LONG nPort,LONG *pWidth,LONG *pHeight); +PLAYM4_API BOOL __stdcall PlayM4_SetPicQuality(LONG nPort,BOOL bHighQuality); +PLAYM4_API BOOL __stdcall PlayM4_PlaySoundShare(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_StopSoundShare(LONG nPort); +//7 +////////////////ver 2.4 added/////////////////////////////////////// +PLAYM4_API LONG __stdcall PlayM4_GetStreamOpenMode(LONG nPort); +PLAYM4_API LONG __stdcall PlayM4_GetOverlayMode(LONG nPort); +PLAYM4_API COLORREF __stdcall PlayM4_GetColorKey(LONG nPort); +PLAYM4_API WORD __stdcall PlayM4_GetVolume(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_GetPictureQuality(LONG nPort,BOOL *bHighQuality); +PLAYM4_API DWORD __stdcall PlayM4_GetSourceBufferRemain(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_ResetSourceBuffer(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetSourceBufCallBack(LONG nPort,DWORD nThreShold,void (CALLBACK * SourceBufCallBack)(long nPort,DWORD nBufSize,DWORD dwUser,void*pResvered),DWORD dwUser,void *pReserved); +PLAYM4_API BOOL __stdcall PlayM4_ResetSourceBufFlag(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetDisplayBuf(LONG nPort,DWORD nNum); +PLAYM4_API DWORD __stdcall PlayM4_GetDisplayBuf(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_OneByOneBack(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetFileRefCallBack(LONG nPort, void (__stdcall *pFileRefDone)(DWORD nPort,DWORD nUser),DWORD nUser); +PLAYM4_API BOOL __stdcall PlayM4_SetCurrentFrameNum(LONG nPort,DWORD nFrameNum); +PLAYM4_API BOOL __stdcall PlayM4_GetKeyFramePos(LONG nPort,DWORD nValue, DWORD nType, PFRAME_POS pFramePos); +PLAYM4_API BOOL __stdcall PlayM4_GetNextKeyFramePos(LONG nPort,DWORD nValue, DWORD nType, PFRAME_POS pFramePos); +#if (WINVER >= 0x0400) +//Note: These funtion must be builded under win2000 or above with Microsoft Platform sdk. +// You can download the sdk from "http://www.microsoft.com/msdownload/platformsdk/sdkupdate/"; +PLAYM4_API BOOL __stdcall PlayM4_InitDDrawDevice(); +PLAYM4_API void __stdcall PlayM4_ReleaseDDrawDevice(); +PLAYM4_API DWORD __stdcall PlayM4_GetDDrawDeviceTotalNums(); +PLAYM4_API BOOL __stdcall PlayM4_SetDDrawDevice(LONG nPort,DWORD nDeviceNum); +//PLAYM4_API BOOL __stdcall PlayM4_GetDDrawDeviceInfo(DWORD nDeviceNum,LPSTR lpDriverDescription,DWORD nDespLen,LPSTR lpDriverName ,DWORD nNameLen,HMONITOR *hhMonitor); +PLAYM4_API int __stdcall PlayM4_GetCapsEx(DWORD nDDrawDeviceNum); +#endif +PLAYM4_API BOOL __stdcall PlayM4_ThrowBFrameNum(LONG nPort,DWORD nNum); +//23 +////////////////ver 2.5 added/////////////////////////////////////// +PLAYM4_API BOOL __stdcall PlayM4_SetDisplayType(LONG nPort,LONG nType); +PLAYM4_API long __stdcall PlayM4_GetDisplayType(LONG nPort); +//2 +////////////////ver 3.0 added/////////////////////////////////////// +PLAYM4_API BOOL __stdcall PlayM4_SetDecCBStream(LONG nPort,DWORD nStream); +PLAYM4_API BOOL __stdcall PlayM4_SetDisplayRegion(LONG nPort,DWORD nRegionNum, RECT *pSrcRect, HWND hDestWnd, BOOL bEnable); +PLAYM4_API BOOL __stdcall PlayM4_RefreshPlayEx(LONG nPort,DWORD nRegionNum); +#if (WINVER >= 0x0400) +//Note: The funtion must be builded under win2000 or above with Microsoft Platform sdk. +// You can download the sdk from http://www.microsoft.com/msdownload/platformsdk/sdkupdate/; +PLAYM4_API BOOL __stdcall PlayM4_SetDDrawDeviceEx(LONG nPort,DWORD nRegionNum,DWORD nDeviceNum); +#endif +//4 +/////////////////v3.2 added///////////////////////////////////////// + +PLAYM4_API BOOL __stdcall PlayM4_GetRefValue(LONG nPort,BYTE *pBuffer, DWORD *pSize); +PLAYM4_API BOOL __stdcall PlayM4_SetRefValue(LONG nPort,BYTE *pBuffer, DWORD nSize); +PLAYM4_API BOOL __stdcall PlayM4_OpenStreamEx(LONG nPort,PBYTE pFileHeadBuf,DWORD nSize,DWORD nBufPoolSize); +PLAYM4_API BOOL __stdcall PlayM4_CloseStreamEx(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_InputVideoData(LONG nPort,PBYTE pBuf,DWORD nSize); +PLAYM4_API BOOL __stdcall PlayM4_InputAudioData(LONG nPort,PBYTE pBuf,DWORD nSize); +PLAYM4_API BOOL __stdcall PlayM4_RegisterDrawFun(LONG nPort,void (CALLBACK* DrawFun)(long nPort,HDC hDc,LONG nUser),LONG nUser); +PLAYM4_API BOOL __stdcall PlayM4_RigisterDrawFun(LONG nPort,void (CALLBACK* DrawFun)(long nPort,HDC hDc,LONG nUser),LONG nUser); +//8 +//////////////////v3.4///////////////////////////////////////////////////// +PLAYM4_API BOOL __stdcall PlayM4_SetTimerType(LONG nPort,DWORD nTimerType,DWORD nReserved); +PLAYM4_API BOOL __stdcall PlayM4_GetTimerType(LONG nPort,DWORD *pTimerType,DWORD *pReserved); +PLAYM4_API BOOL __stdcall PlayM4_ResetBuffer(LONG nPort,DWORD nBufType); +PLAYM4_API DWORD __stdcall PlayM4_GetBufferValue(LONG nPort,DWORD nBufType); + +//////////////////V3.6///////////////////////////////////////////////////////// +PLAYM4_API BOOL __stdcall PlayM4_AdjustWaveAudio(LONG nPort,LONG nCoefficient); +PLAYM4_API BOOL __stdcall PlayM4_SetVerifyCallBack(LONG nPort, DWORD nBeginTime, DWORD nEndTime, void (__stdcall * funVerify)(long nPort, FRAME_POS * pFilePos, DWORD bIsVideo, DWORD nUser), DWORD nUser); +PLAYM4_API BOOL __stdcall PlayM4_SetAudioCallBack(LONG nPort, void (__stdcall * funAudio)(long nPort, char * pAudioBuf, long nSize, long nStamp, long nType, long nUser), long nUser); +PLAYM4_API BOOL __stdcall PlayM4_SetEncTypeChangeCallBack(LONG nPort,void(CALLBACK *funEncChange)(long nPort,long nUser),long nUser); +PLAYM4_API BOOL __stdcall PlayM4_SetColor(LONG nPort, DWORD nRegionNum, int nBrightness, int nContrast, int nSaturation, int nHue); +PLAYM4_API BOOL __stdcall PlayM4_GetColor(LONG nPort, DWORD nRegionNum, int *pBrightness, int *pContrast, int *pSaturation, int *pHue); +PLAYM4_API BOOL __stdcall PlayM4_SetEncChangeMsg(LONG nPort,HWND hWnd,UINT nMsg); +PLAYM4_API BOOL __stdcall PlayM4_GetOriginalFrameCallBack(LONG nPort, BOOL bIsChange,BOOL bNormalSpeed,long nStartFrameNum,long nStartStamp,long nFileHeader,void(CALLBACK *funGetOrignalFrame)(long nPort,FRAME_TYPE *frameType, long nUser),long nUser); +PLAYM4_API BOOL __stdcall PlayM4_GetFileSpecialAttr(LONG nPort, DWORD *pTimeStamp,DWORD *pFileNum ,DWORD *pReserved); +PLAYM4_API DWORD __stdcall PlayM4_GetSpecialData(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetCheckWatermarkCallBack(LONG nPort,void(CALLBACK* funCheckWatermark)(long nPort,WATERMARK_INFO* pWatermarkInfo,DWORD nUser),DWORD nUser); +PLAYM4_API BOOL __stdcall PlayM4_SetImageSharpen(LONG nPort,DWORD nLevel); +PLAYM4_API BOOL __stdcall PlayM4_SetDecodeFrameType(LONG nPort,DWORD nFrameType); +PLAYM4_API BOOL __stdcall PlayM4_SetPlayMode(LONG nPort,BOOL bNormal); +PLAYM4_API BOOL __stdcall PlayM4_SetOverlayFlipMode(LONG nPort,BOOL bTrue); +PLAYM4_API BOOL __stdcall PlayM4_SetOverlayPriInfoFlag(LONG nPort, DWORD nIntelType, BOOL bTrue,const char *pFontPath); + +//PLAYM4_API DWORD __stdcall PlayM4_GetAbsFrameNum(LONG nPort); + +//////////////////V4.7.0.0////////////////////////////////////////////////////// +////convert yuv to jpeg +PLAYM4_API BOOL __stdcall PlayM4_ConvertToJpegFile(char * pBuf,long nSize,long nWidth,long nHeight,long nType,char *sFileName); +PLAYM4_API BOOL __stdcall PlayM4_SetJpegQuality(long nQuality); +//set deflash +PLAYM4_API BOOL __stdcall PlayM4_SetDeflash(LONG nPort,BOOL bDefalsh); +//PLAYM4_API BOOL __stdcall PlayM4_SetDecCallBackEx(LONG nPort,void (CALLBACK* DecCBFun)(long nPort,char * pBuf,long nSize,FRAME_INFO * pFrameInfo, long nReserved1,long nReserved2), char* pDest, long nDestSize); +//////////////////V4.8.0.0///////////////////////////////////////////////////////// +//check discontinuous frame number as error data? +PLAYM4_API BOOL __stdcall PlayM4_CheckDiscontinuousFrameNum(LONG nPort, BOOL bCheck); +//get bmp or jpeg +PLAYM4_API BOOL __stdcall PlayM4_GetBMP(LONG nPort,PBYTE pBitmap,DWORD nBufSize,DWORD* pBmpSize); +PLAYM4_API BOOL __stdcall PlayM4_GetJPEG(LONG nPort,PBYTE pJpeg,DWORD nBufSize,DWORD* pJpegSize); +//dec call back mend +PLAYM4_API BOOL __stdcall PlayM4_SetDecCallBackMend(LONG nPort,void (CALLBACK* DecCBFun)(long nPort,char * pBuf,long nSize,FRAME_INFO * pFrameInfo, long nUser,long nReserved2), long nUser); +PLAYM4_API BOOL __stdcall PlayM4_SetSecretKey(LONG nPort, LONG lKeyType, char *pSecretKey, LONG lKeyLen); + +// add by gb 2007-12-23 +PLAYM4_API BOOL __stdcall PlayM4_SetFileEndCallback(LONG nPort, void(CALLBACK*FileEndCallback)(long nPort, void *pUser), void *pUser); + +// add by gb 080131 version 4.9.0.1 +PLAYM4_API BOOL __stdcall PlayM4_GetPort(LONG* nPort); +PLAYM4_API BOOL __stdcall PlayM4_FreePort(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_SetDisplayCallBackEx(LONG nPort,void (CALLBACK* DisplayCBFun)(DISPLAY_INFO *pstDisplayInfo), long nUser); +PLAYM4_API BOOL __stdcall PlayM4_SkipErrorData(LONG nPort, BOOL bSkip); +PLAYM4_API BOOL __stdcall PlayM4_SetDecCallBackExMend(LONG nPort, void (CALLBACK* DecCBFun)(long nPort, char* pBuf, long nSize, FRAME_INFO* pFrameInfo, + long nUser, long nReserved2), char* pDest, long nDestSize, long nUser); +//reverse play add by chenjie 110609 +PLAYM4_API BOOL __stdcall PlayM4_ReversePlay(LONG nPort); +PLAYM4_API BOOL __stdcall PlayM4_GetSystemTime(LONG nPort, PLAYM4_SYSTEM_TIME *pstSystemTime); + +//PLAYM4_API BOOL __stdcall PlayM4_SetDecodeERC(long nPort, unsigned int nLevel); + +#ifndef PLAYM4_SESSION_INFO_TAG +#define PLAYM4_SESSION_INFO_TAG +//nProtocolType +#define PLAYM4_PROTOCOL_RTSP 1 +//nSessionInfoType +#define PLAYM4_SESSION_INFO_SDP 1 + +typedef struct _PLAYM4_SESSION_INFO_ //½»»¥ÐÅÏ¢½á¹¹ +{ + int nSessionInfoType; //½»»¥ÐÅÏ¢ÀàÐÍ£¬±ÈÈçSDP£¬±ÈÈ纣¿µË½ÓÐÐÅϢͷ + int nSessionInfoLen; //½»»¥ÐÅÏ¢³¤¶È + unsigned char* pSessionInfoData; //½»»¥ÐÅÏ¢Êý¾Ý + +} PLAYM4_SESSION_INFO; +#endif + +PLAYM4_API BOOL __stdcall PlayM4_OpenStreamAdvanced(LONG nPort, int nProtocolType, PLAYM4_SESSION_INFO* pstSessionInfo, DWORD nBufPoolSize); + +#define R_ANGLE_0 -1 //²»Ðýת +#define R_ANGLE_L90 0 //Ïò×óÐýת90¶È +#define R_ANGLE_R90 1 //ÏòÓÒÐýת90¶È +#define R_ANGLE_180 2 //Ðýת180¶È + +PLAYM4_API BOOL __stdcall PlayM4_SetRotateAngle(LONG nPort, DWORD nRegionNum, DWORD dwType); + +#ifndef PLAYM4_ADDITION_INFO_TAG +#define PLAYM4_ADDITION_INFO_TAG +typedef struct _PLAYM4_ADDITION_INFO_ //½»»¥ÐÅÏ¢½á¹¹ +{ + BYTE* pData; //¸½¼þÊý¾Ý + DWORD dwDatalen; //¸½¼þÊý¾Ý³¤¶È + DWORD dwDataType; //Êý¾ÝÀàÐÍ + DWORD dwTimeStamp; //Ïà¶Ôʱ¼ä´Á +} PLAYM4_ADDITION_INFO; +#endif + +//dwGroupIndex ÔÝÔ¼¶¨È¡Öµ0~3£¬µÚÒ»°æ±¾È¡Ïûͬ²½Ö»ÄÜͬ¸öclosestream´¦Àí +PLAYM4_API BOOL __stdcall PlayM4_SetSycGroup(LONG nPort, DWORD dwGroupIndex); +//Ôݲ»ÊµÏִ˺¯Êý£¬Í¬¸ö×éÉèÖõÄÆðʼʱ¼ä²»Ò»Ö£¬ÒÔ×îСµÄʱ¼ä×÷Ϊ²¥·ÅÆðµã£¬Í¬Ò»×é¿ÉÖ»Éèһ· +PLAYM4_API BOOL __stdcall PlayM4_SetSycStartTime(LONG nPort, PLAYM4_SYSTEM_TIME *pstSystemTime); + + +// ÒÔÏÂʵÏÖÓãÑÛÏà¹ØµÄ½Ó¿Ú +#ifndef FISH_EYE_TAG +#define FISH_EYE_TAG + +// °²×°ÀàÐÍ +typedef enum tagFECPlaceType +{ + FEC_PLACE_WALL = 0x1, // ±Ú×°·½Ê½ (·¨Ïßˮƽ) + FEC_PLACE_FLOOR = 0x2, // µØÃæ°²×° (·¨ÏßÏòÉÏ) + FEC_PLACE_CEILING = 0x3, // ¶¥×°·½Ê½ (·¨ÏßÏòÏÂ) + +}FECPLACETYPE; + +typedef enum tagFECCorrectType +{ + FEC_CORRECT_PTZ = 0x100, // PTZ + FEC_CORRECT_180 = 0x200, // 180¶È½ÃÕý £¨¶ÔÓ¦2P£© + FEC_CORRECT_360 = 0x300, // 360È«¾°½ÃÕý £¨¶ÔÓ¦1P£© + FEC_CORRECT_LAT = 0x400 //γ¶ÈÕ¹¿ª + +}FECCORRECTTYPE; + +typedef struct tagCycleParam +{ + float fRadiusLeft; // Ô²µÄ×î×ó±ßX×ø±ê + float fRadiusRight; // Ô²µÄ×îÓÒ±ßX×ø±ê + float fRadiusTop; // Ô²µÄ×îÉϱßY×ø±ê + float fRadiusBottom; // Ô²µÄ×îϱßY×ø±ê + +}CYCLEPARAM; + +typedef struct tagPTZParam +{ + float fPTZPositionX; // PTZ ÏÔʾµÄÖÐÐÄλÖà X×ø±ê + float fPTZPositionY; // PTZ ÏÔʾµÄÖÐÐÄλÖà Y×ø±ê + +}PTZPARAM; + + +// ´íÎóÂë +/********************************************* + + + ********************************************/ + + +// ¸üбê¼Ç±äÁ¿¶¨Òå + + +#define FEC_UPDATE_RADIUS 0x1 +#define FEC_UPDATE_PTZZOOM 0x2 +#define FEC_UPDATE_WIDESCANOFFSET 0x4 +#define FEC_UPDATE_PTZPARAM 0x8 + + +typedef struct tagFECParam +{ + + + unsigned int nUpDateType; // ¸üеÄÀàÐÍ + + unsigned int nPlaceAndCorrect; // °²×°·½Ê½ºÍ½ÃÕý·½Ê½£¬Ö»ÄÜÓÃÓÚ»ñÈ¡£¬SetParamµÄʱºòÎÞЧ,¸ÃÖµ±íʾ°²×°·½Ê½ºÍ½ÃÕý·½Ê½µÄºÍ + + PTZPARAM stPTZParam; // PTZ УÕýµÄ²ÎÊý + + CYCLEPARAM stCycleParam; // ÓãÑÛͼÏñÔ²ÐIJÎÊý + + float fZoom; // PTZ ÏÔʾµÄ·¶Î§²ÎÊý + + float fWideScanOffset; // 180»òÕß360¶ÈУÕýµÄÆ«ÒÆ½Ç¶È + + int nResver[16]; // ±£Áô×ֶΠ+ +}FISHEYEPARAM; + +typedef void (__stdcall * FISHEYE_CallBack )( void* pUser , unsigned int nSubPort , unsigned int nCBType , void * hDC , unsigned int nWidth , unsigned int nHeight); + +#endif +// ÆôÓÃÓãÑÛ +PLAYM4_API BOOL __stdcall PlayM4_FEC_Enable(LONG nPort); + +// ¹Ø±ÕÓãÑÛÄ£¿é +PLAYM4_API BOOL __stdcall PlayM4_FEC_Disable(LONG nPort); + +// »ñÈ¡ÓãÑÛ½ÃÕý´¦Àí×Ó¶Ë¿Ú [1~31] +PLAYM4_API BOOL __stdcall PlayM4_FEC_GetPort(LONG nPort, unsigned int* nSubPort,FECPLACETYPE emPlaceType,FECCORRECTTYPE emCorrectType); + +// ɾ³ýÓãÑÛ½ÃÕý´¦Àí×Ó¶Ë¿Ú +PLAYM4_API BOOL __stdcall PlayM4_FEC_DelPort(LONG nPort , unsigned int nSubPort); + +// ÉèÖÃÓãÑÛ½ÃÕý²ÎÊý +PLAYM4_API BOOL __stdcall PlayM4_FEC_SetParam(LONG nPort , unsigned int nSubPort , FISHEYEPARAM * pPara); + +// »ñÈ¡ÓãÑÛ½ÃÕý²ÎÊý +PLAYM4_API BOOL __stdcall PlayM4_FEC_GetParam(LONG nPort , unsigned int nSubPort , FISHEYEPARAM * pPara); + +// ÉèÖÃÏÔʾ´°¿Ú£¬¿ÉÒÔËæʱÇл» +PLAYM4_API BOOL __stdcall PlayM4_FEC_SetWnd(LONG nPort , unsigned int nSubPort , void * hWnd); + +// ÉèÖÃÓãÑÛ´°¿ÚµÄ»æͼ»Øµ÷ +PLAYM4_API BOOL __stdcall PlayM4_FEC_SetCallBack(LONG nPort , unsigned int nSubPort , FISHEYE_CallBack cbFunc , void * pUser); + +//motionflow +PLAYM4_API BOOL __stdcall PlayM4_MotionFlow(LONG nPort, DWORD dwAdjustType); + + +//ͼÏñÔöÇ¿Ïà¹Ø +#ifndef PLAYM4_HIKVIE_TAG +#define PLAYM4_HIKVIE_TAG + +typedef struct _PLAYM4_VIE_DYNPARAM_ +{ + int moduFlag; //ÆôÓõÄËã·¨´¦ÀíÄ£¿é£¬ÔÚPLAYM4_VIE_MODULESÖж¨Òå + //Èç PLAYM4_VIE_MODU_ADJ | PLAYM4_VIE_MODU_EHAN + //Ä£¿éÆôÓú󣬱ØÐëÉèÖÃÏàÓ¦µÄ²ÎÊý£» + //PLAYM4_VIE_MODU_ADJ + int brightVal; //ÁÁ¶Èµ÷½ÚÖµ£¬[-255, 255] + int contrastVal; //¶Ô±È¶Èµ÷½ÚÖµ£¬[-256, 255] + int colorVal; //±¥ºÍ¶Èµ÷½ÚÖµ£¬[-256, 255] + //PLAYM4_VIE_MODU_EHAN + int toneScale; //Â˲¨·¶Î§£¬[0, 100] + int toneGain; //¶Ô±È¶Èµ÷½Ú£¬È«¾Ö¶Ô±È¶ÈÔöÒæÖµ£¬[-256, 255] + int toneOffset; //ÁÁ¶Èµ÷½Ú£¬ÁÁ¶Èƽ¾ùֵƫÒÆ£¬[-255, 255] + int toneColor; //ÑÕÉ«µ÷½Ú£¬ÑÕÉ«±£ÕæÖµ£¬[-256, 255] + //PLAYM4_VIE_MODU_DEHAZE + int dehazeLevel; //È¥ÎíÇ¿¶È£¬[0, 255] + int dehazeTrans; //͸ÉäÖµ£¬[0, 255] + int dehazeBright; //ÁÁ¶È²¹³¥£¬[0, 255] + //PLAYM4_VIE_MODU_DENOISE + int denoiseLevel; //È¥ÔëÇ¿¶È£¬[0, 255] + //PLAYM4_VIE_MODU_SHARPEN + int usmAmount; //Èñ»¯Ç¿¶È£¬[0, 255] + int usmRadius; //Èñ»¯°ë¾¶£¬[1, 15] + int usmThreshold; //Èñ»¯ãÐÖµ£¬[0, 255] + //PLAYM4_VIE_MODU_DEBLOCK + int deblockLevel; //È¥¿éÇ¿¶È£¬[0, 100] + //PLAYM4_VIE_MODU_LENS + int lensWarp; //»û±äÁ¿£¬[-256, 255] + int lensZoom; //Ëõ·ÅÁ¿£¬[-256, 255] + //PLAYM4_VIE_MODU_CRB + //ÎÞÏìÓ¦²ÎÊý +} PLAYM4_VIE_PARACONFIG; + +typedef enum _PLAYM4_VIE_MODULES +{ + PLAYM4_VIE_MODU_ADJ = 0x00000001, //ͼÏñ»ù±¾µ÷½Ú + PLAYM4_VIE_MODU_EHAN = 0x00000002, //¾Ö²¿ÔöÇ¿Ä£¿é + PLAYM4_VIE_MODU_DEHAZE = 0x00000004, //È¥ÎíÄ£¿é + PLAYM4_VIE_MODU_DENOISE = 0x00000008, //È¥ÔëÄ£¿é + PLAYM4_VIE_MODU_SHARPEN = 0x00000010, //Èñ»¯Ä£¿é + PLAYM4_VIE_MODU_DEBLOCK = 0x00000020, //È¥¿éÂ˲¨Ä£¿é + PLAYM4_VIE_MODU_CRB = 0x00000040, //É«²ÊƽºâÄ£¿é + PLAYM4_VIE_MODU_LENS = 0x00000080, //¾µÍ·»û±ä½ÃÕýÄ£¿é +}PLAYM4_VIE_MODULES; +#endif + +//ÉèÖùرÕ/¿ªÆôÄ£¿é +//dwModuFlag¶ÔÓ¦PLAYM4_VIE_MODULESºê,¿É×éºÏ +//ÏÈÉèÖÃÄ£¿é¿ªÆô£¬ÔÙÉèÖÃÄ£¿é²ÎÊý£»ÆÚ¼ä²ÉÓÃĬÈϵIJÎÊý; +//¹Ø±ÕÄ£¿éºó£¬ÉÏ´ÎÉèÖõIJÎÊýÇå¿Õ +//ÆäËû½Ó¿Úµ÷Ó㬱ØÐëÔڸýӿڿªÆôÄ£¿éºó£»·ñÔò£¬·µ»Ø´íÎó +PLAYM4_API BOOL __stdcall PlayM4_VIE_SetModuConfig(LONG lPort,int nModuFlag,BOOL bEnable); + +//ÉèÖÃͼÏñÔöÇ¿ÇøÓò£¬NULLȫͼ£»³¬¹ýȫͼ£¬²ÉÓÃȫͼ£»×îСÇøÓò16*16ÏñËØ +//¿ÉÖ§³ÖÉèÖÃÇøÓò£¬×î¶à±È½Ï˵4¸ö£¬µÚÒ»¸ö°æ±¾¿ÉÒÔÖ»Ö§³ÖÒ»¸ö¡£¶à¸öÇøÓòÒªÇó²»ÄÜÖصþ£¬ÓÐÖصþ¾Í±¨´í +PLAYM4_API BOOL __stdcall PlayM4_VIE_SetRegion(LONG lPort,LONG lRegNum,RECT* pRect); + +//»ñÈ¡¿ªÆôÄ£¿é +PLAYM4_API BOOL __stdcall PlayM4_VIE_GetModuConfig(LONG lPort,int* pdwModuFlag); + +//ÉèÖòÎÊý +//먦ÆôÄ£¿éµÄ²ÎÊýÉèÖñ»ºöÂÔ +PLAYM4_API BOOL __stdcall PlayM4_VIE_SetParaConfig(LONG lPort,PLAYM4_VIE_PARACONFIG* pParaConfig); + +//»ñÈ¡¿ªÆôÄ£¿éµÄ²ÎÊý +PLAYM4_API BOOL __stdcall PlayM4_VIE_GetParaConfig(LONG lPort,PLAYM4_VIE_PARACONFIG* pParaConfig); + +//ÒôÊÓƵͬ²½½Ó¿Ú +PLAYM4_API BOOL __stdcall PlayM4_SyncToAudio(LONG nPort, BOOL bSyncToAudio); + +// ˽ÓÐÐÅϢģ¿éÀàÐÍ +typedef enum _PLAYM4_PRIDATA_RENDER +{ + PLAYM4_RENDER_ANA_INTEL_DATA = 0x00000001, //ÖÇÄÜ·ÖÎö + PLAYM4_RENDER_MD = 0x00000002, //Òƶ¯Õì²â + PLAYM4_RENDER_ADD_POS = 0x00000004, //POSÐÅÏ¢ºóµþ¼Ó + PLAYM4_RENDER_ADD_PIC = 0x00000008, //ͼƬµþ¼Ó + PLAYM4_RENDER_FIRE_DETCET = 0x00000010, //ÈȳÉÏñÐÅÏ¢ + PLAYM4_RENDER_TEM = 0x00000020, //ζÈÐÅÏ¢ + PLAYM4_RENDER_TRACK_TEM = 0x00000040, //¹ì¼£ÐÅÏ¢ + PLAYM4_RENDER_THERMAL = 0x00000080 //·ÏÆø¼ì²âºÍÑÌ»ðÆÁ±ÎÐÅÏ¢ +}PLAYM4_PRIDATA_RENDER; + +typedef enum _PLAYM4_THERMAL_FLAG +{ + PLAYM4_THERMAL_FIREMASK = 0x00000001, //ÑÌ»ðÆÁ±Î + PLAYM4_THERMAL_RULEGAS = 0x00000002, //¹æÔò·ÏÆø¼ì²â + PLAYM4_THERMAL_TARGETGAS = 0x00000004 //Ä¿±ê·ÏÆø¼ì²â +}PLAYM4_THERMAL_FLAG; + +typedef enum _PLAYM4_FIRE_ALARM{ + PLAYM4_FIRE_FRAME_DIS = 0x00000001, //»ðµã¿òÏÔʾ + PLAYM4_FIRE_MAX_TEMP = 0x00000002, //×î¸ßÎÂ¶È + PLAYM4_FIRE_MAX_TEMP_POSITION = 0x00000004, //×î¸ßζÈλÖÃÏÔʾ + PLAYM4_FIRE_DISTANCE = 0x00000008, //×î¸ßζȾàÀë}PLAYM4_FIRE_ALARM +}PLAYM4_FIRE_ALARM; + +typedef enum _PLAYM4_TEM_FLAG{ + PLAYM4_TEM_REGION_BOX = 0x00000001, //¿ò²âΠ+ PLAYM4_TEM_REGION_LINE = 0x00000002, //Ïß²âΠ+ PLAYM4_TEM_REGION_POINT = 0x00000004, //µã²âÎÂ}PLAYM4_TEM_FLAG +}PLAYM4_TEM_FLAG; + +typedef enum _PLAYM4_TRACK_FLAG +{ + PLAYM4_TRACK_PEOPLE = 0x00000001, //È˹켣 + PLAYM4_TRACK_VEHICLE = 0x00000002, //³µ¹ì¼£ +}PLAYM4_TRACK_FLAG; + +typedef struct TI_PTZ_INFO_ +{ + unsigned short dwDefVer; //½á¹¹Ìå°æ±¾ + unsigned short dwLength; //PTZ_info³¤¶È£¬ÒÔ8×Ö½ÚΪµ¥Î» + DWORD dwP; //P£¨0~3600£© + DWORD dwT; //T£¨0~3600£© + DWORD dwZ; //Z£¨0~3600£© + BYTE chFSMState; //¸ú×Ù״̬ + BYTE bClearFocusState; //¾Û½¹ÇåÎú״̬£¨0,1£© + BYTE reserved[6]; //6¸ö×Ö½Ú±£Áô +}PTZ_INFO; + + +// ÖÇÄÜÐÅÏ¢¿ª¹Ø +PLAYM4_API BOOL __stdcall PlayM4_RenderPrivateData(LONG nPort, int nIntelType, BOOL bTrue); + +PLAYM4_API BOOL __stdcall PlayM4_RenderPrivateDataEx(LONG nPort, int nIntelType, int nSubType, BOOL bTrue); + +// ¼ÓÃÜÂëÁ÷»Øµ÷,nType=0±íʾÂëÁ÷¼ÓÃܱê¼Çλ·¢Éú±ä»¯¾Í»Øµ÷£¬nType=1±íʾÂëÁ÷ÓмÓÃÜλ·¢Éú»Øµ÷ +PLAYM4_API BOOL __stdcall PlayM4_SetEncryptTypeCallBack(LONG nPort, DWORD nType, + void (CALLBACK* EncryptTypeCBFun)(long nPort, ENCRYPT_INFO* pEncryptInfo, long nUser, long nReserved2), long nUser); +//lType: 1 ±íʾ»ñÈ¡µ±Ç°ÏÔʾ֡PTZÐÅÏ¢¡£ÒÔÌض¨½á¹¹ÌåÐÎʽ´æ´¢ÔÚpInfoÄÚ£¬plLen·µ»Ø³¤¶ÈÐÅÏ¢ +PLAYM4_API BOOL __stdcall PlayM4_GetStreamAdditionalInfo(LONG nPort, LONG lType, BYTE* pInfo, LONG* plLen); + + +#endif //_PLAYM4_H_ diff --git a/lib/HCNetSDKCom/libAudioIntercom.so b/lib/HCNetSDKCom/libAudioIntercom.so new file mode 100644 index 0000000..49685d9 Binary files /dev/null and b/lib/HCNetSDKCom/libAudioIntercom.so differ diff --git a/lib/HCNetSDKCom/libHCAlarm.so b/lib/HCNetSDKCom/libHCAlarm.so new file mode 100644 index 0000000..92a5800 Binary files /dev/null and b/lib/HCNetSDKCom/libHCAlarm.so differ diff --git a/lib/HCNetSDKCom/libHCCoreDevCfg.so b/lib/HCNetSDKCom/libHCCoreDevCfg.so new file mode 100644 index 0000000..def3887 Binary files /dev/null and b/lib/HCNetSDKCom/libHCCoreDevCfg.so differ diff --git a/lib/HCNetSDKCom/libHCDisplay.so b/lib/HCNetSDKCom/libHCDisplay.so new file mode 100644 index 0000000..5782372 Binary files /dev/null and b/lib/HCNetSDKCom/libHCDisplay.so differ diff --git a/lib/HCNetSDKCom/libHCGeneralCfgMgr.so b/lib/HCNetSDKCom/libHCGeneralCfgMgr.so new file mode 100644 index 0000000..a089ca3 Binary files /dev/null and b/lib/HCNetSDKCom/libHCGeneralCfgMgr.so differ diff --git a/lib/HCNetSDKCom/libHCIndustry.so b/lib/HCNetSDKCom/libHCIndustry.so new file mode 100644 index 0000000..f0bc2e5 Binary files /dev/null and b/lib/HCNetSDKCom/libHCIndustry.so differ diff --git a/lib/HCNetSDKCom/libHCPlayBack.so b/lib/HCNetSDKCom/libHCPlayBack.so new file mode 100644 index 0000000..2131d37 Binary files /dev/null and b/lib/HCNetSDKCom/libHCPlayBack.so differ diff --git a/lib/HCNetSDKCom/libHCPreview.so b/lib/HCNetSDKCom/libHCPreview.so new file mode 100644 index 0000000..2f449c7 Binary files /dev/null and b/lib/HCNetSDKCom/libHCPreview.so differ diff --git a/lib/HCNetSDKCom/libHCVoiceTalk.so b/lib/HCNetSDKCom/libHCVoiceTalk.so new file mode 100644 index 0000000..0ef186c Binary files /dev/null and b/lib/HCNetSDKCom/libHCVoiceTalk.so differ diff --git a/lib/HCNetSDKCom/libStreamTransClient.so b/lib/HCNetSDKCom/libStreamTransClient.so new file mode 100644 index 0000000..2a7d7ca Binary files /dev/null and b/lib/HCNetSDKCom/libStreamTransClient.so differ diff --git a/lib/HCNetSDKCom/libSystemTransform.so b/lib/HCNetSDKCom/libSystemTransform.so new file mode 100644 index 0000000..086c631 Binary files /dev/null and b/lib/HCNetSDKCom/libSystemTransform.so differ diff --git a/lib/HCNetSDKCom/libanalyzedata.so b/lib/HCNetSDKCom/libanalyzedata.so new file mode 100644 index 0000000..fa416e9 Binary files /dev/null and b/lib/HCNetSDKCom/libanalyzedata.so differ diff --git a/lib/HCNetSDKCom/libiconv2.so b/lib/HCNetSDKCom/libiconv2.so new file mode 100644 index 0000000..d17b0a8 Binary files /dev/null and b/lib/HCNetSDKCom/libiconv2.so differ diff --git a/lib/HCNetSDK_Log_Switch.xml b/lib/HCNetSDK_Log_Switch.xml new file mode 100644 index 0000000..92ba12c --- /dev/null +++ b/lib/HCNetSDK_Log_Switch.xml @@ -0,0 +1,12 @@ + + + + 3 + ./SDKLOG/ + true + + + 120 + 1 + + \ No newline at end of file diff --git a/lib/libAudioRender.so b/lib/libAudioRender.so new file mode 100644 index 0000000..f39a4a1 Binary files /dev/null and b/lib/libAudioRender.so differ diff --git a/lib/libHCCore.so b/lib/libHCCore.so new file mode 100644 index 0000000..4994c68 Binary files /dev/null and b/lib/libHCCore.so differ diff --git a/lib/libNPQos.so b/lib/libNPQos.so new file mode 100644 index 0000000..4972715 Binary files /dev/null and b/lib/libNPQos.so differ diff --git a/lib/libPlayCtrl.so b/lib/libPlayCtrl.so new file mode 100644 index 0000000..e255c22 Binary files /dev/null and b/lib/libPlayCtrl.so differ diff --git a/lib/libSuperRender.so b/lib/libSuperRender.so new file mode 100644 index 0000000..3f36846 Binary files /dev/null and b/lib/libSuperRender.so differ diff --git a/lib/libcrypto.so.1.1 b/lib/libcrypto.so.1.1 new file mode 100644 index 0000000..88c3746 Binary files /dev/null and b/lib/libcrypto.so.1.1 differ diff --git a/lib/libhcnetsdk.so b/lib/libhcnetsdk.so new file mode 100644 index 0000000..63deac4 Binary files /dev/null and b/lib/libhcnetsdk.so differ diff --git a/lib/libhpr.so b/lib/libhpr.so new file mode 100644 index 0000000..8efcabb Binary files /dev/null and b/lib/libhpr.so differ diff --git a/lib/libopenal.so.1 b/lib/libopenal.so.1 new file mode 100644 index 0000000..a9dcb82 Binary files /dev/null and b/lib/libopenal.so.1 differ diff --git a/lib/libssl.so.1.1 b/lib/libssl.so.1.1 new file mode 100644 index 0000000..f3e4481 Binary files /dev/null and b/lib/libssl.so.1.1 differ diff --git a/lib/libz.so b/lib/libz.so new file mode 100644 index 0000000..13b4ed9 Binary files /dev/null and b/lib/libz.so differ