HKC/DM_Weight/HIKVISION/CHCNetSDK.cs

20376 lines
1.0 MiB
C#
Raw Normal View History

using System;
using System.Runtime.InteropServices;
namespace PreviewDemo
{
/// <summary>
/// CHCNetSDK <20><>ժҪ˵<D2AA><CBB5><EFBFBD><EFBFBD>
/// </summary>
public class CHCNetSDK
{
public CHCNetSDK()
{
//
// TODO: <20>ڴ˴<DAB4><CBB4><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9><EFBFBD><ECBAAF><EFBFBD>߼<EFBFBD>
//
}
//SDK<44><4B><EFBFBD><EFBFBD>
public const int SDK_PLAYMPEG4 = 1;//<2F><><EFBFBD>ſ<EFBFBD>
public const int SDK_HCNETSDK = 2;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NAME_LEN = 32;//<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PASSWD_LEN = 16;//<2F><><EFBFBD><EFBFBD><EBB3A4>
public const int GUID_LEN = 16; //GUID<49><44><EFBFBD><EFBFBD>
public const int DEV_TYPE_NAME_LEN = 24; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD>
public const int MAX_NAMELEN = 16;//DVR<56><52><EFBFBD>ص<EFBFBD>½<EFBFBD><C2BD>
public const int MAX_RIGHT = 32;//<2F>豸֧<E8B1B8>ֵ<EFBFBD>Ȩ<EFBFBD>ޣ<EFBFBD>1-12<31><32>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ȩ<EFBFBD>ޣ<EFBFBD>13-32<33><32>ʾԶ<CABE><D4B6>Ȩ<EFBFBD>ޣ<EFBFBD>
public const int SERIALNO_LEN = 48;//<2F><><EFBFBD>кų<D0BA><C5B3><EFBFBD>
public const int MACADDR_LEN = 6;//mac<61><63>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
public const int MAX_ETHERNET = 2;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>
public const int MAX_NETWORK_CARD = 4; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int PATHNAME_LEN = 128;//·<><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_NUMBER_LEN = 32; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_NAME_LEN = 128; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_TIMESEGMENT = 4;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ICR_NUM = 8; //ץ<>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD>ƬԤ<C6AC>õ<EFBFBD><C3B5><EFBFBD>
public const int MAX_SHELTERNUM = 4;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PHONENUMBER_LEN = 32;//pppoe<6F><65><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_DISKNUM = 16;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>
public const int MAX_DISKNUM_V10 = 8;//1.2<EFBFBD>汾֮ǰ<EFBFBD>
public const int MAX_WINDOW_V30 = 32;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>󲥷Ŵ<F3B2A5B7><C5B4><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_WINDOW = 16;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>
public const int MAX_VGA_V30 = 4;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ɽ<EFBFBD>VGA<47><41>
public const int MAX_VGA = 1;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ɽ<EFBFBD>VGA<47><41>
public const int MAX_USERNUM_V30 = 32;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public const int MAX_USERNUM = 16;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public const int MAX_EXCEPTIONNUM_V30 = 32;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_EXCEPTIONNUM = 16;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_LINK = 6;//8000<30><EFBFBD><E8B1B8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ITC_EXCEPTIONOUT = 32;//ץ<>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>󱨾<EFBFBD><F3B1A8BE><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_DECPOOLNUM = 4;//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_DECNUM = 4;//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>ֻ<EFBFBD><D6BB>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_TRANSPARENTNUM = 2;//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int MAX_CYCLE_CHAN = 16; //<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭͨ<D1AD><CDA8><EFBFBD><EFBFBD>
public const int MAX_CYCLE_CHAN_V30 = 64;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯͨ<D1AF><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>
public const int MAX_DIRNAME_LENGTH = 80;//<2F><><EFBFBD><EFBFBD>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>
public const int MAX_STRINGNUM_V30 = 8;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>OSD<53>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_STRINGNUM = 4;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>OSD<53>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_STRINGNUM_EX = 8;//8000<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ
public const int MAX_AUXOUT_V30 = 16;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_AUXOUT = 4;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_HD_GROUP = 16;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_NFS_DISK = 8; //8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>NFSӲ<53><D3B2><EFBFBD><EFBFBD>
public const int IW_ESSID_MAX_SIZE = 32;//WIFI<46><49>SSID<49>ų<EFBFBD><C5B3><EFBFBD>
public const int IW_ENCODING_TOKEN_MAX = 32;//WIFI<46><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>
public const int WIFI_WEP_MAX_KEY_COUNT = 4;
public const int WIFI_WEP_MAX_KEY_LENGTH = 33;
public const int WIFI_WPA_PSK_MAX_KEY_LENGTH = 63;
public const int WIFI_WPA_PSK_MIN_KEY_LENGTH = 8;
public const int WIFI_MAX_AP_COUNT = 20;
public const int MAX_SERIAL_NUM = 64;//<2F><><EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>·<EFBFBD><C2B7>
public const int MAX_DDNS_NUMS = 10;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ddns<6E><73>
public const int MAX_EMAIL_ADDR_LEN = 48;//<2F><><EFBFBD><EFBFBD>email<69><6C>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
public const int MAX_EMAIL_PWD_LEN = 32;//<2F><><EFBFBD><EFBFBD>email<69><6C><EFBFBD><EFBFBD><EBB3A4>
public const int MAXPROGRESS = 100;//<2F>ط<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٷ<EFBFBD><D9B7><EFBFBD>
public const int MAX_SERIALNUM = 2;//8000<30>豸֧<E8B1B8>ֵĴ<D6B5><C4B4><EFBFBD><EFBFBD><EFBFBD> 1-232<33><32> 2-485
public const int CARDNUM_LEN = 20;//<2F><><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int CARDNUM_LEN_OUT = 32; //<2F>ⲿ<EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int MAX_VIDEOOUT_V30 = 4;//9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_VIDEOOUT = 2;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_PRESET_V30 = 256;// 9000<30>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD>̨Ԥ<CCA8>õ<EFBFBD><C3B5><EFBFBD>
public const int MAX_TRACK_V30 = 256;// 9000<30>豸֧<E8B1B8>ֵĻ<D6B5><C4BB><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD>
public const int MAX_CRUISE_V30 = 256;// 9000<30>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD>̨Ѳ<CCA8><D1B2><EFBFBD><EFBFBD>
public const int MAX_PRESET = 128;// 8000<30>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD>̨Ԥ<CCA8>õ<EFBFBD><C3B5><EFBFBD>
public const int MAX_TRACK = 128;// 8000<30>豸֧<E8B1B8>ֵĻ<D6B5><C4BB><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD>
public const int MAX_CRUISE = 128;// 8000<30>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD>̨Ѳ<CCA8><D1B2><EFBFBD><EFBFBD>
public const int CRUISE_MAX_PRESET_NUMS = 32;// һ<><D2BB>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>
public const int MAX_SERIAL_PORT = 8;//9000<30>豸֧<E8B1B8><D6A7>232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_PREVIEW_MODE = 8;// <20>豸֧<E8B1B8><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>ģʽ<C4A3><CABD>Ŀ 1<><31><EFBFBD><EFBFBD>,4<><34><EFBFBD><EFBFBD>,9<><39><EFBFBD><EFBFBD>,16<31><36><EFBFBD><EFBFBD>....
public const int MAX_MATRIXOUT = 16;// <20><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int LOG_INFO_LEN = 11840; // <20><>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int DESC_LEN = 16;// <20><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PTZ_PROTOCOL_NUM = 200;// 9000<30><30><EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>̨Э<CCA8><D0AD><EFBFBD><EFBFBD>
public const int MAX_AUDIO = 1;//8000<30><30><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int MAX_AUDIO_V30 = 2;//9000<30><30><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int MAX_CHANNUM = 16;//8000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int MAX_ALARMIN = 16;//8000<30><EFBFBD><E8B1B8><EFBFBD>󱨾<EFBFBD><F3B1A8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ALARMOUT = 4;//8000<30><EFBFBD><E8B1B8><EFBFBD>󱨾<EFBFBD><F3B1A8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//9000 IPC<50><43><EFBFBD><EFBFBD>
public const int MAX_ANALOG_CHANNUM = 32;//<2F><><EFBFBD><EFBFBD>32<33><32>ģ<EFBFBD><C4A3>ͨ<EFBFBD><CDA8>
public const int MAX_ANALOG_ALARMOUT = 32; //<2F><><EFBFBD><EFBFBD>32·ģ<C2B7><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ANALOG_ALARMIN = 32;//<2F><><EFBFBD><EFBFBD>32·ģ<C2B7><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_IP_DEVICE = 32;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><EFBFBD><E8B1B8>
public const int MAX_IP_DEVICE_V40 = 64;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><EFBFBD><E8B1B8>
public const int MAX_IP_CHANNEL = 32;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IPͨ<50><CDA8><EFBFBD><EFBFBD>
public const int MAX_IP_ALARMIN = 128;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_IP_ALARMOUT = 64;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_IP_ALARMIN_V40 = 4096; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_IP_ALARMOUT_V40 = 4096; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_RECORD_FILE_NUM = 20; // ÿ<><C3BF>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
//SDK_V31 ATM
public const int MAX_ATM_NUM = 1;
public const int MAX_ACTION_TYPE = 12;
public const int ATM_FRAMETYPE_NUM = 4;
public const int MAX_ATM_PROTOCOL_NUM = 1025;
public const int ATM_PROTOCOL_SORT = 4;
public const int ATM_DESC_LEN = 32;
// SDK_V31 ATM
/* <20><><EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP֧<50><D6A7> */
public const int MAX_CHANNUM_V30 = MAX_ANALOG_CHANNUM + MAX_IP_CHANNEL;//64
public const int MAX_ALARMOUT_V30 = MAX_ANALOG_ALARMOUT + MAX_IP_ALARMOUT;//96
public const int MAX_ALARMIN_V30 = MAX_ANALOG_ALARMIN + MAX_IP_ALARMIN;//160
public const int MAX_CHANNUM_V40 = 512;
public const int MAX_ALARMOUT_V40 = MAX_IP_ALARMOUT_V40 + MAX_ANALOG_ALARMOUT;//4128
public const int MAX_ALARMIN_V40 = MAX_IP_ALARMIN_V40 + MAX_ANALOG_ALARMOUT;//4128
public const int MAX_MULTI_AREA_NUM = 24;
public const int MAX_HUMAN_PICTURE_NUM = 10; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC>
public const int MAX_HUMAN_BIRTHDATE_LEN = 10;
public const int MAX_LAYERNUMS = 32;
public const int MAX_ROIDETECT_NUM = 8; //֧<>ֵ<EFBFBD>ROI<4F><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_LANERECT_NUM = 5; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_FORTIFY_NUM = 10; //<2F><><EFBFBD>󲼷<EFBFBD><F3B2BCB7><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_INTERVAL_NUM = 4; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_CHJC_NUM = 3; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʡ<EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_VL_NUM = 5; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD>
public const int MAX_DRIVECHAN_NUM = 16; //<2F><><EFBFBD>󳵵<EFBFBD><F3B3B5B5><EFBFBD>
public const int MAX_COIL_NUM = 3; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD>
public const int MAX_SIGNALLIGHT_NUM = 6; //<2F><><EFBFBD><EFBFBD><EFBFBD>źŵƸ<C5B5><C6B8><EFBFBD>
public const int LEN_32 = 32;
public const int LEN_31 = 31;
public const int MAX_CABINET_COUNT = 8; //<2F><><EFBFBD><EFBFBD>֧<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ID_LEN = 48;
public const int MAX_PARKNO_LEN = 16;
public const int MAX_ALARMREASON_LEN = 32;
public const int MAX_UPGRADE_INFO_LEN= 48; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>Ϣ(ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
public const int MAX_CUSTOMDIR_LEN = 32; //<2F>Զ<EFBFBD><D4B6><EFBFBD>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>
public const int MAX_TRANSPARENT_CHAN_NUM = 4; //ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int MAX_TRANSPARENT_ACCESS_NUM = 4; //ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//ITS
public const int MAX_PARKING_STATUS = 8; //<2F><>λ״̬ 0<><30><EFBFBD><EFBFBD><EFBFBD>޳<EFBFBD><DEB3><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9>(<28><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD>), 3<><33><EFBFBD>⳵λ
public const int MAX_PARKING_NUM = 4; //һ<><D2BB>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><34><EFBFBD><EFBFBD>λ (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD>λ <20><><EFBFBD><EFBFBD>0<EFBFBD><30>3)
public const int MAX_ITS_SCENE_NUM = 16; //<2F><><EFBFBD>󳡾<EFBFBD><F3B3A1BE><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_SCENE_TIMESEG_NUM = 16; //<2F><><EFBFBD>󳡾<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_IVMS_IP_CHANNEL = 128; //<2F><><EFBFBD><EFBFBD>IPͨ<50><CDA8><EFBFBD><EFBFBD>
public const int DEVICE_ID_LEN = 48; //<2F><EFBFBD><E8B1B8><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int MONITORSITE_ID_LEN = 48; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int MAX_AUXAREA_NUM = 16; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int MAX_SLAVE_CHANNEL_NUM = 16; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_SCH_TASKS_NUM = 10;
public const int MAX_SERVERID_LEN = 64; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49>ij<EFBFBD><C4B3><EFBFBD>
public const int MAX_SERVERDOMAIN_LEN = 128; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_AUTHENTICATEID_LEN = 64; //<2F><>֤ID<49><44><EFBFBD>󳤶<EFBFBD>
public const int MAX_AUTHENTICATEPASSWD_LEN = 32; //<2F><>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_SERVERNAME_LEN = 64; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public const int MAX_COMPRESSIONID_LEN = 64; //<2F><><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_SIPSERVER_ADDRESS_LEN = 128; //SIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ֧<D6B7><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ
//ѹ<>߱<EFBFBD><DFB1><EFBFBD>
public const int MAX_PlATE_NO_LEN = 32; //<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD> 2013-09-27
public const int UPNP_PORT_NUM = 12; //upnp<6E>˿<EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD>˿<EFBFBD><CBBF><EFBFBD>Ŀ
public const int MAX_LOCAL_ADDR_LEN = 96; //SOCKS<4B><53><EFBFBD>󱾵<EFBFBD><F3B1BEB5><EFBFBD><EFBFBD>θ<EFBFBD><CEB8><EFBFBD>
public const int MAX_COUNTRY_NAME_LEN = 4; //<2F><><EFBFBD>Ҽ<EFBFBD>д<EFBFBD><D0B4><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD>
public const int THERMOMETRY_ALARMRULE_NUM = 40; //<2F>ȳ<EFBFBD><C8B3>񱨾<EFBFBD><F1B1A8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int ACS_CARD_NO_LEN = 32; //<2F>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int MAX_ID_NUM_LEN = 32; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int MAX_ID_NAME_LEN = 128; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ID_ADDR_LEN = 280; //<2F><><EFBFBD><EFBFBD>סַ<D7A1><D6B7><EFBFBD><EFBFBD>
public const int MAX_ID_ISSUING_AUTHORITY_LEN = 128; //<2F><><EFBFBD><EFBFBD>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><D8B3><EFBFBD>
public const int MAX_CARD_RIGHT_PLAN_NUM = 4; //<2F><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_GROUP_NUM_128 = 128; //<2F><><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD>
public const int MAX_CARD_READER_NUM = 64; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_SNEAK_PATH_NODE = 8; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_MULTI_DOOR_INTERLOCK_GROUP = 8; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_INTER_LOCK_DOOR_NUM = 8; //һ<><D2BB><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_CASE_SENSOR_NUM = 8; //<2F><><EFBFBD><EFBFBD>case sensor<6F><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_DOOR_NUM_256 = 256; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_READER_ROUTE_NUM = 16; //<2F><><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2>ѭ<EFBFBD><D1AD>·<EFBFBD><C2B7>
public const int MAX_FINGER_PRINT_NUM = 10; //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD>Ƹ<EFBFBD><C6B8><EFBFBD>
public const int MAX_CARD_READER_NUM_512 = 512; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_SDK_MULTI_CARD_GROUP_NUM_20 = 20; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>
public const int CARD_PASSWORD_LEN = 8; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB3A4>
public const int MAX_DOOR_CODE_LEN = 8; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB3A4>
public const int MAX_LOCK_CODE_LEN = 8; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB3A4>
public const int MAX_NOTICE_NUMBER_LEN = 32; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_NOTICE_THEME_LEN = 64; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_NOTICE_DETAIL_LEN = 1024; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_NOTICE_PIC_NUM = 6; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public const int MAX_DEV_NUMBER_LEN = 32; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int LOCK_NAME_LEN = 32; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int GROUP_NAME_LEN = 32; //Ⱥ<><C8BA><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD>
public const int GROUP_COMBINATION_NUM = 8; //Ⱥ<><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MULTI_CARD_GROUP_NUM = 4; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>
public const int NET_SDK_EMPLOYEE_NO_LEN = 32; //<2F><><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int NET_SDK_UUID_LEN = 36; //UUID<49><44><EFBFBD><EFBFBD>
public const int NET_SDK_EHOME_KEY_LEN = 32; //EHome Key<65><79><EFBFBD><EFBFBD>
public const int NET_DEV_NAME_LEN = 64; //<2F><EFBFBD><E8B1B8><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD>
public const int NET_DEV_TYPE_NAME_LEN = 64; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD>
public const int VCA_MAX_POLYGON_POINT_NUM = 10;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>10<31><30><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_RULE_NUM = 8;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_TARGET_NUM = 30;//<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_CALIB_PT = 6;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MIN_CALIB_PT = 4;//<2F><>С<EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_TIMESEGMENT_2 = 2;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_LICENSE_LEN = 16;//<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int MAX_PLATE_NUM = 3;//<2F><><EFBFBD>Ƹ<EFBFBD><C6B8><EFBFBD>
public const int MAX_MASK_REGION_NUM = 4;//<2F><><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_SEGMENT_NUM = 6;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int MIN_SEGMENT_NUM = 3;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int MAX_CATEGORY_LEN = 8; //<2F><><EFBFBD>Ƹ<EFBFBD><C6B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
public const int SERIAL_NO_LEN = 16; //<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
public const int ILLEGAL_LEN = 32; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB3A4>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>ʽ
public const int NORMALCONNECT = 1;
public const int MEDIACONNECT = 2;
//<2F><EFBFBD>ͺ<EFBFBD>(<28><><EFBFBD><EFBFBD>)
public const int HCDVR = 1;
public const int MEDVR = 2;
public const int PCDVR = 3;
public const int HC_9000 = 4;
public const int HF_I = 5;
public const int PCNVR = 6;
public const int HC_76NVR = 8;
//NVR<56><52><EFBFBD><EFBFBD>
public const int DS8000HC_NVR = 0;
public const int DS9000HC_NVR = 1;
public const int DS8000ME_NVR = 2;
/*******************ȫ<>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD> begin**********************/
public const int NET_DVR_NOERROR = 0;//û<>д<EFBFBD><D0B4><EFBFBD>
public const int NET_DVR_PASSWORD_ERROR = 1;//<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_NOENOUGHPRI = 2;//Ȩ<>޲<EFBFBD><DEB2><EFBFBD>
public const int NET_DVR_NOINIT = 3;//û<>г<EFBFBD>ʼ<EFBFBD><CABC>
public const int NET_DVR_CHANNEL_ERROR = 4;//ͨ<><CDA8><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>
public const int NET_DVR_OVER_MAXLINK = 5;//<2F><><EFBFBD>ӵ<EFBFBD>DVR<56>Ŀͻ<C4BF><CDBB>˸<EFBFBD><CBB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_VERSIONNOMATCH = 6;//<2F><EFBFBD><E6B1BE>ƥ<EFBFBD><C6A5>
public const int NET_DVR_NETWORK_FAIL_CONNECT = 7;//<2F><><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_NETWORK_SEND_ERROR = 8;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_NETWORK_RECV_ERROR = 9;//<2F>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_NETWORK_RECV_TIMEOUT = 10;//<2F>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>ʱ
public const int NET_DVR_NETWORK_ERRORDATA = 11;//<2F><><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_ORDER_ERROR = 12;//<2F><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_OPERNOPERMIT = 13;//<2F>޴<EFBFBD>Ȩ<EFBFBD><C8A8>
public const int NET_DVR_COMMANDTIMEOUT = 14;//DVR<56><52><EFBFBD><EFBFBD>ִ<EFBFBD>г<EFBFBD>ʱ
public const int NET_DVR_ERRORSERIALPORT = 15;//<2F><><EFBFBD>ںŴ<DABA><C5B4><EFBFBD>
public const int NET_DVR_ERRORALARMPORT = 16;//<2F><><EFBFBD><EFBFBD><EFBFBD>˿ڴ<CBBF><DAB4><EFBFBD>
public const int NET_DVR_PARAMETER_ERROR = 17;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_CHAN_EXCEPTION = 18;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>״̬
public const int NET_DVR_NODISK = 19;//û<><C3BB>Ӳ<EFBFBD><D3B2>
public const int NET_DVR_ERRORDISKNUM = 20;//Ӳ<>̺Ŵ<CCBA><C5B4><EFBFBD>
public const int NET_DVR_DISK_FULL = 21;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>
public const int NET_DVR_DISK_ERROR = 22;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̳<EFBFBD><CCB3><EFBFBD>
public const int NET_DVR_NOSUPPORT = 23;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>
public const int NET_DVR_BUSY = 24;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æ
public const int NET_DVR_MODIFY_FAIL = 25;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸IJ<DEB8><C4B2>ɹ<EFBFBD>
public const int NET_DVR_PASSWORD_FORMAT_ERROR = 26;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ȷ
public const int NET_DVR_DISK_FORMATING = 27;//Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_DVRNORESOURCE = 28;//DVR<56><52>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public const int NET_DVR_DVROPRATEFAILED = 29;//DVR<56><52><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_OPENHOSTSOUND_FAIL = 30;//<2F><><EFBFBD><EFBFBD>PC<50><43><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_DVRVOICEOPENED = 31;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD>ռ<EFBFBD><D5BC>
public const int NET_DVR_TIMEINPUTERROR = 32;//ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB2BB>ȷ
public const int NET_DVR_NOSPECFILE = 33;//<2F>ط<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
public const int NET_DVR_CREATEFILE_ERROR = 34;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_FILEOPENFAIL = 35;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_OPERNOTFINISH = 36; //<2F>ϴεIJ<CEB5><C4B2><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GETPLAYTIMEFAIL = 37;//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD>ŵ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYFAIL = 38;//<2F><><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>
public const int NET_DVR_FILEFORMAT_ERROR = 39;//<2F>ļ<EFBFBD><C4BC><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ȷ
public const int NET_DVR_DIR_ERROR = 40;//·<><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_ALLOC_RESOURCE_ERROR = 41;//<2F><>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_AUDIO_MODE_ERROR = 42;//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public const int NET_DVR_NOENOUGH_BUF = 43;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫С
public const int NET_DVR_CREATESOCKET_ERROR = 44;//<2F><><EFBFBD><EFBFBD>SOCKET<45><54><EFBFBD><EFBFBD>
public const int NET_DVR_SETSOCKET_ERROR = 45;//<2F><><EFBFBD><EFBFBD>SOCKET<45><54><EFBFBD><EFBFBD>
public const int NET_DVR_MAX_NUM = 46;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFB5BD><EFBFBD><EFBFBD>
public const int NET_DVR_USERNOTEXIST = 47;//<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_WRITEFLASHERROR = 48;//дFLASH<53><48><EFBFBD><EFBFBD>
public const int NET_DVR_UPGRADEFAIL = 49;//DVR<56><52><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_CARDHAVEINIT = 50;//<2F><><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYERFAILED = 51;//<2F><><EFBFBD>ò<EFBFBD><C3B2>ſ<EFBFBD><C5BF><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_MAX_USERNUM = 52;//<2F><EFBFBD><E8B1B8><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFB5BD><EFBFBD><EFBFBD>
public const int NET_DVR_GETLOCALIPANDMACFAIL = 53;//<2F><><EFBFBD>ÿͻ<C3BF><CDBB>˵<EFBFBD>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַʧ<D6B7><CAA7>
public const int NET_DVR_NOENCODEING = 54;//<2F><>ͨ<EFBFBD><CDA8>û<EFBFBD>б<EFBFBD><D0B1><EFBFBD>
public const int NET_DVR_IPMISMATCH = 55;//IP<49><50>ַ<EFBFBD><D6B7>ƥ<EFBFBD><C6A5>
public const int NET_DVR_MACMISMATCH = 56;//MAC<41><43>ַ<EFBFBD><D6B7>ƥ<EFBFBD><C6A5>
public const int NET_DVR_UPGRADELANGMISMATCH = 57;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>Բ<EFBFBD>ƥ<EFBFBD><C6A5>
public const int NET_DVR_MAX_PLAYERPORT = 58;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFB5BD><EFBFBD><EFBFBD>
public const int NET_DVR_NOSPACEBACKUP = 59;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>
public const int NET_DVR_NODEVICEBACKUP = 60;//û<><C3BB><EFBFBD>ҵ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD>
public const int NET_DVR_PICTURE_BITS_ERROR = 61;//ͼ<><CDBC><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>24ɫ
public const int NET_DVR_PICTURE_DIMENSION_ERROR = 62;//ͼƬ<CDBC><C6AC>*<2A><><EFBFBD><EFBFBD><EFBFBD>ޣ<EFBFBD> <20><>128*256
public const int NET_DVR_PICTURE_SIZ_ERROR = 63;//ͼƬ<CDBC><C6AC>С<EFBFBD><D0A1><EFBFBD>ޣ<EFBFBD><DEA3><EFBFBD>100K
public const int NET_DVR_LOADPLAYERSDKFAILED = 64;//<2F><><EFBFBD>뵱ǰĿ¼<C4BF><C2BC>Player Sdk<64><6B><EFBFBD><EFBFBD>
public const int NET_DVR_LOADPLAYERSDKPROC_ERROR = 65;//<2F>Ҳ<EFBFBD><D2B2><EFBFBD>Player Sdk<64><6B>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_LOADDSSDKFAILED = 66;//<2F><><EFBFBD>뵱ǰĿ¼<C4BF><C2BC>DSsdk<64><6B><EFBFBD><EFBFBD>
public const int NET_DVR_LOADDSSDKPROC_ERROR = 67;//<2F>Ҳ<EFBFBD><D2B2><EFBFBD>DsSdk<64><6B>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_DSSDK_ERROR = 68;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DsSdk<64><6B>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_VOICEMONOPOLIZE = 69;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ
public const int NET_DVR_JOINMULTICASTFAILED = 70;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0B2A5>ʧ<EFBFBD><CAA7>
public const int NET_DVR_CREATEDIR_ERROR = 71;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD>ļ<EFBFBD>Ŀ¼ʧ<C2BC><CAA7>
public const int NET_DVR_BINDSOCKET_ERROR = 72;//<2F><><EFBFBD><EFBFBD><EFBFBD>׽<EFBFBD><D7BD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_SOCKETCLOSE_ERROR = 73;//socket<65><74><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6><CFA3>˴<EFBFBD><CBB4><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϻ<D0B6>Ŀ<EFBFBD>ĵز<C4B5><D8B2>ɴ<EFBFBD>
public const int NET_DVR_USERID_ISUSING = 74;//ע<><D7A2>ʱ<EFBFBD>û<EFBFBD>ID<49><44><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD>
public const int NET_DVR_SOCKETLISTEN_ERROR = 75;//<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_PROGRAM_EXCEPTION = 76;//<2F><><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_WRITEFILE_FAILED = 77;//д<>ļ<EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_FORMAT_READONLY = 78;//<2F><>ֹ<EFBFBD><D6B9>ʽ<EFBFBD><CABD>ֻ<EFBFBD><D6BB>Ӳ<EFBFBD><D3B2>
public const int NET_DVR_WITHSAMEUSERNAME = 79;//<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ýṹ<C3BD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public const int NET_DVR_DEVICETYPE_ERROR = 80;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ͺŲ<CDBA>ƥ<EFBFBD><C6A5>
public const int NET_DVR_LANGUAGE_ERROR = 81;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>Բ<EFBFBD>ƥ<EFBFBD><C6A5>
public const int NET_DVR_PARAVERSION_ERROR = 82;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B1BE>ƥ<EFBFBD><C6A5>
public const int NET_DVR_IPCHAN_NOTALIVE = 83; //Ԥ<><D4A4>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>IPͨ<50><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_RTSP_SDK_ERROR = 84;//<2F><><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>IPCͨѶ<CDA8><D1B6>StreamTransClient.dllʧ<6C><CAA7>
public const int NET_DVR_CONVERT_SDK_ERROR = 85;//<2F><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int NET_DVR_IPC_COUNT_OVERFLOW = 86;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ip<69><70><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int NET_DVR_USER_LOCKED = 153;
public const int NET_PLAYM4_NOERROR = 500;//no error
public const int NET_PLAYM4_PARA_OVER = 501;//input parameter is invalid
public const int NET_PLAYM4_ORDER_ERROR = 502;//The order of the function to be called is error
public const int NET_PLAYM4_TIMER_ERROR = 503;//Create multimedia clock failed
public const int NET_PLAYM4_DEC_VIDEO_ERROR = 504;//Decode video data failed
public const int NET_PLAYM4_DEC_AUDIO_ERROR = 505;//Decode audio data failed
public const int NET_PLAYM4_ALLOC_MEMORY_ERROR = 506;//Allocate memory failed
public const int NET_PLAYM4_OPEN_FILE_ERROR = 507;//Open the file failed
public const int NET_PLAYM4_CREATE_OBJ_ERROR = 508;//Create thread or event failed
public const int NET_PLAYM4_CREATE_DDRAW_ERROR = 509;//Create DirectDraw object failed
public const int NET_PLAYM4_CREATE_OFFSCREEN_ERROR = 510;//failed when creating off-screen surface
public const int NET_PLAYM4_BUF_OVER = 511;//buffer is overflow
public const int NET_PLAYM4_CREATE_SOUND_ERROR = 512;//failed when creating audio device
public const int NET_PLAYM4_SET_VOLUME_ERROR = 513;//Set volume failed
public const int NET_PLAYM4_SUPPORT_FILE_ONLY = 514;//The function only support play file
public const int NET_PLAYM4_SUPPORT_STREAM_ONLY = 515;//The function only support play stream
public const int NET_PLAYM4_SYS_NOT_SUPPORT = 516;//System not support
public const int NET_PLAYM4_FILEHEADER_UNKNOWN = 517;//No file header
public const int NET_PLAYM4_VERSION_INCORRECT = 518;//The version of decoder and encoder is not adapted
public const int NET_PALYM4_INIT_DECODER_ERROR = 519;//Initialize decoder failed
public const int NET_PLAYM4_CHECK_FILE_ERROR = 520;//The file data is unknown
public const int NET_PLAYM4_INIT_TIMER_ERROR = 521;//Initialize multimedia clock failed
public const int NET_PLAYM4_BLT_ERROR = 522;//Blt failed
public const int NET_PLAYM4_UPDATE_ERROR = 523;//Update failed
public const int NET_PLAYM4_OPEN_FILE_ERROR_MULTI = 524;//openfile error, streamtype is multi
public const int NET_PLAYM4_OPEN_FILE_ERROR_VIDEO = 525;//openfile error, streamtype is video
public const int NET_PLAYM4_JPEG_COMPRESS_ERROR = 526;//JPEG compress error
public const int NET_PLAYM4_EXTRACT_NOT_SUPPORT = 527;//Don't support the version of this file
public const int NET_PLAYM4_EXTRACT_DATA_ERROR = 528;//extract video data failed
/*******************ȫ<>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD> end**********************/
/*************************************************
NET_DVR_IsSupport()<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
1<EFBFBD><EFBFBD>9λ<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>TRUE)<EFBFBD><EFBFBD>ʾ֧<EFBFBD>֣<EFBFBD>
**************************************************/
public const int NET_DVR_SUPPORT_DDRAW = 1;//֧<><D6A7>DIRECTDRAW<41><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3>򲥷<EFBFBD><F2B2A5B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD><DCB9><EFBFBD>
public const int NET_DVR_SUPPORT_BLT = 2;//<2F>Կ<EFBFBD>֧<EFBFBD><D6A7>BLT<4C><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3>򲥷<EFBFBD><F2B2A5B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD><DCB9><EFBFBD>
public const int NET_DVR_SUPPORT_BLTFOURCC = 4;//<2F>Կ<EFBFBD>BLT֧<54><D6A7><EFBFBD><EFBFBD>ɫת<C9AB><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>RGBת<42><D7AA>
public const int NET_DVR_SUPPORT_BLTSHRINKX = 8;//<2F>Կ<EFBFBD>BLT֧<54><D6A7>X<EFBFBD><58><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
public const int NET_DVR_SUPPORT_BLTSHRINKY = 16;//<2F>Կ<EFBFBD>BLT֧<54><D6A7>Y<EFBFBD><59><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
public const int NET_DVR_SUPPORT_BLTSTRETCHX = 32;//<2F>Կ<EFBFBD>BLT֧<54><D6A7>X<EFBFBD><58><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
public const int NET_DVR_SUPPORT_BLTSTRETCHY = 64;//<2F>Կ<EFBFBD>BLT֧<54><D6A7>Y<EFBFBD><59><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
public const int NET_DVR_SUPPORT_SSE = 128;//CPU֧<55><D6A7>SSEָ<45>Intel Pentium3<6D><33><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>SSEָ<45><D6B8>
public const int NET_DVR_SUPPORT_MMX = 256;//CPU֧<55><D6A7>MMXָ<58><EFBFBD><EEBCAF>Intel Pentium3<6D><33><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>SSEָ<45><D6B8>
/**********************<2A><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> begin*************************/
public const int LIGHT_PWRON = 2;// <20><>ͨ<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD>Դ
public const int WIPER_PWRON = 3;// <20><>ͨ<EFBFBD><CDA8>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD>
public const int FAN_PWRON = 4;// <20><>ͨ<EFBFBD><CDA8><EFBFBD>ȿ<EFBFBD><C8BF><EFBFBD>
public const int HEATER_PWRON = 5;// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int AUX_PWRON1 = 6;// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public const int AUX_PWRON2 = 7;// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public const int SET_PRESET = 8;// <20><><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD>
public const int CLE_PRESET = 9;// <20><><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD>
public const int ZOOM_IN = 11;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>SS<53><53><EFBFBD><EFBFBD>(<28><><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>)
public const int ZOOM_OUT = 12;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>SS<53><53>С(<28><><EFBFBD>ʱ<EFBFBD>С)
public const int FOCUS_NEAR = 13;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>SSǰ<53><C7B0>
public const int FOCUS_FAR = 14;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>SS<53><53><EFBFBD><EFBFBD>
public const int IRIS_OPEN = 15;// <20><>Ȧ<EFBFBD><C8A6><EFBFBD>ٶ<EFBFBD>SS<53><53><EFBFBD><EFBFBD>
public const int IRIS_CLOSE = 16;// <20><>Ȧ<EFBFBD><C8A6><EFBFBD>ٶ<EFBFBD>SS<53><53>С
public const int TILT_UP = 21;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD> */
public const int TILT_DOWN = 22;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6>¸<EFBFBD> */
public const int PAN_LEFT = 23;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD>ת */
public const int PAN_RIGHT = 24;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD>ת */
public const int UP_LEFT = 25;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת */
public const int UP_RIGHT = 26;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת */
public const int DOWN_LEFT = 27;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6>¸<EFBFBD><C2B8><EFBFBD><EFBFBD><EFBFBD>ת */
public const int DOWN_RIGHT = 28;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6>¸<EFBFBD><C2B8><EFBFBD><EFBFBD><EFBFBD>ת */
public const int PAN_AUTO = 29;/* <20><>̨<EFBFBD><CCA8>SS<53><53><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>ɨ<EFBFBD><C9A8> */
public const int FILL_PRE_SEQ = 30;/* <20><>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int SET_SEQ_DWELL = 31;/* <20><><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ʱ<EFBFBD><CAB1> */
public const int SET_SEQ_SPEED = 32;/* <20><><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>ٶ<EFBFBD> */
public const int CLE_PRE_SEQ = 33;/* <20><>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE> */
public const int STA_MEM_CRUISE = 34;/* <20><>ʼ<EFBFBD><CABC>¼ */
public const int STO_MEM_CRUISE = 35;/* ֹͣ<CDA3><D6B9>¼ */
public const int RUN_CRUISE = 36;/* <20><>ʼ */
public const int RUN_SEQ = 37;/* <20><>ʼѲ<CABC><D1B2> */
public const int STOP_SEQ = 38;/* ֹͣѲ<D6B9><D1B2> */
public const int GOTO_PRESET = 39;/* <20><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>Ԥ<EFBFBD>õ<EFBFBD> */
/**********************<2A><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> end*************************/
/*************************************************
<EFBFBD>ط<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ſ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
NET_DVR_PlayBackControl
NET_DVR_PlayControlLocDisplay
NET_DVR_DecPlayBackCtrl<EFBFBD>ĺ<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>
**************************************************/
public const int NET_DVR_PLAYSTART = 1;//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYSTOP = 2;//ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYPAUSE = 3;//<2F><>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYRESTART = 4;//<2F>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYFAST = 5;//<2F><><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYSLOW = 6;//<2F><><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYNORMAL = 7;//<2F><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
public const int NET_DVR_PLAYFRAME = 8;//<2F><>֡<EFBFBD><D6A1>
public const int NET_DVR_PLAYSTARTAUDIO = 9;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYSTOPAUDIO = 10;//<2F>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYAUDIOVOLUME = 11;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYSETPOS = 12;//<2F>ı<EFBFBD><C4B1>ļ<EFBFBD><C4BC>طŵĽ<C5B5><C4BD><EFBFBD>
public const int NET_DVR_PLAYGETPOS = 13;//<2F><>ȡ<EFBFBD>ļ<EFBFBD><C4BC>طŵĽ<C5B5><C4BD><EFBFBD>
public const int NET_DVR_PLAYGETTIME = 14;//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD>ŵ<EFBFBD>ʱ<EFBFBD><CAB1>(<28><><EFBFBD>ļ<EFBFBD><C4BC>طŵ<D8B7>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч)
public const int NET_DVR_PLAYGETFRAME = 15;//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD>ŵ<EFBFBD>֡<EFBFBD><D6A1>(<28><><EFBFBD>ļ<EFBFBD><C4BC>طŵ<D8B7>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч)
public const int NET_DVR_GETTOTALFRAMES = 16;//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ܵ<EFBFBD>֡<EFBFBD><D6A1>(<28><><EFBFBD>ļ<EFBFBD><C4BC>طŵ<D8B7>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч)
public const int NET_DVR_GETTOTALTIME = 17;//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ܵ<EFBFBD>ʱ<EFBFBD><CAB1>(<28><><EFBFBD>ļ<EFBFBD><C4BC>طŵ<D8B7>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч)
public const int NET_DVR_THROWBFRAME = 20;//<2F><>
public const int NET_DVR_SETSPEED = 24;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
public const int NET_DVR_KEEPALIVE = 25;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><EFBFBD><EBB7A2>һ<EFBFBD><D2BB>)
public const int NET_DVR_PLAYSETTIME = 26;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䶨λ
public const int NET_DVR_PLAYGETTOTALLEN = 27;//<2F><>ȡ<EFBFBD><C8A1>ʱ<EFBFBD><CAB1><EFBFBD>طŶ<D8B7>Ӧʱ<D3A6><CAB1><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD>
public const int NET_DVR_PLAY_FORWARD = 29;//<2F><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
public const int NET_DVR_PLAY_REVERSE = 30;//<2F><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
public const int NET_DVR_SET_TRANS_TYPE = 32;//<2F><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>
public const int NET_DVR_PLAY_CONVERT = 33;//<2F><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
//Զ<>̰<EFBFBD><CCB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>
/* key value send to CONFIG program */
public const int KEY_CODE_1 = 1;
public const int KEY_CODE_2 = 2;
public const int KEY_CODE_3 = 3;
public const int KEY_CODE_4 = 4;
public const int KEY_CODE_5 = 5;
public const int KEY_CODE_6 = 6;
public const int KEY_CODE_7 = 7;
public const int KEY_CODE_8 = 8;
public const int KEY_CODE_9 = 9;
public const int KEY_CODE_0 = 10;
public const int KEY_CODE_POWER = 11;
public const int KEY_CODE_MENU = 12;
public const int KEY_CODE_ENTER = 13;
public const int KEY_CODE_CANCEL = 14;
public const int KEY_CODE_UP = 15;
public const int KEY_CODE_DOWN = 16;
public const int KEY_CODE_LEFT = 17;
public const int KEY_CODE_RIGHT = 18;
public const int KEY_CODE_EDIT = 19;
public const int KEY_CODE_ADD = 20;
public const int KEY_CODE_MINUS = 21;
public const int KEY_CODE_PLAY = 22;
public const int KEY_CODE_REC = 23;
public const int KEY_CODE_PAN = 24;
public const int KEY_CODE_M = 25;
public const int KEY_CODE_A = 26;
public const int KEY_CODE_F1 = 27;
public const int KEY_CODE_F2 = 28;
/* for PTZ control */
public const int KEY_PTZ_UP_START = KEY_CODE_UP;
public const int KEY_PTZ_UP_STOP = 32;
public const int KEY_PTZ_DOWN_START = KEY_CODE_DOWN;
public const int KEY_PTZ_DOWN_STOP = 33;
public const int KEY_PTZ_LEFT_START = KEY_CODE_LEFT;
public const int KEY_PTZ_LEFT_STOP = 34;
public const int KEY_PTZ_RIGHT_START = KEY_CODE_RIGHT;
public const int KEY_PTZ_RIGHT_STOP = 35;
public const int KEY_PTZ_AP1_START = KEY_CODE_EDIT;/* <20><>Ȧ+ */
public const int KEY_PTZ_AP1_STOP = 36;
public const int KEY_PTZ_AP2_START = KEY_CODE_PAN;/* <20><>Ȧ- */
public const int KEY_PTZ_AP2_STOP = 37;
public const int KEY_PTZ_FOCUS1_START = KEY_CODE_A;/* <20>۽<EFBFBD>+ */
public const int KEY_PTZ_FOCUS1_STOP = 38;
public const int KEY_PTZ_FOCUS2_START = KEY_CODE_M;/* <20>۽<EFBFBD>- */
public const int KEY_PTZ_FOCUS2_STOP = 39;
public const int KEY_PTZ_B1_START = 40;/* <20>䱶+ */
public const int KEY_PTZ_B1_STOP = 41;
public const int KEY_PTZ_B2_START = 42;/* <20>䱶- */
public const int KEY_PTZ_B2_STOP = 43;
//9000<30><30><EFBFBD><EFBFBD>
public const int KEY_CODE_11 = 44;
public const int KEY_CODE_12 = 45;
public const int KEY_CODE_13 = 46;
public const int KEY_CODE_14 = 47;
public const int KEY_CODE_15 = 48;
public const int KEY_CODE_16 = 49;
/*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> begin*******************************/
//<2F><><EFBFBD><EFBFBD>NET_DVR_SetDVRConfig<69><67>NET_DVR_GetDVRConfig,ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>ýṹ
public const int NET_DVR_GET_DEVICECFG = 100;//<2F><>ȡ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public const int NET_DVR_SET_DEVICECFG = 101;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public const int NET_DVR_GET_NETCFG = 102;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_NETCFG = 103;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_PICCFG = 104;//<2F><>ȡͼ<C8A1><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_PICCFG = 105;//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_COMPRESSCFG = 106;//<2F><>ȡѹ<C8A1><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_COMPRESSCFG = 107;//<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_RECORDCFG = 108;//<2F><>ȡ¼<C8A1><C2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_RECORDCFG = 109;//<2F><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_DECODERCFG = 110;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_DECODERCFG = 111;//<2F><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_RS232CFG = 112;//<2F><>ȡ232<33><32><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_SET_RS232CFG = 113;//<2F><><EFBFBD><EFBFBD>232<33><32><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_GET_ALARMINCFG = 114;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_ALARMINCFG = 115;//<2F><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_ALARMOUTCFG = 116;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_ALARMOUTCFG = 117;//<2F><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_TIMECFG = 118;//<2F><>ȡDVRʱ<52><CAB1>
public const int NET_DVR_SET_TIMECFG = 119;//<2F><><EFBFBD><EFBFBD>DVRʱ<52><CAB1>
public const int NET_DVR_GET_PREVIEWCFG = 120;//<2F><>ȡԤ<C8A1><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_PREVIEWCFG = 121;//<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_VIDEOOUTCFG = 122;//<2F><>ȡ<EFBFBD><C8A1>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_VIDEOOUTCFG = 123;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_USERCFG = 124;//<2F><>ȡ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_USERCFG = 125;//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_EXCEPTIONCFG = 126;//<2F><>ȡ<EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD>
public const int NET_DVR_SET_EXCEPTIONCFG = 127;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD>
public const int NET_DVR_GET_ZONEANDDST = 128;//<2F><>ȡʱ<C8A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>
public const int NET_DVR_SET_ZONEANDDST = 129;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>
public const int NET_DVR_GET_SHOWSTRING = 130;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_SHOWSTRING = 131;//<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_EVENTCOMPCFG = 132;//<2F><>ȡ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_EVENTCOMPCFG = 133;//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_AUXOUTCFG = 140;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(HS<48><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2006-02-28)
public const int NET_DVR_SET_AUXOUTCFG = 141;//<2F><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(HS<48><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2006-02-28)
public const int NET_DVR_GET_PREVIEWCFG_AUX = 142;//<2F><>ȡ-sϵ<73><CFB5>˫<EFBFBD><CBAB><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(-sϵ<73><CFB5>˫<EFBFBD><CBAB><EFBFBD><EFBFBD>2006-04-13)
public const int NET_DVR_SET_PREVIEWCFG_AUX = 143;//<2F><><EFBFBD><EFBFBD>-sϵ<73><CFB5>˫<EFBFBD><CBAB><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(-sϵ<73><CFB5>˫<EFBFBD><CBAB><EFBFBD><EFBFBD>2006-04-13)
public const int NET_DVR_GET_PICCFG_EX = 200;//<2F><>ȡͼ<C8A1><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(SDK_V14<31><34>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>)
public const int NET_DVR_SET_PICCFG_EX = 201;//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(SDK_V14<31><34>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>)
public const int NET_DVR_GET_USERCFG_EX = 202;//<2F><>ȡ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(SDK_V15<31><35>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>)
public const int NET_DVR_SET_USERCFG_EX = 203;//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(SDK_V15<31><35>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>)
public const int NET_DVR_GET_COMPRESSCFG_EX = 204;//<2F><>ȡѹ<C8A1><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(SDK_V15<31><35>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>2006-05-15)
public const int NET_DVR_SET_COMPRESSCFG_EX = 205;//<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(SDK_V15<31><35>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>2006-05-15)
public const int NET_DVR_GET_NETAPPCFG = 222;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> NTP/DDNS/EMAIL
public const int NET_DVR_SET_NETAPPCFG = 223;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> NTP/DDNS/EMAIL
public const int NET_DVR_GET_NTPCFG = 224;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> NTP
public const int NET_DVR_SET_NTPCFG = 225;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> NTP
public const int NET_DVR_GET_DDNSCFG = 226;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> DDNS
public const int NET_DVR_SET_DDNSCFG = 227;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> DDNS
//<2F><>ӦNET_DVR_EMAILPARA
public const int NET_DVR_GET_EMAILCFG = 228;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> EMAIL
public const int NET_DVR_SET_EMAILCFG = 229;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD> EMAIL
public const int NET_DVR_GET_NFSCFG = 230;/* NFS disk config */
public const int NET_DVR_SET_NFSCFG = 231;/* NFS disk config */
public const int NET_DVR_GET_SHOWSTRING_EX = 238;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ(֧<><D6A7>8<EFBFBD><38><EFBFBD>ַ<EFBFBD>)
public const int NET_DVR_SET_SHOWSTRING_EX = 239;//<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ(֧<><D6A7>8<EFBFBD><38><EFBFBD>ַ<EFBFBD>)
public const int NET_DVR_GET_NETCFG_OTHER = 244;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_NETCFG_OTHER = 245;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ӦNET_DVR_EMAILCFG<46>
public const int NET_DVR_GET_EMAILPARACFG = 250;//Get EMAIL parameters
public const int NET_DVR_SET_EMAILPARACFG = 251;//Setup EMAIL parameters
public const int NET_DVR_GET_DDNSCFG_EX = 274;//<2F><>ȡ<EFBFBD><C8A1>չDDNS<4E><53><EFBFBD><EFBFBD>
public const int NET_DVR_SET_DDNSCFG_EX = 275;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չDDNS<4E><53><EFBFBD><EFBFBD>
public const int NET_DVR_SET_PTZPOS = 292;//<2F><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>PTZλ<5A><CEBB>
public const int NET_DVR_GET_PTZPOS = 293;//<2F><>̨<EFBFBD><CCA8>ȡPTZλ<5A><CEBB>
public const int NET_DVR_GET_PTZSCOPE = 294;//<2F><>̨<EFBFBD><CCA8>ȡPTZ<54><5A>Χ
public const int NET_DVR_GET_AP_INFO_LIST = 305;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public const int NET_DVR_SET_WIFI_CFG = 306;//<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>
public const int NET_DVR_GET_WIFI_CFG = 307;//<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>
public const int NET_DVR_SET_WIFI_WORKMODE = 308;//<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_WIFI_WORKMODE = 309;//<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_WIFI_STATUS = 310; //<2F><>ȡ<EFBFBD><EFBFBD><E8B1B8>ǰwifi<66><69><EFBFBD><EFBFBD>״̬
/***************************<2A><><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD> begin *****************************/
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public const int DS6001_HF_B = 60;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD>DS6001-HF/B
public const int DS6001_HF_P = 61;//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>DS6001-HF/P
public const int DS6002_HF_B = 62;//˫<><CBAB><EFBFBD><EFBFBD>DS6002-HF/B
public const int DS6101_HF_B = 63;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD>DS6101-HF/B
public const int IDS52XX = 64;//<2F><><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD>IVMS
public const int DS9000_IVS = 65;//9000ϵ<30><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DVR
public const int DS8004_AHL_A = 66;//<2F><><EFBFBD><EFBFBD>ATM, DS8004AHL-S/A
public const int DS6101_HF_P = 67;//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>DS6101-HF/P
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
public const int VCA_DEV_ABILITY = 256;//<2F><EFBFBD><E8B1B8><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int VCA_CHAN_ABILITY = 272;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MATRIXDECODER_ABILITY = 512;//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ȡ/<2F><><EFBFBD>ô<EFBFBD><C3B4>ӿڲ<D3BF><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>NET_VCA_PLATE_CFG<46><47>
public const int NET_DVR_SET_PLATECFG = 150;//<2F><><EFBFBD>ó<EFBFBD><C3B3><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_PLATECFG = 151;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>Ϊ<EFBFBD><CEAA>Ӧ<EFBFBD><D3A6>NET_VCA_RULECFG<46><47>
public const int NET_DVR_SET_RULECFG = 152;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_RULECFG = 153;//<2F><>ȡ<EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//˫<><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_DVR_LF_CFG<46><47>
public const int NET_DVR_SET_LF_CFG = 160;//<2F><><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
public const int NET_DVR_GET_LF_CFG = 161;//<2F><>ȡ˫<C8A1><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
//<2F><><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ýṹ
public const int NET_DVR_SET_IVMS_STREAMCFG = 162;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_IVMS_STREAMCFG = 163;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD>ܿ<EFBFBD><DCBF>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD>
public const int NET_DVR_SET_VCA_CTRLCFG = 164;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD><DCBF>Ʋ<EFBFBD><C6B2><EFBFBD>
public const int NET_DVR_GET_VCA_CTRLCFG = 165;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ܿ<EFBFBD><DCBF>Ʋ<EFBFBD><C6B2><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_VCA_MASK_REGION_LIST
public const int NET_DVR_SET_VCA_MASK_REGION = 166;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_VCA_MASK_REGION = 167;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//ATM<54><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NET_VCA_ENTER_REGION
public const int NET_DVR_SET_VCA_ENTER_REGION = 168;//<2F><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_VCA_ENTER_REGION = 169;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_VCA_LINE_SEGMENT_LIST
public const int NET_DVR_SET_VCA_LINE_SEGMENT = 170;//<2F><><EFBFBD>ñ궨<C3B1><EAB6A8>
public const int NET_DVR_GET_VCA_LINE_SEGMENT = 171;//<2F><>ȡ<EFBFBD><EFBFBD><EAB6A8>
// ivms<6D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_IVMS_MASK_REGION_LIST
public const int NET_DVR_SET_IVMS_MASK_REGION = 172;//<2F><><EFBFBD><EFBFBD>IVMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_IVMS_MASK_REGION = 173;//<2F><>ȡIVMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// ivms<6D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_IVMS_ENTER_REGION
public const int NET_DVR_SET_IVMS_ENTER_REGION = 174;//<2F><><EFBFBD><EFBFBD>IVMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_IVMS_ENTER_REGION = 175;//<2F><>ȡIVMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_IVMS_BEHAVIORCFG = 176;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_IVMS_BEHAVIORCFG = 177;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// IVMS <20>طż<D8B7><C5BC><EFBFBD>
public const int NET_DVR_IVMS_SET_SEARCHCFG = 178;//<2F><><EFBFBD><EFBFBD>IVMS<4D>طż<D8B7><C5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_IVMS_GET_SEARCHCFG = 179;//<2F><>ȡIVMS<4D>طż<D8B7><C5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/***************************DS9000<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(_V30) begin *****************************/
//<2F><><EFBFBD><EFBFBD>(NET_DVR_NETCFG_V30<33>ṹ)
public const int NET_DVR_GET_NETCFG_V30 = 1000;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_NETCFG_V30 = 1001;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//ͼ<><CDBC>(NET_DVR_PICCFG_V30<33>ṹ)
public const int NET_DVR_GET_PICCFG_V30 = 1002;//<2F><>ȡͼ<C8A1><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_PICCFG_V30 = 1003;//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//ͼ<><CDBC>(NET_DVR_PICCFG_V40<34>ṹ)
public const int NET_DVR_GET_PICCFG_V40 = 6179;//<2F><>ȡͼ<C8A1><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>V40<34><30>չ
public const int NET_DVR_SET_PICCFG_V40 = 6180;//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>V40<34><30>չ
//¼<><C2BC>ʱ<EFBFBD><CAB1>(NET_DVR_RECORD_V30<33>ṹ)
public const int NET_DVR_GET_RECORDCFG_V30 = 1004;//<2F><>ȡ¼<C8A1><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_RECORDCFG_V30 = 1005;//<2F><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_RECORDCFG_V40 = 1008; //<2F><>ȡ¼<C8A1><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>չ)
public const int NET_DVR_SET_RECORDCFG_V40 = 1009; //<2F><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>չ)
//<2F>û<EFBFBD>(NET_DVR_USER_V30<33>ṹ)
public const int NET_DVR_GET_USERCFG_V30 = 1006;//<2F><>ȡ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_USERCFG_V30 = 1007;//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
//9000DDNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(NET_DVR_DDNSPARA_V30<33>ṹ)
public const int NET_DVR_GET_DDNSCFG_V30 = 1010;//<2F><>ȡDDNS(9000<30><30>չ)
public const int NET_DVR_SET_DDNSCFG_V30 = 1011;//<2F><><EFBFBD><EFBFBD>DDNS(9000<30><30>չ)
//EMAIL<49><4C><EFBFBD><EFBFBD>(NET_DVR_EMAILCFG_V30<33>ṹ)
public const int NET_DVR_GET_EMAILCFG_V30 = 1012;//<2F><>ȡEMAIL<49><4C><EFBFBD><EFBFBD>
public const int NET_DVR_SET_EMAILCFG_V30 = 1013;//<2F><><EFBFBD><EFBFBD>EMAIL<49><4C><EFBFBD><EFBFBD>
//Ѳ<><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (NET_DVR_CRUISE_PARA<52>ṹ)
public const int NET_DVR_GET_CRUISE = 1020;
public const int NET_DVR_SET_CRUISE = 1021;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_ALARMINCFG_V30<33>ṹ)
public const int NET_DVR_GET_ALARMINCFG_V30 = 1024;
public const int NET_DVR_SET_ALARMINCFG_V30 = 1025;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_ALARMOUTCFG_V30<33>ṹ)
public const int NET_DVR_GET_ALARMOUTCFG_V30 = 1026;
public const int NET_DVR_SET_ALARMOUTCFG_V30 = 1027;
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_VIDEOOUT_V30<33>ṹ)
public const int NET_DVR_GET_VIDEOOUTCFG_V30 = 1028;
public const int NET_DVR_SET_VIDEOOUTCFG_V30 = 1029;
//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_SHOWSTRING_V30<33>ṹ)
public const int NET_DVR_GET_SHOWSTRING_V30 = 1030;
public const int NET_DVR_SET_SHOWSTRING_V30 = 1031;
//<2F><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_EXCEPTION_V30<33>ṹ)
public const int NET_DVR_GET_EXCEPTIONCFG_V30 = 1034;
public const int NET_DVR_SET_EXCEPTIONCFG_V30 = 1035;
//<2F><><EFBFBD><EFBFBD>232<33><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_RS232CFG_V30<33>ṹ)
public const int NET_DVR_GET_RS232CFG_V30 = 1036;
public const int NET_DVR_SET_RS232CFG_V30 = 1037;
//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD> (NET_DVR_NET_DISKCFG<46>ṹ)
public const int NET_DVR_GET_NET_DISKCFG = 1038;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public const int NET_DVR_SET_NET_DISKCFG = 1039;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (NET_DVR_COMPRESSIONCFG_V30<33>ṹ)
public const int NET_DVR_GET_COMPRESSCFG_V30 = 1040;
public const int NET_DVR_SET_COMPRESSCFG_V30 = 1041;
//<2F><>ȡ485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (NET_DVR_DECODERCFG_V30<33>ṹ)
public const int NET_DVR_GET_DECODERCFG_V30 = 1042;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_DECODERCFG_V30 = 1043;//<2F><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ȡԤ<C8A1><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (NET_DVR_PREVIEWCFG_V30<33>ṹ)
public const int NET_DVR_GET_PREVIEWCFG_V30 = 1044;//<2F><>ȡԤ<C8A1><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_PREVIEWCFG_V30 = 1045;//<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (NET_DVR_PREVIEWCFG_AUX_V30<33>ṹ)
public const int NET_DVR_GET_PREVIEWCFG_AUX_V30 = 1046;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_PREVIEWCFG_AUX_V30 = 1047;//<2F><><EFBFBD>ø<EFBFBD><C3B8><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> <20><>NET_DVR_IPPARACFG<46><EFBFBD><E1B9B9>
public const int NET_DVR_GET_IPPARACFG = 1048; //<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int NET_DVR_SET_IPPARACFG = 1049;//<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
//IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> <20><>NET_DVR_IPPARACFG_V40<34><EFBFBD><E1B9B9>
public const int NET_DVR_GET_IPPARACFG_V40 = 1062; //<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int NET_DVR_SET_IPPARACFG_V40 = 1063;//<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
//IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> <20><>NET_DVR_IPALARMINCFG<46><EFBFBD><E1B9B9>
public const int NET_DVR_GET_IPALARMINCFG = 1050; //<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int NET_DVR_SET_IPALARMINCFG = 1051; //<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
//IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> <20><>NET_DVR_IPALARMOUTCFG<46><EFBFBD><E1B9B9>
public const int NET_DVR_GET_IPALARMOUTCFG = 1052;//<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int NET_DVR_SET_IPALARMOUTCFG = 1053;//<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
//Ӳ<>̹<EFBFBD><CCB9><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>ȡ (NET_DVR_HDCFG<46>ṹ)
public const int NET_DVR_GET_HDCFG = 1054;//<2F><>ȡӲ<C8A1>̹<EFBFBD><CCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
public const int NET_DVR_SET_HDCFG = 1055;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD>̹<EFBFBD><CCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>ȡ (NET_DVR_HDGROUP_CFG<46>ṹ)
public const int NET_DVR_GET_HDGROUP_CFG = 1056;//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
public const int NET_DVR_SET_HDGROUP_CFG = 1057;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(NET_DVR_COMPRESSION_AUDIO<49>ṹ)
public const int NET_DVR_GET_COMPRESSCFG_AUD = 1058;//<2F><>ȡ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_COMPRESSCFG_AUD = 1059;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> <20><>NET_DVR_IPPARACFG_V31<33><EFBFBD><E1B9B9>
public const int NET_DVR_GET_IPPARACFG_V31 = 1060;//<2F><>ȡIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int NET_DVR_SET_IPPARACFG_V31 = 1061; //<2F><><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>NET_DVR_DEVICECFG_V40<34><EFBFBD><E1B9B9>
public const int NET_DVR_GET_DEVICECFG_V40 = 1100;//<2F><>ȡ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public const int NET_DVR_SET_DEVICECFG_V40 = 1101;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(NET_DVR_NETCFG_MULTI<54>ṹ)
public const int NET_DVR_GET_NETCFG_MULTI = 1161;
public const int NET_DVR_SET_NETCFG_MULTI = 1162;
//BONDING<4E><47><EFBFBD><EFBFBD>(NET_DVR_NETWORK_BONDING<4E>ṹ)
public const int NET_DVR_GET_NETWORK_BONDING = 1254;
public const int NET_DVR_SET_NETWORK_BONDING = 1255;
//<2F><><EFBFBD><EFBFBD><EFBFBD>ȶԿ<C8B6><D4BF><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_FACELIB_TRIGGER = 3962; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ȶԿ<C8B6><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_FACELIB_TRIGGER = 3963; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȶԿ<C8B6><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_FACELIB_SCHEDULE = 3977; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ȶԿ<C8B6><D4BF>IJ<EFBFBD><C4B2><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_FACELIB_SCHEDULE = 3978; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȶԿ<C8B6><D4BF>IJ<EFBFBD><C4B2><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//NATӳ<54><D3B3><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> <20><>NET_DVR_NAT_CFG<46><EFBFBD><E1B9B9>
public const int NET_DVR_GET_NAT_CFG = 6111; //<2F><>ȡNATӳ<54><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_NAT_CFG = 6112; //<2F><><EFBFBD><EFBFBD>NATӳ<54><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ǽ
public const int NET_DVR_SET_WINCFG = 1202;//<2F><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_MATRIX_BIGSCREENCFG_GET = 1140; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ƴ<EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD>
public const int NET_DVR_MATRIX_BIGSCREENCFG_SET = 1141; //<2F><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ƴ<EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD>
public const int NET_DVR_MATRIX_WALL_GET = 9002; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>
public const int NET_DVR_MATRIX_WALL_SET = 9001; //<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>
public const int NET_DVR_WALLWIN_GET = 9003; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_WALLWIN_SET = 9004; //<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_WALLWINPARAM_SET = 9005; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
public const int NET_DVR_WALLWINPARAM_GET = 9006; //<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
public const int NET_DVR_SWITCH_WIN_TOP = 9017; //<2F><><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>
public const int NET_DVR_SWITCH_WIN_BOTTOM = 9018; //<2F><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD>
public const int NET_DVR_GET_VIDEOWALLDISPLAYPOSITION = 1734;//<2F><>ȡ<EFBFBD><C8A1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>λ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
public const int NET_DVR_SET_VIDEOWALLDISPLAYPOSITION = 1733;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>λ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
public const int NET_DVR_GET_VIDEOWALLDISPLAYNO = 1732; //<2F><>ȡ<EFBFBD><EFBFBD><E8B1B8>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_VIDEOWALLWINDOWPOSITION = 1735; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_SET_VIDEOWALLWINDOWPOSITION = 1736; //<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_GET_CHAN_RELATION = 9209; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public const int NET_DVR_SET_CHAN_RELATION = 9210; //<2F><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public const int NET_DVR_GET_ALL_CHAN_RELATION = 9211; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public const int NET_DVR_GET_VW_SCENE_PARAM = 1746; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_VW_SCENE_PARAM = 1747; //<2F><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_OUTPUT_PIC_WIN_CFG = 9202; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_SET_OUTPUT_PIC_WIN_CFG = 9203; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
public const int NET_DVR_GET_OUTPUT_OSD_CFG = 9206; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD<53><44><EFBFBD><EFBFBD>
public const int NET_DVR_SET_OUTPUT_OSD_CFG = 9207; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD<53><44><EFBFBD><EFBFBD>
public const int NET_DVR_SCENE_CONTROL = 1744; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_CARD = 2560;
public const int NET_DVR_SET_CARD = 2561;
public const int NET_DVR_DEL_CARD = 2562;
public const int NET_DVR_GET_FINGERPRINT = 2563;
public const int NET_DVR_SET_FINGERPRINT = 2564;
public const int NET_DVR_DEL_FINGERPRINT = 2565;
public const int NET_DVR_GET_FACE = 2566;
public const int NET_DVR_SET_FACE = 2567;
public const int NET_DVR_DEL_FACE_PARAM_CFG = 2509; //delete face param configure
public const int NET_DVR_CAPTURE_FACE_INFO = 2510; //capture face information
//Ԥ<>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ƻ<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_PRESET_NAME = 3383;
public const int NET_DVR_SET_PRESET_NAME = 3382;
public const int NET_VCA_GET_RULECFG_V41 = 5011; //<2F><>ȡ<EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_VCA_SET_RULECFG_V41 = 5012; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_TRAVERSE_PLANE_DETECTION = 3360; //<2F><>ȡԽ<C8A1><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_TRAVERSE_PLANE_DETECTION = 3361; //<2F><><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_THERMOMETRY_ALARMRULE = 3627; //<2F><>ȡԤ<C8A1>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_THERMOMETRY_ALARMRULE = 3628; //<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_THERMOMETRY_TRIGGER = 3632; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_THERMOMETRY_TRIGGER = 3633; //<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_MANUALTHERM_BASICPARAM = 6716; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD>»<EFBFBD><C2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_MANUALTHERM_BASICPARAM = 6717; //<2F><>ȡ<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD>»<EFBFBD><C2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_MANUALTHERM = 6708; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_MULTI_STREAM_COMPRESSIONCFG = 3216; //Զ<>̻<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_MULTI_STREAM_COMPRESSIONCFG = 3217; //Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_VIDEO_CALL_SIGNAL_PROCESS = 16032; //<2F><><EFBFBD>ӻ<EFBFBD><D3BB>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EEB4A6>
public const int NET_DVR_ARM_ALARMHOST_SUBSYSTEM = 2036;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public const int NET_DVR_GET_MULTI_CARD_CFG_V50 = 2515; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>V50
public const int NET_DVR_SET_MULTI_CARD_CFG_V50 = 2516; //<2F><><EFBFBD>ö<EFBFBD><C3B6>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>V50
public const int NET_DVR_BARRIERGATE_CTRL = 3128; //<2F><>բ<EFBFBD><D5A2><EFBFBD><EFBFBD>
public const int NET_DVR_INQUEST_GET_CDW_STATUS = 6350; //<2F><>ȡ<EFBFBD><C8A1>Ѷ<EFBFBD><D1B6><EFBFBD><EFBFBD>¼״̬-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_REALTIME_THERMOMETRY = 3629; //ʵʱ<CAB5>¶ȼ<C2B6><C8BC><EFBFBD>
public const int NET_DVR_GET_ACS_EVENT = 2514;//<2F><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ȡ
public const int NET_SDK_GET_NEXT_STATUS_SUCCESS = 1000;
public const int NET_SDK_GET_NEXT_STATUS_NEED_WAIT = 1001;
public const int NET_SDK_GET_NEXT_STATUS_FINISH = 1002;
public const int NET_SDK_GET_NEXT_STATUS_FAILED = 1003;
/*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> end*******************************/
/************************DVR<56><52>־ begin***************************/
/* <20><><EFBFBD><EFBFBD> */
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAJOR_ALARM = 1;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MINOR_ALARM_IN = 1;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_ALARM_OUT = 2;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_MOTDET_START = 3; /* <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>ʼ */
public const int MINOR_MOTDET_STOP = 4; /* <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_HIDE_ALARM_START = 5;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ */
public const int MINOR_HIDE_ALARM_STOP = 6;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_VCA_ALARM_START = 7;/*<2A><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>ʼ*/
public const int MINOR_VCA_ALARM_STOP = 8;/*<2A><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD>ֹͣ*/
/* <20>쳣 */
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAJOR_EXCEPTION = 2;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MINOR_VI_LOST = 33;/* <20><>Ƶ<EFBFBD>źŶ<C5BA>ʧ */
public const int MINOR_ILLEGAL_ACCESS = 34;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_HD_FULL = 35;/* Ӳ<><D3B2><EFBFBD><EFBFBD> */
public const int MINOR_HD_ERROR = 36;/* Ӳ<>̴<EFBFBD><CCB4><EFBFBD> */
public const int MINOR_DCD_LOST = 37;/* MODEM <20><><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>) */
public const int MINOR_IP_CONFLICT = 38;/* IP<49><50>ַ<EFBFBD><D6B7>ͻ */
public const int MINOR_NET_BROKEN = 39;/* <20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD>*/
public const int MINOR_REC_ERROR = 40;/* ¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_IPC_NO_LINK = 41;/* IPC<50><43><EFBFBD><EFBFBD><EFBFBD>쳣 */
public const int MINOR_VI_EXCEPTION = 42;/* <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>쳣(ֻ<><D6BB><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>ͨ<EFBFBD><CDA8>) */
public const int MINOR_IPC_IP_CONFLICT = 43;/*ipc ip <20><>ַ <20><>ͻ*/
//<2F><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨
public const int MINOR_FANABNORMAL = 49;/* <20><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4>쳣 */
public const int MINOR_FANRESUME = 50;/* <20><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_SUBSYSTEM_ABNORMALREBOOT = 51;/* <20><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8>6467<36><EFBFBD><ECB3A3><EFBFBD><EFBFBD> */
public const int MINOR_MATRIX_STARTBUZZER = 52;/* <20><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8>dm6467<36><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* <20><><EFBFBD><EFBFBD> */
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAJOR_OPERATION = 3;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MINOR_START_DVR = 65;/* <20><><EFBFBD><EFBFBD> */
public const int MINOR_STOP_DVR = 66;/* <20>ػ<EFBFBD> */
public const int MINOR_STOP_ABNORMAL = 67;/* <20><EFBFBD>ػ<EFBFBD> */
public const int MINOR_REBOOT_DVR = 68;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸*/
public const int MINOR_LOCAL_LOGIN = 80;/* <20><><EFBFBD>ص<EFBFBD>½ */
public const int MINOR_LOCAL_LOGOUT = 81;/* <20><><EFBFBD><EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD>½ */
public const int MINOR_LOCAL_CFG_PARM = 82;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> */
public const int MINOR_LOCAL_PLAYBYFILE = 83;/* <20><><EFBFBD>ذ<EFBFBD><D8B0>ļ<EFBFBD><C4BC>طŻ<D8B7><C5BB><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_LOCAL_PLAYBYTIME = 84;/* <20><><EFBFBD>ذ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>طŻ<D8B7><C5BB><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_LOCAL_START_REC = 85;/* <20><><EFBFBD>ؿ<EFBFBD>ʼ¼<CABC><C2BC> */
public const int MINOR_LOCAL_STOP_REC = 86;/* <20><><EFBFBD><EFBFBD>ֹͣ¼<D6B9><C2BC> */
public const int MINOR_LOCAL_PTZCTRL = 87;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD> */
public const int MINOR_LOCAL_PREVIEW = 88;/* <20><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>)*/
public const int MINOR_LOCAL_MODIFY_TIME = 89;/* <20><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>ʱ<EFBFBD><CAB1>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>) */
public const int MINOR_LOCAL_UPGRADE = 90;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_LOCAL_RECFILE_OUTPUT = 91;/* <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD> */
public const int MINOR_LOCAL_FORMAT_HDD = 92;/* <20><><EFBFBD>س<EFBFBD>ʼ<EFBFBD><CABC>Ӳ<EFBFBD><D3B2> */
public const int MINOR_LOCAL_CFGFILE_OUTPUT = 93;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_LOCAL_CFGFILE_INPUT = 94;/* <20><><EFBFBD><EFBFBD><EBB1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_LOCAL_COPYFILE = 95;/* <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_LOCAL_LOCKFILE = 96;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD> */
public const int MINOR_LOCAL_UNLOCKFILE = 97;/* <20><><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD> */
public const int MINOR_LOCAL_DVR_ALARM = 98;/* <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_IPC_ADD = 99;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IPC */
public const int MINOR_IPC_DEL = 100;/* <20><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>IPC */
public const int MINOR_IPC_SET = 101;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IPC */
public const int MINOR_LOCAL_START_BACKUP = 102;/* <20><><EFBFBD>ؿ<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> */
public const int MINOR_LOCAL_STOP_BACKUP = 103;/* <20><><EFBFBD><EFBFBD>ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD>*/
public const int MINOR_LOCAL_COPYFILE_START_TIME = 104;/* <20><><EFBFBD>ر<EFBFBD><D8B1>ݿ<EFBFBD>ʼʱ<CABC><CAB1>*/
public const int MINOR_LOCAL_COPYFILE_END_TIME = 105;/* <20><><EFBFBD>ر<EFBFBD><D8B1>ݽ<EFBFBD><DDBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
public const int MINOR_LOCAL_ADD_NAS = 106;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2>*/
public const int MINOR_LOCAL_DEL_NAS = 107;/* <20><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>nas<61><73>*/
public const int MINOR_LOCAL_SET_NAS = 108;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>nas<61><73>*/
public const int MINOR_REMOTE_LOGIN = 112;/* Զ<>̵<EFBFBD>¼ */
public const int MINOR_REMOTE_LOGOUT = 113;/* Զ<><D4B6>ע<EFBFBD><D7A2><EFBFBD><EFBFBD>½ */
public const int MINOR_REMOTE_START_REC = 114;/* Զ<>̿<EFBFBD>ʼ¼<CABC><C2BC> */
public const int MINOR_REMOTE_STOP_REC = 115;/* Զ<><D4B6>ֹͣ¼<D6B9><C2BC> */
public const int MINOR_START_TRANS_CHAN = 116;/* <20><>ʼ͸<CABC><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_STOP_TRANS_CHAN = 117;/* ֹͣ͸<D6B9><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_REMOTE_GET_PARM = 118;/* Զ<>̻<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD> */
public const int MINOR_REMOTE_CFG_PARM = 119;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD> */
public const int MINOR_REMOTE_GET_STATUS = 120;/* Զ<>̻<EFBFBD>ȡ״̬ */
public const int MINOR_REMOTE_ARM = 121;/* Զ<>̲<EFBFBD><CCB2><EFBFBD> */
public const int MINOR_REMOTE_DISARM = 122;/* Զ<>̳<EFBFBD><CCB3><EFBFBD> */
public const int MINOR_REMOTE_REBOOT = 123;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_START_VT = 124;/* <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD> */
public const int MINOR_STOP_VT = 125;/* ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD> */
public const int MINOR_REMOTE_UPGRADE = 126;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MINOR_REMOTE_PLAYBYFILE = 127;/* Զ<>̰<EFBFBD><CCB0>ļ<EFBFBD><C4BC>ط<EFBFBD> */
public const int MINOR_REMOTE_PLAYBYTIME = 128;/* Զ<>̰<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD> */
public const int MINOR_REMOTE_PTZCTRL = 129;/* Զ<><D4B6><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD> */
public const int MINOR_REMOTE_FORMAT_HDD = 130;/* Զ<≯<EFBFBD>ʽ<EFBFBD><CABD>Ӳ<EFBFBD><D3B2> */
public const int MINOR_REMOTE_STOP = 131;/* Զ<>̹ػ<CCB9> */
public const int MINOR_REMOTE_LOCKFILE = 132;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_REMOTE_UNLOCKFILE = 133;/* Զ<>̽<EFBFBD><CCBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_REMOTE_CFGFILE_OUTPUT = 134;/* Զ<>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_REMOTE_CFGFILE_INTPUT = 135;/* Զ<>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
public const int MINOR_REMOTE_RECFILE_OUTPUT = 136;/* Զ<>̵<EFBFBD><CCB5><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD> */
public const int MINOR_REMOTE_DVR_ALARM = 137;/* Զ<><D4B6><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_IPC_ADD = 138;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IPC */
public const int MINOR_REMOTE_IPC_DEL = 139;/* Զ<><D4B6>ɾ<EFBFBD><C9BE>IPC */
public const int MINOR_REMOTE_IPC_SET = 140;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IPC */
public const int MINOR_REBOOT_VCA_LIB = 141;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD>*/
public const int MINOR_REMOTE_ADD_NAS = 142;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>nas<61><73>*/
public const int MINOR_REMOTE_DEL_NAS = 143;/* Զ<><D4B6>ɾ<EFBFBD><C9BE>nas<61><73>*/
public const int MINOR_REMOTE_SET_NAS = 144;/* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>nas<61><73>*/
//2009-12-16 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8>־<EFBFBD><D6BE><EFBFBD><EFBFBD>
public const int MINOR_SUBSYSTEMREBOOT = 160;/*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8>dm6467 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_MATRIX_STARTTRANSFERVIDEO = 161; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>*/
public const int MINOR_MATRIX_STOPTRANSFERVIDEO = 162; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>*/
public const int MINOR_REMOTE_SET_ALLSUBSYSTEM = 163; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6467<36><37>ϵͳ<CFB5><CDB3>Ϣ*/
public const int MINOR_REMOTE_GET_ALLSUBSYSTEM = 164; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>6467<36><37>ϵͳ<CFB5><CDB3>Ϣ*/
public const int MINOR_REMOTE_SET_PLANARRAY = 165; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD>üƻ<C3BC><C6BB><EFBFBD>ѯ<EFBFBD><D1AF>*/
public const int MINOR_REMOTE_GET_PLANARRAY = 166; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ȡ<EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>ѯ<EFBFBD><D1AF>*/
public const int MINOR_MATRIX_STARTTRANSFERAUDIO = 167; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ*/
public const int MINOR_MATRIX_STOPRANSFERAUDIO = 168; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ*/
public const int MINOR_LOGON_CODESPITTER = 169; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_LOGOFF_CODESPITTER = 170; /*<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
//2010-12-16 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
public const int MINOR_REMOTE_BYPASS = 0xd0; /* Զ<><D4B6><EFBFBD><EFBFBD>·*/
public const int MINOR_REMOTE_UNBYPASS = 0xd1; /* Զ<><D4B6><EFBFBD><EFBFBD>·<EFBFBD>ָ<EFBFBD>*/
public const int MINOR_REMOTE_SET_ALARMIN_CFG = 0xd2; /* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_GET_ALARMIN_CFG = 0xd3; /* Զ<>̻<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_SET_ALARMOUT_CFG = 0xd4; /* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_GET_ALARMOUT_CFG = 0xd5; /* Զ<>̻<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_ALARMOUT_OPEN_MAN = 0xd6; /* Զ<><D4B6><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_ALARMOUT_CLOSE_MAN = 0xd7; /* Զ<><D4B6><EFBFBD>ֶ<EFBFBD><D6B6>رձ<D8B1><D5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MINOR_REMOTE_ALARM_ENABLE_CFG = 0xd8; /* Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>RS485<38><35><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>״̬*/
public const int MINOR_DBDATA_OUTPUT = 0xd9; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>¼ */
public const int MINOR_DBDATA_INPUT = 0xda; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>¼ */
public const int MINOR_MU_SWITCH = 0xdb; /* <20><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD> */
public const int MINOR_MU_PTZ = 0xdc; /* <20><><EFBFBD><EFBFBD>PTZ<54><5A><EFBFBD><EFBFBD> */
public const int MINOR_DELETE_LOGO = 0xdd; /* ɾ<><C9BE>logo */
public const int MINOR_REMOTE_INQUEST_DEL_FILE = 0xde; /*Զ<><D4B6>ɾ<EFBFBD><C9BE><EFBFBD>ļ<EFBFBD>*/
/*<2A><>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAJOR_INFORMATION = 4;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MINOR_HDD_INFO = 161;/*Ӳ<><D3B2><EFBFBD><EFBFBD>Ϣ*/
public const int MINOR_SMART_INFO = 162;/*SMART<52><54>Ϣ*/
public const int MINOR_REC_START = 163;/*<2A><>ʼ¼<CABC><C2BC>*/
public const int MINOR_REC_STOP = 164;/*ֹͣ¼<D6B9><C2BC>*/
public const int MINOR_REC_OVERDUE = 165;/*<2A><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ɾ<EFBFBD><C9BE>*/
public const int MINOR_LINK_START = 166;//<2F><><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>
public const int MINOR_LINK_STOP = 167;//<2F>Ͽ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><E8B1B8>
public const int MINOR_NET_DISK_INFO = 168;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>Ϣ
//<2F><><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪMAJOR_OPERATION=03<30><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪMINOR_LOCAL_CFG_PARM=0x52<35><32><EFBFBD><EFBFBD>MINOR_REMOTE_GET_PARM=0x76<37><36><EFBFBD><EFBFBD>MINOR_REMOTE_CFG_PARM=0x77ʱ<37><CAB1>dwParaType:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><E4BAAC><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>
public const int PARA_VIDEOOUT = 1;
public const int PARA_IMAGE = 2;
public const int PARA_ENCODE = 4;
public const int PARA_NETWORK = 8;
public const int PARA_ALARM = 16;
public const int PARA_EXCEPTION = 32;
public const int PARA_DECODER = 64;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int PARA_RS232 = 128;
public const int PARA_PREVIEW = 256;
public const int PARA_SECURITY = 512;
public const int PARA_DATETIME = 1024;
public const int PARA_FRAMETYPE = 2048;/*֡<><D6A1>ʽ*/
//vca
public const int PARA_VCA_RULE = 4096;//<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
/************************DVR<56><52>־ End***************************/
/*******************<2A><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ*************************/
public const int NET_DVR_FILE_SUCCESS = 1000;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Ϣ
public const int NET_DVR_FILE_NOFIND = 1001;//û<><C3BB><EFBFBD>ļ<EFBFBD>
public const int NET_DVR_ISFINDING = 1002;//<2F><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD>ļ<EFBFBD>
public const int NET_DVR_NOMOREFILE = 1003;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱû<CAB1>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
public const int NET_DVR_FILE_EXCEPTION = 1004;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD>
/*********************<2A>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> begin************************/
public const int COMM_ALARM = 0x1100;//8000<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ӦNET_DVR_ALARMINFO
public const int COMM_ALARM_RULE = 0x1102;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA>𱨾<EFBFBD><F0B1A8BE><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ӦNET_VCA_RULE_ALARM
public const int COMM_ALARM_PDC = 0x1103;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ӦNET_DVR_PDC_ALRAM_INFO
public const int COMM_ALARM_ALARMHOST = 0x1105;//<2F><><EFBFBD><EFBFBD><E7B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ӦNET_DVR_ALARMHOST_ALARMINFO
public const int COMM_ALARM_FACE = 0x1106;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD>𱨾<EFBFBD><F0B1A8BE><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ӦNET_DVR_FACEDETECT_ALARM
public const int COMM_RULE_INFO_UPLOAD = 0x1107; // <20>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_AID = 0x1110; //<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_ALARM_TPS = 0x1111; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_UPLOAD_FACESNAP_RESULT = 0x1112; //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_FACE_DETECTION = 0x4010; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>Ϣ
public const int COMM_ALARM_TFS = 0x1113; //<2F><>ͨȡ֤<C8A1><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_ALARM_TPS_V41 = 0x1114; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>չ
public const int COMM_ALARM_AID_V41 = 0x1115; //<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>չ
public const int COMM_ALARM_VQD_EX = 0x1116; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD>
public const int COMM_SENSOR_VALUE_UPLOAD = 0x1120; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵʱ<CAB5>ϴ<EFBFBD>
public const int COMM_SENSOR_ALARM = 0x1121; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_SWITCH_ALARM = 0x1122; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_ALARMHOST_EXCEPTION = 0x1123; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD>
public const int COMM_ALARMHOST_OPERATEEVENT_ALARM = 0x1124; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARMHOST_SAFETYCABINSTATE = 0x1125; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
public const int COMM_ALARMHOST_ALARMOUTSTATUS = 0x1126; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>״̬
public const int COMM_ALARMHOST_CID_ALARM = 0x1127; //CID<49><44><EFBFBD><EFBFBD><E6B1A8><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARMHOST_EXTERNAL_DEVICE_ALARM = 0x1128; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARMHOST_DATA_UPLOAD = 0x1129; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_UPLOAD_VIDEO_INTERCOM_EVENT = 0x1132; //<2F><><EFBFBD>ӶԽ<D3B6><D4BD>¼<EFBFBD><C2BC><EFBFBD>¼<EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_AUDIOEXCEPTION = 0x1150; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_ALARM_DEFOCUS = 0x1151; //<2F><EFBFBD><E9BDB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_ALARM_BUTTON_DOWN_EXCEPTION = 0x1152; //<2F><>ť<EFBFBD><C5A5><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_ALARM_ALARMGPS = 0x1202; //GPS<50><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ϴ<EFBFBD>
public const int COMM_TRADEINFO = 0x1500; //ATMDVR<56><52><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_UPLOAD_PLATE_RESULT = 0x2800; //<2F>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_ITC_STATUS_DETECT_RESULT = 0x2810; //ʵʱ״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>(<28><><EFBFBD>ܸ<EFBFBD><DCB8><EFBFBD>IPC)
public const int COMM_IPC_AUXALARM_RESULT = 0x2820; //PIR<49><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_UPLOAD_PICTUREINFO = 0x2900; //<2F>ϴ<EFBFBD>ͼƬ<CDBC><C6AC>Ϣ
public const int COMM_SNAP_MATCH_ALARM = 0x2902; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ȶԽ<C8B6><D4BD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ITS_PLATE_RESULT = 0x3050; //<2F>ն<EFBFBD>ͼƬ<CDBC>ϴ<EFBFBD>
public const int COMM_ITS_TRAFFIC_COLLECT = 0x3051; //<2F>ն<EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ITS_GATE_VEHICLE = 0x3052; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ITS_GATE_FACE = 0x3053; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ITS_GATE_COSTITEM = 0x3054; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD>շ<EFBFBD><D5B7><EFBFBD>ϸ 2013-11-19
public const int COMM_ITS_GATE_HANDOVER = 0x3055; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><DABD>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD><EFBFBD> 2013-11-19
public const int COMM_ITS_PARK_VEHICLE = 0x3056; //ͣ<><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ITS_BLOCKLIST_ALARM = 0x3057; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_TPS_REAL_TIME = 0x3081; //TPSʵʱ<CAB5><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_TPS_STATISTICS = 0x3082; //TPSͳ<53>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_V30 = 0x4000; //9000<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_IPCCFG = 0x4001; //9000<30>豸IPC<50><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>øı<C4B1><E4B1A8><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_IPCCFG_V31 = 0x4002; //9000<30>豸IPC<50><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>øı<C4B1><E4B1A8><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>չ 9000_1.1
public const int COMM_IPCCFG_V40 = 0x4003; // IVMS 2000 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NVR IPC<50><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>øı<C3B8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_DEVICE = 0x4004; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>256<35><36><EFBFBD><EFBFBD>չ
public const int COMM_ALARM_CVR = 0x4005; //CVR 2.0.X<>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_ALARM_HOT_SPARE = 0x4006; //<2F>ȱ<EFBFBD><C8B1><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N+1ģʽ<C4A3><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_ALARM_V40 = 0x4007; //<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2A3AC>Ƶ<EFBFBD><C6B5>ʧ<EFBFBD><CAA7><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>IO<49>ź<EFBFBD><C5BA><EFBFBD><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ɱ䳤
public const int COMM_UPLOAD_HEATMAP_RESULT = 0x4008; //<2F>ȶ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ITS_ROAD_EXCEPTION = 0x4500; //·<><C2B7><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD>
public const int COMM_ITS_EXTERNAL_CONTROL_ALARM = 0x4520; //<2F><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>
public const int COMM_FIREDETECTION_ALARM = 0x4991; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8>
public const int COMM_SCREEN_ALARM = 0x5000; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_DVCS_STATE_ALARM = 0x5001; //<2F>ֲ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_VQD = 0x6000; //VQD<51><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_PUSH_UPDATE_RECORD_INFO = 0x6001; //<2F><>ģʽ¼<CABD><C2BC><EFBFBD><EFBFBD>Ϣ<EFBFBD>ϴ<EFBFBD>
public const int COMM_DIAGNOSIS_UPLOAD = 0x5100; //<2F><><EFBFBD>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><EFBFBD>VQD<51><44><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
public const int COMM_ALARM_ACS = 0x5002; //<2F>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_ID_INFO_ALARM = 0x5200; //<2F><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>Ϣ<EFBFBD>ϴ<EFBFBD>
public const int COMM_PASSNUM_INFO_ALARM = 0x5201; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>
public const int COMM_ISAPI_ALARM = 0x6009;
public const int COMM_THERMOMETRY_ALARM = 0x5212; //<2F>¶ȱ<C2B6><C8B1><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int COMM_UPLOAD_AIOP_VIDEO = 0x4021; //<2F>豸֧<E8B1B8><D6A7>AI<41><49><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_UPLOAD_AIOP_PICTURE = 0x4022; //<2F>豸֧<E8B1B8><D6A7>AI<41><49><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ϴ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int COMM_UPLOAD_AIOP_POLLING_SNAP = 0x4023; //<2F>豸֧<E8B1B8><D6A7>AI<41><49><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>ѲץͼͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ӧ<EFBFBD>Ľṹ<C4BD><E1B9B9>(NET_AIOP_POLLING_SNAP_HEAD)
public const int COMM_UPLOAD_AIOP_POLLING_VIDEO = 0x4024; //<2F>豸֧<E8B1B8><D6A7>AI<41><49><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>Ѳ<EFBFBD><D1B2>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ӧ<EFBFBD>Ľṹ<C4BD><E1B9B9>(NET_AIOP_POLLING_VIDEO_HEAD)
public const int NET_DVR_JSON_CONFIG = 2550;
public const int NET_DVR_FACE_DATA_RECORD = 2551;
public const int NET_DVR_FACE_DATA_SEARCH = 2552;
public const int NET_DVR_FACE_DATA_MODIFY = 2553;
public const int NET_DVR_REMOTECONTROL_GATEWAY = 16009; //Զ<>̿<EFBFBD><CCBF><EFBFBD>
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern int NET_DVR_SendWithRecvRemoteConfig(int lHandle, IntPtr lpInBuff, uint dwInBuffSize, IntPtr lpOutBuff, uint dwOutBuffSize, ref uint dwOutDataLen);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern int NET_DVR_SendWithRecvRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_FACE_RECORD lpInBuff, int dwInBuffSize, ref CHCNetSDK.NET_DVR_FACE_STATUS lpOutBuff, int dwOutBuffSize, IntPtr dwOutDataLen);
[DllImport(@"..\..\..\HCNetSDK\HCNetSDK.dll")]
public static extern int NET_DVR_SendWithRecvRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_FINGERPRINT_RECORD lpInBuff, int dwInBuffSize, ref CHCNetSDK.NET_DVR_FINGERPRINT_STATUS lpOutBuff, int dwOutBuffSize, IntPtr dwOutDataLen);
// <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>SendwithRecv<63>ӿ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ӿڷ<D3BF><DAB7>ص<EFBFBD>״̬
public enum NET_SDK_SENDWITHRECV_STATUS
{
NET_SDK_CONFIG_STATUS_SUCCESS = 1000, // <20>ɹ<EFBFBD><C9B9><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3>ͻ<EFBFBD><CDBB>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EAB1BE><EFBFBD><EFBFBD><EFBFBD>ݺ<EFBFBD><DDBA><EFBFBD>Ҫ<EFBFBD>ٴε<D9B4><CEB5><EFBFBD>NET_DVR_SendWithRecvRemoteConfig<69><67>ȡ<EFBFBD><C8A1>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
NET_SDK_CONFIG_STATUS_NEEDWAIT, // <20><><EFBFBD>õȴ<C3B5><C8B4><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD>NET_DVR_SendWithRecvRemoteConfig
NET_SDK_CONFIG_STATUS_FINISH, // <20><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB>ȡ<EFBFBD><EFBFBD><EAA3AC>ʱ<EFBFBD>ͻ<EFBFBD><CDBB>˿ɵ<CBBF><C9B5><EFBFBD>NET_DVR_StopRemoteConfig<69><67><EFBFBD><EFBFBD>
NET_SDK_CONFIG_STATUS_FAILED, // <20><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><DCA3>ͻ<EFBFBD><CDBB>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD>NET_DVR_SendWithRecvRemoteConfig
NET_SDK_CONFIG_STATUS_EXCEPTION, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD>ʱ<EFBFBD>ͻ<EFBFBD><CDBB>˿ɵ<CBBF><C9B5><EFBFBD>NET_DVR_StopRemoteConfig<69><67><EFBFBD><EFBFBD>
}
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_STDXMLConfig(int lUserID, IntPtr lpInputParam, IntPtr lpOutputParam);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ControlGateway(int lUserID, int lGatewayIndex, uint dwStaic);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessageCallBack_V50(int iIndex, MSGCallBack fMessageCallBack, IntPtr pUser);
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_JSON_DATA_CFG
{
public uint dwSize; //size of NET_DVR_JSON_DATA_CFG
public IntPtr lpJsonData; //Json data
public uint dwJsonDataSize; //Json data size
public IntPtr lpPicData; //picture data
public uint dwPicDataSize; //picture data size
public uint dwInfraredFacePicSize; //infrared picture data size
public IntPtr lpInfraredFacePicBuffer; //infrared picture data
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 248)]
public byte[] byRes; //reserve
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAPTURE_FACE_COND
{
public int dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byRes = new byte[128];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAPTURE_FACE_CFG
{
public int dwSize;
public int dwFaceTemplate1Size;//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>1<EFBFBD><31><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>1<EFBFBD><31><EFBFBD><EFBFBD>
public IntPtr pFaceTemplate1Buffer;//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>1<EFBFBD><31><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD><E6A3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.5k<EFBFBD><EFBFBD>
public int dwFaceTemplate2Size;//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>2<EFBFBD><32><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>2<EFBFBD><32><EFBFBD><EFBFBD>
public IntPtr pFaceTemplate2Buffer; //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>2<EFBFBD><32><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD><E6A3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2.5K<EFBFBD><EFBFBD>
public int dwFacePicSize;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>;
public IntPtr pFacePicBuffer;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>;
public byte byFaceQuality1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ1-100
public byte byFaceQuality2;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ1-100
public byte byCaptureProgress; //<2F>ɼ<EFBFBD><C9BC><EFBFBD><EFBFBD>ȣ<EFBFBD>Ŀǰֻ<C7B0><D6BB><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>ֵ<EFBFBD><D6B5>0-δ<>ɼ<EFBFBD><C9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>100-<2D>ɼ<EFBFBD><C9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>Ϊ100ʱ<30><CAB1><EFBFBD>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>
public byte byRes1;
public int dwInfraredFacePicSize; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pInfraredFacePicBuffer; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 116, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byRes = new byte[116];
}
}
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_CAPTURE_FACE_CFG lpOutBuff, int dwOutBuffSize);
public const int ERROR_MSG_LEN = 32;
public const int MAX_FINGER_PRINT_LEN = 768;
public const int NET_DVR_CAPTURE_FINGERPRINT_INFO = 2504;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINGERPRINT_STATUS
{
public int dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN)]
public byte[] byCardNo;
public byte byCardReaderRecvStatus;//ָ<>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD>ֽڱ<D6BD>ʾ<EFBFBD><CABE>0-ʧ<>ܣ<EFBFBD>1-<2D>ɹ<EFBFBD><C9B9><EFBFBD>2-<2D><>ָ<EFBFBD><D6B8>ģ<EFBFBD><EFBFBD><E9B2BB><EFBFBD>ߣ<EFBFBD>3-<2D><><EFBFBD>Ի<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-<2D>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-<2D>Ѵ<EFBFBD><D1B4>ڸ<EFBFBD>ָ<EFBFBD>ƣ<EFBFBD>6-<2D>Ѵ<EFBFBD><D1B4>ڸ<EFBFBD>ָ<EFBFBD><D6B8>ID<49><44>7-<2D>Ƿ<EFBFBD>ָ<EFBFBD><D6B8>ID<49><44>8-<2D><>ָ<EFBFBD><D6B8>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFingerPrintID;//<2F><>ָ<EFBFBD><D6B8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>Чֵ<D0A7><D6B5>ΧΪ1-10
public byte byFingerType;//ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>ָͨ<CDA8>ƣ<EFBFBD>1-в<><D0B2>ָ<EFBFBD><D6B8>
public byte byRecvStatus;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-<2D>ɹ<EFBFBD><C9B9><EFBFBD>1-<2D><>ָ<EFBFBD><D6B8><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD>2-ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD>Ŵ<EFBFBD><C5B4>󣨿<EFBFBD><F3A3A8BF>Ź<EFBFBD><C5B9>񲻷<EFBFBD><F1B2BBB7><EFBFBD><EFBFBD>豸Ҫ<E8B1B8>󣩣<EFBFBD>4-ָ<><D6B8>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ż򿨺ţ<F2BFA8BA><C5A3><EFBFBD><EFBFBD>Ż򿨺<C5BB><F2BFA8BA>ֶ<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><D5A3><EFBFBD>5-<2D><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD>ڣ<EFBFBD>6-ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>Ϊ0<CEAA><30>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD>8-<2D><><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ERROR_MSG_LEN)]
public byte[] byErrorMsg;//<2F>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>byCardReaderRecvStatusΪ5ʱ<35><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD>Ѵ<EFBFBD><D1B4><EFBFBD>ָ<EFBFBD>ƶ<EFBFBD>Ӧ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>
public int dwCardReaderNo;//<2F><>byCardReaderRecvStatusΪ5ʱ<35><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD>Ѵ<EFBFBD><D1B4><EFBFBD>ָ<EFBFBD>ƶ<EFBFBD>Ӧ<EFBFBD><D3A6>ָ<EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>󷵻ء<F3B7B5BB><30><CAB1>ʾ<EFBFBD>޴<EFBFBD><DEB4><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byErrorMsg = new byte[CHCNetSDK.ERROR_MSG_LEN];
byRes = new byte[20];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINGERPRINT_RECORD
{
public int dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN)]
public byte[] byCardNo; //ָ<>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>
public int dwFingerPrintLen; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public int dwEnableReaderNo;//<2F><>Ҫ<EFBFBD>·<EFBFBD>ָ<EFBFBD>ƵĶ<C6B5><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFingerPrintID;//<2F><>ָ<EFBFBD><D6B8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>Чֵ<D0A7><D6B5>ΧΪ1-10
public byte byFingerType;//ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>ָͨ<CDA8>ƣ<EFBFBD>1-в<><D0B2>ָ<EFBFBD><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 30)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.MAX_FINGER_PRINT_LEN)]
public byte[] byFingerData;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 96)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byRes1 = new byte[30];
byFingerData = new byte[CHCNetSDK.MAX_FINGER_PRINT_LEN];
byRes = new byte[96];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINGER_PRINT_INFO_CTRL_V50_ByCardNo
{
public int dwSize;
public byte byMode; //ɾ<><C9BE><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44><EFBFBD><EFBFBD>ʽɾ<CABD><C9BE><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3)]
public byte[] byRes1;
public CHCNetSDK.NET_DVR_FINGER_PRINT_BYCARD_V50 struProcessMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64)]
public byte[] byRes;
public void init()
{
byRes1 = new byte[3];
byRes = new byte[64];
struProcessMode.init();
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINGER_PRINT_BYCARD_V50
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN)]
public byte[] byCardNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.MAX_CARD_READER_NUM_512)]
public byte[] byEnableCardReader;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.MAX_FINGER_PRINT_NUM)]
public byte[] byFingerPrintID;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.NET_SDK_EMPLOYEE_NO_LEN)]
public byte[] byEmployeeNo;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byEnableCardReader = new byte[CHCNetSDK.MAX_CARD_READER_NUM_512];
byFingerPrintID = new byte[CHCNetSDK.MAX_FINGER_PRINT_NUM];
byRes1 = new byte[2];
byEmployeeNo = new byte[CHCNetSDK.NET_SDK_EMPLOYEE_NO_LEN];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINGER_PRINT_INFO_STATUS_V50
{
public int dwSize;
public int dwCardReaderNo;
public byte byStatus;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 63)]
public byte[] byRes;
public void init()
{
byRes = new byte[63];
}
}
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_FINGER_PRINT_INFO_STATUS_V50 lpOutBuff, int dwOutBuffSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_ACS_EVENT_CFG lpOutBuff, int dwOutBuffSize);
[DllImport(@"..\..\..\HCNetSDK\HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_FINGERPRINT_RECORD lpOutBuff, int dwOutBuffSize);
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAPTURE_FINGERPRINT_COND
{
public int dwSize;
public byte byFingerPrintPicType; //ͼƬ<CDBC><C6AC><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFingerNo; //<2F><>ָ<EFBFBD><D6B8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>Χ1-10
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 126)]
public byte[] byRes;
public void init()
{
byRes = new byte[126];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAPTURE_FINGERPRINT_CFG
{
public int dwSize;
public int dwFingerPrintDataSize; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.MAX_FINGER_PRINT_LEN)]
public byte[] byFingerData; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public int dwFingerPrintPicSize; //ָ<><D6B8>ͼƬ<CDBC><C6AC>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pFingerPrintPicBuffer; //ָ<><D6B8>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public byte byFingerNo; //<2F><>ָ<EFBFBD><D6B8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>Χ1-10
public byte byFingerPrintQuality; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ1-100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 62)]
public byte[] byRes;
public void init()
{
byFingerData = new byte[CHCNetSDK.MAX_FINGER_PRINT_LEN];
byRes = new byte[62];
}
}
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_CAPTURE_FINGERPRINT_CFG lpOutBuff, int dwOutBuffSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, ref CHCNetSDK.NET_DVR_FACE_RECORD lpOutBuff, int dwOutBuffSize);
//Network Configure Structure(V50)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NETCFG_V50
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ETHERNET, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ETHERNET_V30[] struEtherNet; //Network Port
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPADDR[] struRes1; /*reserve*/
public NET_DVR_IPADDR struAlarmHostIpAddr; /* IP address of remote management host */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; /* reserve */
public ushort wAlarmHostIpPort; /* Port of remote management Host */
public byte byUseDhcp; /* Whether to enable the DHCP 0xff- invalid 0- enabled 1- not enabled */
public byte byIPv6Mode; //IPv6 allocation, 0- routing announcement, 1- manually, 2- enable DHCP allocation
public NET_DVR_IPADDR struDnsServer1IpAddr; /* IP address of the domain name server 1 */
public NET_DVR_IPADDR struDnsServer2IpAddr; /* IP address of the domain name server 2 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byIpResolver; /* IP parse server domain name or IP address */
public ushort wIpResolverPort; /* Parsing IP server port number */
public ushort wHttpPortNo; /* HTTP port number */
public NET_DVR_IPADDR struMulticastIpAddr; /* Multicast group address */
public NET_DVR_IPADDR struGatewayIpAddr; /* Gateway address */
public NET_DVR_PPPOECFG struPPPoE;
public byte byEnablePrivateMulticastDiscovery; //Private multicast search, 0- default, 1- enabled, 2 - disabled
public byte byEnableOnvifMulticastDiscovery; //Onvif multicast search, 0- default, 1- enabled, 2 - disabled
public ushort wAlarmHost2IpPort; /* Alarm host 2 port */
public NET_DVR_IPADDR struAlarmHost2IpAddr; /* Alarm host 2 IP addresses */
public byte byEnableDNS; //DNS Enabled, 0-close,1-open
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 599, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
struEtherNet = new NET_DVR_ETHERNET_V30[MAX_ETHERNET];
struRes1 = new NET_DVR_IPADDR[2];
struAlarmHostIpAddr = new NET_DVR_IPADDR();
struAlarmHost2IpAddr = new NET_DVR_IPADDR();
struDnsServer1IpAddr = new NET_DVR_IPADDR();
struDnsServer2IpAddr = new NET_DVR_IPADDR();
byIpResolver = new byte[MAX_DOMAIN_NAME];
struMulticastIpAddr = new NET_DVR_IPADDR();
struGatewayIpAddr = new NET_DVR_IPADDR();
struPPPoE = new NET_DVR_PPPOECFG();
byRes = new byte[599];
}
}
public const int MAX_CENTERNUM = 4;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_NETCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CENTERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ALARMHOST_NETPARAM[] struNetCenter;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_ABILITY
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public ushort wTotalAlarmInNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wLocalAlarmInNum; // <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wExpandAlarmInNum; // <20><><EFBFBD><EFBFBD>չ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wTotalAlarmOutNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wLocalAlarmOutNum; // <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public ushort wExpandAlarmOutNum; // <20><><EFBFBD><EFBFBD>չ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wTotalRs485Num; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wLocalRs485Num; // <20><><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD>
public ushort wExpandRs485Num; // <20><><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>485<38><35><EFBFBD><EFBFBD>
public ushort wFullDuplexRs485Num; // ȫ˫<C8AB><CBAB><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD>
public ushort wTotalSensorNum; // ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>)
public ushort wLocalSensorNum; // <20><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wExpandSensorNum; // <20><><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wAudioOutNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wGatewayNum; //<2F>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD>
public ushort wElectroLockNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wSirenNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public ushort wSubSystemNum; // <20>ɻ<EFBFBD><C9BB><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ŀ
public ushort wNetUserNum; // <20><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public ushort wKeyboardNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wOperatorUserNum; // <20><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public byte bySupportDetector;//<2F>Ƿ<EFBFBD>֧<EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-֧<>֣<EFBFBD>0-<2D><>֧<EFBFBD><D6A7>
public byte bySupportSensitivity;//<2F>Ƿ<EFBFBD>֧<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>1-֧<>֣<EFBFBD>0-<2D><>֧<EFBFBD><D6A7>
public byte bySupportArrayBypass;//<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>1-֧<>֣<EFBFBD>0-<2D><>֧<EFBFBD><D6A7>
public byte bySupportAlarmInDelay;//<2F>Ƿ<EFBFBD>֧<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>ӳ<EFBFBD>,1-֧<>֣<EFBFBD>0-<2D><>֧<EFBFBD><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] bySupportAlarmInType;//֧<>ֵķ<D6B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>0:<3A><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>,1-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>,2-<2D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> ,3-<2D>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Կ<>׷<EFBFBD><D7B7><EFBFBD> 5-<2D>𾯷<EFBFBD><F0BEAFB7><EFBFBD> 6-<2D>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD> 7-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 8-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-24Сʱ<D0A1>𶯷<EFBFBD><F0B6AFB7><EFBFBD>,10-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7><EFBFBD><EFBFBD><EFBFBD>11-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7><EFBFBD>15-<2D><>
public byte byTelNum; //֧<>ֵ绰<D6B5><E7BBB0><EFBFBD><EFBFBD>
public byte byCenterGroupNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byGPRSNum; //GPRS<52><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><34>
public byte byNetNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><34>
public byte byAudioNum; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>
public byte by3GNum; //3Gģ<47><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAnalogVideoChanNum; //ģ<><C4A3><EFBFBD><EFBFBD>Ƶͨ<C6B5><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDigitalVideoChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶͨ<C6B5><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySubSystemArmType; //<2F><>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1-<2D><>ʾ֧<CABE>֡<EFBFBD>bit0-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>ֻ֧<D6BB><D6A7><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶε<D6B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD><D0B8>ֶ<EFBFBD>Ϊ0<CEAA><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ֧<CABE>֣<EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE>֧<EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD>SDK<44>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD>bit1-<2D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit2-<2D><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD>
public byte byPublicSubSystemNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public uint dwSupport1; //<2F><>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ֧<CABE>֣<EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>֧<EFBFBD><D6A7>
public uint dwSubSystemEvent; //<2F><>ϵͳ<CFB5>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0<EFBFBD><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD>0<EFBFBD><30>ʾ֧<CABE><D6A7>,bit0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>bit1-<2D>˳<EFBFBD><CBB3><EFBFBD>ʱ<EFBFBD><CAB1>bit2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwOverallEvent; //ȫ<><C8AB><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0<EFBFBD><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD>0<EFBFBD><30>ʾ֧<CABE>֣<EFBFBD>bit0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>磬bit1-<2D><><EFBFBD>ص<EFBFBD>ѹ<EFBFBD>ͣ<EFBFBD>bit2-<2D><EFBFBD>ߵ<EFBFBD><DFB5>ߣ<EFBFBD>bit3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>bit4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>bit5-Ӳ<>̹<EFBFBD><CCB9><EFBFBD>,bit6-3G/4G<34>ź<EFBFBD><C5BA>쳣, bit7-<2D><>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,bit8-WIFIͨ<49>Ź<EFBFBD><C5B9>ϣ<EFBFBD>bit9-RF<52>źŸ<C5BA><C5B8>Ź<EFBFBD><C5B9><EFBFBD>
public uint dwFaultType; //<2F>豸֧<E8B1B8>ֵĹ<D6B5><C4B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>bit0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ磬bit1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿѹ<C7B7><D1B9>bit2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𿪣<EFBFBD>bit3-<2D><EFBFBD>ߵ<EFBFBD><DFB5>ߣ<EFBFBD>bit4-<2D><><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><CCB5>ߣ<EFBFBD>bit5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD>bit6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>bit7-<2D><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>bit8-Ӳ<><D3B2><EFBFBD>
public byte byPublicSubsystemAssociateSubsystemNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byOverallKeyboard; //ȫ<>ּ<EFBFBD><D6BC≯<EFBFBD><CCB8><EFBFBD>
public ushort wSafetyCabinSupport; //<2F><><EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><D5BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ֧<CABE>֣<EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>֧<EFBFBD><D6A7>
public byte by485SlotNum; //485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
public byte bySubSystemAttributeAbility; // ֵ<><D6B5>Ϊ1<CEAA><31><EFBFBD><EFBFBD>ֹ1<D6B9><31><EFBFBD><EFBFBD>ϵͳ<CFB5>ر<EFBFBD>ʹ<EFBFBD><CAB9>
public ushort wKeyboardAddrNum; // <20><><EFBFBD>̵<EFBFBD>ַ<EFBFBD><D6B7>
public byte byAlarmLampNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 117, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public void Init()
{
bySupportAlarmInType = new byte[16];
byRes = new byte[117];
}
}
public const int ALARMHOST_ABILITY = 0x500;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_NETCFG_V50
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CENTERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ALARMHOST_NETPARAM_V50[] struNetCenter;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public void Init()
{
struNetCenter = new NET_DVR_ALARMHOST_NETPARAM_V50[MAX_CENTERNUM];
byRes1 = new byte[128];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_NETPARAM_V50
{
public uint dwSize;
public NET_DVR_IPADDR struIP;
public ushort wPort;
public byte byAddressType; //0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1 - ipv4/ipv6<76><36>ַ<EFBFBD><D6B7>2 - <20><><EFBFBD><EFBFBD>
public byte byEnable; //ʹ<>ܣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byDomainName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GPRS<52><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD><C3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ֶξ<D6B6><CEBE><EFBFBD>Ч
public byte byReportProtocol; //1-private 2-NAL2300, 3-Ehome
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACCOUNTNUM_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] byDevID; //Э<><D0AD>ΪNAL2300ʱ<30><CAB1>Ч
public byte byProtocolVersion; //EHomeЭ<65><D0AD><EFBFBD><EFBFBD><E6B1BE>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1<>Cv2.0<EFBFBD><EFBFBD>2<EFBFBD>Cv4.0<EFBFBD><EFBFBD>3-v5.0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_EHOME_KEY_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byEHomeKey; //EHome Key<65><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD>EHome 5.0<EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 28, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //GPRS<52><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ̶<DAB9><CCB6>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD>еģ<D0B5><C4A3><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϢԤ<CFA2><D4A4>һЩ<D2BB>ֶ<EFBFBD>
public void Init()
{
struIP = new NET_DVR_IPADDR();
byDomainName = new byte[MAX_DOMAIN_NAME];
byDevID = new byte[ACCOUNTNUM_LEN_32];
byRes1 = new byte[3];
byEHomeKey = new byte[NET_SDK_EHOME_KEY_LEN];
byRes2 = new byte[28];
}
}
public const int NET_DVR_SET_ALARMHOST_NETCFG_V50 = 2225; //Set Net info V50
public const int NET_DVR_GET_ALARMHOST_NETCFG_V50 = 2224; //Get Net infoV50
public const int MAX_AUDIO_V40 = 8;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SIMPLE_DAYTIME
{
public byte byHour; //hour
public byte byMinute; //minute
public byte bySecond; //second
public byte byRes;
}
public const int NET_DVR_GET_NETCFG_V50 = 1015; //Get network parameter configuration (V50)
public const int NET_DVR_SET_NETCFG_V50 = 1016; //Set network parameter configuration (V50)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INDEX
{
public uint iIndex;
public void Init()
{
iIndex = 1;
}
}
public struct NET_DVR_INBUFF
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.U4)]
public uint[] StatusList;
public void Init()
{
StatusList = new uint[16];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40
{
public uint dwSize;
public byte byValid;
public byte byDataType; //1-All alarm data 2-not alarm data 3-all data,4-zone report,5-not zone report
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
public byte[] byChanAlarmMode;//alarm channels, 1-T1,2-T2, 3-N1, 4-N2,5-G1, 6-G2 ,7-N3, 8-N4
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.Struct)]
public byte[] byDealFailCenter; //send to these centers while send fail 0-not choose,1-choose
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 512, ArraySubType = UnmanagedType.Struct)]
public byte[] byZoneReport; //zone report type,0-not upload,1-upload
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.Struct)]
public byte[] byNonZoneReport; //not zone report, 0-not upload,1-upload byNonZoneReport[0]-soft zone report byNonZoneReport[1]-system status report byNonZoneReport[2]-cancel report byNonZoneReport[3]-test report byNonZoneReport[4]-arm report byNonZoneReport[5]-disarm report byNonZoneReport[6]-duress report byNonZoneReport[7]-alarm recovery report byNonZoneReport[8]-bypass report byNonZoneReport[9]-bypass restore report,byNonZoneReport[10]-detector connect status report(online/offline),byNonZoneReport[11]-detector power status report(normal/low);bit12-video alarm report
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
public byte[] byAlarmNetCard; //network card center,0-primary card_1,1-primary card_2,2-extend card_1,3-extend card_2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 252, ArraySubType = UnmanagedType.Struct)]
public byte[] byRes2;
public void Init()
{
byRes = new byte[2];
byChanAlarmMode = new byte[4];
byDealFailCenter = new byte[16];
byZoneReport = new byte[512];
byNonZoneReport = new byte[32];
byAlarmNetCard = new byte[4];
byRes2 = new byte[252];
}
}
public const int DOOR_NAME_LEN = 32;//door name len
public const int STRESS_PASSWORD_LEN = 8;//stress password len
public const int SUPER_PASSWORD_LEN = 8;//super password len
public const int UNLOCK_PASSWORD_LEN = 8;
public const int MAX_DOOR_NUM = 32;
public const int MAX_GROUP_NUM = 32;
public const int LOCAL_CONTROLLER_NAME_LEN = 32;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DOOR_CFG
{
public uint dwSize;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = DOOR_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDoorName;//door name
public byte byMagneticType;//magnetic type, 0-always close 1-always open
public byte byOpenButtonType;//open button type, 0-always close 1-always open
public byte byOpenDuration;//open duration time, 1-255s(ladder control relay action time)
public byte byDisabledOpenDuration;//disable open duration , 1-255s
public byte byMagneticAlarmTimeout;//magnetic alarm time out , 0-255s,0 means not to alarm
public byte byEnableDoorLock;//whether to enable door lock, 0-disable, 1-enable
public byte byEnableLeaderCard;//whether to enable leader card , 0-disable, 1-enable
public byte byLeaderCardMode;//First card mode, 0 - first card function is not enabled, and 1 - the first card normally open mode, 2 - the first card authorization mode (using this field, the byEnableLeaderCard is invalid )
public uint dwLeaderCardOpenDuration;//leader card open duration 1-1440min
[MarshalAs(UnmanagedType.ByValArray, SizeConst = STRESS_PASSWORD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byStressPassword;//stress ppassword
[MarshalAs(UnmanagedType.ByValArray, SizeConst = SUPER_PASSWORD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] bySuperPassword; //super password
[MarshalAs(UnmanagedType.ByValArray, SizeConst = UNLOCK_PASSWORD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUnlockPassword;
public byte byUseLocalController; //Read-only, whether the connection on the local controller, 0 - no, 1 - yes
public byte byRes1;
public ushort wLocalControllerID; //Read-only, on-site controller serial number, 1-64, 0 on behalf of unregistered
public ushort wLocalControllerDoorNumber; //Read-only, on-site controller door number, 1-4, 0 represents the unregistered
public ushort wLocalControllerStatus; //Read-only, on-site controller online status: 0 - offline, 1 - online, 2 - loop of RS485 serial port 1 on 1, 3 - loop of RS485 serial port 2 on 2, 4 - loop of RS485 serial port 1, 5 - loop of RS485 serial port 2, 6 - loop 3 of RS485 serial port 1, 7 - the loop on the RS485 serial port on the 3 4 2, 8 - loop on the RS485 serial port 1, 9 - loop 4 of RS485 serial port 2 (read-only)
public byte byLockInputCheck; //Whether to enable the door input detection (1 public byte, 0 is not enabled, 1 is enabled, is not enabled by default)
public byte byLockInputType; //Door lock input type
public byte byDoorTerminalMode; //Gate terminal working mode
public byte byOpenButton; //Whether to enable the open button
public byte byLadderControlDelayTime; //ladder control delay time,1-255min
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 43, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
byDoorName = new byte[DOOR_NAME_LEN];
byStressPassword = new byte[STRESS_PASSWORD_LEN];
bySuperPassword = new byte[SUPER_PASSWORD_LEN];
byUnlockPassword = new byte[UNLOCK_PASSWORD_LEN];
byRes2 = new byte[43];
}
}
public const int NET_DVR_GET_DOOR_CFG = 2108; //get door parameter
public const int NET_DVR_SET_DOOR_CFG = 2109; //set door parameter
public const int NET_DVR_SET_ALARMHOST_REPORT_CENTER_V40 = 2065; // set data report mode v30
/*************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD>(<28><>Ϣ<EFBFBD><CFA2>ʽ, <20>ص<EFBFBD><D8B5><EFBFBD>ʽ(<28><><EFBFBD><EFBFBD>))****************/
public const int EXCEPTION_EXCHANGE = 32768;//<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>
public const int EXCEPTION_AUDIOEXCHANGE = 32769;//<2F><><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD>
public const int EXCEPTION_ALARM = 32770;//<2F><><EFBFBD><EFBFBD><EFBFBD>
public const int EXCEPTION_PREVIEW = 32771;//<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD>
public const int EXCEPTION_SERIAL = 32772;//͸<><CDB8>ͨ<EFBFBD><CDA8><EFBFBD>
public const int EXCEPTION_RECONNECT = 32773;//Ԥ<><D4A4>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public const int EXCEPTION_ALARMRECONNECT = 32774;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public const int EXCEPTION_SERIALRECONNECT = 32775;//͸<><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int EXCEPTION_PLAYBACK = 32784;//<2F>ط<EFBFBD><D8B7>
public const int EXCEPTION_DISKFMT = 32785;//Ӳ<≯<EFBFBD>ʽ<EFBFBD><CABD>
/********************Ԥ<><D4A4><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>*********************/
public const int NET_DVR_SYSHEAD = 1;//ϵͳͷ<CDB3><CDB7><EFBFBD><EFBFBD>
public const int NET_DVR_STREAMDATA = 2;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>
public const int NET_DVR_AUDIOSTREAMDATA = 3;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_STD_VIDEODATA = 4;//<2F><>׼<EFBFBD><D7BC>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_STD_AUDIODATA = 5;//<2F><>׼<EFBFBD><D7BC>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F>ص<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD>е<EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ϣ
public const int NET_DVR_REALPLAYEXCEPTION = 111;//Ԥ<><D4A4><EFBFBD>
public const int NET_DVR_REALPLAYNETCLOSE = 112;//Ԥ<><D4A4>ʱ<EFBFBD><CAB1><EFBFBD>ӶϿ<D3B6>
public const int NET_DVR_REALPLAY5SNODATA = 113;//Ԥ<><D4A4>5sû<73><C3BB><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_REALPLAYRECONNECT = 114;//Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/********************<2A>طŻص<C5BB><D8B5><EFBFBD><EFBFBD><EFBFBD>*********************/
public const int NET_DVR_PLAYBACKOVER = 101;//<2F>ط<EFBFBD><D8B7><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_PLAYBACKEXCEPTION = 102;//<2F>ط<EFBFBD><D8B7>
public const int NET_DVR_PLAYBACKNETCLOSE = 103;//<2F>ط<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ӶϿ<D3B6>
public const int NET_DVR_PLAYBACK5SNODATA = 104;//<2F>ط<EFBFBD>5sû<73><C3BB><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>
/*********************<2A>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> end************************/
//<2F><EFBFBD>ͺ<EFBFBD>(DVR<56><52><EFBFBD><EFBFBD>)
/* <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
public const int DVR = 1;/*<2A><><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dvr<76><72><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD>NETRET_DVR*/
public const int ATMDVR = 2;/*atm dvr*/
public const int DVS = 3;/*DVS*/
public const int DEC = 4;/* 6001D */
public const int ENC_DEC = 5;/* 6001F */
public const int DVR_HC = 6;/*8000HC*/
public const int DVR_HT = 7;/*8000HT*/
public const int DVR_HF = 8;/*8000HF*/
public const int DVR_HS = 9;/* 8000HS DVR(no audio) */
public const int DVR_HTS = 10; /* 8016HTS DVR(no audio) */
public const int DVR_HB = 11; /* HB DVR(SATA HD) */
public const int DVR_HCS = 12; /* 8000HCS DVR */
public const int DVS_A = 13; /* <20><>ATAӲ<41>̵<EFBFBD>DVS */
public const int DVR_HC_S = 14; /* 8000HC-S */
public const int DVR_HT_S = 15;/* 8000HT-S */
public const int DVR_HF_S = 16;/* 8000HF-S */
public const int DVR_HS_S = 17; /* 8000HS-S */
public const int ATMDVR_S = 18;/* ATM-S */
public const int LOWCOST_DVR = 19;/*7000Hϵ<48><CFB5>*/
public const int DEC_MAT = 20; /*<2A><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int DVR_MOBILE = 21;/* mobile DVR */
public const int DVR_HD_S = 22; /* 8000HD-S */
public const int DVR_HD_SL = 23;/* 8000HD-SL */
public const int DVR_HC_SL = 24;/* 8000HC-SL */
public const int DVR_HS_ST = 25;/* 8000HS_ST */
public const int DVS_HW = 26; /* 6000HW */
public const int DS630X_D = 27; /* <20><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int IPCAM = 30;/*IP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int MEGA_IPCAM = 31;/*X52MFϵ<46><CFB5>,752MF,852MF*/
public const int IPCAM_X62MF = 32;/*X62MFϵ<46>пɽ<D0BF><C9BD><EFBFBD>9000<30>豸,762MF,862MF*/
public const int IPDOME = 40; /*IP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int IPDOME_MEGA200 = 41;/*IP 200<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int IPDOME_MEGA130 = 42;/*IP 130<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int IPMOD = 50;/*IP ģ<><C4A3>*/
public const int DS71XX_H = 71;/* DS71XXH_S */
public const int DS72XX_H_S = 72;/* DS72XXH_S */
public const int DS73XX_H_S = 73;/* DS73XXH_S */
public const int DS76XX_H_S = 76;/* DS76XX_H_S */
public const int DS81XX_HS_S = 81;/* DS81XX_HS_S */
public const int DS81XX_HL_S = 82;/* DS81XX_HL_S */
public const int DS81XX_HC_S = 83;/* DS81XX_HC_S */
public const int DS81XX_HD_S = 84;/* DS81XX_HD_S */
public const int DS81XX_HE_S = 85;/* DS81XX_HE_S */
public const int DS81XX_HF_S = 86;/* DS81XX_HF_S */
public const int DS81XX_AH_S = 87;/* DS81XX_AH_S */
public const int DS81XX_AHF_S = 88;/* DS81XX_AHF_S */
public const int DS90XX_HF_S = 90; /*DS90XX_HF_S*/
public const int DS91XX_HF_S = 91; /*DS91XX_HF_S*/
public const int DS91XX_HD_S = 92; /*91XXHD-S(MD)*/
/**********************<2A><EFBFBD><E8B1B8><EFBFBD><EFBFBD> end***********************/
/**********************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> begin***********************/
public const int DEVICE_SOFTHARDWARE_ABILITY = 0x001;
public const int DEVICE_NETWORK_ABILITY = 0x002;
public const int DEVICE_ENCODE_ALL_ABILITY_V20 = 0x008;
public const int IPC_FRONT_PARAMETER_V20 = 0x009;
public const int DEVICE_RAID_ABILITY = 0x007;
public const int DEVICE_ALARM_ABILITY = 0x00a;
public const int DEVICE_DYNCHAN_ABILITY = 0x00b;
public const int DEVICE_USER_ABILITY = 0x00c;
public const int DEVICE_NETAPP_ABILITY = 0x00d;
public const int DEVICE_VIDEOPIC_ABILITY = 0x00e;
public const int DEVICE_JPEG_CAP_ABILITY = 0x00f;
public const int DEVICE_SERIAL_ABILITY = 0x010;
public const int DEVICE_ABILITY_INFO = 0x011;
/**********************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> end***********************/
/*************************************************
<EFBFBD>Ž<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
**************************************************/
#region acs event upload
/* Alarm */
// Main Type
//public const int MAJOR_ALARM = 0x1;
// Hypo- Type
public const int MINOR_ALARMIN_SHORT_CIRCUIT = 0x400; // region short circuit
public const int MINOR_ALARMIN_BROKEN_CIRCUIT = 0x401; // region broken circuit
public const int MINOR_ALARMIN_EXCEPTION = 0x402; // region exception
public const int MINOR_ALARMIN_RESUME = 0x403; // region resume
public const int MINOR_HOST_DESMANTLE_ALARM = 0x404; // host desmantle alarm
public const int MINOR_HOST_DESMANTLE_RESUME = 0x405; // host desmantle resume
public const int MINOR_CARD_READER_DESMANTLE_ALARM = 0x406; // card reader desmantle alarm
public const int MINOR_CARD_READER_DESMANTLE_RESUME = 0x407; // card reader desmantle resume
public const int MINOR_CASE_SENSOR_ALARM = 0x408; // case sensor alarm
public const int MINOR_CASE_SENSOR_RESUME = 0x409; // case sensor resume
public const int MINOR_STRESS_ALARM = 0x40a; // stress alarm
public const int MINOR_OFFLINE_ECENT_NEARLY_FULL = 0x40b; // offline ecent nearly full
public const int MINOR_CARD_MAX_AUTHENTICATE_FAIL = 0x40c; // card max authenticate fall
public const int MINOR_SD_CARD_FULL = 0x40d; // SD card is full
public const int MINOR_LINKAGE_CAPTURE_PIC = 0x40e; // lingage capture picture
public const int MINOR_SECURITY_MODULE_DESMANTLE_ALARM = 0x40f; //Door control security module desmantle alarm
public const int MINOR_SECURITY_MODULE_DESMANTLE_RESUME = 0x410; //Door control security module desmantle resume
public const int MINOR_POS_START_ALARM = 0x411; // POS Start
public const int MINOR_POS_END_ALARM = 0x412; // POS end
public const int MINOR_FACE_IMAGE_QUALITY_LOW = 0x413; // face image quality low
public const int MINOR_FINGE_RPRINT_QUALITY_LOW = 0x414; // finger print quality low
public const int MINOR_FIRE_IMPORT_SHORT_CIRCUIT = 0x415; // Fire import short circuit
public const int MINOR_FIRE_IMPORT_BROKEN_CIRCUIT = 0x416; // Fire import broken circuit
public const int MINOR_FIRE_IMPORT_RESUME = 0x417; // Fire import resume
public const int MINOR_FIRE_BUTTON_TRIGGER = 0x418; // fire button trigger
public const int MINOR_FIRE_BUTTON_RESUME = 0x419; // fire button resume
public const int MINOR_MAINTENANCE_BUTTON_TRIGGER = 0x41a; // maintenance button trigger
public const int MINOR_MAINTENANCE_BUTTON_RESUME = 0x41b; // maintenance button resume
public const int MINOR_EMERGENCY_BUTTON_TRIGGER = 0x41c; // emergency button trigger
public const int MINOR_EMERGENCY_BUTTON_RESUME = 0x41d; // emergency button resume
public const int MINOR_DISTRACT_CONTROLLER_ALARM = 0x41e; // distract controller alarm
public const int MINOR_DISTRACT_CONTROLLER_RESUME = 0x41f; // distract controller resume
public const int MINOR_CHANNEL_CONTROLLER_DESMANTLE_ALARM = 0x422; //channel controller desmantle alarm
public const int MINOR_CHANNEL_CONTROLLER_DESMANTLE_RESUME = 0x423; //channel controller desmantle resume
public const int MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM = 0x424; //channel controller fire import alarm
public const int MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME = 0x425; //channel controller fire import resume
public const int MINOR_PRINTER_OUT_OF_PAPER = 0x440; //printer no paper
public const int MINOR_LEGAL_EVENT_NEARLY_FULL = 0x442; //Legal event nearly full
/* Exception*/
// Main Type
//public const int MAJOR_EXCEPTION = 0x2;
// Hypo- Type
//public const int MINOR_NET_BROKEN = 0x27; // Network disconnected
public const int MINOR_RS485_DEVICE_ABNORMAL = 0x3a; // RS485 connect status exception
public const int MINOR_RS485_DEVICE_REVERT = 0x3b; // RS485 connect status exception recovery
public const int MINOR_DEV_POWER_ON = 0x400; // device power on
public const int MINOR_DEV_POWER_OFF = 0x401; // device power off
public const int MINOR_WATCH_DOG_RESET = 0x402; // watch dog reset
public const int MINOR_LOW_BATTERY = 0x403; // low battery
public const int MINOR_BATTERY_RESUME = 0x404; // battery resume
public const int MINOR_AC_OFF = 0x405; // AC off
public const int MINOR_AC_RESUME = 0x406; // AC resume
public const int MINOR_NET_RESUME = 0x407; // Net resume
public const int MINOR_FLASH_ABNORMAL = 0x408; // FLASH abnormal
public const int MINOR_CARD_READER_OFFLINE = 0x409; // card reader offline
public const int MINOR_CARD_READER_RESUME = 0x40a; // card reader resume
public const int MINOR_INDICATOR_LIGHT_OFF = 0x40b; // Indicator Light Off
public const int MINOR_INDICATOR_LIGHT_RESUME = 0x40c; // Indicator Light Resume
public const int MINOR_CHANNEL_CONTROLLER_OFF = 0x40d; // channel controller off
public const int MINOR_CHANNEL_CONTROLLER_RESUME = 0x40e; // channel controller resume
public const int MINOR_SECURITY_MODULE_OFF = 0x40f; // Door control security module off
public const int MINOR_SECURITY_MODULE_RESUME = 0x410; // Door control security module resume
public const int MINOR_BATTERY_ELECTRIC_LOW = 0x411; // battery electric low
public const int MINOR_BATTERY_ELECTRIC_RESUME = 0x412; // battery electric resume
public const int MINOR_LOCAL_CONTROL_NET_BROKEN = 0x413; // Local control net broken
public const int MINOR_LOCAL_CONTROL_NET_RSUME = 0x414; // Local control net resume
public const int MINOR_MASTER_RS485_LOOPNODE_BROKEN = 0x415; // Master RS485 loop node broken
public const int MINOR_MASTER_RS485_LOOPNODE_RESUME = 0x416; // Master RS485 loop node resume
public const int MINOR_LOCAL_CONTROL_OFFLINE = 0x417; // Local control offline
public const int MINOR_LOCAL_CONTROL_RESUME = 0x418; // Local control resume
public const int MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN = 0x419; // Local downside RS485 loop node broken
public const int MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME = 0x41a; // Local downside RS485 loop node resume
public const int MINOR_DISTRACT_CONTROLLER_ONLINE = 0x41b; // distract controller online
public const int MINOR_DISTRACT_CONTROLLER_OFFLINE = 0x41c; // distract controller offline
public const int MINOR_ID_CARD_READER_NOT_CONNECT = 0x41d; // Id card reader not connected(intelligent dedicated)
public const int MINOR_ID_CARD_READER_RESUME = 0x41e; //Id card reader connection restored(intelligent dedicated)
public const int MINOR_FINGER_PRINT_MODULE_NOT_CONNECT = 0x41f; // fingerprint module is not connected(intelligent dedicated)
public const int MINOR_FINGER_PRINT_MODULE_RESUME = 0x420; // The fingerprint module connection restored(intelligent dedicated)
public const int MINOR_CAMERA_NOT_CONNECT = 0x421; // Camera not connected
public const int MINOR_CAMERA_RESUME = 0x422; // Camera connection restored
public const int MINOR_COM_NOT_CONNECT = 0x423; // COM not connected
public const int MINOR_COM_RESUME = 0x424;// COM connection restored
public const int MINOR_DEVICE_NOT_AUTHORIZE = 0x425; // device are not authorized
public const int MINOR_PEOPLE_AND_ID_CARD_DEVICE_ONLINE = 0x426; // people and ID card device online
public const int MINOR_PEOPLE_AND_ID_CARD_DEVICE_OFFLINE = 0x427;// people and ID card device offline
public const int MINOR_LOCAL_LOGIN_LOCK = 0x428; // local login lock
public const int MINOR_LOCAL_LOGIN_UNLOCK = 0x429; //local login unlock
public const int MINOR_SUBMARINEBACK_COMM_BREAK = 0x42a; //submarineback communicate break
public const int MINOR_SUBMARINEBACK_COMM_RESUME = 0x42b; //submarineback communicate resume
public const int MINOR_MOTOR_SENSOR_EXCEPTION = 0x42c; //motor sensor exception
public const int MINOR_CAN_BUS_EXCEPTION = 0x42d; //can bus exception
public const int MINOR_CAN_BUS_RESUME = 0x42e; //can bus resume
public const int MINOR_GATE_TEMPERATURE_OVERRUN = 0x42f; //gate temperature over run
public const int MINOR_IR_EMITTER_EXCEPTION = 0x430; //IR emitter exception
public const int MINOR_IR_EMITTER_RESUME = 0x431; //IR emitter resume
public const int MINOR_LAMP_BOARD_COMM_EXCEPTION = 0x432; //lamp board communicate exception
public const int MINOR_LAMP_BOARD_COMM_RESUME = 0x433; //lamp board communicate resume
public const int MINOR_IR_ADAPTOR_COMM_EXCEPTION = 0x434; //IR adaptor communicate exception
public const int MINOR_IR_ADAPTOR_COMM_RESUME = 0x435; //IR adaptor communicate resume
public const int MINOR_PRINTER_ONLINE = 0x436; //printer online
public const int MINOR_PRINTER_OFFLINE = 0x437; //printer offline
public const int MINOR_4G_MOUDLE_ONLINE = 0x438; //4G module online
public const int MINOR_4G_MOUDLE_OFFLINE = 0x439; //4G module offline
/* Operation */
// Main Type
//public const int MAJOR_OPERATION = 0x3;
// Hypo- Type
//public const int MINOR_LOCAL_UPGRADE = 0x5a; // Upgrade (local)
//public const int MINOR_REMOTE_LOGIN = 0x70; // Login (remote)
//public const int MINOR_REMOTE_LOGOUT = 0x71; // Logout (remote)
//public const int MINOR_REMOTE_ARM = 0x79; // On guard (remote)
//public const int MINOR_REMOTE_DISARM = 0x7a; // Disarm (remote)
//public const int MINOR_REMOTE_REBOOT = 0x7b; // Reboot (remote)
//public const int MINOR_REMOTE_UPGRADE = 0x7e; // upgrade (remote)
//public const int MINOR_REMOTE_CFGFILE_OUTPUT = 0x86; // Export Configuration (remote)
//public const int MINOR_REMOTE_CFGFILE_INTPUT = 0x87; // Import Configuration (remote)
//public const int MINOR_REMOTE_ALARMOUT_OPEN_MAN = 0xd6; // remote mamual open alarmout
//public const int MINOR_REMOTE_ALARMOUT_CLOSE_MAN = 0xd7; // remote mamual close alarmout
public const int MINOR_REMOTE_OPEN_DOOR = 0x400; // remote open door
public const int MINOR_REMOTE_CLOSE_DOOR = 0x401; // remote close door (controlled)
public const int MINOR_REMOTE_ALWAYS_OPEN = 0x402; // remote always open door (free)
public const int MINOR_REMOTE_ALWAYS_CLOSE = 0x403; // remote always close door (forbiden)
public const int MINOR_REMOTE_CHECK_TIME = 0x404; // remote check time
public const int MINOR_NTP_CHECK_TIME = 0x405; // ntp check time
public const int MINOR_REMOTE_CLEAR_CARD = 0x406; // remote clear card
public const int MINOR_REMOTE_RESTORE_CFG = 0x407; // remote restore configure
public const int MINOR_ALARMIN_ARM = 0x408; // alarm in arm
public const int MINOR_ALARMIN_DISARM = 0x409; // alarm in disarm
public const int MINOR_LOCAL_RESTORE_CFG = 0x40a; // local configure restore
public const int MINOR_REMOTE_CAPTURE_PIC = 0x40b; // remote capture picture
public const int MINOR_MOD_NET_REPORT_CFG = 0x40c; // modify net report cfg
public const int MINOR_MOD_GPRS_REPORT_PARAM = 0x40d; // modify GPRS report param
public const int MINOR_MOD_REPORT_GROUP_PARAM = 0x40e; // modify report group param
public const int MINOR_UNLOCK_PASSWORD_OPEN_DOOR = 0x40f; // unlock password open door
public const int MINOR_AUTO_RENUMBER = 0x410; // auto renumber
public const int MINOR_AUTO_COMPLEMENT_NUMBER = 0x411; // auto complement number
public const int MINOR_NORMAL_CFGFILE_INPUT = 0x412; // normal cfg file input
public const int MINOR_NORMAL_CFGFILE_OUTTPUT = 0x413; // normal cfg file output
public const int MINOR_CARD_RIGHT_INPUT = 0x414; // card right input
public const int MINOR_CARD_RIGHT_OUTTPUT = 0x415; // card right output
public const int MINOR_LOCAL_USB_UPGRADE = 0x416; // local USB upgrade
public const int MINOR_REMOTE_VISITOR_CALL_LADDER = 0x417; // visitor call ladder
public const int MINOR_REMOTE_HOUSEHOLD_CALL_LADDER = 0x418; // household call ladder
public const int MINOR_REMOTE_ACTUAL_GUARD = 0x419; //remote actual guard
public const int MINOR_REMOTE_ACTUAL_UNGUARD = 0x41a; //remote actual unguard
public const int MINOR_REMOTE_CONTROL_NOT_CODE_OPER_FAILED = 0x41b; //remote control not code operate failed
public const int MINOR_REMOTE_CONTROL_CLOSE_DOOR = 0x41c; //remote control close door
public const int MINOR_REMOTE_CONTROL_OPEN_DOOR = 0x41d; //remote control open door
public const int MINOR_REMOTE_CONTROL_ALWAYS_OPEN_DOOR = 0x41e; //remote control always open door
/* Additional Log Info*/
// Main Type
public const int MAJOR_EVENT = 0x5;/*event*/
// Hypo- Type
public const int MINOR_LEGAL_CARD_PASS = 0x01; // legal card pass
public const int MINOR_CARD_AND_PSW_PASS = 0x02; // swipe and password pass
public const int MINOR_CARD_AND_PSW_FAIL = 0x03; // swipe and password fail
public const int MINOR_CARD_AND_PSW_TIMEOUT = 0x04; // swipe and password timeout
public const int MINOR_CARD_AND_PSW_OVER_TIME = 0x05; // swipe and password over time
public const int MINOR_CARD_NO_RIGHT = 0x06; // card no right
public const int MINOR_CARD_INVALID_PERIOD = 0x07; // invalid period
public const int MINOR_CARD_OUT_OF_DATE = 0x08; // card out of date
public const int MINOR_INVALID_CARD = 0x09; // invalid card
public const int MINOR_ANTI_SNEAK_FAIL = 0x0a; // anti sneak fail
public const int MINOR_INTERLOCK_DOOR_NOT_CLOSE = 0x0b; // interlock door doesn't close
public const int MINOR_NOT_BELONG_MULTI_GROUP = 0x0c; // card no belong multi group
public const int MINOR_INVALID_MULTI_VERIFY_PERIOD = 0x0d; // invalid multi verify period
public const int MINOR_MULTI_VERIFY_SUPER_RIGHT_FAIL = 0x0e; // have no super right in multi verify mode
public const int MINOR_MULTI_VERIFY_REMOTE_RIGHT_FAIL = 0x0f; // have no remote right in multi verify mode
public const int MINOR_MULTI_VERIFY_SUCCESS = 0x10; // success in multi verify mode
public const int MINOR_LEADER_CARD_OPEN_BEGIN = 0x11; // leader card begin to open
public const int MINOR_LEADER_CARD_OPEN_END = 0x12; // leader card end to open
public const int MINOR_ALWAYS_OPEN_BEGIN = 0x13; // always open begin
public const int MINOR_ALWAYS_OPEN_END = 0x14; // always open end
public const int MINOR_LOCK_OPEN = 0x15; // lock open
public const int MINOR_LOCK_CLOSE = 0x16; // lock close
public const int MINOR_DOOR_BUTTON_PRESS = 0x17; // press door open button
public const int MINOR_DOOR_BUTTON_RELEASE = 0x18; // release door open button
public const int MINOR_DOOR_OPEN_NORMAL = 0x19; // door open normal
public const int MINOR_DOOR_CLOSE_NORMAL = 0x1a; // door close normal
public const int MINOR_DOOR_OPEN_ABNORMAL = 0x1b; // open door abnormal
public const int MINOR_DOOR_OPEN_TIMEOUT = 0x1c; // open door timeout
public const int MINOR_ALARMOUT_ON = 0x1d; // alarm out turn on
public const int MINOR_ALARMOUT_OFF = 0x1e; // alarm out turn off
public const int MINOR_ALWAYS_CLOSE_BEGIN = 0x1f; // always close begin
public const int MINOR_ALWAYS_CLOSE_END = 0x20; // always close end
public const int MINOR_MULTI_VERIFY_NEED_REMOTE_OPEN = 0x21; // need remote open in multi verify mode
public const int MINOR_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS = 0x22; // superpasswd verify success in multi verify mode
public const int MINOR_MULTI_VERIFY_REPEAT_VERIFY = 0x23; // repeat verify in multi verify mode
public const int MINOR_MULTI_VERIFY_TIMEOUT = 0x24; // timeout in multi verify mode
public const int MINOR_DOORBELL_RINGING = 0x25; // doorbell ringing
public const int MINOR_FINGERPRINT_COMPARE_PASS = 0x26; // fingerprint compare pass
public const int MINOR_FINGERPRINT_COMPARE_FAIL = 0x27; // fingerprint compare fail
public const int MINOR_CARD_FINGERPRINT_VERIFY_PASS = 0x28; // card and fingerprint verify pass
public const int MINOR_CARD_FINGERPRINT_VERIFY_FAIL = 0x29; // card and fingerprint verify fail
public const int MINOR_CARD_FINGERPRINT_VERIFY_TIMEOUT = 0x2a; // card and fingerprint verify timeout
public const int MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_PASS = 0x2b; // card and fingerprint and passwd verify pass
public const int MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL = 0x2c; // card and fingerprint and passwd verify fail
public const int MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT = 0x2d; // card and fingerprint and passwd verify timeout
public const int MINOR_FINGERPRINT_PASSWD_VERIFY_PASS = 0x2e; // fingerprint and passwd verify pass
public const int MINOR_FINGERPRINT_PASSWD_VERIFY_FAIL = 0x2f; // fingerprint and passwd verify fail
public const int MINOR_FINGERPRINT_PASSWD_VERIFY_TIMEOUT = 0x30; // fingerprint and passwd verify timeout
public const int MINOR_FINGERPRINT_INEXISTENCE = 0x31; // fingerprint inexistence
public const int MINOR_CARD_PLATFORM_VERIFY = 0x32; // card platform verify
public const int MINOR_CALL_CENTER = 0x33; // call center
public const int MINOR_FIRE_RELAY_TURN_ON_DOOR_ALWAYS_OPEN = 0x34; // fire relay turn on door always open
public const int MINOR_FIRE_RELAY_RECOVER_DOOR_RECOVER_NORMAL = 0x35; // fire relay recover door recover normal
public const int MINOR_FACE_AND_FP_VERIFY_PASS = 0x36; // face and finger print verify pass
public const int MINOR_FACE_AND_FP_VERIFY_FAIL = 0x37; // face and finger print verify fail
public const int MINOR_FACE_AND_FP_VERIFY_TIMEOUT = 0x38; // face and finger print verify timeout
public const int MINOR_FACE_AND_PW_VERIFY_PASS = 0x39; // face and password verify pass
public const int MINOR_FACE_AND_PW_VERIFY_FAIL = 0x3a; // face and password verify fail
public const int MINOR_FACE_AND_PW_VERIFY_TIMEOUT = 0x3b; // face and password verify timeout
public const int MINOR_FACE_AND_CARD_VERIFY_PASS = 0x3c; // face and card verify pass
public const int MINOR_FACE_AND_CARD_VERIFY_FAIL = 0x3d; // face and card verify fail
public const int MINOR_FACE_AND_CARD_VERIFY_TIMEOUT = 0x3e; // face and card verify timeout
public const int MINOR_FACE_AND_PW_AND_FP_VERIFY_PASS = 0x3f; // face and password and finger print verify pass
public const int MINOR_FACE_AND_PW_AND_FP_VERIFY_FAIL = 0x40; // face and password and finger print verify fail
public const int MINOR_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT = 0x41; // face and password and finger print verify timeout
public const int MINOR_FACE_CARD_AND_FP_VERIFY_PASS = 0x42; // face and card and finger print verify pass
public const int MINOR_FACE_CARD_AND_FP_VERIFY_FAIL = 0x43; // face and card and finger print verify fail
public const int MINOR_FACE_CARD_AND_FP_VERIFY_TIMEOUT = 0x44; // face and card and finger print verify timeout
public const int MINOR_EMPLOYEENO_AND_FP_VERIFY_PASS = 0x45; // employee and finger print verify pass
public const int MINOR_EMPLOYEENO_AND_FP_VERIFY_FAIL = 0x46; // employee and finger print verify fail
public const int MINOR_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT = 0x47; // employee and finger print verify timeout
public const int MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS = 0x48; // employee and finger print and password verify pass
public const int MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL = 0x49; // employee and finger print and password verify fail
public const int MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT = 0x4a; // employee and finger print and password verify timeout
public const int MINOR_FACE_VERIFY_PASS = 0x4b; // face verify pass
public const int MINOR_FACE_VERIFY_FAIL = 0x4c; // face verify fail
public const int MINOR_EMPLOYEENO_AND_FACE_VERIFY_PASS = 0x4d; // employee no and face verify pass
public const int MINOR_EMPLOYEENO_AND_FACE_VERIFY_FAIL = 0x4e; // employee no and face verify fail
public const int MINOR_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT = 0x4f; // employee no and face verify time out
public const int MINOR_FACE_RECOGNIZE_FAIL = 0x50; // face recognize fail
public const int MINOR_FIRSTCARD_AUTHORIZE_BEGIN = 0x51; // first card authorize begin
public const int MINOR_FIRSTCARD_AUTHORIZE_END = 0x52; // first card authorize end
public const int MINOR_DOORLOCK_INPUT_SHORT_CIRCUIT = 0x53; // door lock input short circuit
public const int MINOR_DOORLOCK_INPUT_BROKEN_CIRCUIT = 0x54; // door lock input broken circuit
public const int MINOR_DOORLOCK_INPUT_EXCEPTION = 0x55; // door lock input exception
public const int MINOR_DOORCONTACT_INPUT_SHORT_CIRCUIT = 0x56; // door contact input short circuit
public const int MINOR_DOORCONTACT_INPUT_BROKEN_CIRCUIT = 0x57; // door contact input broken circuit
public const int MINOR_DOORCONTACT_INPUT_EXCEPTION = 0x58; // door contact input exception
public const int MINOR_OPENBUTTON_INPUT_SHORT_CIRCUIT = 0x59; // open button input short circuit
public const int MINOR_OPENBUTTON_INPUT_BROKEN_CIRCUIT = 0x5a; // open button input broken circuit
public const int MINOR_OPENBUTTON_INPUT_EXCEPTION = 0x5b; // open button input exception
public const int MINOR_DOORLOCK_OPEN_EXCEPTION = 0x5c; // door lock open exception
public const int MINOR_DOORLOCK_OPEN_TIMEOUT = 0x5d; // door lock open timeout
public const int MINOR_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE = 0x5e; // first card open without authorize
public const int MINOR_CALL_LADDER_RELAY_BREAK = 0x5f; // call ladder relay break
public const int MINOR_CALL_LADDER_RELAY_CLOSE = 0x60; // call ladder relay close
public const int MINOR_AUTO_KEY_RELAY_BREAK = 0x61; // auto key relay break
public const int MINOR_AUTO_KEY_RELAY_CLOSE = 0x62; // auto key relay close
public const int MINOR_KEY_CONTROL_RELAY_BREAK = 0x63; // key control relay break
public const int MINOR_KEY_CONTROL_RELAY_CLOSE = 0x64; // key control relay close
public const int MINOR_EMPLOYEENO_AND_PW_PASS = 0x65; // minor employee no and password pass
public const int MINOR_EMPLOYEENO_AND_PW_FAIL = 0x66; // minor employee no and password fail
public const int MINOR_EMPLOYEENO_AND_PW_TIMEOUT = 0x67; // minor employee no and password timeout
public const int MINOR_HUMAN_DETECT_FAIL = 0x68; // human detect fail
public const int MINOR_PEOPLE_AND_ID_CARD_COMPARE_PASS = 0x69; // the comparison with people and id card success
public const int MINOR_PEOPLE_AND_ID_CARD_COMPARE_FAIL = 0x70; // the comparison with people and id card failed
public const int MINOR_CERTIFICATE_BLOCKLIST = 0x71; // block list
public const int MINOR_LEGAL_MESSAGE = 0x72; // legal message
public const int MINOR_ILLEGAL_MESSAGE = 0x73; // illegal messag
public const int MINOR_MAC_DETECT = 0x74; // mac detect
public const int MINOR_DOOR_OPEN_OR_DORMANT_FAIL = 0x75; //door open or dormant fail
public const int MINOR_AUTH_PLAN_DORMANT_FAIL = 0x76; //auth plan dormant fail
public const int MINOR_CARD_ENCRYPT_VERIFY_FAIL = 0x77; //card encrypt verify fail
public const int MINOR_SUBMARINEBACK_REPLY_FAIL = 0x78; //submarineback reply fail
public const int MINOR_DOOR_OPEN_OR_DORMANT_OPEN_FAIL = 0x82; //door open or dormant open fail
public const int MINOR_DOOR_OPEN_OR_DORMANT_LINKAGE_OPEN_FAIL = 0x84; //door open or dormant linkage open fail
public const int MINOR_TRAILING = 0x85; //trailing
public const int MINOR_HEART_BEAT = 0x83; //heart beat event
public const int MINOR_REVERSE_ACCESS = 0x86; //reverse access
public const int MINOR_FORCE_ACCESS = 0x87; //force access
public const int MINOR_CLIMBING_OVER_GATE = 0x88; //climbing over gate
public const int MINOR_PASSING_TIMEOUT = 0x89; //passing timeout
public const int MINOR_INTRUSION_ALARM = 0x8a; //intrusion alarm
public const int MINOR_FREE_GATE_PASS_NOT_AUTH = 0x8b; //free gate pass not auth
public const int MINOR_DROP_ARM_BLOCK = 0x8c; //drop arm block
public const int MINOR_DROP_ARM_BLOCK_RESUME = 0x8d; //drop arm block resume
public const int MINOR_LOCAL_FACE_MODELING_FAIL = 0x8e; //device upgrade with module failed
public const int MINOR_STAY_EVENT = 0x8f; //stay event
public const int MINOR_PASSWORD_MISMATCH = 0x97; //password mismatch
public const int MINOR_EMPLOYEE_NO_NOT_EXIST = 0x98; //employee no not exist
public const int MINOR_COMBINED_VERIFY_PASS = 0x99; //combined verify pass
public const int MINOR_COMBINED_VERIFY_TIMEOUT = 0x9a; //combined verify timeout
public const int MINOR_VERIFY_MODE_MISMATCH = 0x9b; //verify mode mismatch
#endregion
/*************************************************
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_V30Ϊ9000<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
**************************************************/
//Уʱ<D0A3><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIME
{
public int dwYear;
public int dwMonth;
public int dwDay;
public int dwHour;
public int dwMinute;
public int dwSecond;
}
//ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIME_V30
{
public ushort wYear;
public byte byMonth;
public byte byDay;
public byte byHour;
public byte byMinute;
public byte bySecond;
public byte byRes;
public ushort wMilliSec;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIME_EX
{
public ushort wYear;
public byte byMonth;
public byte byDay;
public byte byHour;
public byte byMinute;
public byte bySecond;
public byte byRes;
}
//ʱ<><CAB1><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCHEDTIME
{
public byte byStartHour;//<2F><>ʼʱ<CABC><CAB1>
public byte byStartMin;//<2F><>ʼʱ<CABC><CAB1>
public byte byStopHour;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public byte byStopMin;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
/*<2A><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ*/
public const int NOACTION = 0x0;/*<2A><><EFBFBD><EFBFBD>Ӧ*/
public const int WARNONMONITOR = 0x1;/*<2A><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
public const int WARNONAUDIOOUT = 0x2;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int UPTOCENTER = 0x4;/*<2A>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
public const int TRIGGERALARMOUT = 0x8;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int TRIGGERCATPIC = 0x10;/*<2A><><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>E-mail*/
public const int SEND_PIC_FTP = 0x200; /*ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>ftp*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STRUCTHEAD
{
public ushort wLength; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byVersion; /*<2A>ߵ<EFBFBD><34>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵͰ汾<CDB0><E6B1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ汾<DDB0>ͳ<EFBFBD><CDB3>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>ͬ<EFBFBD>İ汾<C4B0>ij<EFBFBD><C4B3>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HANDLEEXCEPTION_V41
{
public uint dwHandleType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>*/
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public uint dwMaxRelAlarmOutChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelAlarmOut; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HANDLEEXCEPTION_V40
{
public uint dwHandleType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>*/
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public uint dwMaxRelAlarmOutChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>
public uint dwRelAlarmOutChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD> ʵ<><CAB5>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelAlarmOut; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD>ṹ(<28>ӽṹ)(<28>ʹ<E0B4A6><CAB9>)(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HANDLEEXCEPTION_V30
{
public uint dwHandleType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>*/
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelAlarmOut;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD>ṹ(<28>ӽṹ)(<28>ʹ<E0B4A6><CAB9>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HANDLEEXCEPTION
{
public uint dwHandleType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>*/
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: Jpegץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>EMail*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT, ArraySubType = UnmanagedType.I1)]
public byte[] byRelAlarmOut;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//DVR<56><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEVICECFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDVRName;//DVR<56><52><EFBFBD><EFBFBD>
public uint dwDVRID;//DVR ID,<2C><><EFBFBD><EFBFBD>ң<EFBFBD><D2A3><EFBFBD><EFBFBD> //V1.4(0-99), V1.5(0-255)
public uint dwRecycleRecord;//<2F>Ƿ<EFBFBD>ѭ<EFBFBD><D1AD>¼<EFBFBD><C2BC>,0:<3A><><EFBFBD><EFBFBD>; 1:<3A><>
//<2F><><EFBFBD>²<EFBFBD><C2B2>ɸ<EFBFBD><C9B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber;//<2F><><EFBFBD>к<EFBFBD>
public uint dwSoftwareVersion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B1BE>,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public uint dwSoftwareBuildDate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0xYYYYMMDD
public uint dwDSPSoftwareVersion;//DSP<53><50><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public uint dwDSPSoftwareBuildDate;// DSP<53><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0xYYYYMMDD
public uint dwPanelVersion;// ǰ<><C7B0><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public uint dwHardwareVersion;// Ӳ<><D3B2><EFBFBD>汾,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public byte byAlarmInPortNum;//DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmOutPortNum;//DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRS232Num;//DVR 232<33><32><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byRS485Num;//DVR 485<38><35><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byNetworkPortNum;//<2F><><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byDiskCtrlNum;//DVR Ӳ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDiskNum;//DVR Ӳ<≯<EFBFBD><CCB8><EFBFBD>
public byte byDVRType;//DVR<56><52><EFBFBD><EFBFBD>, 1:DVR 2:ATM DVR 3:DVS ......
public byte byChanNum;//DVR ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartChan;//<2F><>ʼͨ<CABC><CDA8><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>DVS-1,DVR - 1
public byte byDecordChans;//DVR <20><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public byte byVGANum;//VGA<47>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byUSBNum;//USB<53>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byAuxoutNum;//<2F><><EFBFBD>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byAudioNum;//<2F><><EFBFBD><EFBFBD><EFBFBD>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byIPChanNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
}
/*IP<49><50>ַ*/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_IPADDR
{
/// char[16]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sIpV4;
/// BYTE[128]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byIPv6;
public void Init()
{
sIpV4 = new byte[16];
byIPv6 = new byte[128];
}
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ(<28>ӽṹ)(9000<30><30>չ)*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ETHERNET_V30
{
public NET_DVR_IPADDR struDVRIP;//DVR IP<49><50>ַ
public NET_DVR_IPADDR struDVRIPMask;//DVR IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
public uint dwNetInterface;//<2F><><EFBFBD><EFBFBD><EFBFBD>ӿڣ<D3BF>1-10MBase-T<><54>2-10MBase-Tȫ˫<C8AB><CBAB><EFBFBD><EFBFBD>3-100MBase-TX<54><58>4-100Mȫ˫<C8AB><CBAB><EFBFBD><EFBFBD>5-10M/100M/1000M<30><4D><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>6-1000Mȫ˫<C8AB><CBAB>
public ushort wDVRPort;//<2F>˿ں<CBBF>
public ushort wMTU;//<2F><><EFBFBD><EFBFBD>MTU<54><55><EFBFBD>ã<EFBFBD>Ĭ<EFBFBD><C4AC>1500<30><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_NETPARAM
{
public uint dwSize;
public NET_DVR_IPADDR struIP;
public ushort wPort;
public byte byAddressType; //0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1 - ipv4/ipv6<76><36>ַ<EFBFBD><D6B7>2 - <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 1, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byDomainName;
public byte byReportProtocol; //1-private 2-NAL2300, 3-Ehome
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACCOUNTNUM_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] byDevID; //Э<><D0AD>ΪNAL2300ʱ<30><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //GPRS<52><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ̶<DAB9><CCB6>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD>еģ<D0B5><C4A3><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϢԤ<CFA2><D4A4>һЩ<D2BB>ֶ<EFBFBD>
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ(<28>ӽṹ)*/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_ETHERNET
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDVRIP;//DVR IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDVRIPMask;//DVR IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
public uint dwNetInterface;//<2F><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD> 1-10MBase-T 2-10MBase-Tȫ˫<C8AB><CBAB> 3-100MBase-TX 4-100Mȫ˫<C8AB><CBAB> 5-10M/100M<30><4D><EFBFBD><EFBFBD>Ӧ
public ushort wDVRPort;//<2F>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
}
//pppoe<6F>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PPPOECFG
{
public uint dwPPPOE;//0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPPPoEUser;//PPPoE<6F>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string sPPPoEPassword;// PPPoE<6F><45><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struPPPoEIP;//PPPoE IP<49><50>ַ
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NETCFG_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ETHERNET, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ETHERNET_V30[] struEtherNet;//<2F><>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPADDR[] struRes1;/*<2A><><EFBFBD><EFBFBD>*/
public NET_DVR_IPADDR struAlarmHostIpAddr;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public ushort wAlarmHostIpPort;
public byte byUseDhcp;
public byte byRes3;
public NET_DVR_IPADDR struDnsServer1IpAddr;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>IP<49><50>ַ */
public NET_DVR_IPADDR struDnsServer2IpAddr;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32>IP<49><50>ַ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byIpResolver;
public ushort wIpResolverPort;
public ushort wHttpPortNo;
public NET_DVR_IPADDR struMulticastIpAddr;/* <20><EFBFBD><E0B2A5><EFBFBD><EFBFBD>ַ */
public NET_DVR_IPADDR struGatewayIpAddr;/* <20><><EFBFBD>ص<EFBFBD>ַ */
public NET_DVR_PPPOECFG struPPPoE;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ETHERNET_MULTI
{
public NET_DVR_IPADDR struDVRIP;
public NET_DVR_IPADDR struDVRIPMask;
public uint dwNetInterface;
public byte byCardType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1;
public ushort wMTU;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public byte byUseDhcp;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
public NET_DVR_IPADDR struGatewayIpAddr;
public NET_DVR_IPADDR struDnsServer1IpAddr;
public NET_DVR_IPADDR struDnsServer2IpAddr;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NETCFG_MULTI
{
public uint dwSize;
public byte byDefaultRoute;
public byte byNetworkCardNum;
public byte byWorkMode; //0-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
public byte byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NETWORK_CARD, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ETHERNET_MULTI[] struEtherNet;//<2F><>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struManageHost1IpAddr;
public NET_DVR_IPADDR struManageHost2IpAddr;
public NET_DVR_IPADDR struAlarmHostIpAddr;
public ushort wManageHost1Port;
public ushort wManageHost2Port;
public ushort wAlarmHostIpPort;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byIpResolver;
public ushort wIpResolverPort;
public ushort wDvrPort;
public ushort wHttpPortNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_IPADDR struMulticastIpAddr;/* <20><EFBFBD><E0B2A5><EFBFBD><EFBFBD>ַ */
public NET_DVR_PPPOECFG struPPPoE;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_NETCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ETHERNET, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ETHERNET[] struEtherNet;/* <20><>̫<EFBFBD><CCAB><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sManageHostIP;//Զ<>̹<EFBFBD><CCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public ushort wManageHostPort;//Զ<>̹<EFBFBD><CCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sIPServerIP;//IPServer<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sMultiCastIP;//<2F><EFBFBD><E0B2A5><EFBFBD><EFBFBD>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sGatewayIP;//<2F><><EFBFBD>ص<EFBFBD>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sNFSIP;//NFS<46><53><EFBFBD><EFBFBD>IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PATHNAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNFSDirectory;//NFSĿ¼
public uint dwPPPOE;//0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPPPoEUser;//PPPoE<6F>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string sPPPoEPassword;// PPPoE<6F><45><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sPPPoEIP;//PPPoE IP<49><50>ַ(ֻ<><D6BB>)
public ushort wHttpPort;//HTTP<54>˿ں<CBBF>
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_SIP_CFG
{
public uint dwSize;
public byte byEnableAutoLogin; //ʹ<><CAB9><EFBFBD>Զ<EFBFBD>ע<EFBFBD>ᣬ0-<2D><>ʹ<EFBFBD>ܣ<EFBFBD>1-ʹ<><CAB9>
public byte byLoginStatus; //ע<><D7A2>״̬<D7B4><CCAC>0-δע<CEB4>ᣬ1-<2D><>ע<EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_IPADDR stuServerIP; //SIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP
public ushort wServerPort; //SIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName; //ע<><D7A2><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassWord; //ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NUMBER_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDispalyName; //<2F><EFBFBD><E8B1B8>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
public ushort wLocalPort; //<2F><><EFBFBD>ض˿<D8B6>
public byte byLoginCycle; //ע<><D7A2><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>1-99<39><39><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 129, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//IP<49><50><EFBFBD>ӶԽ<D3B6><D4BD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_IP_VIEW_DEVCFG
{
public uint dwSize;
public byte byDefaultRing; //Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ1-6
public byte byRingVolume; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ0-9
public byte byInputVolume; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Χ0-6
public byte byOutputVolume; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Χ0-9
public ushort wRtpPort; //Rtp<74>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwPreviewDelayTime; //Ԥ<><D4A4><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ã<EFBFBD>0-30<33><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//Ip<49><70><EFBFBD>ӶԽ<D3B6><D4BD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_IP_VIEW_AUDIO_CFG
{
public uint dwSize;
public byte byAudioEncPri1; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>1<EFBFBD><31>0-OggVorbis<69><73>1-G711_U<5F><55>2-G711_A<5F><41> 5-MPEG2,6-G726<32><36>7-AAC
public byte byAudioEncPri2; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD>sip<69><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><31><CAB1>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>2<EFBFBD><32>0-OggVorbis<69><73>1-G711_U<5F><55>2-G711_A<5F><41> 5-MPEG2,6-G726<32><36>7-AAC
public ushort wAudioPacketLen1; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD><EFBFBD>
public ushort wAudioPacketLen2; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 30, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//IP<49>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>жԽ<D0B6><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_IP_VIEW_CALL_CFG
{
public uint dwSize ;
public byte byEnableAutoResponse; //ʹ<><CAB9><EFBFBD>Զ<EFBFBD>Ӧ<EFBFBD><D3A6>,0-<2D><>ʹ<EFBFBD>ܣ<EFBFBD>1-ʹ<><CAB9>
public byte byAudoResponseTime; //<2F>Զ<EFBFBD>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD>䣬0-30<33><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byEnableAlarmNumber1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NUMBER_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmNumber1; //<2F><><EFBFBD>к<EFBFBD><D0BA><EFBFBD>1
public byte byEnableAlarmNumber2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NUMBER_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmNumber2; //<2F><><EFBFBD>к<EFBFBD><D0BA><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD><D0BA><EFBFBD><31>᳢ܻ<DCBB>Ժ<EFBFBD><D4BA>к<EFBFBD><D0BA><EFBFBD>2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 72, ArraySubType = UnmanagedType.I1)]
public byte[] byRes4;
}
//ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD>
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(<28><><EFBFBD>ʽ<E9B7BD><CABD>չ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_RECORDCHAN
{
public uint dwMaxRecordChanNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><><D6BB>
public uint dwCurRecordChanNum; //<2F><>ǰʵ<C7B0><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õĹ<C3B5><C4B9><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint dwRelRecordChan; /* ʵ<>ʴ<EFBFBD><CAB4><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾ,<2C><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>±<EFBFBD>0 - MAX_CHANNUM_V30-1<><31>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>0xffffffff,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD>
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MOTION_V30
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 96*64, ArraySubType = UnmanagedType.I1)]
public byte[] byMotionScope;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-96λ,<2C><>ʾ64<36><34>,<2C><><EFBFBD><EFBFBD>96*64<36><34>С<EFBFBD><D0A1><EFBFBD><EFBFBD>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte byMotionSensitive;/*<2A>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0 - 5,Խ<><D4BD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>,oxff<66>ر<EFBFBD>*/
public byte byEnableHandleMotion;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD>*/
public byte byEnableDisplay;/* <20><><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>0- <20><><EFBFBD><EFBFBD>1- <20><> */
public byte reservedData;
public NET_DVR_HANDLEEXCEPTION_V30 struMotionHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;/*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>*/
}
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MOTION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 396, ArraySubType = UnmanagedType.I1)]
public byte[] byMotionScope;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>22*18<31><38>С<EFBFBD><D0A1><EFBFBD><EFBFBD>,Ϊ1<CEAA><31>ʾ<EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte byMotionSensitive;/*<2A>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0 - 5,Խ<><D4BD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>,0xff<66>ر<EFBFBD>*/
public byte byEnableHandleMotion;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 2)]
public string reservedData;
public NET_DVR_HANDLEEXCEPTION strMotionHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
}
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(9000<30><30>չ) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HIDEALARM_V30
{
public uint dwEnableHideAlarm;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD> ,0-<2D><>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wHideAlarmAreaTopLeftX;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wHideAlarmAreaTopLeftY;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
public ushort wHideAlarmAreaWidth;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD> */
public ushort wHideAlarmAreaHeight;/*<2A>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>*/
public NET_DVR_HANDLEEXCEPTION_V30 strHideAlarmHandleType; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HIDEALARM
{
public uint dwEnableHideAlarm;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD> ,0-<2D><>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wHideAlarmAreaTopLeftX;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wHideAlarmAreaTopLeftY;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
public ushort wHideAlarmAreaWidth;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD> */
public ushort wHideAlarmAreaHeight;/*<2A>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>*/
public NET_DVR_HANDLEEXCEPTION strHideAlarmHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
//<2F>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>(<28>ӽṹ)(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VILOST_V30
{
public byte byEnableHandleVILost;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD> */
public NET_DVR_HANDLEEXCEPTION_V30 strVILostHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 56, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
//<2F>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VILOST
{
public byte byEnableHandleVILost;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD> */
public NET_DVR_HANDLEEXCEPTION strVILostHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential)]
public struct NET_DVR_SHELTER
{
public ushort wHideAreaTopLeftX;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wHideAreaTopLeftY;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
public ushort wHideAreaWidth;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD> */
public ushort wHideAreaHeight;/*<2A>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COLOR
{
public byte byBrightness;/*<2A><><EFBFBD><EFBFBD>,0-255*/
public byte byContrast;/*<2A>Աȶ<D4B1>,0-255*/
public byte bySaturation;/*<2A><><EFBFBD>Ͷ<EFBFBD>,0-255*/
public byte byHue;/*ɫ<><C9AB>,0-255*/
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_RGB_COLOR
{
public byte byRed; //RGB<47><42>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĺ<D0B5>ɫ
public byte byGreen; //RGB<47><42>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD>ɫ
public byte byBlue; //RGB<47><42>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD>ɫ
public byte byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DAYTIME
{
public byte byHour;//0~24
public byte byMinute;//0~60
public byte bySecond;//0~60
public byte byRes;
public ushort wMilliSecond; //0~1000
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_SCHEDULE_DAYTIME
{
public NET_DVR_DAYTIME struStartTime; //<2F><>ʼʱ<CABC><CAB1>
public NET_DVR_DAYTIME struStopTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DNMODE
{
public byte byObjectSize;//ռ<>Ȳ<EFBFBD><C8B2><EFBFBD>(0~100)
public byte byMotionSensitive; /*<2A>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0 - 5,Խ<><D4BD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>,0xff<66>ر<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MOTION_MULTI_AREAPARAM
{
public byte byAreaNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(IPC- 1~8)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_VCA_RECT struRect;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(<28><><EFBFBD><EFBFBD>) size = 16;
public NET_DVR_DNMODE struDayNightDisable;//<2F>ر<EFBFBD>ģʽ
public NET_DVR_DNMODE struDayModeParam;//<2F><><EFBFBD><EFBFBD>ģʽ
public NET_DVR_DNMODE struNightModeParam;//ҹ<><D2B9>ģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MOTION_MULTI_AREA
{
public byte byDayNightCtrl;//<2F><>ҹ<EFBFBD><D2B9><EFBFBD><EFBFBD> 0~<7E>ر<EFBFBD>,1~<7E>Զ<EFBFBD><D4B6>л<EFBFBD>,2~<7E><>ʱ<EFBFBD>л<EFBFBD><>Ϲر<CFB9>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_SCHEDULE_DAYTIME struScheduleTime;//<2F>л<EFBFBD>ʱ<EFBFBD><CAB1> 16
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_MULTI_AREA_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MOTION_MULTI_AREAPARAM[] struMotionMultiAreaParam;//<2F><><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>24<32><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MOTION_SINGLE_AREA
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64*96, ArraySubType = UnmanagedType.I1)]
public byte[]byMotionScope; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-96λ,<2C><>ʾ64<36><34>,<2C><><EFBFBD><EFBFBD>96*64<36><34>С<EFBFBD><D0A1><EFBFBD><EFBFBD>,Ŀǰ<C4BF><C7B0>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>22*18,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte byMotionSensitive; /*<2A>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0 - 5,Խ<><D4BD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>,0xff<66>ر<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MOTION_MODE_PARAM
{
public NET_DVR_MOTION_SINGLE_AREA struMotionSingleArea; //<2F><>ͨģʽ<C4A3>µĵ<C2B5><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_MOTION_MULTI_AREA struMotionMultiArea; //ר<><D7A8>ģʽ<C4A3>µĶ<C2B5><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MOTION_V40
{
public NET_DVR_MOTION_MODE_PARAM struMotionMode; //(5.1.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
public byte byEnableHandleMotion; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD>*/
public byte byEnableDisplay; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public byte byConfigurationMode; //0~<7E><>ͨ,1~ר<><D7A8>(5.1.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
public byte byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
/* <20><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
public uint dwHandleType; //<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD>,<2C><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public uint dwMaxRelAlarmOutChanNum ; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelAlarmOut; //ʵ<>ʴ<EFBFBD><CAB4><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ,<2C><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>±<EFBFBD>0 - dwRelAlarmOut -1<><31>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>0xffffffff,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS*MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>*/
public uint dwMaxRecordChanNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><><D6BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelRecordChan; /* ʵ<>ʴ<EFBFBD><CAB4><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾ,<2C><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>±<EFBFBD>0 - dwRelRecordChan -1<><31>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>0xffffffff,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_HIDEALARM_V40
{
public uint dwEnableHideAlarm; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wHideAlarmAreaTopLeftX; /* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wHideAlarmAreaTopLeftY; /* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
public ushort wHideAlarmAreaWidth; /* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD> */
public ushort wHideAlarmAreaHeight; /*<2A>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>*/
/* <20>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public uint dwHandleType; //<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD>,<2C><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public uint dwMaxRelAlarmOutChanNum ; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelAlarmOut; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ,<2C><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>±<EFBFBD>0 - dwRelAlarmOut -1<><31>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>0xffffffff,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS*MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_VILOST_V40
{
public uint dwEnableVILostAlarm; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD> ,0-<2D><>,1-<2D><>*/
/* <20>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public uint dwHandleType; //<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD>,<2C><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public uint dwMaxRelAlarmOutChanNum ; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelAlarmOut; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ,<2C><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>±<EFBFBD>0 - dwRelAlarmOut -1<><31>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>0xffffffff,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS*MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_VICOLOR
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_COLOR[] struColor;/*ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struHandleTime;/*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)*/
}
//ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD>ṹ(V40<34><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PICCFG_V40
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sChanName;
public uint dwVideoFormat; /* ֻ<><D6BB> <20><>Ƶ<EFBFBD><C6B5>ʽ 1-NTSC 2-PAL */
public NET_DVR_VICOLOR struViColor;// ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>
public uint dwShowChanName; // Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ
public ushort wShowNameTopLeftX; /* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wShowNameTopLeftY; /* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
//<2F><>˽<EFBFBD>ڵ<EFBFBD>
public uint dwEnableHide; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD> ,0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SHELTERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SHELTER[] struShelter;
//OSD
public uint dwShowOsd;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾOSD,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ
public ushort wOSDTopLeftX; /* OSD<53><44>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wOSDTopLeftY; /* OSD<53><44>y<EFBFBD><79><EFBFBD><EFBFBD> */
public byte byOSDType; /* OSD<53><44><EFBFBD><EFBFBD>(<28><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ո<EFBFBD>ʽ) */
/* 0: XXXX-XX-XX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 1: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 2: XXXX<58><58>XX<58><58>XX<58><58> */
/* 3: XX<58><58>XX<58><58>XXXX<58><58> */
/* 4: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/* 5: XX<58><58>XX<58><58>XXXX<58><58> */
/*6: xx/xx/xxxx(<28><>/<2F><>/<2F><>) */
/*7: xxxx/xx/xx(<28><>/<2F><>/<2F><>) */
/*8: xx/xx/xxxx(<28><>/<2F><>/<2F><>)*/
public byte byDispWeek; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> */
public byte byOSDAttrib; /* OSD<53><44><EFBFBD><EFBFBD><><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 0: <20><><EFBFBD><EFBFBD>ʾOSD */
/* 1: ͸<><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 2: ͸<><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 3: <20><>͸<EFBFBD><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 4: <20><>͸<EFBFBD><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
public byte byHourOSDType; /* OSDСʱ<D0A1><CAB1>:0-24Сʱ<D0A1><CAB1>,1-12Сʱ<D0A1><CAB1> */
public byte byFontSize; //16*16(<28><>)/8*16(Ӣ)<29><>1-32*32(<28><>)/16*32(Ӣ)<29><>2-64*64(<28><>)/32*64(Ӣ) FOR 91ϵ<31><CFB5>HD-SDI<44><49><EFBFBD><EFBFBD>DVR
public byte byOSDColorType; //0-Ĭ<>ϣ<EFBFBD><CFA3>ڰף<DAB0><D7A3><EFBFBD>1-<2D>Զ<EFBFBD><D4B6><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_VILOST_V40 struVILost; //<2F><>Ƶ<EFBFBD>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD>
public NET_DVR_VILOST_V40 struAULost; /*<2A><>Ƶ<EFBFBD>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD>飩*/
public NET_DVR_MOTION_V40 struMotion; //<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD>
public NET_DVR_HIDEALARM_V40 struHideAlarm; //<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD>
public NET_DVR_RGB_COLOR struOsdColor;//OSD<53><44>ɫ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD>ṹ(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PICCFG_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sChanName;
public uint dwVideoFormat;/* ֻ<><D6BB> <20><>Ƶ<EFBFBD><C6B5>ʽ 1-NTSC 2-PAL*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byReservedData;/*<2A><><EFBFBD><EFBFBD>*/
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>
public uint dwShowChanName;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public ushort wShowNameTopLeftX;/* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wShowNameTopLeftY;/* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
//<2F><>Ƶ<EFBFBD>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>
public NET_DVR_VILOST_V30 struVILost;
public NET_DVR_VILOST_V30 struRes;/*<2A><><EFBFBD><EFBFBD>*/
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_MOTION_V30 struMotion;
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_HIDEALARM_V30 struHideAlarm;
//<2F>ڵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public uint dwEnableHide;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD> ,0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SHELTERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SHELTER[] struShelter;
//OSD
public uint dwShowOsd;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾOSD,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public ushort wOSDTopLeftX;/* OSD<53><44>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wOSDTopLeftY;/* OSD<53><44>y<EFBFBD><79><EFBFBD><EFBFBD> */
public byte byOSDType;/* OSD<53><44><EFBFBD><EFBFBD>(<28><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ո<EFBFBD>ʽ) */
/* 0: XXXX-XX-XX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 1: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 2: XXXX<58><58>XX<58><58>XX<58><58> */
/* 3: XX<58><58>XX<58><58>XXXX<58><58> */
/* 4: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/* 5: XX<58><58>XX<58><58>XXXX<58><58> */
public byte byDispWeek;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> */
public byte byOSDAttrib;/* OSD<53><44><EFBFBD><EFBFBD><><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 0: <20><><EFBFBD><EFBFBD>ʾOSD */
/* 1: ͸<><CDB8>,<2C><>˸ */
/* 2: ͸<><CDB8>,<2C><><EFBFBD><EFBFBD>˸ */
/* 3: <20><>˸,<2C><>͸<EFBFBD><CDB8> */
/* 4: <20><>͸<EFBFBD><CDB8>,<2C><><EFBFBD><EFBFBD>˸ */
public byte byHourOSDType;/* OSDСʱ<D0A1><CAB1>:0-24Сʱ<D0A1><CAB1>,1-12Сʱ<D0A1><CAB1> */
public byte byFontSize;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1>16*16(<28><>)/8*16(Ӣ)<29><>1-32*32(<28><>)/16*32(Ӣ)<29><>2-64*64(<28><>)/32*64(Ӣ) 3-48*48(<28><>)/24*48(Ӣ) 0xff-<2D><><EFBFBD><EFBFBD>Ӧ(adaptive)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 63, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD>ṹSDK_V14<31><34>չ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PICCFG_EX
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sChanName;
public uint dwVideoFormat;/* ֻ<><D6BB> <20><>Ƶ<EFBFBD><C6B5>ʽ 1-NTSC 2-PAL*/
public byte byBrightness;/*<2A><><EFBFBD><EFBFBD>,0-255*/
public byte byContrast;/*<2A>Աȶ<D4B1>,0-255*/
public byte bySaturation;/*<2A><><EFBFBD>Ͷ<EFBFBD>,0-255 */
public byte byHue;/*ɫ<><C9AB>,0-255*/
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>
public uint dwShowChanName;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public ushort wShowNameTopLeftX;/* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wShowNameTopLeftY;/* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
//<2F>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>
public NET_DVR_VILOST struVILost;
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_MOTION struMotion;
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_HIDEALARM struHideAlarm;
//<2F>ڵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public uint dwEnableHide;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD> ,0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SHELTERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SHELTER[] struShelter;
//OSD
public uint dwShowOsd;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾOSD,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public ushort wOSDTopLeftX;/* OSD<53><44>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wOSDTopLeftY;/* OSD<53><44>y<EFBFBD><79><EFBFBD><EFBFBD> */
public byte byOSDType;/* OSD<53><44><EFBFBD><EFBFBD>(<28><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ո<EFBFBD>ʽ) */
/* 0: XXXX-XX-XX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 1: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 2: XXXX<58><58>XX<58><58>XX<58><58> */
/* 3: XX<58><58>XX<58><58>XXXX<58><58> */
/* 4: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/* 5: XX<58><58>XX<58><58>XXXX<58><58> */
public byte byDispWeek;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> */
public byte byOSDAttrib;/* OSD<53><44><EFBFBD><EFBFBD><><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 0: <20><><EFBFBD><EFBFBD>ʾOSD */
/* 1: ͸<><CDB8>,<2C><>˸ */
/* 2: ͸<><CDB8>,<2C><><EFBFBD><EFBFBD>˸ */
/* 3: <20><>˸,<2C><>͸<EFBFBD><CDB8> */
/* 4: <20><>͸<EFBFBD><CDB8>,<2C><><EFBFBD><EFBFBD>˸ */
public byte byHourOsdType;/* OSDСʱ<D0A1><CAB1>:0-24Сʱ<D0A1><CAB1>,1-12Сʱ<D0A1><CAB1> */
}
//ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD>ṹ(SDK_V13<31><33>֮ǰ<D6AE>汾)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PICCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sChanName;
public uint dwVideoFormat;/* ֻ<><D6BB> <20><>Ƶ<EFBFBD><C6B5>ʽ 1-NTSC 2-PAL*/
public byte byBrightness;/*<2A><><EFBFBD><EFBFBD>,0-255*/
public byte byContrast;/*<2A>Աȶ<D4B1>,0-255*/
public byte bySaturation;/*<2A><><EFBFBD>Ͷ<EFBFBD>,0-255 */
public byte byHue;/*ɫ<><C9AB>,0-255*/
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>
public uint dwShowChanName;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public ushort wShowNameTopLeftX;/* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wShowNameTopLeftY;/* ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
//<2F>źŶ<C5BA>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>
public NET_DVR_VILOST struVILost;
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_MOTION struMotion;
//<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_HIDEALARM struHideAlarm;
//<2F>ڵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public uint dwEnableHide;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD> ,0-<2D><>,1-<2D><>*/
public ushort wHideAreaTopLeftX;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wHideAreaTopLeftY;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
public ushort wHideAreaWidth;/* <20>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD> */
public ushort wHideAreaHeight;/*<2A>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>*/
//OSD
public uint dwShowOsd;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾOSD,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576
public ushort wOSDTopLeftX;/* OSD<53><44>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wOSDTopLeftY;/* OSD<53><44>y<EFBFBD><79><EFBFBD><EFBFBD> */
public byte byOSDType;/* OSD<53><44><EFBFBD><EFBFBD>(<28><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ո<EFBFBD>ʽ) */
/* 0: XXXX-XX-XX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 1: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/* 2: XXXX<58><58>XX<58><58>XX<58><58> */
/* 3: XX<58><58>XX<58><58>XXXX<58><58> */
/* 4: XX-XX-XXXX <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/* 5: XX<58><58>XX<58><58>XXXX<58><58> */
public byte byDispWeek;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> */
public byte byOSDAttrib;/* OSD<53><44><EFBFBD><EFBFBD><><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ */
/* 0: <20><><EFBFBD><EFBFBD>ʾOSD */
/* 1: ͸<><CDB8>,<2C><>˸ */
/* 2: ͸<><CDB8>,<2C><><EFBFBD><EFBFBD>˸ */
/* 3: <20><>˸,<2C><>͸<EFBFBD><CDB8> */
/* 4: <20><>͸<EFBFBD><CDB8>,<2C><><EFBFBD><EFBFBD>˸ */
public byte reservedData2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND
{
public uint dwSize;
public NET_DVR_STREAM_INFO struStreamInfo;
public uint dwStreamType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD>3-<2D><><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>GET /ISAPI/Streaming/channels/<ID>/customStream<61><6D>ȡ<EFBFBD><C8A1>ǰͨ<C7B0><CDA8><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ6~10<31><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>6~10<31><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MULTI_STREAM_COMPRESSIONCFG
{
public uint dwSize;
public uint dwStreamType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD>3-<2D><><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_COMPRESSION_INFO_V30 struStreamPara; //<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 80, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSION_INFO_V30
{
public byte byStreamType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>Ƶ<EFBFBD><C6B5>, 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>ʾ<EFBFBD>¼<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byResolution;//<2F>ֱ<EFBFBD><D6B1><EFBFBD>0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF 5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>16-VGA<47><41>640*480<38><30> 17-UXGA<47><41>1600*1200<30><30> 18-SVGA <20><>800*600<30><30>19-HD720p<30><70>1280*720<32><30>20-XVGA 21-HD900p
public byte byBitrateType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicQuality;//ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 1-<2D>κ<EFBFBD> 2-<2D>Ϻ<EFBFBD> 3-һ<><D2BB> 4-<2D>ϲ<EFBFBD> 5-<2D><>
public uint dwVideoBitrate;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 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
//<2F><><EFBFBD><EFBFBD>λ(31λ)<29>ó<EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0-30λ<30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>
public uint dwVideoFrameRate;//֡<><D6A1> 0-ȫ<><C8AB>; 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<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>14-15; 15-18; 16-22;
public ushort wIntervalFrameI;//I֡<49><D6A1><EFBFBD><EFBFBD>
//2006-08-11 <20><><EFBFBD>ӵ<EFBFBD><50><D6A1><EFBFBD><EFBFBD><EFBFBD>ýӿڣ<D3BF><DAA3><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8><EFBFBD>ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public byte byIntervalBPFrame;//0-BBP֡; 1-BP֡; 2-<2D><>
public byte byres1; //<2F><><EFBFBD><EFBFBD>
public byte byVideoEncType;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 hik264;1<><31>׼h264; 2<><32>׼mpeg4;
public byte byAudioEncType; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30>OggVorbis
public byte byVideoEncComplexity; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>Ӷȣ<D3B6>0-<2D>ͣ<EFBFBD>1-<2D>У<EFBFBD>2<EFBFBD><32>,0xfe:<3A>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>Դһ<D4B4><D2BB>
public byte byEnableSvc; //0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SVC<56><43><EFBFBD>ܣ<EFBFBD>1- <20><><EFBFBD><EFBFBD>SVC<56><43><EFBFBD><EFBFBD>
public byte byFormatType; //<2F><>װ<EFBFBD><D7B0><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-RTP<54><50>װ<EFBFBD><D7B0>3-PS<50><53>װ<EFBFBD><D7B0>4-TS<54><53>װ<EFBFBD><D7B0>5-˽<>У<EFBFBD>6-FLV<4C><56>7-ASF<53><46>8-3GP,9-RTP+PS<50><53><EFBFBD><EFBFBD><EFBFBD>꣺GB28181<38><31><EFBFBD><EFBFBD>0xff-<2D><>Ч
public byte byAudioBitRate; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>0-Ĭ<>ϣ<EFBFBD>1-8Kbps, 2- 16Kbps, 3-32Kbps<70><73>4-64Kbps<70><73>5-128Kbps<70><73>6-192Kbps<70><73>(IPC5.1.0Ĭ<EFBFBD><EFBFBD>4-64Kbps)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byres;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//ͨ<><CDA8>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSIONCFG_V30
{
public uint dwSize;
public NET_DVR_COMPRESSION_INFO_V30 struNormHighRecordPara;//¼<><C2BC> <20><>Ӧ8000<30><30><EFBFBD><EFBFBD>ͨ
public NET_DVR_COMPRESSION_INFO_V30 struRes;//<2F><><EFBFBD><EFBFBD> char reserveData[28];
public NET_DVR_COMPRESSION_INFO_V30 struEventRecordPara;//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_COMPRESSION_INFO_V30 struNetPara;//<2F><><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
}
//<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSION_INFO
{
public byte byStreamType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><>Ƶ<EFBFBD><C6B5>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ʾѹ<CABE><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byResolution;//<2F>ֱ<EFBFBD><D6B1><EFBFBD>0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF, 5-2QCIF(352X144)(<28><><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>)
public byte byBitrateType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0:<3A><><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD>1:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicQuality;//ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 1-<2D>κ<EFBFBD> 2-<2D>Ϻ<EFBFBD> 3-һ<><D2BB> 4-<2D>ϲ<EFBFBD> 5-<2D><>
public uint dwVideoBitrate; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 1-16K(<28><><EFBFBD><EFBFBD>) 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
//<2F><><EFBFBD><EFBFBD>λ(31λ)<29>ó<EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0-30λ<30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ֵ(MIN-32K MAX-8192K)<29><>
public uint dwVideoFrameRate;//֡<><D6A1> 0-ȫ<><C8AB>; 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;
}
//ͨ<><CDA8>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSIONCFG
{
public uint dwSize;
public NET_DVR_COMPRESSION_INFO struRecordPara;//¼<><C2BC>/<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>
public NET_DVR_COMPRESSION_INFO struNetPara;//<2F><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(<28><>չ) <20><><EFBFBD><EFBFBD><49><D6A1><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSION_INFO_EX
{
public byte byStreamType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><>Ƶ<EFBFBD><C6B5>, 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byResolution;//<2F>ֱ<EFBFBD><D6B1><EFBFBD>0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF, 5-2QCIF(352X144)(<28><><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>)
public byte byBitrateType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0:<3A><><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD>1:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicQuality;//ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 1-<2D>κ<EFBFBD> 2-<2D>Ϻ<EFBFBD> 3-һ<><D2BB> 4-<2D>ϲ<EFBFBD> 5-<2D><>
public uint dwVideoBitrate;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 1-16K(<28><><EFBFBD><EFBFBD>) 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
//<2F><><EFBFBD><EFBFBD>λ(31λ)<29>ó<EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0-30λ<30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ֵ(MIN-32K MAX-8192K)<29><>
public uint dwVideoFrameRate;//֡<><D6A1> 0-ȫ<><C8AB>; 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<EFBFBD><EFBFBD><EFBFBD><EFBFBD>14-15, 15-18, 16-22;
public ushort wIntervalFrameI;//I֡<49><D6A1><EFBFBD><EFBFBD>
//2006-08-11 <20><><EFBFBD>ӵ<EFBFBD><50><D6A1><EFBFBD><EFBFBD><EFBFBD>ýӿڣ<D3BF><DAA3><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8><EFBFBD>ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public byte byIntervalBPFrame;//0-BBP֡; 1-BP֡; 2-<2D><>
public byte byRes;
}
//ͨ<><CDA8>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSIONCFG_EX
{
public uint dwSize;
public NET_DVR_COMPRESSION_INFO_EX struRecordPara;//¼<><C2BC>
public NET_DVR_COMPRESSION_INFO_EX struNetPara;//<2F><><EFBFBD><EFBFBD>
}
//ʱ<><CAB1><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_RECORDSCHED
{
public NET_DVR_SCHEDTIME struRecordTime;
public byte byRecordType;//0:<3A><>ʱ¼<CAB1><C2BC><EFBFBD><EFBFBD>1:<3A>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬2:<3A><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>3:<3A><><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4:<3A><><EFBFBD><EFBFBD>&<26><><EFBFBD><EFBFBD>, 5:<3A><><EFBFBD><EFBFBD><EEB4A5>, 6: <20><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 3)]
public string reservedData;
}
//ȫ<><C8AB>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORDDAY
{
public ushort wAllDayRecord;/* <20>Ƿ<EFBFBD>ȫ<EFBFBD><C8AB>¼<EFBFBD><C2BC> 0-<2D><> 1-<2D><>*/
public byte byRecordType;/* ¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0:<3A><>ʱ¼<CAB1><C2BC><EFBFBD><EFBFBD>1:<3A>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬2:<3A><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>3:<3A><><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4:<3A><><EFBFBD><EFBFBD>&<26><><EFBFBD><EFBFBD> 5:<3A><><EFBFBD><EFBFBD><EEB4A5>, 6: <20><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>*/
public byte reservedData;
}
//ʱ<><CAB1><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORDSCHED_V40
{
public NET_DVR_SCHEDTIME struRecordTime;
/*¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0:<EFBFBD><EFBFBD>ʱ¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1:<EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>3:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>&<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 5:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
6-<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>10-PIR<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>11-<EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>12-<EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>13-ȫ<EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>,14-<EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD>¼<EFBFBD>,
15-Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,16-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,17-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,18-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
19-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>),20<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,21-POS¼<EFBFBD><EFBFBD>,
22-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 23-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,24-<EFBFBD>ǻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,25-<EFBFBD><EFBFBD>Ա<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,26-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,27-ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
28-<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,29-<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,30-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>31-<EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,32-<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD>Ź<EFBFBD>¼<EFBFBD>(˾<EFBFBD><EFBFBD>),33-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>(˾<EFBFBD><EFBFBD>), 34-<EFBFBD><EFBFBD>˯<EFBFBD>¼<EFBFBD>(˾<EFBFBD><EFBFBD>)
35-<EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 36-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>37-<EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>38-<EFBFBD>²<EFBFBD><EFBFBD><EFBFBD><EFBFBD>39-<EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,40-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>41-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,42-ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ,43-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,44-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD>,45-Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>46-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>ģ<EFBFBD>47-<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>̯,48-Ŀ<EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD>,
49-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><EFBFBD><EFBFBD>50<EFBFBD><EFBFBD>ΣĿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD>51-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>52<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public byte byRecordType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ȫ<><C8AB>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORDDAY_V40
{
public byte byAllDayRecord; /* <20>Ƿ<EFBFBD>ȫ<EFBFBD><C8AB>¼<EFBFBD><C2BC> 0-<2D><> 1-<2D><>*/
/*¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0:<EFBFBD><EFBFBD>ʱ¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1:<EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>3:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>&<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 5:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
6-<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>10-PIR<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>11-<EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>12-<EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>13-ȫ<EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>,14-<EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD>¼<EFBFBD>,
15-Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,16-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,17-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,18-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
19-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>),20<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,21-POS¼<EFBFBD><EFBFBD>,
22-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 23-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,24-<EFBFBD>ǻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,25-<EFBFBD><EFBFBD>Ա<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,26-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,27-ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
28-<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,29-<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,30-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>31-<EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,32-<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD>Ź<EFBFBD>¼<EFBFBD>(˾<EFBFBD><EFBFBD>),33-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>(˾<EFBFBD><EFBFBD>), 34-<EFBFBD><EFBFBD>˯<EFBFBD>¼<EFBFBD>(˾<EFBFBD><EFBFBD>)
35-<EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 36-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>37-<EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>38-<EFBFBD>²<EFBFBD><EFBFBD><EFBFBD><EFBFBD>39-<EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,40-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>41-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,42-ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ,43-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,44-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD>,45-Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,46-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD>,47-<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>̯,48-Ŀ<EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD>,
49-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><EFBFBD><EFBFBD>50<EFBFBD><EFBFBD>ΣĿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD>51-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>52<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byRecordType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 62, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORD_V40
{
public uint dwSize;
public uint dwRecord; /*<2A>Ƿ<EFBFBD>¼<EFBFBD><C2BC> 0-<2D><> 1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDDAY_V40[] struRecAllDay;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDSCHED_V40[] struRecordSched;
public uint dwRecordTime; /* ¼<><C2BC><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> 0-5<>룬 1-10<31>룬 2-30<33>룬 3-1<><31><EFBFBD>ӣ<EFBFBD> 4-2<><32><EFBFBD>ӣ<EFBFBD> 5-5<><35><EFBFBD>ӣ<EFBFBD> 6-10<31><30><EFBFBD><EFBFBD>*/
public uint dwPreRecordTime; /* Ԥ¼ʱ<C2BC><CAB1> 0-<2D><>Ԥ¼ 1-5<><35> 2-10<31><30> 3-15<31><35> 4-20<32><30> 5-25<32><35> 6-30<33><30> 7-0xffffffff(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ¼) */
public uint dwRecorderDuration; /* ¼<>񱣴<EFBFBD><F1B1A3B4><EFBFBD><EFBFBD>ʱ<EEB3A4><CAB1> */
public byte byRedundancyRec; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>,<2C><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD>ݣ<EFBFBD>0/1*/
public byte byAudioRec; /*¼<><C2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>¼<EFBFBD><C2BC>Ƶ<EFBFBD><C6B5><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д˷<D0B4><CBB7><EFBFBD>*/
public byte byStreamType; // 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬʱ 3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPassbackRecord; // 0:<3A><><EFBFBD>ش<EFBFBD>¼<EFBFBD><C2BC> 1<><31><EFBFBD>ش<EFBFBD>¼<EFBFBD><C2BC>
public ushort wLockDuration; // ¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λСʱ 0<><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xffff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ε<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>¼<EFBFBD>񣬽<EFBFBD><F1A3ACBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRecordBackup; // 0:¼<>񲻴浵 1<><31>¼<EFBFBD><C2BC><EFBFBD>
public byte bySVCLevel; //SVC<56><43>֡<EFBFBD><D6A1><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD>飬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮һ 2-<2D><><EFBFBD>ķ<EFBFBD>֮<EFBFBD><D6AE>
public byte byRecordManage; //¼<><C2BC><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>0-<2D><><EFBFBD>ã<EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ж<EFBFBD>ʱ¼<CAB1>񣻲<EFBFBD><F1A3BBB2><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ʱ¼<CAB1>񣬵<EFBFBD><F1A3ACB5><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD><DAB0><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
public byte byExtraSaveAudio;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><E3B7A8><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><E3B7A8><EFBFBD><EFBFBD><E4B9A6>Ϊ<EFBFBD><CEAA>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD><D6A3><EFBFBD><E1BDB5><EFBFBD><EFBFBD><EFBFBD>ʡ<EFBFBD>֡<EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ָֻ<D6BB>ȫ<EFBFBD><C8AB><EFBFBD>ʼ<EFBFBD>֡<EFBFBD>ʣ<EFBFBD><CAA3>Ӷ<EFBFBD><D3B6><EFBFBD><EFB5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>ĵ<EFBFBD>Ŀ<EFBFBD><C4BF>*/
public byte byIntelligentRecord;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><> 1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 125, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ͨ<><CDA8>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORD_V30
{
public uint dwSize;
public uint dwRecord;/*<2A>Ƿ<EFBFBD>¼<EFBFBD><C2BC> 0-<2D><> 1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDDAY[] struRecAllDay;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDSCHED[] struRecordSched;
public uint dwRecordTime;/* ¼<><C2BC><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> 0-5<>룬 1-20<32>룬 2-30<33>룬 3-1<><31><EFBFBD>ӣ<EFBFBD> 4-2<><32><EFBFBD>ӣ<EFBFBD> 5-5<><35><EFBFBD>ӣ<EFBFBD> 6-10<31><30><EFBFBD><EFBFBD>*/
public uint dwPreRecordTime;/* Ԥ¼ʱ<C2BC><CAB1> 0-<2D><>Ԥ¼ 1-5<><35> 2-10<31><30> 3-15<31><35> 4-20<32><30> 5-25<32><35> 6-30<33><30> 7-0xffffffff(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ¼) */
public uint dwRecorderDuration;/* ¼<>񱣴<EFBFBD><F1B1A3B4><EFBFBD><EFBFBD>ʱ<EEB3A4><CAB1> */
public byte byRedundancyRec;/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>,<2C><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD>ݣ<EFBFBD>0/1*/
public byte byAudioRec;/*¼<><C2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>¼<EFBFBD><C2BC>Ƶ<EFBFBD><C6B5><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д˷<D0B4><CBB7><EFBFBD>*/
public byte byStreamType; // 0:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPassbackRecord; // 0:<3A><><EFBFBD>ش<EFBFBD>¼<EFBFBD><C2BC> 1<><31><EFBFBD>ش<EFBFBD>¼<EFBFBD><C2BC>
public ushort wLockDuration; // ¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λСʱ 0<><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xffff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ε<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>¼<EFBFBD>񣬽<EFBFBD><F1A3ACBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRecordBackup; // 0:¼<>񲻴浵 1<><31>¼<EFBFBD><C2BC><EFBFBD>
public byte bySVCLevel; //SVC<56><43>֡<EFBFBD><D6A1><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD>飬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮һ 2-<2D><><EFBFBD>ķ<EFBFBD>֮<EFBFBD><D6AE>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byReserve;
}
//ͨ<><CDA8>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORD
{
public uint dwSize;
public uint dwRecord;/*<2A>Ƿ<EFBFBD>¼<EFBFBD><C2BC> 0-<2D><> 1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDDAY[] struRecAllDay;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDSCHED[] struRecordSched;
public uint dwRecordTime;/* ¼<><C2BC>ʱ<EFBFBD><EFBFBD><E4B3A4> */
public uint dwPreRecordTime;/* Ԥ¼ʱ<C2BC><CAB1> 0-<2D><>Ԥ¼ 1-5<><35> 2-10<31><30> 3-15<31><35> 4-20<32><30> 5-25<32><35> 6-30<33><30> 7-0xffffffff(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ¼) */
}
//<2F><>̨Э<CCA8><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZ_PROTOCOL
{
public uint dwType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>1<EFBFBD><31>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDescribe;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8000<30>е<EFBFBD>һ<EFBFBD><D2BB>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PTZ_PROTOCOL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PTZ_PROTOCOL[] struPtz;/*<2A><><EFBFBD><EFBFBD>200<30><30>PTZЭ<5A><D0AD>*/
public uint dwPtzNum;/*<2A><>Ч<EFBFBD><D0A7>ptzЭ<7A><D0AD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>0<EFBFBD><30>ʼ(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>1)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/***************************<2A><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>(end)******************************/
//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>̨)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODERCFG_V30
{
public uint dwSize;
public uint dwBaudRate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(bps)<29><>0<EFBFBD><30>50<35><30>1<EFBFBD><31>75<37><35>2<EFBFBD><32>110<31><30>3<EFBFBD><33>150<35><30>4<EFBFBD><34>300<30><30>5<EFBFBD><35>600<30><30>6<EFBFBD><36>1200<30><30>7<EFBFBD><37>2400<30><30>8<EFBFBD><38>4800<30><30>9<EFBFBD><39>9600<30><30>10<31><30>19200<30><30> 11<31><31>38400<30><30>12<31><32>57600<30><30>13<31><33>76800<30><30>14<31><34>115.2k;
public byte byDataBit;// <20><><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>λ 0<><30><35><CEBB>1<EFBFBD><31><36><CEBB>2<EFBFBD><32><37><CEBB>3<EFBFBD><33>8λ;
public byte byStopBit;// ֹͣλ 0<><30><31><CEBB>1<EFBFBD><31>
public byte byParity;// У<><D0A3> 0<><30><EFBFBD><EFBFBD>У<EFBFBD>飬1<E9A3AC><31><EFBFBD><EFBFBD>У<EFBFBD>飬2<E9A3AC><32>żУ<C5BC><D0A3>;
public byte byFlowcontrol;// 0<><30><EFBFBD>ޣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-Ӳ<><D3B2><EFBFBD><EFBFBD>
public ushort wDecoderType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>0<EFBFBD><30>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ӦptzЭ<7A><D0AD><EFBFBD>б<EFBFBD>
public ushort wDecoderAddress;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:0 - 255*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PRESET_V30, ArraySubType = UnmanagedType.I1)]
public byte[] bySetPreset;/* Ԥ<>õ<EFBFBD><C3B5>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CRUISE_V30, ArraySubType = UnmanagedType.I1)]
public byte[] bySetCruise;/* Ѳ<><D1B2><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>: 0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TRACK_V30, ArraySubType = UnmanagedType.I1)]
public byte[] bySetTrack;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>*/
}
//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>̨)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODERCFG
{
public uint dwSize;
public uint dwBaudRate; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(bps)<29><>0<EFBFBD><30>50<35><30>1<EFBFBD><31>75<37><35>2<EFBFBD><32>110<31><30>3<EFBFBD><33>150<35><30>4<EFBFBD><34>300<30><30>5<EFBFBD><35>600<30><30>6<EFBFBD><36>1200<30><30>7<EFBFBD><37>2400<30><30>8<EFBFBD><38>4800<30><30>9<EFBFBD><39>9600<30><30>10<31><30>19200<30><30> 11<31><31>38400<30><30>12<31><32>57600<30><30>13<31><33>76800<30><30>14<31><34>115.2k;
public byte byDataBit; // <20><><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>λ 0<><30><35><CEBB>1<EFBFBD><31><36><CEBB>2<EFBFBD><32><37><CEBB>3<EFBFBD><33>8λ;
public byte byStopBit;// ֹͣλ 0<><30><31><CEBB>1<EFBFBD><31>2λ;
public byte byParity; // У<><D0A3> 0<><30><EFBFBD><EFBFBD>У<EFBFBD>飬1<E9A3AC><31><EFBFBD><EFBFBD>У<EFBFBD>飬2<E9A3AC><32>żУ<C5BC><D0A3>;
public byte byFlowcontrol;// 0<><30><EFBFBD>ޣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-Ӳ<><D3B2><EFBFBD><EFBFBD>
public ushort wDecoderType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0<><30>YouLi<4C><69>1<EFBFBD><31>LiLin-1016<31><36>2<EFBFBD><32>LiLin-820<32><30>3<EFBFBD><33>Pelco-p<><70>4<EFBFBD><34>DM DynaColor<6F><72>5<EFBFBD><35>HD600<30><30>6<EFBFBD><36>JC-4116<31><36>7<EFBFBD><37>Pelco-d WX<57><58>8<EFBFBD><38>Pelco-d PICO
public ushort wDecoderAddress;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:0 - 255*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PRESET, ArraySubType = UnmanagedType.I1)]
public byte[] bySetPreset;/* Ԥ<>õ<EFBFBD><C3B5>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CRUISE, ArraySubType = UnmanagedType.I1)]
public byte[] bySetCruise;/* Ѳ<><D1B2><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>: 0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TRACK, ArraySubType = UnmanagedType.I1)]
public byte[] bySetTrack;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>*/
}
//ppp<70><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PPPCFG_V30
{
public NET_DVR_IPADDR struRemoteIP;//Զ<><D4B6>IP<49><50>ַ
public NET_DVR_IPADDR struLocalIP;//<2F><><EFBFBD><EFBFBD>IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sLocalIPMask;//<2F><><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUsername;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
public byte byPPPMode;//PPPģʽ, 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRedial;//<2F>Ƿ<EFBFBD><C7B7>ز<EFBFBD> <20><>0-<2D><>,1-<2D><>
public byte byRedialMode;//<2F>ز<EFBFBD>ģʽ,0-<2D>ɲ<EFBFBD><C9B2><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>,1-Ԥ<>ûز<C3BB><D8B2><EFBFBD><EFBFBD><EFBFBD>
public byte byDataEncrypt;//<2F><><EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD>,0-<2D><>,1-<2D><>
public uint dwMTU;//MTU
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PHONENUMBER_LEN)]
public string sTelephoneNumber;//<2F><EFBFBD><E7BBB0><EFBFBD><EFBFBD>
}
//ppp<70><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PPPCFG
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sRemoteIP;//Զ<><D4B6>IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sLocalIP;//<2F><><EFBFBD><EFBFBD>IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sLocalIPMask;//<2F><><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUsername;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
public byte byPPPMode;//PPPģʽ, 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRedial;//<2F>Ƿ<EFBFBD><C7B7>ز<EFBFBD> <20><>0-<2D><>,1-<2D><>
public byte byRedialMode;//<2F>ز<EFBFBD>ģʽ,0-<2D>ɲ<EFBFBD><C9B2><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>,1-Ԥ<>ûز<C3BB><D8B2><EFBFBD><EFBFBD><EFBFBD>
public byte byDataEncrypt;//<2F><><EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD>,0-<2D><>,1-<2D><>
public uint dwMTU;//MTU
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PHONENUMBER_LEN)]
public string sTelephoneNumber;//<2F><EFBFBD><E7BBB0><EFBFBD><EFBFBD>
}
//RS232<33><32><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLE_RS232
{
public uint dwBaudRate;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(bps)<29><>0<EFBFBD><30>50<35><30>1<EFBFBD><31>75<37><35>2<EFBFBD><32>110<31><30>3<EFBFBD><33>150<35><30>4<EFBFBD><34>300<30><30>5<EFBFBD><35>600<30><30>6<EFBFBD><36>1200<30><30>7<EFBFBD><37>2400<30><30>8<EFBFBD><38>4800<30><30>9<EFBFBD><39>9600<30><30>10<31><30>19200<30><30> 11<31><31>38400<30><30>12<31><32>57600<30><30>13<31><33>76800<30><30>14<31><34>115.2k;*/
public byte byDataBit;/* <20><><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>λ 0<><30><35><CEBB>1<EFBFBD><31><36><CEBB>2<EFBFBD><32><37><CEBB>3<EFBFBD><33>8λ */
public byte byStopBit;/* ֹͣλ 0<><30><31><CEBB>1<EFBFBD><31>2λ */
public byte byParity;/* У<><D0A3> 0<><30><EFBFBD><EFBFBD>У<EFBFBD>飬1<E9A3AC><31><EFBFBD><EFBFBD>У<EFBFBD>飬2<E9A3AC><32>żУ<C5BC><D0A3> */
public byte byFlowcontrol;/* 0<><30><EFBFBD>ޣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-Ӳ<><D3B2><EFBFBD><EFBFBD> */
public uint dwWorkMode; /* <20><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0<EFBFBD><30>232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PPP<50><50><EFBFBD>ţ<EFBFBD>1<EFBFBD><31>232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>2<EFBFBD><32>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8> */
}
//RS232<33><32><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RS232CFG_V30
{
public uint dwSize;
public NET_DVR_SINGLE_RS232 struRs232;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 84, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_PPPCFG_V30 struPPPConfig;
}
//RS232<33><32><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RS232CFG
{
public uint dwSize;
public uint dwBaudRate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(bps)<29><>0<EFBFBD><30>50<35><30>1<EFBFBD><31>75<37><35>2<EFBFBD><32>110<31><30>3<EFBFBD><33>150<35><30>4<EFBFBD><34>300<30><30>5<EFBFBD><35>600<30><30>6<EFBFBD><36>1200<30><30>7<EFBFBD><37>2400<30><30>8<EFBFBD><38>4800<30><30>9<EFBFBD><39>9600<30><30>10<31><30>19200<30><30> 11<31><31>38400<30><30>12<31><32>57600<30><30>13<31><33>76800<30><30>14<31><34>115.2k;
public byte byDataBit;// <20><><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>λ 0<><30><35><CEBB>1<EFBFBD><31><36><CEBB>2<EFBFBD><32><37><CEBB>3<EFBFBD><33>8λ;
public byte byStopBit;// ֹͣλ 0<><30><31><CEBB>1<EFBFBD><31>2λ;
public byte byParity;// У<><D0A3> 0<><30><EFBFBD><EFBFBD>У<EFBFBD>飬1<E9A3AC><31><EFBFBD><EFBFBD>У<EFBFBD>飬2<E9A3AC><32>żУ<C5BC><D0A3>;
public byte byFlowcontrol;// 0<><30><EFBFBD>ޣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-Ӳ<><D3B2><EFBFBD><EFBFBD>
public uint dwWorkMode;// <20><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0<EFBFBD><30>խ<EFBFBD><D5AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PPP<50><50><EFBFBD><EFBFBD>)<29><>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨(232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>2<EFBFBD><32>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>
public NET_DVR_PPPCFG struPPPConfig;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PRESETCHAN_INFO
{
public uint dwEnablePresetChan; /*<2A><><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD>ͨ<EFBFBD><CDA8>*/
public uint dwPresetPointNo; /*<2A><><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>, 0xfffffff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ㡣*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CRUISECHAN_INFO
{
public uint dwEnableCruiseChan; /*<2A><><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>*/
public uint dwCruiseNo; /*Ѳ<><D1B2>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0xfffffff<66><66>ʾ<EFBFBD><CABE>Ч*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZTRACKCHAN_INFO
{
public uint dwEnablePtzTrackChan; /*<2A><><EFBFBD>û<EFBFBD><C3BB><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>*/
public uint dwPtzTrackNo; /*<2A><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ӧ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD>, 0xfffffff<66><66>ʾ<EFBFBD><CABE>Ч*/
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(256·NVR<56><52>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINCFG_V40
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAlarmInName; /* <20><><EFBFBD><EFBFBD> */
public byte byAlarmType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmInHandle; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>*/
public byte byChannel; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>ͨ<EFBFBD><CDA8>
public byte byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwHandleType; //<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD>,<2C><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public uint dwMaxRelAlarmOutChanNum ; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwRelAlarmOutChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD> ʵ<><CAB5>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelAlarmOut; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>*/
public uint dwMaxRecordChanNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><><D6BB>
public uint dwCurRecordChanNum; //<2F><>ǰʵ<C7B0><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õĹ<C3B5><C4B9><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelRecordChan; /* ʵ<>ʴ<EFBFBD><CAB4><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾ,<2C><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>±<EFBFBD>0 - dwCurRecordChanNum -1<><31>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>0xffffffff,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч*/
public uint dwMaxEnablePtzCtrlNun; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6BB>)
public uint dwEnablePresetChanNum; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PRESETCHAN_INFO[] struPresetChanInfo; //<2F><><EFBFBD>õ<EFBFBD>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 516, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; /*<2A><><EFBFBD><EFBFBD>*/
public uint dwEnableCruiseChanNum; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CRUISECHAN_INFO[] struCruiseChanInfo; //<2F><><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public uint dwEnablePtzTrackChanNum; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PTZTRACKCHAN_INFO[] struPtzTrackInfo; //<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINCFG_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAlarmInName;/* <20><><EFBFBD><EFBFBD> */
public byte byAlarmType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmInHandle; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byEnablePreset;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD> 0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byPresetNo;/* <20><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>̨Ԥ<CCA8>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>,һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><D4B5>ö<EFBFBD><C3B6><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨Ԥ<CCA8>õ<EFBFBD>, 0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ㡣*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 192, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;/*<2A><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byEnableCruise;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2> 0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byCruiseNo;/* Ѳ<><D1B2> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byEnablePtzTrack;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byPTZTrack;/* <20><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct STRUCT_IO_ALARM
{
public uint dwAlarmInputNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD>һ<EFBFBD><D2BB>ֻ<EFBFBD><D6BB>һ<EFBFBD><D2BB>
public uint dwTrigerAlarmOutNum; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4B3A4><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>ֽڱ<D6BD>ʾһ<CABE><D2BB>*/
public uint dwTrigerRecordChanNum; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4B3A4><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>ֽڱ<D6BD>ʾһ<CABE><D2BB>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 116, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct STRUCT_ALARM_CHANNEL
{
public uint dwAlarmChanNum; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4B3A4><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>ֽڱ<D6BD>ʾһ<CABE><D2BB>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct STRUCT_ALARM_HD
{
public uint dwAlarmHardDiskNum; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4B3A4><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̺ţ<CCBA><C5A3>Ľڱ<C4BD>ʾһ<CABE><D2BB>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayout(LayoutKind.Explicit)]
public struct UNION_ALARMINFO_FIXED
{
[FieldOffset(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byUnionLen;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALRAM_FIXED_HEADER
{
public uint dwAlarmType; /*0-<2D>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-Ӳ<><D3B2><EFBFBD><EFBFBD>,2-<2D>źŶ<C5BA>ʧ<EFBFBD><CAA7>3<EFBFBD><33><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬4<E2A3AC><34>Ӳ<EFBFBD><D3B2>δ<EFBFBD><CEB4>ʽ<EFBFBD><CABD>,5-дӲ<D0B4>̳<EFBFBD><CCB3><EFBFBD>,6-<2D>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7-<2D><>ʽ<EFBFBD><CABD>ƥ<EFBFBD><C6A5>, 8-<2D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ʣ<EFBFBD>9-<2D><>Ƶ<EFBFBD>ź<EFBFBD><C5BA><EFBFBD><ECB3A3>10-¼<><C2BC><EFBFBD><EFBFBD><ECB3A3>11-<2D><><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD><EFBFBD><EFBFBD><E4BBAF>12-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>13-ǰ<><C7B0><><C2BC><EFBFBD>ֱ<EFBFBD><D6B1>ʲ<EFBFBD>ƥ<EFBFBD><C6A5>*/
public NET_DVR_TIME_EX struAlarmTime; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public UNION_ALARMINFO_FIXED uStruAlarm;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINFO_V40
{
public NET_DVR_ALRAM_FIXED_HEADER struAlarmFixedHeader; //<2F><><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pAlarmData; //<2F><><EFBFBD><EFBFBD><EFBFBD>ɱ䲿<C9B1><E4B2BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAlarmInName;/* <20><><EFBFBD><EFBFBD> */
public byte byAlarmType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmInHandle;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>*/
public byte byChannel; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>ͨ<EFBFBD><CDA8>
public byte byRes;
public NET_DVR_HANDLEEXCEPTION struAlarmHandleType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byEnablePreset;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ<EFBFBD> 0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byPresetNo;/* <20><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>̨Ԥ<CCA8>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>,һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><D4B5>ö<EFBFBD><C3B6><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨Ԥ<CCA8>õ<EFBFBD>, 0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>õ㡣*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byEnableCruise;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2> 0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byCruiseNo;/* Ѳ<><D1B2> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byEnablePtzTrack;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>,1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byPTZTrack;/* <20><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
//ģ<><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ANALOG_ALARMINCFG
{
public uint dwSize;
public byte byEnableAlarmHandle; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmInName; //ģ<><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wAlarmInUpper; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>ޣ<EFBFBD>ʵ<EFBFBD><CAB5>ֵ<EFBFBD><D6B5>10<31><30><EFBFBD><EFBFBD>Χ0~360
public ushort wAlarmInLower; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>ޣ<EFBFBD>ʵ<EFBFBD><CAB5>ֵ<EFBFBD><D6B5>10<31><30><EFBFBD><EFBFBD>Χ0~360
public NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINFO_V30
{
public uint dwAlarmType;/*0-<2D>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-Ӳ<><D3B2><EFBFBD><EFBFBD>,2-<2D>źŶ<C5BA>ʧ,3<><33><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>,4<><34>Ӳ<EFBFBD><D3B2>δ<EFBFBD><CEB4>ʽ<EFBFBD><CABD>,5-<2D><>дӲ<D0B4>̳<EFBFBD><CCB3><EFBFBD>,6-<2D>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>,7-<2D><>ʽ<EFBFBD><CABD>ƥ<EFBFBD><C6A5>, 8-<2D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>, 0xa-GPS<50><53>λ<EFBFBD><CEBB>Ϣ(<28><><EFBFBD>ض<EFBFBD><D8B6><EFBFBD>)*/
public uint dwAlarmInputNumber;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmOutputNumber;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڣ<CBBF>Ϊ1<CEAA><31>ʾ<EFBFBD><CABE>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmRelateChannel;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϊ1<CEAA><31>ʾ<EFBFBD><CABE>Ӧ¼<D3A6><C2BC>, dwAlarmRelateChannel[0]<5D><>Ӧ<EFBFBD><D3A6>1<EFBFBD><31>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byChannel;/*dwAlarmTypeΪ2<CEAA><32>3,6ʱ<36><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD>ĸ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>dwChannel[0]<5D><>Ӧ<EFBFBD><D3A6>1<EFBFBD><31>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byDiskNumber;/*dwAlarmTypeΪ1,4,5ʱ,<2C><>ʾ<EFBFBD>ĸ<EFBFBD>Ӳ<EFBFBD><D3B2>, dwDiskNumber[0]<5D><>Ӧ<EFBFBD><D3A6>1<EFBFBD><31>Ӳ<EFBFBD><D3B2>*/
public void Init()
{
dwAlarmType = 0;
dwAlarmInputNumber = 0;
byAlarmRelateChannel = new byte[MAX_CHANNUM_V30];
byChannel = new byte[MAX_CHANNUM_V30];
byAlarmOutputNumber = new byte[MAX_ALARMOUT_V30];
byDiskNumber = new byte[MAX_DISKNUM_V30];
for (int i = 0; i < MAX_CHANNUM_V30; i++)
{
byAlarmRelateChannel[i] = Convert.ToByte(0);
byChannel[i] = Convert.ToByte(0);
}
for (int i = 0; i < MAX_ALARMOUT_V30; i++)
{
byAlarmOutputNumber[i] = Convert.ToByte(0);
}
for (int i = 0; i < MAX_DISKNUM_V30; i++)
{
byDiskNumber[i] = Convert.ToByte(0);
}
}
public void Reset()
{
dwAlarmType = 0;
dwAlarmInputNumber = 0;
for (int i = 0; i < MAX_CHANNUM_V30; i++)
{
byAlarmRelateChannel[i] = Convert.ToByte(0);
byChannel[i] = Convert.ToByte(0);
}
for (int i = 0; i < MAX_ALARMOUT_V30; i++)
{
byAlarmOutputNumber[i] = Convert.ToByte(0);
}
for (int i = 0; i < MAX_DISKNUM_V30; i++)
{
byDiskNumber[i] = Convert.ToByte(0);
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARM_HOT_SPARE
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>
public uint dwExceptionCase; //<2F><><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struDeviceIP; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD>豸IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINFO
{
public int dwAlarmType;/*0-<2D>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-Ӳ<><D3B2><EFBFBD><EFBFBD>,2-<2D>źŶ<C5BA>ʧ,3<><33><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>,4<><34>Ӳ<EFBFBD><D3B2>δ<EFBFBD><CEB4>ʽ<EFBFBD><CABD>,5-<2D><>дӲ<D0B4>̳<EFBFBD><CCB3><EFBFBD>,6-<2D>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>,7-<2D><>ʽ<EFBFBD><CABD>ƥ<EFBFBD><C6A5>, 8-<2D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>, 9-<2D><><EFBFBD><EFBFBD>״̬, 0xa-GPS<50><53>λ<EFBFBD><CEBB>Ϣ(<28><><EFBFBD>ض<EFBFBD><D8B6><EFBFBD>)*/
public int dwAlarmInputNumber;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ9ʱ<39>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>״̬0<CCAC><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> -1<><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT, ArraySubType = UnmanagedType.U4)]
public int[] dwAlarmOutputNumber;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڣ<CBBF><DAA3><EFBFBD>һλΪ1<CEAA><31>ʾ<EFBFBD><CABE>Ӧ<EFBFBD><D3A6>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.U4)]
public int[] dwAlarmRelateChannel;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλΪ1<CEAA><31>ʾ<EFBFBD><CABE>Ӧ<EFBFBD><D3A6>һ·¼<C2B7><C2BC>, dwAlarmRelateChannel[0]<5D><>Ӧ<EFBFBD><D3A6>1<EFBFBD><31>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.U4)]
public int[] dwChannel;/*dwAlarmTypeΪ2<CEAA><32>3,6ʱ<36><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD>ĸ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>dwChannel[0]λ<><CEBB>Ӧ<EFBFBD><D3A6>1<EFBFBD><31>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM, ArraySubType = UnmanagedType.U4)]
public int[] dwDiskNumber;/*dwAlarmTypeΪ1,4,5ʱ,<2C><>ʾ<EFBFBD>ĸ<EFBFBD>Ӳ<EFBFBD><D3B2>, dwDiskNumber[0]λ<><CEBB>Ӧ<EFBFBD><D3A6>1<EFBFBD><31>Ӳ<EFBFBD><D3B2>*/
public void Init()
{
dwAlarmType = 0;
dwAlarmInputNumber = 0;
dwAlarmOutputNumber = new int[MAX_ALARMOUT];
dwAlarmRelateChannel = new int[MAX_CHANNUM];
dwChannel = new int[MAX_CHANNUM];
dwDiskNumber = new int[MAX_DISKNUM];
for (int i = 0; i < MAX_ALARMOUT; i++)
{
dwAlarmOutputNumber[i] = 0;
}
for (int i = 0; i < MAX_CHANNUM; i++)
{
dwAlarmRelateChannel[i] = 0;
dwChannel[i] = 0;
}
for (int i = 0; i < MAX_DISKNUM; i++)
{
dwDiskNumber[i] = 0;
}
}
public void Reset()
{
dwAlarmType = 0;
dwAlarmInputNumber = 0;
for (int i = 0; i < MAX_ALARMOUT; i++)
{
dwAlarmOutputNumber[i] = 0;
}
for (int i = 0; i < MAX_CHANNUM; i++)
{
dwAlarmRelateChannel[i] = 0;
dwChannel[i] = 0;
}
for (int i = 0; i < MAX_DISKNUM; i++)
{
dwDiskNumber[i] = 0;
}
}
}
//////////////////////////////////////////////////////////////////////////////////////
//IPC<50><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/* IP<49><EFBFBD>ṹ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPDEVINFO
{
public uint dwEnable;/* <20><>IP<49><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /* <20><><EFBFBD><EFBFBD> */
public NET_DVR_IPADDR struIP;/* IP<49><50>ַ */
public ushort wDVRPort;/* <20>˿ں<CBBF> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 34, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;/* <20><><EFBFBD><EFBFBD> */
public void Init()
{
sUserName = new byte[NAME_LEN];
sPassword = new byte[PASSWD_LEN];
byRes = new byte[34];
}
}
//ipc<70><63><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2>չ<EFBFBD><D5B9>֧<EFBFBD><D6A7>ip<69><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPDEVINFO_V31
{
public byte byEnable;//<2F><>IP<49><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
public byte byProType;
public byte byEnableQuickAdd;
public byte byRes1;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֶΣ<D6B6><CEA3><EFBFBD>0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;//<2F>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;//<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byDomain;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struIP;//IP<49><50>ַ
public ushort wDVRPort;// <20>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 34, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֶΣ<D6B6><CEA3><EFBFBD>0
public void Init()
{
sUserName = new byte[NAME_LEN];
sPassword = new byte[PASSWD_LEN];
byDomain = new byte[MAX_DOMAIN_NAME];
byRes2 = new byte[34];
}
}
/* IPͨ<50><CDA8>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPCHANINFO
{
public byte byEnable;/* <20><>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> */
public byte byIPID;/* IP<49>豸ID ȡֵ1- MAX_IP_DEVICE */
public byte byChannel;/* ͨ<><CDA8><EFBFBD><EFBFBD> */
public byte byIPIDHigh; // IP<49>豸ID<49>ĸ<EFBFBD>
public byte byTransProtocol;//<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-TCP/auto(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>)<29><>1-UDP 2-<2D>ಥ 3-<2D><>TCP 4-auto
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>,<2C><>0
public void Init()
{
byRes = new byte[31];
}
}
/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPPARACFG
{
public uint dwSize;/* <20><EFBFBD><E1B9B9>С */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_DEVICE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPDEVINFO[] struIPDevInfo;/* IP<49>豸 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byAnalogChanEnable; /* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD><C3A3>ӵ͵<D3B5><CDB5>߱<EFBFBD>ʾ1-32ͨ<32><CDA8><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч 1<><31>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_CHANNEL, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPCHANINFO[] struIPChanInfo;/* IPͨ<50><CDA8> */
public void Init()
{
int i = 0;
struIPDevInfo = new NET_DVR_IPDEVINFO[MAX_IP_DEVICE];
for (i = 0; i < MAX_IP_DEVICE; i++)
{
struIPDevInfo[i].Init();
}
byAnalogChanEnable = new byte[MAX_ANALOG_CHANNUM];
struIPChanInfo = new NET_DVR_IPCHANINFO[MAX_IP_CHANNEL];
for (i = 0; i < MAX_IP_CHANNEL; i++)
{
struIPChanInfo[i].Init();
}
}
}
/* <20><>չIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPPARACFG_V31
{
public uint dwSize;/* <20><EFBFBD><E1B9B9>С */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_DEVICE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPDEVINFO_V31[] struIPDevInfo; /* IP<49>豸 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byAnalogChanEnable; /* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD><C3A3>ӵ͵<D3B5><CDB5>߱<EFBFBD>ʾ1-32ͨ<32><CDA8><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч 1<><31>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_CHANNEL, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPCHANINFO[] struIPChanInfo;/* IPͨ<50><CDA8> */
public void Init()
{
int i = 0;
struIPDevInfo = new NET_DVR_IPDEVINFO_V31[MAX_IP_DEVICE];
for (i = 0; i < MAX_IP_DEVICE; i++)
{
struIPDevInfo[i].Init();
}
byAnalogChanEnable = new byte[MAX_ANALOG_CHANNUM];
struIPChanInfo = new NET_DVR_IPCHANINFO[MAX_IP_CHANNEL];
for (i = 0; i < MAX_IP_CHANNEL; i++)
{
struIPChanInfo[i].Init();
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPSERVER_STREAM
{
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_IPADDR struIPServer;
public ushort wPort;
public ushort wDvrNameLen;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDVRName;
public ushort wDVRSerialLen;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.U2)]
public ushort[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDVRSerialNumber;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassWord;
public byte byChannel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
byRes = new byte[3];
byDVRName = new byte[NAME_LEN];
byRes1 = new ushort[2];
byDVRSerialNumber = new byte[SERIALNO_LEN];
byUserName = new byte[NAME_LEN];
byPassWord = new byte[PASSWD_LEN];
byRes2 = new byte[11];
}
}
/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STREAM_MEDIA_SERVER_CFG
{
public byte byValid;/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>,0<><30>ʾ<EFBFBD><CABE>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_IPADDR struDevIP;
public ushort wDevPort;/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>*/
public byte byTransmitType;/*<2A><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-TCP<43><50>1-UDP*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 69, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEV_CHAN_INFO
{
public NET_DVR_IPADDR struIP; //DVR IP<49><50>ַ
public ushort wDVRPort; //<2F>˿ں<CBBF>
public byte byChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byTransProtocol; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-TCP<43><50>1-UDP
public byte byTransMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFactoryType; /*ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8><EFBFBD>ӿڻ<D3BF>ȡ*/
public byte byDeviceType; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>(<28><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ܰ<EFBFBD>ʹ<EFBFBD><CAB9>)<29><>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>byVcaSupportChanMode<64>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ý<EFBFBD><C3BD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDispChan;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
public byte bySubDispChan;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʹ<CAB1><CAB9>
public byte byResolution; //; 1-CIF 2-4CIF 3-720P 4-1080P 5-500w<30><77><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸò<DDB8><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byDomain; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>ʺ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PU_STREAM_CFG
{
public uint dwSize;
public NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg;
public NET_DVR_DEV_CHAN_INFO struDevChanInfo;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DDNS_STREAM_CFG
{
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_IPADDR struStreamServer;
public ushort wStreamServerPort;
public byte byStreamServerTransmitType;
public byte byRes2;
public NET_DVR_IPADDR struIPServer;
public ushort wIPServerPort;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDVRName;
public ushort wDVRNameLen;
public ushort wDVRSerialLen;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDVRSerialNumber;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassWord;
public ushort wDVRPort;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes4;
public byte byChannel;
public byte byTransProtocol;
public byte byTransMode;
public byte byFactoryType;
public void Init()
{
byRes1 = new byte[3];
byRes3 = new byte[2];
sDVRName = new byte[NAME_LEN];
sDVRSerialNumber = new byte[SERIALNO_LEN];
sUserName = new byte[NAME_LEN];
sPassWord = new byte[PASSWD_LEN];
byRes4 = new byte[2];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PU_STREAM_URL
{
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 240, ArraySubType = UnmanagedType.I1)]
public byte[] strURL;
public byte byTransPortocol;
public ushort wIPID;
public byte byChannel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
strURL = new byte[240];
byRes = new byte[7];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HKDDNS_STREAM
{
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byDDNSDomain;
public ushort wPort;
public ushort wAliasLen;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAlias;
public ushort wDVRSerialLen;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDVRSerialNumber;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassWord;
public byte byChannel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
byRes = new byte[3];
byDDNSDomain = new byte[64];
byAlias = new byte[NAME_LEN];
byRes1 = new byte[2];
byDVRSerialNumber = new byte[SERIALNO_LEN];
byUserName = new byte[NAME_LEN];
byPassWord = new byte[PASSWD_LEN];
byRes2 = new byte[11];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPCHANINFO_V40
{
public byte byEnable; /* <20><>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> */
public byte byRes1;
public ushort wIPID; //IP<49>豸ID
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byTransProtocol; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-TCP<43><50>1-UDP
public byte byTransMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFactoryType; /*ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8><EFBFBD>ӿڻ<D3BF>ȡ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 241, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayout(LayoutKind.Explicit)]
public struct NET_DVR_GET_STREAM_UNION
{
[FieldOffset(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 492, ArraySubType = UnmanagedType.I1)]
public byte[] byUnion;
public void Init()
{
byUnion = new byte[492];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STREAM_MODE
{
public byte byGetStreamType;/*ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD>0- ֱ<EFBFBD>Ӵ<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2- ͨ<EFBFBD><EFBFBD>IPServer<EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 3- ͨ<EFBFBD><EFBFBD>IPServer<EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 4- ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><EFBFBD><EFBFBD><EFBFBD>URLȥȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 5- ͨ<EFBFBD><EFBFBD>hiDDNS<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_GET_STREAM_UNION uGetStream;
public void Init()
{
byGetStreamType = 0;
byRes = new byte[3];
//uGetStream.Init();
}
}
/* V40<34><30>չIP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPPARACFG_V40
{
public uint dwSize;/* <20><EFBFBD><E1B9B9>С */
public uint dwGroupNum;
public uint dwAChanNum;
public uint dwDChanNum;
public uint dwStartDChan;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAnalogChanEnable; /* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD><C3A3>ӵ͵<D3B5><CDB5>߱<EFBFBD>ʾ1-32ͨ<32><CDA8><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч 1<><31>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_DEVICE_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPDEVINFO_V31[] struIPDevInfo; /* IP<49>豸 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_STREAM_MODE[] struStreamMode;/* IPͨ<50><CDA8> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; /* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD><C3A3>ӵ͵<D3B5><CDB5>߱<EFBFBD>ʾ1-32ͨ<32><CDA8><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч 1<><31>Ч */
}
//ΪCVR<56><52>չ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMINFO_DEV
{
public uint dwAlarmType; //0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8>)<29>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-˽<>о<EFBFBD><D0BE><EFBFBD><EFBFBD>𻵣<EFBFBD>2- NVR<56><52><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>
//3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><EFBFBD><ECB3A3>4-ϵͳʱ<CDB3><CAB1><EFBFBD><EFBFBD><ECB3A3>5-¼<><C2BC><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>
//6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8>)<29>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8>)<29>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME struTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public uint dwNumber; //<2F><>Ŀ
public IntPtr pNO; //dwNumber<65><72>WORD; ÿ<><C3BF>WORD<52><44>ʾһ<CABE><D2BB>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>ߴ<EFBFBD><DFB4>̺<EFBFBD>, <20><>ЧʱΪ0
}
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMOUTINFO
{
public byte byIPID;/* IP<49>豸IDȡֵ1- MAX_IP_DEVICE */
public byte byAlarmOut;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 18, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;/* <20><><EFBFBD><EFBFBD> */
public void Init()
{
byRes = new byte[18];
}
}
/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMOUTCFG
{
public uint dwSize; /* <20><EFBFBD><E1B9B9>С */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMOUT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMOUTINFO[] struIPAlarmOutInfo;/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public void Init()
{
struIPAlarmOutInfo = new NET_DVR_IPALARMOUTINFO[MAX_IP_ALARMOUT];
for (int i = 0; i < MAX_IP_ALARMOUT; i++)
{
struIPAlarmOutInfo[i].Init();
}
}
}
/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMOUTINFO_V40
{
public uint dwIPID; /* IP<49>豸ID */
public uint dwAlarmOut; /* IP<49>豸ID<49><44>Ӧ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /* <20><><EFBFBD><EFBFBD> */
}
/*IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMOUTCFG_V40
{
public uint dwSize; //<2F><EFBFBD><EFBFBD><E5B3A4>
public uint dwCurIPAlarmOutNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMOUT_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMOUTINFO_V40[] struIPAlarmOutInfo;/*IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMININFO
{
public byte byIPID;/* IP<49>豸IDȡֵ1- MAX_IP_DEVICE */
public byte byAlarmIn;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 18, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;/* <20><><EFBFBD><EFBFBD> */
}
/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMINCFG
{
public uint dwSize;/* <20><EFBFBD><E1B9B9>С */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMIN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMININFO[] struIPAlarmInInfo;/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMININFO_V40
{
public uint dwIPID; /* IP<49>豸ID */
public uint dwAlarmIn; /* IP<49>豸ID<49><44>Ӧ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /* <20><><EFBFBD><EFBFBD> */
}
/*IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMINCFG_V40
{
public uint dwSize; //<2F><EFBFBD><EFBFBD><E5B3A4>
public uint dwCurIPAlarmInNum; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMIN_V40, ArraySubType = UnmanagedType.I1)]
public NET_DVR_IPALARMININFO_V40[] struIPAlarmInInfo;/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ipc alarm info
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMINFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_DEVICE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPDEVINFO[] struIPDevInfo; /* IP<49>豸 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byAnalogChanEnable; /* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_CHANNEL, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPCHANINFO[] struIPChanInfo;/* IPͨ<50><CDA8> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMIN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMININFO[] struIPAlarmInInfo;/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMOUT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMOUTINFO[] struIPAlarmOutInfo;/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
//ipc<70><63><EFBFBD>øı<C4B1><E4B1A8><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>չ 9000_1.1
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMINFO_V31
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_DEVICE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPDEVINFO_V31[] struIPDevInfo; /* IP<49>豸 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byAnalogChanEnable;/* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_CHANNEL, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPCHANINFO[] struIPChanInfo;/* IPͨ<50><CDA8> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMIN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMININFO[] struIPAlarmInInfo; /* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMOUT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMOUTINFO[] struIPAlarmOutInfo;/* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPALARMINFO_V40
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_DEVICE_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPDEVINFO_V31[] struIPDevInfo; // IP<49>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAnalogChanEnable; /* ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPCHANINFO[] struIPChanInfo; /* IPͨ<50><CDA8> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMIN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMININFO[] struIPAlarmInInfo; /* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IP_ALARMOUT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPALARMOUTINFO[] struIPAlarmOutInfo; /* IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public enum HD_STAT
{
HD_STAT_OK = 0,/* <20><><EFBFBD><EFBFBD> */
HD_STAT_UNFORMATTED = 1,/* δ<><CEB4>ʽ<EFBFBD><CABD> */
HD_STAT_ERROR = 2,/* <20><><EFBFBD><EFBFBD> */
HD_STAT_SMART_FAILED = 3,/* SMART״̬ */
HD_STAT_MISMATCH = 4,/* <20><>ƥ<EFBFBD><C6A5> */
HD_STAT_IDLE = 5, /* <20><><EFBFBD><EFBFBD>*/
NET_HD_STAT_OFFLINE = 6,/*<2A><><EFBFBD><EFBFBD><EFBFBD>̴<EFBFBD><CCB4><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>״̬ */
HD_RIADVD_EXPAND = 7, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD> */
HD_STAT_REPARING = 10, /* Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>(9000 2.0) */
HD_STAT_FORMATING = 11, /* Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD>ʽ<EFBFBD><CABD>(9000 2.0) */
}
//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLE_HD
{
public uint dwHDNo;/*Ӳ<>̺<EFBFBD>, ȡֵ0~MAX_DISKNUM_V30-1*/
public uint dwCapacity;/*Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
public uint dwFreeSpace;/*Ӳ<><D3B2>ʣ<EFBFBD><CAA3><EFBFBD>ռ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
public uint dwHdStatus;/*Ӳ<><D3B2>״̬(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) HD_STAT*/
public byte byHDAttr;/*0-Ĭ<><C4AC>, 1-<2D><><EFBFBD><EFBFBD>; 2-ֻ<><D6BB>*/
public byte byHDType;/*0-<2D><><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2>,1-ESATAӲ<41><D3B2>,2-NASӲ<53><D3B2>*/
public byte byDiskDriver; // ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ASCII<49>ַ<EFBFBD>
public byte byRes1;
public uint dwHdGroup; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD> 1-MAX_HD_GROUP*/
public byte byRecycling; // <20>Ƿ<EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1<EFBFBD><31>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public uint dwStorageType; //<2F><>λ<EFBFBD><CEBB>ʾ 0-<2D><>֧<EFBFBD><D6A7> <20><>0-֧<><D6A7>
// dwStorageType & 0x1 <20><>ʾ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ͨ¼<CDA8><C2BC>ר<EFBFBD>ô洢<C3B4><E6B4A2>
// dwStorageType & 0x2 <20><>ʾ<EFBFBD>Ƿ<EFBFBD><C7B7>dz<EFBFBD>֡¼<D6A1><C2BC>ר<EFBFBD>ô洢<C3B4><E6B4A2>
// dwStorageType & 0x4 <20><>ʾ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ͼƬ¼<C6AC><C2BC>ר<EFBFBD>ô洢<C3B4><E6B4A2>
public uint dwPictureCapacity; //Ӳ<><D3B2>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD>λ:MB
public uint dwFreePictureSpace; //ʣ<><CAA3>ͼƬ<CDBC>ռ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD>λ:MB
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 104, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HDCFG
{
public uint dwSize;
public uint dwHDCount;/*Ӳ<><D3B2><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_HD[] struHDInfo;//Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLE_HDGROUP_V40
{
public uint dwHDGroupNo; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) 1-MAX_HD_GROUP*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xffffffffʱ<66><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /* <20><><EFBFBD><EFBFBD> */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HDGROUP_CFG_V40
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwMaxHDGroupNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6BB>
public uint dwCurHDGroupNum; /*<2A><>ǰ<EFBFBD><C7B0><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HD_GROUP, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_HDGROUP_V40[] struHDGroupAttr; //Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLE_HDGROUP
{
public uint dwHDGroupNo;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) 1-MAX_HD_GROUP*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byHDGroupChans;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>, 0-<2D><>ʾ<EFBFBD><CABE>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>¼<EFBFBD>󵽸<EFBFBD><F3B5BDB8><EFBFBD><EFBFBD>飬1-<2D><>ʾ¼<CABE>󵽸<EFBFBD><F3B5BDB8><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HDGROUP_CFG
{
public uint dwSize;
public uint dwHDGroupCount;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HD_GROUP, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_HDGROUP[] struHDGroupAttr;//Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD>Ľṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCALECFG
{
public uint dwSize;
public uint dwMajorScale;/* <20><><EFBFBD><EFBFBD>ʾ 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>*/
public uint dwMinorScale;/* <20><><EFBFBD><EFBFBD>ʾ 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes;
}
//DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMOUTCFG_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAlarmOutName;/* <20><><EFBFBD><EFBFBD> */
public uint dwAlarmOutDelay;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(-1Ϊ<31><CEAA><EFBFBD>ޣ<EFBFBD><DEA3>ֶ<EFBFBD><D6B6>ر<EFBFBD>) */
//0-5<><35>,1-10<31><30>,2-30<33><30>,3-1<><31><EFBFBD><EFBFBD>,4-2<><32><EFBFBD><EFBFBD>,5-5<><35><EFBFBD><EFBFBD>,6-10<31><30><EFBFBD><EFBFBD>,7-<2D>ֶ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmOutTime;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMOUTCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAlarmOutName;/* <20><><EFBFBD><EFBFBD> */
public uint dwAlarmOutDelay;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(-1Ϊ<31><CEAA><EFBFBD>ޣ<EFBFBD><DEA3>ֶ<EFBFBD><D6B6>ر<EFBFBD>) */
//0-5<><35>,1-10<31><30>,2-30<33><30>,3-1<><31><EFBFBD><EFBFBD>,4-2<><32><EFBFBD><EFBFBD>,5-5<><35><EFBFBD><EFBFBD>,6-10<31><30><EFBFBD><EFBFBD>,7-<2D>ֶ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmOutTime;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> */
}
//DVR<56><52><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PREVIEWCFG_V30
{
public uint dwSize;
public byte byPreviewNumber;//Ԥ<><D4A4><EFBFBD><EFBFBD>Ŀ,0-1<><31><EFBFBD><EFBFBD>,1-4<><34><EFBFBD><EFBFBD>,2-9<><39><EFBFBD><EFBFBD>,3-16<31><36><EFBFBD><EFBFBD>,0xff:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEnableAudio;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>,0-<2D><>Ԥ<EFBFBD><D4A4>,1-Ԥ<><D4A4>
public ushort wSwitchTime;//<2F>л<EFBFBD>ʱ<EFBFBD><CAB1>,0-<2D><><EFBFBD>л<EFBFBD>,1-5s,2-10s,3-20s,4-30s,5-60s,6-120s,7-300s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PREVIEW_MODE * MAX_WINDOW_V30, ArraySubType = UnmanagedType.I1)]
public byte[] bySwitchSeq;//<2F>л<EFBFBD>˳<EFBFBD><CBB3>,<2C><><EFBFBD><EFBFBD>lSwitchSeq[i]Ϊ 0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//DVR<56><52><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PREVIEWCFG
{
public uint dwSize;
public byte byPreviewNumber;//Ԥ<><D4A4><EFBFBD><EFBFBD>Ŀ,0-1<><31><EFBFBD><EFBFBD>,1-4<><34><EFBFBD><EFBFBD>,2-9<><39><EFBFBD><EFBFBD>,3-16<31><36><EFBFBD><EFBFBD>,0xff:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEnableAudio;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>,0-<2D><>Ԥ<EFBFBD><D4A4>,1-Ԥ<><D4A4>
public ushort wSwitchTime;//<2F>л<EFBFBD>ʱ<EFBFBD><CAB1>,0-<2D><><EFBFBD>л<EFBFBD>,1-5s,2-10s,3-20s,4-30s,5-60s,6-120s,7-300s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOW, ArraySubType = UnmanagedType.I1)]
public byte[] bySwitchSeq;//<2F>л<EFBFBD>˳<EFBFBD><CBB3>,<2C><><EFBFBD><EFBFBD>lSwitchSeq[i]Ϊ 0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
}
//DVR<56><52>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VGAPARA
{
public ushort wResolution;/* <20>ֱ<EFBFBD><D6B1><EFBFBD> */
public ushort wFreq;/* ˢ<><CBA2>Ƶ<EFBFBD><C6B5> */
public uint dwBrightness;/* <20><><EFBFBD><EFBFBD> */
}
//MATRIX<49><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIXPARA_V30
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_CHANNUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wOrder;/* Ԥ<><D4A4>˳<EFBFBD><CBB3>, 0xff<66><66>ʾ<EFBFBD><CABE>Ӧ<EFBFBD>Ĵ<EFBFBD><C4B4>ڲ<EFBFBD>Ԥ<EFBFBD><D4A4> */
public ushort wSwitchTime;// Ԥ<><D4A4><EFBFBD>л<EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIXPARA
{
public ushort wDisplayLogo;/* <20><>ʾ<EFBFBD><CABE>Ƶͨ<C6B5><CDA8><EFBFBD><EFBFBD> */
public ushort wDisplayOsd;/* <20><>ʾʱ<CABE><CAB1> */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VOOUT
{
public byte byVideoFormat;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ,0-PAL,1-NTSC */
public byte byMenuAlphaValue;/* <20>˵<EFBFBD><CBB5><EFBFBD><EBB1B3>ͼ<EFBFBD><CDBC><EFBFBD>Աȶ<D4B1> */
public ushort wScreenSaveTime;/* <20><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 0-<2D>Ӳ<EFBFBD>,1-1<><31><EFBFBD><EFBFBD>,2-2<><32><EFBFBD><EFBFBD>,3-5<><35><EFBFBD><EFBFBD>,4-10<31><30><EFBFBD><EFBFBD>,5-20<32><30><EFBFBD><EFBFBD>,6-30<33><30><EFBFBD><EFBFBD> */
public ushort wVOffset;/* <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB> */
public ushort wBrightness;/* <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public byte byStartMode;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ(0:<3A>˵<EFBFBD>,1:Ԥ<><D4A4>)*/
public byte byEnableScaler;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1-<2D><><EFBFBD><EFBFBD>)*/
}
//DVR<56><52>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOOUT_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VIDEOOUT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_VOOUT[] struVOOut;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VGA_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_VGAPARA[] struVGAPara;/* VGA<47><41><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_MATRIXOUT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIXPARA_V30[] struMatrixPara;/* MATRIX<49><58><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//DVR<56><52>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOOUT
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VIDEOOUT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_VOOUT[] struVOOut;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VGA, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_VGAPARA[] struVGAPara; /* VGA<47><41><EFBFBD><EFBFBD> */
public NET_DVR_MATRIXPARA struMatrixPara;/* MATRIX<49><58><EFBFBD><EFBFBD> */
}
//<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_INFO_V40
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /* <20>û<EFBFBD><C3BB><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>16<31>ֽ<EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalRight; /* <20><><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: <20><><EFBFBD>ػط<D8BB>*/
/*<2A><><EFBFBD><EFBFBD>3: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: <20><><EFBFBD>ز鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: <20><><EFBFBD>ظ߼<D8B8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
/*<2A><><EFBFBD><EFBFBD>6: <20><><EFBFBD>ز鿴<D8B2><E9BFB4><EFBFBD><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>7: <20><><EFBFBD>ع<EFBFBD><D8B9><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>IP camera */
/*<2A><><EFBFBD><EFBFBD>8: <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>9: <20><><EFBFBD>عػ<D8B9>/<2F><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byRemoteRight;/* Զ<><D4B6>Ȩ<EFBFBD><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: Զ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: Զ<><D4B6><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: Զ<>̻ط<CCBB> */
/*<2A><><EFBFBD><EFBFBD>3: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: Զ<>̲鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: Զ<≯߼<CCB8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
/*<2A><><EFBFBD><EFBFBD>6: Զ<>̷<EFBFBD><CCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>7: Զ<><D4B6>Ԥ<EFBFBD><D4A4>*/
/*<2A><><EFBFBD><EFBFBD>8: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>󱨾<EFBFBD><F3B1A8BE>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>9: Զ<>̿<EFBFBD><CCBF>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>10: Զ<>̿<EFBFBD><CCBF>ƴ<EFBFBD><C6B4><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>11: Զ<>̲鿴<CCB2><E9BFB4><EFBFBD><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>12: Զ<>̹<EFBFBD><CCB9><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>IP camera */
/*<2A><><EFBFBD><EFBFBD>13: Զ<>̹ػ<CCB9>/<2F><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetPreviewRight; /* Զ<>̿<EFBFBD><CCBF><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalRecordRight; /* <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetRecordRight; /* Զ<>̿<EFBFBD><CCBF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalPlaybackRight; /* <20><><EFBFBD>ؿ<EFBFBD><D8BF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetPlaybackRight; /* Զ<>̿<EFBFBD><CCBF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalPTZRight; /* <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>PTZ<54><5A>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetPTZRight; /* Զ<>̿<EFBFBD><CCBF><EFBFBD>PTZ<54><5A>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalBackupRight; /* <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>Ȩ<EFBFBD><C8A8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
public NET_DVR_IPADDR struUserIP; /* <20>û<EFBFBD>IP<49><50>ַ(Ϊ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>κε<CEBA>ַ) */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
public byte byPriority; /* <20><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0xff-<2D>ޣ<EFBFBD>0--<2D>ͣ<EFBFBD>1--<2D>У<EFBFBD>2--<2D><> */
/* <EFBFBD>ޡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>͡<EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD>:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̻ط<EFBFBD>,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̲<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>״̬,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̹ػ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̻ط<EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/Զ<EFBFBD>̹ػ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>ߡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա */
public byte byAlarmOnRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ȩ<EFBFBD><C8A8> 1-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>0-<2D><>Ȩ<EFBFBD><C8A8>
public byte byAlarmOffRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD>Ȩ<EFBFBD><C8A8> 1-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>0-<2D><>Ȩ<EFBFBD><C8A8>
public byte byBypassRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·Ȩ<C2B7><C8A8> 1-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>0-<2D><>Ȩ<EFBFBD><C8A8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 118, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_INFO_V30
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalRight;/* <20><><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: <20><><EFBFBD>ػط<D8BB>*/
/*<2A><><EFBFBD><EFBFBD>3: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: <20><><EFBFBD>ز鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: <20><><EFBFBD>ظ߼<D8B8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
/*<2A><><EFBFBD><EFBFBD>6: <20><><EFBFBD>ز鿴<D8B2><E9BFB4><EFBFBD><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>7: <20><><EFBFBD>ع<EFBFBD><D8B9><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>IP camera */
/*<2A><><EFBFBD><EFBFBD>8: <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>9: <20><><EFBFBD>عػ<D8B9>/<2F><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byRemoteRight;/* Զ<><D4B6>Ȩ<EFBFBD><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: Զ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: Զ<><D4B6><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: Զ<>̻ط<CCBB> */
/*<2A><><EFBFBD><EFBFBD>3: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: Զ<>̲鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: Զ<≯߼<CCB8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
/*<2A><><EFBFBD><EFBFBD>6: Զ<>̷<EFBFBD><CCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>7: Զ<><D4B6>Ԥ<EFBFBD><D4A4>*/
/*<2A><><EFBFBD><EFBFBD>8: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>󱨾<EFBFBD><F3B1A8BE>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>9: Զ<>̿<EFBFBD><CCBF>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>10: Զ<>̿<EFBFBD><CCBF>ƴ<EFBFBD><C6B4><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>11: Զ<>̲鿴<CCB2><E9BFB4><EFBFBD><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>12: Զ<>̹<EFBFBD><CCB9><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>IP camera */
/*<2A><><EFBFBD><EFBFBD>13: Զ<>̹ػ<CCB9>/<2F><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byNetPreviewRight;/* Զ<>̿<EFBFBD><CCBF><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalPlaybackRight;/* <20><><EFBFBD>ؿ<EFBFBD><D8BF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byNetPlaybackRight;/* Զ<>̿<EFBFBD><CCBF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalRecordRight;/* <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byNetRecordRight;/* Զ<>̿<EFBFBD><CCBF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalPTZRight;/* <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>PTZ<54><5A>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byNetPTZRight;/* Զ<>̿<EFBFBD><CCBF><EFBFBD>PTZ<54><5A>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalBackupRight;/* <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>Ȩ<EFBFBD><C8A8>ͨ<EFBFBD><CDA8> 0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>*/
public NET_DVR_IPADDR struUserIP;/* <20>û<EFBFBD>IP<49><50>ַ(Ϊ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>κε<CEBA>ַ) */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
public byte byPriority;/* <20><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0xff-<2D>ޣ<EFBFBD>0--<2D>ͣ<EFBFBD>1--<2D>У<EFBFBD>2--<2D><> */
/*
<EFBFBD>ޡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>͡<EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD>:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̻ط<EFBFBD>,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̲<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>״̬,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̹ػ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD>Զ<EFBFBD>̻ط<EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/Զ<EFBFBD>̹ػ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>ߡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա
*/
public byte byAlarmOnRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ȩ<EFBFBD><C8A8>
public byte byAlarmOffRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD>Ȩ<EFBFBD><C8A8>
public byte byBypassRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·Ȩ<C2B7><C8A8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(SDK_V15<31><35>չ)(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_USER_INFO_EX
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalRight;/* Ȩ<><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: <20><><EFBFBD>ػط<D8BB>*/
/*<2A><><EFBFBD><EFBFBD>3: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: <20><><EFBFBD>ز鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: <20><><EFBFBD>ظ߼<D8B8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
public uint dwLocalPlaybackRight;/* <20><><EFBFBD>ؿ<EFBFBD><D8BF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8> bit0 -- channel 1*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.U4)]
public uint[] dwRemoteRight;/* Ȩ<><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: Զ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: Զ<><D4B6><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: Զ<>̻ط<CCBB> */
/*<2A><><EFBFBD><EFBFBD>3: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: Զ<>̲鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: Զ<≯߼<CCB8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
/*<2A><><EFBFBD><EFBFBD>6: Զ<>̷<EFBFBD><CCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>7: Զ<><D4B6>Ԥ<EFBFBD><D4A4>*/
/*<2A><><EFBFBD><EFBFBD>8: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>󱨾<EFBFBD><F3B1A8BE>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>9: Զ<>̿<EFBFBD><CCBF>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>10: Զ<>̿<EFBFBD><CCBF>ƴ<EFBFBD><C6B4><EFBFBD>*/
public uint dwNetPreviewRight;/* Զ<>̿<EFBFBD><CCBF><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> bit0 -- channel 1*/
public uint dwNetPlaybackRight;/* Զ<>̿<EFBFBD><CCBF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8> bit0 -- channel 1*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sUserIP;/* <20>û<EFBFBD>IP<49><50>ַ(Ϊ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>κε<CEBA>ַ) */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
}
//<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_USER_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalRight;/* Ȩ<><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: <20><><EFBFBD>ػط<D8BB>*/
/*<2A><><EFBFBD><EFBFBD>3: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: <20><><EFBFBD>ز鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: <20><><EFBFBD>ظ߼<D8B8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.U4)]
public uint[] dwRemoteRight;/* Ȩ<><C8A8> */
/*<2A><><EFBFBD><EFBFBD>0: Զ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD>̨*/
/*<2A><><EFBFBD><EFBFBD>1: Զ<><D4B6><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>*/
/*<2A><><EFBFBD><EFBFBD>2: Զ<>̻ط<CCBB> */
/*<2A><><EFBFBD><EFBFBD>3: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>4: Զ<>̲鿴״̬<D7B4><CCAC><EFBFBD><EFBFBD>־*/
/*<2A><><EFBFBD><EFBFBD>5: Զ<≯߼<CCB8><DFBC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD>)*/
/*<2A><><EFBFBD><EFBFBD>6: Զ<>̷<EFBFBD><CCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>7: Զ<><D4B6>Ԥ<EFBFBD><D4A4>*/
/*<2A><><EFBFBD><EFBFBD>8: Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD>󱨾<EFBFBD><F3B1A8BE>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>9: Զ<>̿<EFBFBD><CCBF>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD>10: Զ<>̿<EFBFBD><CCBF>ƴ<EFBFBD><C6B4><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sUserIP;/* <20>û<EFBFBD>IP<49><50>ַ(Ϊ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>κε<CEBA>ַ) */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
}
//<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_INFO_V51
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /* <20>û<EFBFBD><C3BB><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>16<31>ֽ<EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalRight; /* <20><><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byRemoteRight;/* Զ<><D4B6>Ȩ<EFBFBD><C8A8> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetPreviewRight; /* Զ<>̿<EFBFBD><CCBF><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalRecordRight; /* <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetRecordRight; /* Զ<>̿<EFBFBD><CCBF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalPlaybackRight; /* <20><><EFBFBD>ؿ<EFBFBD><D8BF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetPlaybackRight; /* Զ<>̿<EFBFBD><CCBF>Իطŵ<D8B7>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalPTZRight; /* <20><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>PTZ<54><5A>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwNetPTZRight; /* Զ<>̿<EFBFBD><CCBF><EFBFBD>PTZ<54><5A>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalBackupRight; /* <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>Ȩ<EFBFBD><C8A8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwLocalPreviewRight; /* <20><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>Ȩ<EFBFBD><C8A8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ч*/
public NET_DVR_IPADDR struUserIP; /* <20>û<EFBFBD>IP<49><50>ַ(Ϊ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>κε<CEBA>ַ) */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
public byte byPriority; /* <20><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0xff-<2D>ޣ<EFBFBD>0--<2D>ͣ<EFBFBD>1--<2D>У<EFBFBD>2--<2D><> */
public byte byAlarmOnRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ȩ<EFBFBD><C8A8> 1-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>0-<2D><>Ȩ<EFBFBD><C8A8>
public byte byAlarmOffRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD>Ȩ<EFBFBD><C8A8> 1-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>0-<2D><>Ȩ<EFBFBD><C8A8>
public byte byBypassRight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·Ȩ<C2B7><C8A8> 1-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>0-<2D><>Ȩ<EFBFBD><C8A8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD>ֽڶ<D6BD><DAB6><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RIGHT, ArraySubType = UnmanagedType.I1)]
public byte[] byPublishRight; //<2F><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>Ȩ<EFBFBD><C8A8>
public uint dwPasswordValidity; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>,<2C><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><ECA3AC>0<EFBFBD><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byKeypadPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byUserOperateType; //<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>+<2B><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 1007, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_V51
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwMaxUserNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><><D6BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_USERNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_USER_INFO_V51[] struUser; /* <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sloginPassword; /* <20><>½<EFBFBD><C2BD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 240, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//DVR<56>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_V40
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwMaxUserNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><><D6BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_USERNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_USER_INFO_V40[] struUser; /* <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD> */
}
//DVR<56>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_USERNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_USER_INFO_V30[] struUser;
}
//DVR<56>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>(SDK_V15<31><35>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER_EX
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_USERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_USER_INFO_EX[] struUser;
}
//DVR<56>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_USER
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_USERNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_USER_INFO[] struUser;
}
//<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EXCEPTION_V40
{
public uint dwSize ; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwMaxGroupNum ; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EXCEPTIONNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_HANDLEEXCEPTION_V41[] struExceptionHandle;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//DVR<56><EFBFBD><ECB3A3><EFBFBD><EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EXCEPTION_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EXCEPTIONNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_HANDLEEXCEPTION_V30[] struExceptionHandleType;
/*<2A><><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>,1- Ӳ<>̳<EFBFBD><CCB3><EFBFBD>,2-<2D><><EFBFBD>߶<EFBFBD>,3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP <20><>ַ<EFBFBD><D6B7>ͻ, 4-<2D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>, 5-<2D><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>ƥ<EFBFBD><C6A5>, 6-<2D><>Ƶ<EFBFBD>ź<EFBFBD><C5BA>쳣, 7-¼<><C2BC><EFBFBD>쳣*/
}
//DVR<56><EFBFBD><ECB3A3><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EXCEPTION
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EXCEPTIONNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_HANDLEEXCEPTION[] struExceptionHandleType;
/*<2A><><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>,1- Ӳ<>̳<EFBFBD><CCB3><EFBFBD>,2-<2D><><EFBFBD>߶<EFBFBD>,3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP <20><>ַ<EFBFBD><D6B7>ͻ,4-<2D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>, 5-<2D><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>ƥ<EFBFBD><C6A5>, 6-<2D><>Ƶ<EFBFBD>ź<EFBFBD><C5BA>쳣*/
}
//ͨ<><CDA8>״̬(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHANNELSTATE_V30
{
public byte byRecordStatic;//ͨ<><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>¼<EFBFBD><C2BC>,0-<2D><>¼<EFBFBD><C2BC>,1-¼<><C2BC>
public byte bySignalStatic;//<2F><><EFBFBD>ӵ<EFBFBD><D3B5>ź<EFBFBD>״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D>źŶ<C5BA>ʧ
public byte byHardwareStatic;//ͨ<><CDA8>Ӳ<EFBFBD><D3B2>״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D>쳣,<2C><><EFBFBD><EFBFBD>DSP<53><50><EFBFBD><EFBFBD>
public byte byRes1;//<2F><><EFBFBD><EFBFBD>
public uint dwBitRate;//ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwLinkNum;//<2F>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵĸ<D3B5><C4B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LINK, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPADDR[] struClientIP;//<2F>ͻ<EFBFBD><CDBB>˵<EFBFBD>IP<49><50>ַ
public uint dwIPLinkNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>ΪIP<49><50><EFBFBD><EFBFBD><EBA3AC>ô<EFBFBD><C3B4>ʾIP<49><50><EFBFBD>뵱ǰ<EBB5B1><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byExceedMaxLink; // <20>Ƿ񳬳<C7B7><F1B3ACB3>˵<EFBFBD>·6·<36><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 - δ<><CEB4><EFBFBD><EFBFBD>, 1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwChannelNo; //<2F><>ǰ<EFBFBD><C7B0>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD>0xffffffff<66><66>ʾ<EFBFBD><CABE>Ч
public void Init()
{
struClientIP = new NET_DVR_IPADDR[MAX_LINK];
for (int i = 0; i < MAX_LINK; i++)
{
struClientIP[i].Init();
}
byRes = new byte[12];
}
}
//ͨ<><CDA8>״̬
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHANNELSTATE
{
public byte byRecordStatic;//ͨ<><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>¼<EFBFBD><C2BC>,0-<2D><>¼<EFBFBD><C2BC>,1-¼<><C2BC>
public byte bySignalStatic;//<2F><><EFBFBD>ӵ<EFBFBD><D3B5>ź<EFBFBD>״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D>źŶ<C5BA>ʧ
public byte byHardwareStatic;//ͨ<><CDA8>Ӳ<EFBFBD><D3B2>״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D>쳣,<2C><><EFBFBD><EFBFBD>DSP<53><50><EFBFBD><EFBFBD>
public byte reservedData;//<2F><><EFBFBD><EFBFBD>
public uint dwBitRate;//ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwLinkNum;//<2F>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵĸ<D3B5><C4B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LINK, ArraySubType = UnmanagedType.U4)]
public uint[] dwClientIP;//<2F>ͻ<EFBFBD><CDBB>˵<EFBFBD>IP<49><50>ַ
}
//Ӳ<><D3B2>״̬
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISKSTATE
{
public uint dwVolume;//Ӳ<>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD>
public uint dwFreeSpace;//Ӳ<>̵<EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>ռ<EFBFBD>
public uint dwHardDiskStatic;//Ӳ<>̵<EFBFBD>״̬,0-<2D>,1-<2D><><EFBFBD><EFBFBD>,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>״̬<D7B4><CCAC>չ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WORKSTATE_V40
{
public uint dwSize ; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwDeviceStatic; //<2F><EFBFBD><E8B1B8>״̬,0-<2D><><EFBFBD><EFBFBD>,1-CPUռ<55><D5BC><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>,<2C><><EFBFBD><EFBFBD>85%,2-Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E7B4AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISKSTATE[] struHardDiskStatic; //Ӳ<><D3B2>״̬,һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ33<33><33>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CHANNELSTATE_V30[] struChanStatic;//ͨ<><CDA8><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwHasAlarmInStatic; //<2F>б<EFBFBD><D0B1><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>ֵ˳<D6B5><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>ֵΪ0xffffffffʱ<66><CAB1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwHasAlarmOutStatic; //<2F>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>ֵ˳<D6B5><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>ֵΪ0xffffffffʱ<66><CAB1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Ч
public uint dwLocalDisplay; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AUDIO_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAudioInChanStatus; //<2F><>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>״̬ 0-δʹ<CEB4>ã<EFBFBD>1-ʹ<><CAB9><EFBFBD>У<EFBFBD><D0A3><EFBFBD><30><CEBB>ʾ<EFBFBD><CABE>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 126, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GETWORKSTATE_COND
{
public uint dwSize ; //<2F><EFBFBD><EFBFBD><E5B3A4>
public byte byFindHardByCond; /*0-<2D><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD>33<33><33>)<29><><EFBFBD><EFBFBD>ʱdwFindHardStatusNum<75><6D>Ч*/
public byte byFindChanByCond ; /*0-<2D><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱdwFindChanNum<75><6D>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint[] dwFindHardStatus ; /*Ҫ<><D2AA><EFBFBD>ҵ<EFBFBD>Ӳ<EFBFBD>̺ţ<CCBA><C5A3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD> <20><><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwFindChanNo; /*Ҫ<><D2AA><EFBFBD>ҵ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD> <20><><EFBFBD><EFBFBD>0xffffffff<66><66><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//DVR<56><52><EFBFBD><EFBFBD>״̬(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WORKSTATE_V30
{
public uint dwDeviceStatic;//<2F><EFBFBD><E8B1B8>״̬,0-<2D><><EFBFBD><EFBFBD>,1-CPUռ<55><D5BC><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>,<2C><><EFBFBD><EFBFBD>85%,2-Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E7B4AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISKSTATE[] struHardDiskStatic;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CHANNELSTATE_V30[] struChanStatic;//ͨ<><CDA8><EFBFBD><EFBFBD>״̬
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmInStatic;//<2F><><EFBFBD><EFBFBD><EFBFBD>˿ڵ<CBBF>״̬,0-û<>б<EFBFBD><D0B1><EFBFBD>,1-<2D>б<EFBFBD><D0B1><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmOutStatic;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڵ<CBBF>״̬,0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwLocalDisplay;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AUDIO_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAudioChanStatus;//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>״̬ 0-δʹ<CEB4>ã<EFBFBD>1-ʹ<><CAB9><EFBFBD><EFBFBD>, 0xff<66><66>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
struHardDiskStatic = new NET_DVR_DISKSTATE[MAX_DISKNUM_V30];
struChanStatic = new NET_DVR_CHANNELSTATE_V30[MAX_CHANNUM_V30];
for (int i = 0; i < MAX_CHANNUM_V30; i++)
{
struChanStatic[i].Init();
}
byAlarmInStatic = new byte[MAX_ALARMOUT_V30];
byAlarmOutStatic = new byte[MAX_ALARMOUT_V30];
byAudioChanStatus = new byte[MAX_AUDIO_V30];
byRes = new byte[10];
}
}
//DVR<56><52><EFBFBD><EFBFBD>״̬
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WORKSTATE
{
public uint dwDeviceStatic;//<2F><EFBFBD><E8B1B8>״̬,0-<2D><><EFBFBD><EFBFBD>,1-CPUռ<55><D5BC><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>,<2C><><EFBFBD><EFBFBD>85%,2-Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E7B4AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISKSTATE[] struHardDiskStatic;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CHANNELSTATE[] struChanStatic;//ͨ<><CDA8><EFBFBD><EFBFBD>״̬
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmInStatic;//<2F><><EFBFBD><EFBFBD><EFBFBD>˿ڵ<CBBF>״̬,0-û<>б<EFBFBD><D0B1><EFBFBD>,1-<2D>б<EFBFBD><D0B1><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmOutStatic;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڵ<CBBF>״̬,0-û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwLocalDisplay;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ״̬,0-<2D><><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public void Init()
{
struHardDiskStatic = new NET_DVR_DISKSTATE[MAX_DISKNUM];
struChanStatic = new NET_DVR_CHANNELSTATE[MAX_CHANNUM];
byAlarmInStatic = new byte[MAX_ALARMIN];
byAlarmOutStatic = new byte[MAX_ALARMOUT];
}
}
//<2F><>־<EFBFBD><D6BE>Ϣ(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_LOG_V30
{
public NET_DVR_TIME strLogTime;
public uint dwMajorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>; 2-<2D>쳣; 3-<2D><><EFBFBD><EFBFBD>; 0xff-ȫ<><C8AB>
public uint dwMinorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-ȫ<><C8AB>;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPanelUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNetUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public NET_DVR_IPADDR struRemoteHostAddr;//Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public uint dwParaType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwDiskNumber;//Ӳ<>̺<EFBFBD>
public uint dwAlarmInPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
public uint dwAlarmOutPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
public uint dwInfoLen;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = LOG_INFO_LEN)]
public string sInfo;
}
//<2F><>־<EFBFBD><D6BE>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_LOG
{
public NET_DVR_TIME strLogTime;
public uint dwMajorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>; 2-<2D>쳣; 3-<2D><><EFBFBD><EFBFBD>; 0xff-ȫ<><C8AB>
public uint dwMinorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-ȫ<><C8AB>;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPanelUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNetUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sRemoteHostAddr;//Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public uint dwParaType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwDiskNumber;//Ӳ<>̺<EFBFBD>
public uint dwAlarmInPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
public uint dwAlarmOutPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
}
/************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD> begin************************************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_SEARCH_LOG_PARAM
{
public ushort wMajorType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMinorType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime; // <20><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struEndTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_LOG_RET
{
public NET_DVR_TIME struLogTime; // <20><>־ʱ<D6BE><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; // <20><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
public NET_DVR_IPADDR struIPAddr; // <20><><EFBFBD><EFBFBD>IP<49><50>ַ
public ushort wMajorType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMinorType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wParam; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwInfoLen; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = LOG_INFO_LEN)]
public string sInfo; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
/*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD> end***********************************************/
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMOUTSTATUS_V30
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMOUT_V30, ArraySubType = UnmanagedType.I1)]
public byte[] Output;
public void Init()
{
Output = new byte[MAX_ALARMOUT_V30];
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMOUTSTATUS
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] Output;
}
//ATMר<4D><D7A8>
/****************************ATM(begin)***************************/
public const int NCR = 0;
public const int DIEBOLD = 1;
public const int WINCOR_NIXDORF = 2;
public const int SIEMENS = 3;
public const int OLIVETTI = 4;
public const int FUJITSU = 5;
public const int HITACHI = 6;
public const int SMI = 7;
public const int IBM = 8;
public const int BULL = 9;
public const int YiHua = 10;
public const int LiDe = 11;
public const int GDYT = 12;
public const int Mini_Banl = 13;
public const int GuangLi = 14;
public const int DongXin = 15;
public const int ChenTong = 16;
public const int NanTian = 17;
public const int XiaoXing = 18;
public const int GZYY = 19;
public const int QHTLT = 20;
public const int DRS918 = 21;
public const int KALATEL = 22;
public const int NCR_2 = 23;
public const int NXS = 24;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_TRADEINFO
{
public ushort m_Year;
public ushort m_Month;
public ushort m_Day;
public ushort m_Hour;
public ushort m_Minute;
public ushort m_Second;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] DeviceName;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public uint dwChannelNumer;//ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] CardNumber;//<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 12)]
public string cTradeType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwCash;//<2F><><EFBFBD>׽<EFBFBD><D7BD><EFBFBD>
}
/*֡<><D6A1>ʽ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FRAMETYPECODE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] code;/* <20><><EFBFBD><EFBFBD> */
}
//ATM<54><4D><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_FRAMEFORMAT
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sATMIP;/* ATM IP<49><50>ַ */
public uint dwATMType;/* ATM<54><4D><EFBFBD><EFBFBD> */
public uint dwInputMode;/* <20><><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3-<2D><><EFBFBD><EFBFBD>ATM<54><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwFrameSignBeginPos;/* <20><><EFBFBD>ı<EFBFBD>־λ<D6BE><CEBB><EFBFBD><EFBFBD>ʼλ<CABC><CEBB>*/
public uint dwFrameSignLength;/* <20><><EFBFBD>ı<EFBFBD>־λ<D6BE>ij<EFBFBD><C4B3><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byFrameSignContent;/* <20><><EFBFBD>ı<EFBFBD>־λ<D6BE><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public uint dwCardLengthInfoBeginPos;/* <20><><EFBFBD>ų<EFBFBD><C5B3><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ʼλ<CABC><CEBB> */
public uint dwCardLengthInfoLength;/* <20><><EFBFBD>ų<EFBFBD><C5B3><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ij<EFBFBD><C4B3><EFBFBD> */
public uint dwCardNumberInfoBeginPos;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ʼλ<CABC><CEBB> */
public uint dwCardNumberInfoLength;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ij<EFBFBD><C4B3><EFBFBD> */
public uint dwBusinessTypeBeginPos;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5><EFBFBD>ʼλ<CABC><CEBB> */
public uint dwBusinessTypeLength;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵ij<CDB5><C4B3><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_FRAMETYPECODE[] frameTypeCode;/* <20><><EFBFBD><EFBFBD> */
}
//SDK_V31 ATM
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FILTER
{
public byte byEnable;/*0,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;1,<2C><><EFBFBD><EFBFBD>*/
public byte byMode;/*0,ASCII;1,HEX*/
public byte byFrameBeginPos;// <20><><EFBFBD>ı<EFBFBD>־λ<D6BE><CEBB><EFBFBD><EFBFBD>ʼλ<CABC><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 1, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byFilterText;/*<2A><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><>ʼ<EFBFBD><CABC>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IDENTIFICAT
{
public byte byStartMode;/*0,ASCII;1,HEX*/
public byte byEndMode;/*0,ASCII;1,HEX*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_FRAMETYPECODE struStartCode;/*<2A><>ʼ<EFBFBD>ַ<EFBFBD>*/
public NET_DVR_FRAMETYPECODE struEndCode;/*<2A><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣλ<CFA2><CEBB>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PACKAGE_LOCATION
{
public byte byOffsetMode;/*0,token;1,fix*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwOffsetPos;/*modeΪ1<CEAA><31>ʱ<EFBFBD><CAB1>ʹ<EFBFBD><CAB9>*/
public NET_DVR_FRAMETYPECODE struTokenCode;/*<2A><>־λ*/
public byte byMultiplierValue;/*<2A><>־λ<D6BE><CEBB><EFBFBD>ٴγ<D9B4><CEB3><EFBFBD>*/
public byte byEternOffset;/*<2A><><EFBFBD>ӵ<EFBFBD>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>*/
public byte byCodeMode;/*0,ASCII;1,HEX*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PACKAGE_LENGTH
{
public byte byLengthMode;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0,variable;1,fix;2,get from package(<28><><EFBFBD>ÿ<EFBFBD><C3BF>ų<EFBFBD><C5B3><EFBFBD>ʹ<EFBFBD><CAB9>)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwFixLength;/*modeΪ1<CEAA><31>ʱ<EFBFBD><CAB1>ʹ<EFBFBD><CAB9>*/
public uint dwMaxLength;
public uint dwMinLength;
public byte byEndMode;/*<2A>ս<EFBFBD><D5BD><EFBFBD>0,ASCII;1,HEX*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_FRAMETYPECODE struEndCode;/*<2A>ս<EFBFBD><D5BD><EFBFBD>*/
public uint dwLengthPos;/*lengthModeΪ2<CEAA><32>ʱ<EFBFBD><CAB1>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>ų<EFBFBD><C5B3><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD>е<EFBFBD>λ<EFBFBD><CEBB>*/
public uint dwLengthLen;/*lengthModeΪ2<CEAA><32>ʱ<EFBFBD><CAB1>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>ų<EFBFBD><C5B3>ȵij<C8B5><C4B3><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
/*OSD <20><><EFBFBD>ӵ<EFBFBD>λ<EFBFBD><CEBB>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OSD_POSITION
{
public byte byPositionMode;/*<2A><><EFBFBD>ӷ<EFBFBD><D3B7>񣬹<EFBFBD>2<EFBFBD>֣<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>1<EFBFBD><31>Custom*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwPos_x;/*x<><78><EFBFBD>꣬positionmodeΪCustomʱʹ<CAB1><CAB9>*/
public uint dwPos_y;/*y<><79><EFBFBD>꣬positionmodeΪCustomʱʹ<CAB1><CAB9>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʽ*/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DATE_FORMAT
{
public byte byItem1;/*Month,0.mm;1.mmm;2.mmmm*/
public byte byItem2;/*Day,0.dd;*/
public byte byItem3;/*Year,0.yy;1.yyyy*/
public byte byDateForm;/*0~5<><35>3<EFBFBD><33>item<65><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 4)]
public string chSeprator;/*<2A>ָ<EFBFBD><D6B8><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 4)]
public string chDisplaySeprator;/*<2A><>ʾ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>*/
public byte byDisplayForm;/*0~5<><35>3<EFBFBD><33>item<65><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*///lili mode by lili
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 27, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
/*ʱ<><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʽ*/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVRT_TIME_FORMAT
{
public byte byTimeForm;/*1. HH MM SS;0. HH MM*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byHourMode;/*0,12;1,24*/ //lili mode
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 4)]
public string chSeprator;/*<2A><><EFBFBD>ķָ<C4B7><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱû<CAB1><C3BB>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 4)]
public string chDisplaySeprator;/*<2A><>ʾ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>*/
public byte byDisplayForm;/*0~5<><35>3<EFBFBD><33>item<65><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
public byte byDisplayHourMode;/*0,12;1,24*/ //lili mode
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 19, ArraySubType = UnmanagedType.I1)]
public byte[] byRes4;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OVERLAY_CHANNEL
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byChannel;/*<2A><><EFBFBD>ӵ<EFBFBD>ͨ<EFBFBD><CDA8>*/
public uint dwDelayTime;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1><CAB1>*/
public byte byEnableDelayTime;/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_PACKAGE_ACTION
{
public NET_DVR_PACKAGE_LOCATION struPackageLocation;
public NET_DVR_OSD_POSITION struOsdPosition;
public NET_DVR_FRAMETYPECODE struActionCode;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵ȶ<CDB5>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>*/
public NET_DVR_FRAMETYPECODE struPreCode;/*<2A><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>ַ<EFBFBD>*/
public byte byActionCodeMode;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵ȶ<CDB5>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>0,ASCII;1,HEX*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_PACKAGE_DATE
{
public NET_DVR_PACKAGE_LOCATION struPackageLocation;
public NET_DVR_DATE_FORMAT struDateForm;
public NET_DVR_OSD_POSITION struOsdPosition;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_PACKAGE_TIME
{
public NET_DVR_PACKAGE_LOCATION location;
public NET_DVRT_TIME_FORMAT struTimeForm;
public NET_DVR_OSD_POSITION struOsdPosition;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_PACKAGE_OTHERS
{
public NET_DVR_PACKAGE_LOCATION struPackageLocation;
public NET_DVR_PACKAGE_LENGTH struPackageLength;
public NET_DVR_OSD_POSITION struOsdPosition;
public NET_DVR_FRAMETYPECODE struPreCode;/*<2A><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>ַ<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
//<2F>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD>Э<EFBFBD><D0AD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_USER_DEFINE_PROTOCOL
{
public NET_DVR_IDENTIFICAT struIdentification; //<2F><><EFBFBD>ı<EFBFBD>־
public NET_DVR_FILTER struFilter; //<2F><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PACKAGE_OTHERS struCardNoPara; //<2F><><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ACTION_TYPE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ATM_PACKAGE_ACTION[] struTradeActionPara; //<2F><><EFBFBD>ӽ<EFBFBD><D3BD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD> 0-9 <20><><EFBFBD>ζ<EFBFBD>ӦInCard OutCard OverLay SetTime GetStatus Query WithDraw Deposit ChanPass Transfer
public NET_DVR_ATM_PACKAGE_OTHERS struAmountPara; //<2F><><EFBFBD>ӽ<EFBFBD><D3BD>׽<EFBFBD><D7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PACKAGE_OTHERS struSerialNoPara; //<2F><><EFBFBD>ӽ<EFBFBD><D3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_OVERLAY_CHANNEL struOverlayChan; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PACKAGE_DATE struRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PACKAGE_TIME struRes2; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_FRAMEFORMAT_V30
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public byte byEnable; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>0,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;1,<2C><><EFBFBD><EFBFBD>*/
public byte byInputMode; /**<2A><><EFBFBD>ʽ:0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>Э<EFBFBD>顢2-<2D><><EFBFBD>ڼ<EFBFBD><DABC><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 34, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_IPADDR struAtmIp; /*ATM <20><>IP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʹ<CAB1><CAB9> */
public ushort wAtmPort; /* <20><><EFBFBD><EFBFBD>Э<EFBFBD>ʽʱ<CABD><CAB1>ʹ<EFBFBD><CAB9>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public uint dwAtmType; /*ATMЭ<4D><D0AD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>NET_DVR_ATM_PROTOCOL<4F><EFBFBD>л<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>ʱʹ<CAB1><CAB9><EFBFBD>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD>Э<EFBFBD><D0AD>*/
public NET_DVR_ATM_USER_DEFINE_PROTOCOL struAtmUserDefineProtocol; //<2F>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD>Э<EFBFBD><EFBFBD><E9A3AC>ATM<54><4D><EFBFBD><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD>ʱ<EFBFBD><CAB1>Ҫʹ<D2AA>øö<C3B8><C3B6><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
//Э<><D0AD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ݽṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_PROTO_TYPE
{
public uint dwAtmType; //ATMЭ<4D><D0AD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>ͬʱ<CDAC><CAB1>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ATM <20><><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>dwAtmType <20>Զ<EFBFBD><D4B6><EFBFBD>ʱΪ1025
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = ATM_DESC_LEN)]
public string chDesc; //ATMЭ<4D><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_ATM_PROTO_LIST
{
public uint dwAtmProtoNum;/*Э<><D0AD><EFBFBD>б<EFBFBD><D0B1>ĸ<EFBFBD><C4B8><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ATM_PROTOCOL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ATM_PROTO_TYPE[] struAtmProtoType;/*Э<><D0AD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>Ϣ*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATM_PROTOCOL
{
public uint dwSize;
public NET_DVR_ATM_PROTO_LIST struNetListenList; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PROTO_LIST struSerialListenList; //<2F><><EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PROTO_LIST struNetProtoList; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PROTO_LIST struSerialProtoList; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ATM_PROTO_TYPE struCustomProto; //<2F>Զ<EFBFBD><D4B6><EFBFBD>Э<EFBFBD><D0AD>
}
/*****************************DS-6001D/F(begin)***************************/
//DS-6001D Decoder
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODERINFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byEncoderIP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD>IP
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byEncoderUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byEncoderPasswd;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySendMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
public byte byEncoderChannel;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public ushort wEncoderPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] reservedData;//<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODERSTATE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byEncoderIP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD>IP
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byEncoderUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byEncoderPasswd;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEncoderChannel;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte bySendMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
public ushort wEncoderPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӵķ<D3B5><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ˿ں<CBBF>
public uint dwConnectState;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] reservedData;//<2F><><EFBFBD><EFBFBD>
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB6A8>*/
public const int NET_DEC_STARTDEC = 1;
public const int NET_DEC_STOPDEC = 2;
public const int NET_DEC_STOPCYCLE = 3;
public const int NET_DEC_CONTINUECYCLE = 4;
/*<2A><><EFBFBD>ӵ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DECCHANINFO
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDVRIP;/* DVR IP<49><50>ַ */
public ushort wDVRPort;/* <20>˿ں<CBBF> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
public byte byChannel;/* ͨ<><CDA8><EFBFBD><EFBFBD> */
public byte byLinkMode;/* <20><><EFBFBD><EFBFBD>ģʽ */
public byte byLinkType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
/*ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECINFO
{
public byte byPoolChans;/*ÿ·<C3BF><C2B7><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ϵ<EFBFBD>ѭ<EFBFBD><D1AD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><34><CDA8> 0<><30>ʾû<CABE>н<EFBFBD><D0BD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DECPOOLNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DECCHANINFO[] struchanConInfo;
public byte byEnablePoll;/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD>Ѳ 0-<2D><> 1-<2D><>*/
public byte byPoolTime;/*<2A><>Ѳʱ<D1B2><CAB1> 0-<2D><><EFBFBD><EFBFBD> 1-10<31><30> 2-15<31><35> 3-20<32><30> 4-30<33><30> 5-45<34><35> 6-1<><31><EFBFBD><EFBFBD> 7-2<><32><EFBFBD><EFBFBD> 8-5<><35><EFBFBD><EFBFBD> */
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECCFG
{
public uint dwSize;
public uint dwDecChanNum;/*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DECNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DECINFO[] struDecInfo;
}
//2005-08-01
/* <20><><EFBFBD><EFBFBD><EFBFBD>豸͸<E8B1B8><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PORTINFO
{
public uint dwEnableTransPort;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDecoderIP;/* DVR IP<49><50>ַ */
public ushort wDecoderPort;/* <20>˿ں<CBBF> */
public ushort wDVRTransPort;/* <20><><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>DVR<56>Ǵ<EFBFBD>485/232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>ʾ232<33><32><EFBFBD><EFBFBD>,2<><32>ʾ485<38><35><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 4)]
public string cReserve;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PORTCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TRANSPARENTNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PORTINFO[] struTransPortInfo;/* <20><><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ232 <20><><EFBFBD><EFBFBD>1<EFBFBD><31>ʾ485 */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct bytime
{
public uint dwChannel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
public NET_DVR_TIME struStartTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طŵĿ<C5B5>ʼʱ<CABC><CAB1> */
public NET_DVR_TIME struStopTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طŵĽ<C5B5><C4BD><EFBFBD>ʱ<EFBFBD><CAB1> */
}
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_PLAYREMOTEFILE
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDecoderIP;/* DVR IP<49><50>ַ */
public ushort wDecoderPort;/* <20>˿ں<CBBF> */
public ushort wLoadMode;/* <20>ط<EFBFBD><D8B7><EFBFBD><EFBFBD><EFBFBD>ģʽ 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> */
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct mode_size
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
/*[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byFile;/* <20>طŵ<D8B7><C5B5>ļ<EFBFBD><C4BC><EFBFBD> */
/*[FieldOffsetAttribute(0)]
public bytime bytime;
* */
}
}
/*<2A><>ǰ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬*/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DECCHANSTATUS
{
public uint dwWorkType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>1<EFBFBD><31><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2>2<EFBFBD><32><EFBFBD><EFBFBD>̬<EFBFBD><CCAC><EFBFBD>ӽ<EFBFBD><D3BD>롢3<EBA1A2><33><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD><D8B7><EFBFBD><EFBFBD><EFBFBD> 4<><34><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD><D8B7><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDVRIP;/*<2A><><EFBFBD>ӵ<EFBFBD><D3B5>豸ip*/
public ushort wDVRPort;/*<2A><><EFBFBD>Ӷ˿ں<CBBF>*/
public byte byChannel;/* ͨ<><CDA8><EFBFBD><EFBFBD> */
public byte byLinkMode;/* <20><><EFBFBD><EFBFBD>ģʽ */
public uint dwLinkType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct objectInfo
{
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct userInfo
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 52)]
public string cReserve;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct fileInfo
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] fileName;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct timeInfo
{
public uint dwChannel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
public NET_DVR_TIME struStartTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طŵĿ<C5B5>ʼʱ<CABC><CAB1> */
public NET_DVR_TIME struStopTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طŵĽ<C5B5><C4BD><EFBFBD>ʱ<EFBFBD><CAB1> */
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECSTATUS
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DECNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DECCHANSTATUS[] struTransPortInfo;
}
/*****************************DS-6001D/F(end)***************************/
//<2F><><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_SHOWSTRINGINFO
{
public ushort wShowString;// Ԥ<><D4A4><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD>ַ<EFBFBD>,0-<2D><><EFBFBD><EFBFBD>ʾ,1-<2D><>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С704*576,<2C><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>Ĵ<EFBFBD>СΪ32*32
public ushort wStringSize;/* <20><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>ij<EFBFBD><C4B3>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD>44<34><34><EFBFBD>ַ<EFBFBD> */
public ushort wShowStringTopLeftX;/* <20>ַ<EFBFBD><D6B7><EFBFBD>ʾλ<CABE>õ<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wShowStringTopLeftY;/* <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾλ<CABE>õ<EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 44)]
public string sString;/* Ҫ<><D2AA>ʾ<EFBFBD><CABE><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD> */
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>(9000<30><30>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SHOWSTRING_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_STRINGNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SHOWSTRINGINFO[] struStringInfo;/* Ҫ<><D2AA>ʾ<EFBFBD><CABE><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD> */
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>չ(8<><38><EFBFBD>ַ<EFBFBD>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SHOWSTRING_EX
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_STRINGNUM_EX, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SHOWSTRINGINFO[] struStringInfo;/* Ҫ<><D2AA>ʾ<EFBFBD><CABE><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD> */
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SHOWSTRING
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_STRINGNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SHOWSTRINGINFO[] struStringInfo;/* Ҫ<><D2AA>ʾ<EFBFBD><CABE><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD> */
}
/****************************DS9000<30><30><EFBFBD><EFBFBD><EFBFBD>ṹ(begin)******************************/
/*EMAIL<49><4C><EFBFBD><EFBFBD><EFBFBD>ṹ*/
//<2F><>ԭ<EFBFBD><EFBFBD><E1B9B9><EFBFBD>в<EFBFBD><D0B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struReceiver
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sName;/* <20>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EMAIL_ADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAddress;/* <20>ռ<EFBFBD><D5BC>˵<EFBFBD>ַ */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EMAILCFG_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAccount;/* <20>˺<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EMAIL_PWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/*<2A><><EFBFBD><EFBFBD> */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struSender
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sName;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EMAIL_ADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sAddress;/* <20><><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>ַ */
}
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EMAIL_ADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSmtpServer;/* smtp<74><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EMAIL_ADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPop3Server;/* pop3<70><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.Struct)]
public struReceiver[] struStringInfo;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD> */
public byte byAttachment;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public byte bySmtpServerVerify;/* <20><><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤ */
public byte byMailInterval;/* mail interval */
public byte byEnableSSL;//ssl<73>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>9000_1.1
public ushort wSmtpPort;//gmail<69><6C>465<36><35><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>Ϊ25
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 74, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
/*DVRʵ<52><CAB5>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD>ݽṹ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CRUISE_PARA
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CRUISE_MAX_PRESET_NUMS, ArraySubType = UnmanagedType.I1)]
public byte[] byPresetNo;/* Ԥ<>õ<EFBFBD><C3B5><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CRUISE_MAX_PRESET_NUMS, ArraySubType = UnmanagedType.I1)]
public byte[] byCruiseSpeed;/* Ѳ<><D1B2><EFBFBD>ٶ<EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CRUISE_MAX_PRESET_NUMS, ArraySubType = UnmanagedType.U2)]
public ushort[] wDwellTime;/* ͣ<><CDA3>ʱ<EFBFBD><CAB1> */
public byte byEnableThisCruise;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
/****************************DS9000<30><30><EFBFBD><EFBFBD><EFBFBD>ṹ(end)******************************/
//ʱ<><CAB1><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIMEPOINT
{
public uint dwMonth;//<2F><> 0-11<31><31>ʾ1-12<31><32><EFBFBD><EFBFBD>
public uint dwWeekNo;//<2F>ڼ<EFBFBD><DABC><EFBFBD> 0<><30><EFBFBD><EFBFBD>1<EFBFBD><31> 1<><31><EFBFBD><EFBFBD>2<EFBFBD><32> 2<><32><EFBFBD><EFBFBD>3<EFBFBD><33> 3<><33><EFBFBD><EFBFBD>4<EFBFBD><34> 4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
public uint dwWeekDate;//<2F><><EFBFBD>ڼ<EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ 2<><32><EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD> 3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 6<><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwHour;//Сʱ <09><>ʼʱ<CABC><CAB1>0<EFBFBD><30>23 <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>1<EFBFBD><31>23
public uint dwMin;//<2F><> 0<><30>59
}
//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ZONEANDDST
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public uint dwEnableDST;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDSTBias;//<2F><><EFBFBD><EFBFBD>ʱƫ<CAB1><C6AB>ֵ<EFBFBD><D6B5>30min, 60min, 90min, 120min, <20>Է<EFBFBD><D4B7>Ӽƣ<D3BC><C6A3><EFBFBD><EFBFBD><EFBFBD>ԭʼ<D4AD><CABC>ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_TIMEPOINT struBeginPoint;//<2F><>ʱ<EFBFBD>ƿ<EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIMEPOINT struEndPoint;//<2F><>ʱ<EFBFBD><CAB1>ֹͣʱ<D6B9><CAB1>
}
//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_JPEGPARA
{
/*ע<EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>ΪVGAʱ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>0=CIF, 1=QCIF, 2=D1ץͼ<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>Ϊ3=UXGA(1600x1200), 4=SVGA(800x600), 5=HD720p(1280x720),6=VGA,7=XVGA, 8=HD900p
<EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>ǰ<EFBFBD>ֱ<EFBFBD><EFBFBD>ʵ<EFBFBD>ץͼ*/
public ushort wPicSize;/* 0=CIF, 1=QCIF, 2=D1 3=UXGA(1600x1200), 4=SVGA(800x600), 5=HD720p(1280x720),6=VGA*/
public ushort wPicQuality;/* ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5> 0-<2D><><EFBFBD><EFBFBD> 1-<2D>Ϻ<EFBFBD> 2-һ<><D2BB> */
}
/* aux video out parameter */
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUXOUTCFG
{
public uint dwSize;
public uint dwAlarmOutChan;/* ѡ<>񱨾<EFBFBD><F1B1A8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󱨾<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>л<EFBFBD>ʱ<EFBFBD>䣺1<E4A3BA><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>: 0:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/1:<3A><>1/2:<3A><>2/3:<3A><>3/4:<3A><>4 */
public uint dwAlarmChanSwitchTime;/* :1<><31> - 10:10<31><30> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AUXOUT, ArraySubType = UnmanagedType.U4)]
public uint[] dwAuxSwitchTime;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>ʱ<EFBFBD><CAB1>: 0-<2D><><EFBFBD>л<EFBFBD>,1-5s,2-10s,3-20s,4-30s,5-60s,6-120s,7-300s */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AUXOUT * MAX_WINDOW, ArraySubType = UnmanagedType.I1)]
public byte[] byAuxOrder;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>˳<EFBFBD><CBB3>, 0xff<66><66>ʾ<EFBFBD><CABE>Ӧ<EFBFBD>Ĵ<EFBFBD><C4B4>ڲ<EFBFBD>Ԥ<EFBFBD><D4A4> */
}
//ntp
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NTPPARA
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sNTPServer;/* Domain Name or IP addr of NTP server */
public ushort wInterval;/* adjust time interval(hours) */
public byte byEnableNTP;/* enable NPT client 0-no<6E><6F>1-yes*/
public byte cTimeDifferenceH;/* <20><><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>׼ʱ<D7BC><CAB1><EFBFBD><EFBFBD> Сʱƫ<CAB1><C6AB>-12 ... +13 */
public byte cTimeDifferenceM;/* <20><><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>׼ʱ<D7BC><CAB1><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>0, 30, 45*/
public byte res1;
public ushort wNtpPort; /* ntp server port 9000<30><30><EFBFBD><EFBFBD> <20>豸Ĭ<E8B1B8><C4AC>Ϊ123*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] res2;
}
//ddns
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DDNSPARA
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUsername;/* DDNS<4E>˺<EFBFBD><CBBA>û<EFBFBD><C3BB><EFBFBD>/<2F><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sDomainName; /* <20><><EFBFBD><EFBFBD> */
public byte byEnableDDNS;/*<2A>Ƿ<EFBFBD>Ӧ<EFBFBD><D3A6> 0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DDNSPARA_EX
{
public byte byHostIndex;/* 0-Hikvision DNS 1<><31>Dyndns 2<><32>PeanutHull(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
public byte byEnableDDNS;/*<2A>Ƿ<EFBFBD>Ӧ<EFBFBD><D3A6>DDNS 0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public ushort wDDNSPort;/* DDNS<4E>˿ں<CBBF> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUsername;/* DDNS<4E>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* DDNS<4E><53><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] sDomainName;/* <20><EFBFBD><EFBFBD><E4B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] sServerName;/* DDNS <20><>Ӧ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//9000<30><30>չ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struDDNS
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUsername;/* DDNS<4E>˺<EFBFBD><CBBA>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] sDomainName;/* <20><EFBFBD><EFBFBD><E4B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] sServerName;/* DDNSЭ<53><D0AD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public ushort wDDNSPort;/* <20>˿ں<CBBF> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DDNSPARA_V30
{
public byte byEnableDDNS;
public byte byHostIndex;/* 0-Hikvision DNS(<28><><EFBFBD><EFBFBD>) 1<><31>Dyndns 2<><32>PeanutHull(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DDNS_NUMS, ArraySubType = UnmanagedType.Struct)]
public struDDNS[] struDDNS;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//email
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EMAILPARA
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sUsername;/* <20>ʼ<EFBFBD><CABC>˺<EFBFBD>/<2F><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sSmtpServer;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sPop3Server;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sMailAddr;/* email */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sEventMailAddr1;/* <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>/<2F><EFBFBD>ȵ<EFBFBD>email */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sEventMailAddr2;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_NETAPPCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDNSIp; /* DNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ */
public NET_DVR_NTPPARA struNtpClientParam;/* NTP<54><50><EFBFBD><EFBFBD> */
public NET_DVR_DDNSPARA struDDNSClientParam;/* DDNS<4E><53><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 464, ArraySubType = UnmanagedType.I1)]
public byte[] res;/* <20><><EFBFBD><EFBFBD> */
}
//nfs<66><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_SINGLE_NFS
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sNfsHostIPAddr;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PATHNAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNfsDirectory;
public void Init()
{
this.sNfsDirectory = new byte[PATHNAME_LEN];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NFSCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NFS_DISK, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_NFS[] struNfsDiskParam;
public void Init()
{
this.struNfsDiskParam = new NET_DVR_SINGLE_NFS[MAX_NFS_DISK];
for (int i = 0; i < MAX_NFS_DISK; i++)
{
struNfsDiskParam[i].Init();
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ISCSI_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public ushort wVrmPort; // VRM <20><><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> ISCSI<53>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 69, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_IPADDR struVrmAddr; // VRM ip<69><70>ַ 16λ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 64)]
public string chNvtIndexCode; //nvt index Code
}
//Ѳ<><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(HIK IP<49><50><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CRUISE_POINT
{
public byte PresetNum;//Ԥ<>õ<EFBFBD>
public byte Dwell;//ͣ<><CDA3>ʱ<EFBFBD><CAB1>
public byte Speed;//<2F>ٶ<EFBFBD>
public byte Reserve;//<2F><><EFBFBD><EFBFBD>
public void Init()
{
PresetNum = 0;
Dwell = 0;
Speed = 0;
Reserve = 0;
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CRUISE_RET
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CRUISE_POINT[] struCruisePoint;//<2F><><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>32<33><32>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>
public void Init()
{
struCruisePoint = new NET_DVR_CRUISE_POINT[32];
for (int i = 0; i < 32; i++)
{
struCruisePoint[i].Init();
}
}
}
/************************************<2A><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(begin)***************************************/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_NETCFG_OTHER
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sFirstDNSIP;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sSecondDNSIP;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_DECINFO
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDVRIP;/* DVR IP<49><50>ַ */
public ushort wDVRPort;/* <20>˿ں<CBBF> */
public byte byChannel;/* ͨ<><CDA8><EFBFBD><EFBFBD> */
public byte byTransProtocol;/* <20><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-TCP, 1-UDP */
public byte byTransMode;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>ʺ<EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
//<2F><><EFBFBD><EFBFBD>/ֹͣ<CDA3><D6B9>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_DYNAMIC_DEC
{
public uint dwSize;
public NET_DVR_MATRIX_DECINFO struDecChanInfo;/* <20><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_DEC_CHAN_STATUS
{
public uint dwSize;
public uint dwIsLinked;/* <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>״̬ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3-<2D><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD> */
public uint dwStreamCpRate;/* Stream copy rate, X kbits/second */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 64)]
public string cRes;/* <20><><EFBFBD><EFBFBD> */
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_DEC_CHAN_INFO
{
public uint dwSize;
public NET_DVR_MATRIX_DECINFO struDecChanInfo;/* <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
public uint dwDecState;/* 0-<2D><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD> 1<><31>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD> 3<><33><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD> */
public NET_DVR_TIME StartTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طſ<D8B7>ʼʱ<CABC><CAB1> */
public NET_DVR_TIME StopTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD>ֹͣʱ<D6B9><CAB1> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 128)]
public string sFileName;/* <20><><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD><D8B7>ļ<EFBFBD><C4BC><EFBFBD> */
}
//<2F><><EFBFBD>ӵ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2007-11-05
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_DECCHANINFO
{
public uint dwEnable;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_MATRIX_DECINFO struDecChanInfo;/* <20><>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
}
//2007-11-05 <20><><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_LOOP_DECINFO
{
public uint dwSize;
public uint dwPoolTime;/*<2A><>Ѳʱ<D1B2><CAB1> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CYCLE_CHAN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_DECCHANINFO[] struchanConInfo;
}
//2007-12-22
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct TTY_CONFIG
{
public byte baudrate;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public byte databits;/* <20><><EFBFBD><EFBFBD>λ */
public byte stopbits;/* ֹͣλ */
public byte parity;/* <20><>żУ<C5BC><D0A3>λ */
public byte flowcontrol;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_TRAN_CHAN_INFO
{
public byte byTranChanEnable;/* <20><>ǰ͸<C7B0><CDB8>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD>ر<EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/*
* <EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD>485<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>1<EFBFBD><EFBFBD>232<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ͸<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>,<EFBFBD><EFBFBD>ŷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>
* 0 RS485
* 1 RS232 Console
*/
public byte byLocalSerialDevice;/* Local serial device */
/*
* Զ<EFBFBD>̴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,һ<EFBFBD><EFBFBD>RS232<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>RS485
* 1<EFBFBD><EFBFBD>ʾ232<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 2<EFBFBD><EFBFBD>ʾ485<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
public byte byRemoteSerialDevice;/* Remote output serial device */
public byte res1;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sRemoteDevIP;/* Remote Device IP */
public ushort wRemoteDevPort;/* Remote Net Communication Port */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] res2;/* <20><><EFBFBD><EFBFBD> */
public TTY_CONFIG RemoteSerialDevCfg;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_TRAN_CHAN_CONFIG
{
public uint dwSize;
public byte by232IsDualChan;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·232͸<32><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ȫ˫<C8AB><CBAB><EFBFBD><EFBFBD> ȡֵ1<D6B5><31>MAX_SERIAL_NUM */
public byte by485IsDualChan;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·485͸<35><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ȫ˫<C8AB><CBAB><EFBFBD><EFBFBD> ȡֵ1<D6B5><31>MAX_SERIAL_NUM */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] res;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SERIAL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_TRAN_CHAN_INFO[] struTranInfo;/*ͬʱ֧<CAB1>ֽ<EFBFBD><D6BD><EFBFBD>MAX_SERIAL_NUM<55><4D>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>*/
}
//2007-12-24 Merry Christmas Eve...
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_DEC_REMOTE_PLAY
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sDVRIP;/* DVR IP<49><50>ַ */
public ushort wDVRPort;/* <20>˿ں<CBBF> */
public byte byChannel;/* ͨ<><CDA8><EFBFBD><EFBFBD> */
public byte byReserve;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/* <20><><EFBFBD><EFBFBD> */
public uint dwPlayMode;/* 0<><30><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> 1<><31><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
public NET_DVR_TIME StartTime;
public NET_DVR_TIME StopTime;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 128)]
public string sFileName;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL
{
public uint dwSize;
public uint dwPlayCmd;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwCmdParam;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS
{
public uint dwSize;
public uint dwCurMediaFileLen;/* <20><>ǰ<EFBFBD><C7B0><EFBFBD>ŵ<EFBFBD>ý<EFBFBD><C3BD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD> */
public uint dwCurMediaFilePosition;/* <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>IJ<EFBFBD><C4B2><EFBFBD>λ<EFBFBD><CEBB> */
public uint dwCurMediaFileDuration;/* <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> */
public uint dwCurPlayTime;/* <20><>ǰ<EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD>ŵ<EFBFBD>ʱ<EFBFBD><CAB1> */
public uint dwCurMediaFIleFrames;/* <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><D6A1> */
public uint dwCurDataType;/* <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>19-<2D>ļ<EFBFBD>ͷ<EFBFBD><CDB7>20-<2D><><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD> 21-<2D><><EFBFBD>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD>־ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 72, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
//2009-4-11 added by likui <20><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>new
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_PASSIVEMODE
{
public ushort wTransProtol;//<2F><><EFBFBD><EFBFBD>Э<EFBFBD>飬0-TCP, 1-UDP, 2-MCAST
public ushort wPassivePort;//UDP<44>˿<EFBFBD>, TCPʱĬ<CAB1><C4AC>
public NET_DVR_IPADDR struMcastIP;
public byte byStreamType;/* <20><><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ģʽ:REAL_TIME_STREAM(1)ʵʱ<CAB5><CAB1>,RECORD_STREAM(2)<29>ļ<EFBFBD><C4BC><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_TRAN_CHAN_INFO_V30
{
public byte byTranChanEnable;/* <20><>ǰ͸<C7B0><CDB8>ͨ<EFBFBD><CDA8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD>ر<EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
/*
* <EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD>485<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>1<EFBFBD><EFBFBD>232<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ͸<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>,<EFBFBD><EFBFBD>ŷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>
* 0 RS485
* 1 RS232 Console
*/
public byte byLocalSerialDevice;/* Local serial device */
/*
* Զ<EFBFBD>̴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,һ<EFBFBD><EFBFBD>RS232<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>RS485
* 1<EFBFBD><EFBFBD>ʾ232<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 2<EFBFBD><EFBFBD>ʾ485<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
public byte byRemoteSerialDevice;/* Remote output serial device */
public byte byRes1;/* <20><><EFBFBD><EFBFBD> */
public NET_DVR_IPADDR struRemoteDevIP;/* Remote Device IP */
public ushort wRemoteDevPort;/* Remote Net Communication Port */
public byte byIsEstablished;/* ͸<><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>־<EFBFBD><D6BE>0-û<>гɹ<D0B3><C9B9><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD> */
public byte byRes2;/* <20><><EFBFBD><EFBFBD> */
public TTY_CONFIG RemoteSerialDevCfg;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUsername;/* 32BYTES */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassword;/* 16BYTES */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30
{
public uint dwSize;
public byte by232IsDualChan;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·232͸<32><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ȫ˫<C8AB><CBAB><EFBFBD><EFBFBD> ȡֵ1<D6B5><31>MAX_SERIAL_NUM */
public byte by485IsDualChan;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·485͸<35><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ȫ˫<C8AB><CBAB><EFBFBD><EFBFBD> ȡֵ1<D6B5><31>MAX_SERIAL_NUM */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] vyRes;/* <20><><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SERIAL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_TRAN_CHAN_INFO[] struTranInfo;/*ͬʱ֧<CAB1>ֽ<EFBFBD><D6BD><EFBFBD>MAX_SERIAL_NUM<55><4D>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_CHAN_INFO_V30
{
public uint dwEnable;/* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg;
public NET_DVR_DEV_CHAN_INFO struDevChanInfo;/* <20><>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_LOOP_DECINFO_V30
{
public uint dwSize;
public uint dwPoolTime;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CYCLE_CHAN_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_CHAN_INFO_V30[] struchanConInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_DEC_CHAN_INFO_V30
{
public uint dwSize;
public NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg;/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_DEV_CHAN_INFO struDevChanInfo;/* <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
public uint dwDecState;/* 0-<2D><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD> 1<><31>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD> 3<><33><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD> */
public NET_DVR_TIME StartTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طſ<D8B7>ʼʱ<CABC><CAB1> */
public NET_DVR_TIME StopTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD>ֹͣʱ<D6B9><CAB1> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 128)]
public string sFileName;/* <20><><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD><D8B7>ļ<EFBFBD><C4BC><EFBFBD> */
public uint dwGetStreamMode;/*ȡ<><C8A1>ģʽ:1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD>*/
public NET_DVR_MATRIX_PASSIVEMODE struPassiveMode;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STREAM_MEDIA_SERVER
{
public byte byValid;/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>,0<><30>ʾ<EFBFBD><CABE>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_DOMAIN_NAME)]
public string byAddress;/* <20>豸IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public ushort wDevPort;/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>*/
public byte byTransmitType;/*<2A><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-TCP<43><50>1-UDP*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEV_CHAN_INFO_EX
{
public byte byChanType; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ͨͨ<CDA8><CDA8><EFBFBD><EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>2-<2D><>ID<49><44>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = STREAM_ID_LEN)]
public string byStreamId;/* <20><>ID<49><44>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> byChanType Ϊ 2 ʱ<><CAB1>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> byChanTypeΪ 0<><30>1<EFBFBD><31>3 ʱ<><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_DOMAIN_NAME)]
public string byAddress;/* <20>豸IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public ushort wDVRPort; //<2F>˿ں<CBBF>
public byte byChannel; //<2F>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>ͨ<EFBFBD><CDA8><EFBFBD>ż<EFBFBD>dwChannel
public byte byTransProtocol; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-TCP<43><50>1-UDP
public byte byTransMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFactoryType; /*ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8><EFBFBD>ӿڻ<D3BF>ȡ*/
public byte byDeviceType; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>(<28><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ܰ<EFBFBD>ʹ<EFBFBD><CAB9>)<29><>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>byVcaSupportChanMode<64>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ý<EFBFBD><C3BD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDispChan;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
public byte bySubDispChan;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʹ<CAB1><CAB9>
public byte byResolution; //; 1-CIF 2-4CIF 3-720P 4-1080P 5-500w<30><77><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸò<DDB8><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = NAME_LEN)]
public string sUserName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>ʺ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string sPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DEC_STREAM_DEV_EX
{
public NET_DVR_STREAM_MEDIA_SERVER struStreamMediaSvrCfg;/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_DEV_CHAN_INFO_EX struDevChanInfo;/* <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
}
//<2F><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEV_DDNS_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_DOMAIN_NAME)]
public string byDevAddress; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>(IPServer<65><72>hiDDNSʱ<53><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>кŻ<D0BA><C5BB>߱<EFBFBD><DFB1><EFBFBD>)
public byte byTransProtocol; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0- TCP<43><50>1- UDP<44><50>2- <20>
public byte byTransMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDdnsType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0- IPServer<65><72>1- Dyndns<6E><73>2- PeanutHull(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>3- NO-IP<49><50>4- hiDDNS
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_DOMAIN_NAME)]
public string byDdnsAddress; //DDNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public ushort wDdnsPort; //DDNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
public byte byChanType; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ͨͨ<CDA8><CDA8><EFBFBD><EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>2-<2D><>ID
public byte byFactoryType; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CDA8><EFBFBD>ӿ<EFBFBD>NET_DVR_GetIPCProtoList<73><74>ȡ
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = STREAM_ID_LEN)]
public string byStreamId; // <20><>ID<49><44>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> byChanType Ϊ 2 ʱ<><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = NAME_LEN)]
public string sUserName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>ʺ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string sPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDevPort; //<2F><EFBFBD>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_DEC_DDNS_DEV
{
public NET_DVR_DEV_DDNS_INFO struDdnsInfo;/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_STREAM_MEDIA_SERVER struMediaServer;/* <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ */
}
//ȡ<><C8A1>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayout(LayoutKind.Explicit)]
public struct NET_DVR_DEC_STREAM_MODE
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 300, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
public void Init()
{
byRes = new byte[300];
}
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MATRIX_DEC_CHAN_INFO_V41
{
public uint dwSize;
public byte byStreamMode;/*ȡ<><C8A1>ģʽ<C4A3><CABD>0- <20><>Ч<EFBFBD><D0A7>1- ͨ<><CDA8>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>2- ͨ<><CDA8>URLȡ<4C><C8A1><EFBFBD><EFBFBD>3- ͨ<><CDA8><EFBFBD><EFBFBD>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ȡ<E8B1B8><C8A1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_DEC_STREAM_MODE uDecStreamMode;/*ȡ<><C8A1><EFBFBD><EFBFBD>Ϣ*/
public uint dwPlayMode;/*<2A><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-<2D><>̬<EFBFBD><CCAC><EFBFBD>룬1<EBA3AC><31>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD>룬2<EBA3AC><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>طţ<D8B7>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD>*/
public NET_DVR_TIME StartTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>طſ<D8B7>ʼʱ<CABC><CAB1> */
public NET_DVR_TIME StopTime;/* <20><>ʱ<EFBFBD><CAB1><EFBFBD>ط<EFBFBD>ֹͣʱ<D6B9><CAB1> */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 128)]
public string sFileName;/* <20><><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD><D8B7>ļ<EFBFBD><C4BC><EFBFBD> */
public uint dwGetStreamMode;/*ȡ<><C8A1>ģʽ:1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD>*/
public NET_DVR_MATRIX_PASSIVEMODE struPassiveMode;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int MAX_RESOLUTIONNUM = 64; //֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>Ŀ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_ABILITY
{
public uint dwSize;
public byte byDecNums;
public byte byStartChan;
public byte byVGANums;
public byte byBNCNums;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8*12, ArraySubType = UnmanagedType.I1)]
public byte[] byVGAWindowMode;/*VGA֧<41>ֵĴ<D6B5><C4B4><EFBFBD>ģʽ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byBNCWindowMode;/*BNC֧<43>ֵĴ<D6B5><C4B4><EFBFBD>ģʽ*/
public byte byDspNums;
public byte byHDMINums;//HDMI<4D><49>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25<32><35>ʼ<EFBFBD><CABC>
public byte byDVINums;//DVI<56><49>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>29<32><39>ʼ<EFBFBD><CABC>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 13, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RESOLUTIONNUM, ArraySubType = UnmanagedType.I1)]
public byte[] bySupportResolution;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD>,һ<><D2BB><EFBFBD>ֽڴ<D6BD><DAB4><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>//<2F><>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>֧<EFBFBD>֣<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4*8, ArraySubType = UnmanagedType.I1)]
public byte[] byHDMIWindowMode;//HDMI֧<49>ֵĴ<D6B5><C4B4><EFBFBD>ģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4*8, ArraySubType = UnmanagedType.I1)]
public byte[] byDVIWindowMode;//DVI֧<49>ֵĴ<D6B5><C4B4><EFBFBD>ģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F>ϴ<EFBFBD>logo<67>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISP_LOGOCFG
{
public uint dwCorordinateX;//ͼƬ<CDBC><C6AC>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>
public uint dwCorordinateY;//ͼƬ<CDBC><C6AC>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>
public ushort wPicWidth; //ͼƬ<CDBC><C6AC>
public ushort wPicHeight; //ͼƬ<CDBC><C6AC>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byFlash;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>˸1-<2D><>˸<EFBFBD><CBB8>0-<2D><><EFBFBD><EFBFBD>˸
public byte byTranslucent;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>͸<EFBFBD><CDB8>1-<2D><>͸<EFBFBD><CDB8><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD>
public uint dwLogoSize;//LOGO<47><4F>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BMP<4D><50><EFBFBD>ļ<EFBFBD>ͷ
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PICTURECFG
{
public uint dwSize; //<2F><>С
public byte byUseType; //1-<2D><>ͼ<EFBFBD><CDBC>2-GIFͼƬ<CDBC><C6AC>3-CADͼƬ 4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ
public byte bySequence;//<2F><><EFBFBD><EFBFBD>
public byte byOverlayEnabled; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD><DCA3>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ϴ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes;
public NET_DVR_BASEMAP_CFG struBasemapCfg;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPicName;//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwVideoWall; //ǽ<>ţ<EFBFBD>1<EFBFBD>ֽ<EFBFBD>ǽ<EFBFBD><C7BD>+1<>ֽ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+2<>ֽڴ<D6BD><DAB4>ںţ<DABA>
public byte byFlash; //ͼƬ<CDBC><C6AC>˸ʹ<CBB8>ܣ<EFBFBD>1-<2D><>˸<EFBFBD><CBB8>0-<2D><><EFBFBD><EFBFBD>˸
public byte byTranslucent; //ͼƬ<CDBC><C6AC>͸<EFBFBD><CDB8>ʹ<EFBFBD>ܣ<EFBFBD>1-<2D><>͸<EFBFBD><CDB8><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>
public byte byShowEnabled; //ͼƬ<CDBC><C6AC>ʾʹ<CABE>ܣ<EFBFBD>1-<2D><>ʾ<EFBFBD><CABE>0-<2D><><EFBFBD><EFBFBD>
public byte byPictureType; //ͼƬ<CDBC><C6AC><EFBFBD>ͣ<EFBFBD>1-bmp<6D><70>2-jpg<70><67>3-png<6E><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OUTPUT_PIC_CFG
{
public uint dwSize;
public uint dwOutputPicNo; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public byte byEnable; //logo<67>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE>1-<2D><>ʾ<EFBFBD><CABE>0-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_RECTCFG_EX struRect;//logoλ<6F>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD>Χ<EFBFBD>ܴ<EFBFBD>СΪ1920*1920
public byte byFlash; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>˸1-<2D><>˸<EFBFBD><CBB8>0-<2D><><EFBFBD><EFBFBD>˸
public byte byTranslucent; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>͸<EFBFBD><CDB8>1-<2D><>͸<EFBFBD><CDB8><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
public uint dwOutputPicWinNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ںţ<DABA>1<EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD><E8B1B8>+1<>ֽ<EFBFBD><D6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD>+2<>ֽ<EFBFBD><D6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ںţ<DABA>,<2C><>ȡȫ<C8A1><C8AB>ʱ<EFBFBD><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 28, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
public const int MAX_OSD_LEN = 64; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD<53><44><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OUTPUT_OSD_CFG
{
public uint dwSize;
public byte byEnable; //OSD<53>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE>0-<2D><><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>1-<2D><>ʾ
public byte byFontSize; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1>1-<2D><><EFBFBD><EFBFBD>2-<2D>У<EFBFBD>3-С
public byte byOSDColor; //OSD<53><44>ɫ<EFBFBD><C9AB><EFBFBD>ã<EFBFBD>0-Ĭ<>ϣ<EFBFBD> 1-<2D>ڣ<EFBFBD>2-<2D>ף<EFBFBD>3-<2D>죬4-<2D>̣<EFBFBD>5-<2D><>
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_OSD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byOsdContent; //OSD<53><44><EFBFBD><EFBFBD>
public NET_DVR_RECTCFG_EX struRect;//OSDλ<44>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD>Χ<EFBFBD>ܴ<EFBFBD>СΪ1920*1920
public uint dwOsdWinNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD<53><44><EFBFBD>ںţ<DABA>1<EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD><E8B1B8>+1<>ֽ<EFBFBD><D6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD>+2<>ֽ<EFBFBD>OSD<53><44><EFBFBD>ںţ<DABA><C5A3><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int NET_DVR_ENCODER_UNKOWN = 0;/*δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ*/
public const int NET_DVR_ENCODER_H264 = 1;/*HIK 264*/
public const int NET_DVR_ENCODER_S264 = 2;/*Standard H264*/
public const int NET_DVR_ENCODER_MPEG4 = 3;/*MPEG4*/
public const int NET_DVR_ORIGINALSTREAM = 4;/*Original Stream*/
public const int NET_DVR_PICTURE = 5;//*Picture*/
public const int NET_DVR_ENCODER_MJPEG = 6;
public const int NET_DVR_ECONDER_MPEG2 = 7;
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
public const int NET_DVR_STREAM_TYPE_UNKOWN = 0;/*δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ*/
public const int NET_DVR_STREAM_TYPE_HIKPRIVT = 1; /*<2A><><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ*/
public const int NET_DVR_STREAM_TYPE_TS = 7;/* TS<54><53><EFBFBD><EFBFBD> */
public const int NET_DVR_STREAM_TYPE_PS = 8;/* PS<50><53><EFBFBD><EFBFBD> */
public const int NET_DVR_STREAM_TYPE_RTP = 9;/* RTP<54><50><EFBFBD><EFBFBD> */
/*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>״̬*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_CHAN_STATUS
{
public byte byDecodeStatus;/*<2A><>ǰ״̬:0:δ<><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byStreamType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byPacketType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ*/
public byte byRecvBufUsage;/*<2A><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>*/
public byte byDecBufUsage;/*<2A><><EFBFBD><EFBFBD><EBBBBA>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>*/
public byte byFpsDecV;/*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>*/
public byte byFpsDecA;/*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>*/
public byte byCpuLoad;/*DSP CPUʹ<55><CAB9><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwDecodedV;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ֡*/
public uint dwDecodedA;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ֡*/
public ushort wImgW;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>С,<2C><>*/
public ushort wImgH; //<2F><>
public byte byVideoFormat;/*<2A><>Ƶ<EFBFBD><C6B5>ʽ:0-NON,NTSC--1,PAL--2*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public uint dwDecChan; /*<2A><>ȡȫ<C8A1><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>״̬ʱ<CCAC><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>0*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
/*<2A><>ʾͨ<CABE><CDA8>״̬*/
public const int NET_DVR_MAX_DISPREGION = 16; /*ÿ<><C3BF><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>*/
//VGA<47>ֱ<EFBFBD><D6B1>ʣ<EFBFBD>Ŀǰ<C4BF><C7B0><EFBFBD>õ<EFBFBD><C3B5>ǣ<EFBFBD>VGA_THS8200_MODE_XGA_60HZ<48><5A>VGA_THS8200_MODE_SXGA_60HZ<48><5A>
//
public enum VGA_MODE
{
/*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
}
//<2F><>֡<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD>
public const int LOW_DEC_FPS_1_2 = 51;
public const int LOW_DEC_FPS_1_4 = 52;
public const int LOW_DEC_FPS_1_8 = 53;
public const int LOW_DEC_FPS_1_16 = 54;
/*<2A><>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>׼*/
public enum VIDEO_STANDARD
{
VS_NON = 0,
VS_NTSC = 1,
VS_PAL = 2,
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_VIDEOPLATFORM
{
/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڶ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>IJ<EFBFBD>λ<EFBFBD><CEBB>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ч)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecoderId;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_NOTVIDEOPLATFORM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VGA_DISP_CHAN_CFG
{
public uint dwSize;
public byte byAudio;/*<2A><>Ƶ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public byte byAudioWindowIdx;/*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>*/
public byte byVgaResolution;/*VGA<47>ķֱ<C4B7><D6B1><EFBFBD>*/
public byte byVedioFormat;/*<2A><>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>1:NTSC,2:PAL,0-NON*/
public uint dwWindowMode;/*<2A><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>Ŀǰ֧<C7B0><D6A7>1,2,4,9,16*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecChan;/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ͨ<EFBFBD><CDA8>*/
public byte byEnlargeStatus; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڷŴ<DAB7>״̬<D7B4><CCAC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>1<EFBFBD><31><EFBFBD>Ŵ<EFBFBD>*/
public byte byEnlargeSubWindowIndex;//<2F>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ں<EFBFBD>
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct struDiff
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public byte byUnionType;/*<2A><><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>壬0-<2D><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byScale; /*<2A><>ʾģʽ<C4A3><CABD>0---<2D><>ʵ<EFBFBD><CAB5>ʾ<EFBFBD><CABE>1---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ( <20><><EFBFBD><EFBFBD>BNC )*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISP_CHAN_STATUS
{
public byte byDispStatus;/*<2A><>ʾ״̬<D7B4><CCAC>0<EFBFBD><30>δ<EFBFBD><CEB4>ʾ<EFBFBD><CABE>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ*/
public byte byBVGA; /*VGA/BNC*/
public byte byVideoFormat;/*<2A><>Ƶ<EFBFBD><C6B5>ʽ:1:NTSC,2:PAL,0-NON*/
public byte byWindowMode;/*<2A><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ģʽ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecChan;/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_DVR_MAX_DISPREGION, ArraySubType = UnmanagedType.I1)]
public byte[] byFpsDisp;/*ÿ<><C3BF><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ֡<CABE><D6A1>*/
public byte byScreenMode; //<2F><>Ļģʽ0-<2D><>ͨ 1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int MAX_DECODECHANNUM = 32;//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public const int MAX_DISPCHANNUM = 24;//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸״̬*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODER_WORK_STATUS
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DECODECHANNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_CHAN_STATUS[] struDecChanStatus;/*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISPCHANNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISP_CHAN_STATUS[] struDispChanStatus;/*<2A><>ʾͨ<CABE><CDA8>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_ALARMIN, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmInStatus;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ANALOG_ALARMOUT, ArraySubType = UnmanagedType.I1)]
public byte[] byAalarmOutStatus;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬*/
public byte byAudioInChanStatus;/*<2A><><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 127, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//2009-12-1 <20><><EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PASSIVEDECODE_CONTROL
{
public uint dwSize;
public uint dwPlayCmd; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwCmdParam; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//Reverse
}
public const int PASSIVE_DEC_PAUSE = 1; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ(<28><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>Ч)*/
public const int PASSIVE_DEC_RESUME = 2; /*<2A>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>Ч)*/
public const int PASSIVE_DEC_FAST = 3; /*<2A><><EFBFBD>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>Ч)*/
public const int PASSIVE_DEC_SLOW = 4; /*<2A><><EFBFBD>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>Ч)*/
public const int PASSIVE_DEC_NORMAL = 5; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>Ч)*/
public const int PASSIVE_DEC_ONEBYONE = 6; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뵥֡<EBB5A5><D6A1><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)*/
public const int PASSIVE_DEC_AUDIO_ON = 7; /*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>*/
public const int PASSIVE_DEC_AUDIO_OFF = 8; /*<2A><>Ƶ<EFBFBD>ر<EFBFBD>*/
public const int PASSIVE_DEC_RESETBUFFER = 9; /*<2A><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>*/
//2009-12-16 <20><><EFBFBD>ӿ<EFBFBD><D3BF>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_DECCHAN_CONTROL
{
public uint dwSize;
public byte byDecChanScaleStatus;/*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>,1<><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>0<EFBFBD><30>ʾ<EFBFBD><CABE>ʵ<EFBFBD><CAB5>ʾ*/
public byte byDecodeDelay;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>0-Ĭ<>ϣ<EFBFBD>1-ʵʱ<CAB5>Ժã<D4BA>2-ʵʱ<CAB5>ԽϺã<CFBA>3-ʵʱ<CAB5><CAB1><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>4-<2D><><EFBFBD><EFBFBD><EFBFBD>ԽϺã<CFBA>5-<2D><><EFBFBD><EFBFBD><EFBFBD>Ժã<D4BA>0xff-<2D>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 66, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/************************************<2A><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(end)***************************************/
/************************************<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨(begin)***************************************/
public const int MAX_SUBSYSTEM_NUM = 80; //һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public const int MAX_SUBSYSTEM_NUM_V40 = 120; //һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public const int MAX_SERIALLEN = 36; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>кų<D0BA><C5B3><EFBFBD>
public const int MAX_LOOPPLANNUM = 16; //<2F><><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><C6BB>л<EFBFBD><D0BB><EFBFBD>
public const int DECODE_TIMESEGMENT = 4; //<2F>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_DOMAIN_NAME = 64; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public const int MAX_DISKNUM_V30 = 33; //9000<30><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>/* <20><><EFBFBD><EFBFBD>33<33><33>Ӳ<EFBFBD><D3B2>(<28><><EFBFBD><EFBFBD>16<31><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SATAӲ<41>̡<EFBFBD>1<EFBFBD><31>eSATAӲ<41>̺<EFBFBD>16<31><36>NFS<46><53>) */
public const int MAX_DAYS = 7; //ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_DISPNUM_V41 = 32;
public const int MAX_WINDOWS_NUM = 12;
public const int MAX_VOUTNUM = 32;
public const int MAX_SUPPORT_RES = 32;
public const int MAX_BIGSCREENNUM = 100;
public const int VIDEOPLATFORM_ABILITY = 0x210; //<2F><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MATRIXDECODER_ABILITY_V41 = 0x260; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SUBSYSTEMINFO
{
public byte bySubSystemType;//<2F><>ϵͳ<CFB5><CDB3><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>0-NULL<4C><4C><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1>
public byte byChan;//<2F><>ϵͳͨ<CDB3><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1>
public byte byLoginType;//ע<><D7A2><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-ֱ<><D6B1><EFBFBD><EFBFBD>2-DNS<4E><53>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_IPADDR struSubSystemIP;/*IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>޸ģ<DEB8>*/
public ushort wSubSystemPort;//<2F><>ϵͳ<CFB5>˿ںţ<DABA><C5A3><EFBFBD><EFBFBD>޸ģ<DEB8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_IPADDR struSubSystemIPMask;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struGatewayIpAddr; /* <20><><EFBFBD>ص<EFBFBD>ַ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> <20><><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/*<2A><><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_DOMAIN_NAME)]
public string sDomainName;//<2F><><EFBFBD><EFBFBD>(<28><><EFBFBD>޸<EFBFBD>)
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_DOMAIN_NAME)]
public string sDnsAddress;/*DNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber;//<2F><><EFBFBD>кţ<D0BA><C5A3>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALLSUBSYSTEMINFO
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SUBSYSTEM_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SUBSYSTEMINFO[] struSubSystemInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LOOPPLAN_SUBCFG
{
public uint dwSize;
public uint dwPoolTime; /*<2A><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CYCLE_CHAN_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_CHAN_INFO_V30[] struChanConInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMMODECFG
{
public uint dwSize;
public byte byAlarmMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>ѯ<EFBFBD><D1AF>2-<2D><><EFBFBD><EFBFBD>
public ushort wLoopTime;//<2F><>ѯʱ<D1AF><CAB1>, <20><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CODESPLITTERINFO
{
public uint dwSize;
public NET_DVR_IPADDR struIP;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ*/
public ushort wPort;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;/* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;/*<2A><><EFBFBD><EFBFBD> */
public byte byChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<38><35>
public byte by485Port;//485<38>ڵ<EFBFBD>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ASSOCIATECFG
{
public byte byAssociateType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public ushort wAlarmDelay;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>0<EFBFBD><30>5<EFBFBD>룻1<EBA3BB><31>10<31>룻2<EBA3BB><32>30<33>룻3<EBA3BB><33>1<EFBFBD><31><EFBFBD>ӣ<EFBFBD>4<EFBFBD><34>2<EFBFBD><32><EFBFBD>ӣ<EFBFBD>5<EFBFBD><35>5<EFBFBD><35><EFBFBD>ӣ<EFBFBD>6<EFBFBD><36>10<31><30><EFBFBD>ӣ<EFBFBD>
public byte byAlarmNum;//<2F><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Ӧ<EFBFBD>ø<EFBFBD><C3B8><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC>ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DYNAMICDECODE
{
public uint dwSize;
public NET_DVR_ASSOCIATECFG struAssociateCfg;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PU_STREAM_CFG struPuStreamCfg;//<2F><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODESCHED
{
public NET_DVR_SCHEDTIME struSchedTime;
public byte byDecodeType;/*0-<2D>ޣ<EFBFBD>1-<2D><>ѯ<EFBFBD><D1AF><EFBFBD>룬2-<2D><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>*/
public byte byLoopGroup;//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_PU_STREAM_CFG struDynamicDec;//<2F><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLANDECODE
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * DECODE_TIMESEGMENT, ArraySubType = UnmanagedType.I1)]
public NET_DVR_DECODESCHED[] struDecodeSched;//<2F><>һ<EFBFBD><D2BB>Ϊ<EFBFBD><CEAA>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>9000һ<30><D2BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byres;
}
/************************************<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨(end)***************************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOPLATFORM_ABILITY
{
public uint dwSize;
public byte byCodeSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byDecodeSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
[System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = System.Runtime.InteropServices.UnmanagedType.I1)]
public byte[] byWindowMode; /*<2A><>ʾͨ<CABE><CDA8>֧<EFBFBD>ֵĴ<D6B5><C4B4><EFBFBD>ģʽ*/
[System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = System.Runtime.InteropServices.UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SUBSYSTEM_ABILITY
{
/*<2A><>ϵͳ<CFB5><CDB3><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>8-V6<56><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>9-V6<56><36>ϵͳ<CFB5><CDB3>0-NULL<4C><4C><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1>*/
public byte bySubSystemType;
public byte byChanNum;//<2F><>ϵͳͨ<CDB3><CDA8><EFBFBD><EFBFBD>
public byte byStartChan;//<2F><>ϵͳ<CFB5><CDB3>ʼͨ<CABC><CDA8><EFBFBD><EFBFBD>
public byte bySlotNum;//<2F><>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public struDecoderSystemAbility _struAbility;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struDecoderSystemAbility
{
public byte byVGANums;//VGA<47><41>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>ʼ<EFBFBD><CABC>
public byte byBNCNums;//BNC<4E><43>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9<EFBFBD><39>ʼ<EFBFBD><CABC>
public byte byHDMINums;//HDMI<4D><49>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>25<32><35>ʼ<EFBFBD><CABC>
public byte byDVINums;//DVI<56><49>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>29<32><39>ʼ<EFBFBD><CABC>
public byte byLayerNums;//<2F><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>֧<EFBFBD><D6A7>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
public byte bySpartan;//<2F><><EFBFBD>Թ<EFBFBD><D4B9>ܣ<EFBFBD>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
public byte byDecType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD>ͣ<EFBFBD>0-<2D><>ͨ<EFBFBD><CDA8>,1-<2D><>ǿ<EFBFBD><C7BF>(<28><>ͨ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD>ʱǰ4<C7B0><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF><EFBFBD>޴<EFBFBD><DEB4><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>16·D1<44><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
//<2F><>ǿ<EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>)
public byte byOutputSwitch;//<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7>HDMI/DVI<56><49><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 39, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byDecoderType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 152, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struAbility
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 200, ArraySubType = UnmanagedType.I1)]
// [FieldOffsetAttribute(0)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOPLATFORM_ABILITY_V40
{
public uint dwSize;
public byte byCodeSubSystemNums;
public byte byDecodeSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte bySupportNat;//<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7>NAT<41><54>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
public byte byInputSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byOutputSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byCodeSpitterSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byAlarmHostSubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte bySupportBigScreenNum;//<2F><>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><C9B4><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>
public byte byVCASubSystemNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byV6SubSystemNums;//V6<56><36>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte byV6DecoderSubSystemNums;//V6<56><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public byte bySupportBigScreenX;/*<2A><><EFBFBD><EFBFBD>ƴ<EFBFBD>ӵ<EFBFBD>ģʽ<C4A3><CABD>m<EFBFBD><6D>n*/
public byte bySupportBigScreenY;
public byte bySupportSceneNums;//֧<>ֳ<EFBFBD><D6B3><EFBFBD>ģʽ<C4A3>ĸ<EFBFBD><C4B8><EFBFBD>
public byte byVcaSupportChanMode;//<2F><><EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>ͨ<EFBFBD><CDA8>ʹ<EFBFBD><CAB9>ģʽ<C4A3><CABD>0-ʹ<>ý<EFBFBD><C3BD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1-ʹ<><CAB9><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte bySupportScreenNums;//<2F><>֧<EFBFBD>ֵĴ<D6B5><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySupportLayerNums;//<2F><>֧<EFBFBD>ֵ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xff-<2D><>Ч
public byte byNotSupportPreview;//<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7>Ԥ<EFBFBD><D4A4>,1-<2D><>֧<EFBFBD>֣<EFBFBD>0-֧<><D6A7>
public byte byNotSupportStorage;//<2F>Ƿ<EFBFBD>֧<EFBFBD>ִ洢,1-<2D><>֧<EFBFBD>֣<EFBFBD>0-֧<><D6A7>
public byte byUploadLogoMode;//<2F>ϴ<EFBFBD>logoģʽ<C4A3><CABD>0-<2D>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1-<2D>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SUBSYSTEM_NUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SUBSYSTEM_ABILITY[] struSubSystemAbility;
public byte by485Nums;//485<38><35><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte by232Nums;//232<33><32><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte bySerieStartChan;//<2F><>ʼͨ<CABC><CDA8>
public byte byScreenMode;//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ɿͻ<C9BF><CDBB>˷<EFBFBD><CBB7>䣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˷<EFBFBD><CBB7><EFBFBD>
public byte byDevVersion;//<2F><EFBFBD><EFBFBD><E6B1BE>0-B10/B11/B12<31><32>1-B20
public byte bySupportBaseMapNums;//<2F><>֧<EFBFBD>ֵĵ<D6B5>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>Ŵ<EFBFBD>1<EFBFBD><31>ʼ
public ushort wBaseLengthX;//ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD>Ļ<EFBFBD>׼ֵ<D7BC><D6B5>B20ʹ<30><CAB9>
public ushort wBaseLengthY;
public byte bySupportPictureTrans; //<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7>ͼƬ<CDBC><C6AC><EFBFBD>ԣ<EFBFBD>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
public byte bySupportPreAllocDec; //<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD>ԴԤ<D4B4><D4A4><EFBFBD>䣬0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 628, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLESCREENCFG
{
public byte byScreenSeq;//<2F><>Ļ<EFBFBD><C4BB><EFBFBD>ţ<EFBFBD>0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>,64-T<><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
public byte bySubSystemNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>λ<EFBFBD><CEBB>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵû<D6B5><C3BB><EFBFBD><EFBFBD>
public byte byDispNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>϶<EFBFBD>Ӧ<EFBFBD><D3A6>ʾͨ<CABE><CDA8><EFBFBD>ţ<EFBFBD>64-T<><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BIGSCREENCFG
{
public uint dwSize;
public byte byEnable;//<2F><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>ʹ<EFBFBD>ܣ<EFBFBD>0-<2D><>ʹ<EFBFBD>ܣ<EFBFBD>1-ʹ<><CAB9>
public byte byModeX;/*<2A><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>ģʽ*/
public byte byModeY;
public byte byMainDecodeSystem;//<2F>ۺ<EFBFBD>ƽ̨<C6BD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ţ<EFBFBD>64-T<><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte byMainDecoderDispChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD>ţ<EFBFBD>1.1netra<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>netra<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>64-T<>и<EFBFBD>ֵ<EFBFBD><D6B5>Ч
public byte byVideoStandard; //<2F><><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>ͬ 1:NTSC,2:PAL
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwResolution; //<2F><><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>ͬ
//<2F><><EFBFBD><EFBFBD>ƴ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>Ļ<EFBFBD><C4BB>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_BIGSCREENNUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLESCREENCFG[] struFollowSingleScreen;
//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wBigScreenX; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>ʼX<CABC><58><EFBFBD><EFBFBD>
public ushort wBigScreenY; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>ʼY<CABC><59><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
byRes1 = new byte[2];
struFollowSingleScreen = new NET_DVR_SINGLESCREENCFG[MAX_BIGSCREENNUM];
byRes2 = new byte[12];
}
}
/************************************<2A><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨(end)***************************************/
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_EMAILCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sUserName;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sPassWord;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sFromName;/* Sender *///<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>еĵ<D0B5>һ<EFBFBD><D2BB><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"@",<2C><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>"@"<22>ַ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 48)]
public string sFromAddr;/* Sender address */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sToName1;/* Receiver1 */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sToName2;/* Receiver2 */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 48)]
public string sToAddr1;/* Receiver address1 */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 48)]
public string sToAddr2;/* Receiver address2 */
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sEmailServer;/* Email server address */
public byte byServerType;/* Email server type: 0-SMTP, 1-POP, 2-IMTP<54><50>*/
public byte byUseAuthen;/* Email server authentication method: 1-enable, 0-disable */
public byte byAttachment;/* enable attachment */
public byte byMailinterval;/* mail interval 0-2s, 1-3s, 2-4s. 3-5s*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSIONCFG_NEW
{
public uint dwSize;
public NET_DVR_COMPRESSION_INFO_EX struLowCompression;//<2F><>ʱ¼<CAB1><C2BC>
public NET_DVR_COMPRESSION_INFO_EX struEventCompression;//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>
}
//<2F><>̨Ԥ<CCA8>õ<EFBFBD><C3B5><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PRESET_NAME
{
public uint dwSize;
public ushort wPresetNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byName;
public ushort wPanPos;
public ushort wTiltPos;
public ushort wZoomPos;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 58, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZPOS
{
public ushort wAction;//<2F><>ȡʱ<C8A1><CAB1><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>Ч
public ushort wPanPos;//ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD>
public ushort wTiltPos;//<2F><>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>
public ushort wZoomPos;//<2F><EFBFBD><E4B1B6><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZSCOPE
{
public ushort wPanPosMin;//ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD>min
public ushort wPanPosMax;//ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD>max
public ushort wTiltPosMin;//<2F><>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>min
public ushort wTiltPosMax;//<2F><>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>max
public ushort wZoomPosMin;//<2F><EFBFBD><E4B1B6><EFBFBD><EFBFBD>min
public ushort wZoomPosMax;//<2F><EFBFBD><E4B1B6><EFBFBD><EFBFBD>max
}
//rtsp<73><70><EFBFBD><EFBFBD> ipcameraר<61><D7A8>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RTSPCFG
{
public uint dwSize;//<2F><><EFBFBD><EFBFBD>
public ushort wPort;//rtsp<73><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 54, ArraySubType = UnmanagedType.I1)]
public byte[] byReserve;//Ԥ<><D4A4>
}
/********************************<2A>ӿڲ<D3BF><DAB2><EFBFBD><EFBFBD>ṹ(begin)*********************************/
//NET_DVR_Login()<29><><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEVICEINFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber;//<2F><><EFBFBD>к<EFBFBD>
public byte byAlarmInPortNum;//DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmOutPortNum;//DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDiskNum;//DVRӲ<52≯<EFBFBD><CCB8><EFBFBD>
public byte byDVRType;//DVR<56><52><EFBFBD><EFBFBD>, 1:DVR 2:ATM DVR 3:DVS ......
public byte byChanNum;//DVR ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartChan;//<2F><>ʼͨ<CABC><CDA8><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>DVS-1,DVR - 1
}
//NET_DVR_Login_V30()<29><><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEVICEINFO_V30
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber; //<2F><><EFBFBD>к<EFBFBD>
public byte byAlarmInPortNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmOutPortNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDiskNum; //Ӳ<≯<EFBFBD><CCB8><EFBFBD>
public byte byDVRType; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>, 1:DVR 2:ATM DVR 3:DVS ......
public byte byChanNum; //ģ<><C4A3>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartChan; //<2F><>ʼͨ<CABC><CDA8><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>DVS-1,DVR - 1
public byte byAudioChanNum; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte byIPChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
public byte byZeroChanNum; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> //2010-01-16
public byte byMainProto; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-private, 1-rtsp,2-ͬʱ֧<CAB1><D6A7>private<74><65>rtsp
public byte bySubProto; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-private, 1-rtsp,2-ͬʱ֧<CAB1><D6A7>private<74><65>rtsp
public byte bySupport; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE>֣<EFBFBD>
//bySupport & 0x1, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//bySupport & 0x2, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
//bySupport & 0x4, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
//bySupport & 0x8, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>
//bySupport & 0x10, <20><>ʾ֧<CABE><D6A7>Զ<EFBFBD><D4B6>SADP
//bySupport & 0x20, <20><>ʾ֧<CABE><D6A7>Raid<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//bySupport & 0x40, <20><>ʾ֧<CABE><D6A7>IPSAN Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>
//bySupport & 0x80, <20><>ʾ֧<CABE><D6A7>rtp over rtsp
public byte bySupport1; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䣬λ<E4A3AC><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE><D6A7>
//bySupport1 & 0x1, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>snmp v30
//bySupport1 & 0x2, ֧<><D6A7><EFBFBD><EFBFBD><EFBFBD>ֻطź<D8B7><C5BA><EFBFBD><EFBFBD><EFBFBD>
//bySupport1 & 0x4, <20>Ƿ<EFBFBD>֧<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
//bySupport1 & 0x8, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ
//bySupport1 & 0x10, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>33<33><33><EFBFBD><EFBFBD>
//bySupport1 & 0x20, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>rtsp over http
//bySupport1 & 0x80, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD>Ϣ2012-9-28, <20>һ<EFBFBD><D2BB><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>NET_DVR_IPPARACFG_V40<34><EFBFBD><E1B9B9>
public byte bySupport2; /*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʾ֧<EFBFBD><EFBFBD>
bySupport2 & 0x1, <EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>URLȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bySupport2 & 0x2, <EFBFBD><EFBFBD>ʾ֧<EFBFBD><EFBFBD>FTPV40
bySupport2 & 0x4, <EFBFBD><EFBFBD>ʾ֧<EFBFBD><EFBFBD>ANR
bySupport2 & 0x8, <EFBFBD><EFBFBD>ʾ֧<EFBFBD><EFBFBD>CCD<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bySupport2 & 0x10, <EFBFBD><EFBFBD>ʾ֧<EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>ץ<EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bySupport2 & 0x20, <EFBFBD><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bySupport2 & 0x40, <EFBFBD><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wDevType; //<2F><EFBFBD>ͺ<EFBFBD>
public byte bySupport3; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE><D6A7>
//bySupport3 & 0x1, <20><>ʾ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// bySupport3 & 0x4 <20><>ʾ֧<CABE>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ͨ<><CDA8>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>״̬<D7B4><CCAC>JPEGץͼ<D7A5><CDBC><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ʱ<EFBFBD><CAB1>ץͼ<D7A5><CDBC>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//bySupport3 & 0x8Ϊ1 <20><>ʾ֧<CABE><D6A7>ʹ<EFBFBD><CAB9>TCPԤ<50><D4A4><EFBFBD><EFBFBD>UDPԤ<50><D4A4><EFBFBD><EFBFBD><EFBFBD>ಥԤ<E0B2A5><D4A4><EFBFBD>е<EFBFBD>"<22><>ʱԤ<CAB1><D4A4>"<22>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱԤ<CAB1><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱԤ<CAB1><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bySupport3 & 0x8Ϊ0ʱ<30><CAB1><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><><CBBD><EFBFBD><EFBFBD>ʱԤ<CAB1><D4A4><>
//bySupport3 & 0x10 <20><>ʾ֧<CABE><D6A7>"<22><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ״̬<D7B4><CCAC>V40<34><30>"<22><>
//bySupport3 & 0x20 <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>ͨ<EFBFBD><CDA8>DDNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>
public byte byMultiStreamProto;//<2F>Ƿ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>,<2C><>λ<EFBFBD><CEBB>ʾ,0-<2D><>֧<EFBFBD><D6A7>,1-֧<><D6A7>,bit1-<2D><><EFBFBD><EFBFBD>3,bit2-<2D><><EFBFBD><EFBFBD>4,bit7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit-8<><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartDChan; //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>,0<><30>ʾ<EFBFBD><CABE>Ч
public byte byStartDTalkChan; //<2F><>ʼ<EFBFBD><CABC><EFBFBD>ֶԽ<D6B6>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>Խ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч
public byte byHighDChanNum; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
public byte bySupport4;
public byte byLanguageType;// ֧<><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>λ<EFBFBD><CEBB>ʾ,ÿһλ0-<2D><>֧<EFBFBD><D6A7>,1-֧<><D6A7>
// byLanguageType <20><><EFBFBD><EFBFBD>0 <20><>ʾ <20><><EFBFBD>
// byLanguageType & 0x1<78><31>ʾ֧<CABE><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// byLanguageType & 0x2<78><32>ʾ֧<CABE><D6A7>Ӣ<EFBFBD><D3A2>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayout(LayoutKind.Sequential)]
public struct NET_DVR_DEVICEINFO_V40
{
public NET_DVR_DEVICEINFO_V30 struDeviceV30;
public byte bySupportLock; //<2F>豸֧<E8B1B8><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>SDK<44><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>ֵ<EFBFBD>ġ<EFBFBD>bySupportLockΪ1ʱ<31><CAB1>dwSurplusLockTime<6D><65>byRetryLoginTime<6D><65>Ч
public byte byRetryLoginTime; //ʣ<><CAA3><EFBFBD>ɳ<EFBFBD><C9B3>Ե<EFBFBD>½<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD>Ч
public byte byPasswordLevel; //admin<69><6E><EFBFBD>밲ȫ<EBB0B2>ȼ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD>룬2-<2D><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>,3-<2D><><EFBFBD>սϸߵ<CFB8><DFB5><EFBFBD><EFBFBD><EFBFBD><EBA1A3><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD><EFBFBD>루12345<34><35><EFBFBD><EFBFBD><EFBFBD>߷<EFBFBD><DFB7>սϸߵ<CFB8><DFB5><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ϲ<EFBFBD><CFB2>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ʾ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byProxyType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ʹ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD>, 1-ʹ<><CAB9>socks5<73><35><EFBFBD><EFBFBD>, 2-ʹ<><CAB9>EHome<6D><65><EFBFBD><EFBFBD>
public uint dwSurplusLockTime; //ʣ<><CAA3>ʱ<EFBFBD><EFBFBD><E4A3AC>λ<EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD>Ч
public byte byCharEncodeType; //<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>SDK<44><4B><EFBFBD>нӿڷ<D3BF><DAB7>ص<EFBFBD><D8B5>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>͸<EFBFBD><CDB8><EFBFBD>ӿڳ<D3BF><DAB3><EFBFBD><E2A3A9>0- <20><><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(<28><><EFBFBD>豸)<29><>1- GB2312(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>2- GBK<42><4B>3- BIG5(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>4- Shift_JIS(<28><><EFBFBD><EFBFBD>)<29><>5- EUC-KR(<28><><EFBFBD><EFBFBD>)<29><>6- UTF-8<><38>7- ISO8859-1<><31>8- ISO8859-2<><32>9- ISO8859-3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>21- ISO8859-15(<28><>ŷ)
public byte bySupportDev5;//֧<><D6A7>v50<35><EFBFBD><E6B1BE><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD><EFBFBD><EFBFBD>չΪ64<36>ֽ<EFBFBD>
public byte bySupport; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0- <20><>֧<EFBFBD>֣<EFBFBD>1- ֧<><D6A7>
// bySupport & 0x1: <20><><EFBFBD><EFBFBD>
// bySupport & 0x2: 0-<2D><>֧<EFBFBD>ֱ仯<D6B1>ϱ<EFBFBD> 1-֧<>ֱ仯<D6B1>ϱ<EFBFBD>
public byte byLoginMode; //<2F><>¼ģʽ 0-Private<74><65>¼ 1-ISAPI<50><49>¼
public int dwOEMCode;
public int iResidualValidity; //<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><ECA3AC><EFBFBD>ظ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>硰-3<><33>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>3<EFBFBD>
public byte byResidualValidity; // iResidualValidity<74>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 243, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int NET_DVR_DEV_ADDRESS_MAX_LEN = 129;
public const int NET_DVR_LOGIN_USERNAME_MAX_LEN = 64;
public const int NET_DVR_LOGIN_PASSWD_MAX_LEN = 64;
public delegate void LOGINRESULTCALLBACK(int lUserID, int dwResult, IntPtr lpDeviceInfo, IntPtr pUser);
[StructLayout(LayoutKind.Sequential)]
public struct NET_DVR_USER_LOGIN_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_DVR_DEV_ADDRESS_MAX_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDeviceAddress;
public byte byUseTransport;
public ushort wPort;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_DVR_LOGIN_USERNAME_MAX_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_DVR_LOGIN_PASSWD_MAX_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;
public LOGINRESULTCALLBACK cbLoginResult;
public IntPtr pUser;
public bool bUseAsynLogin;
public byte byProxyType; //0:<3A><>ʹ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>ʹ<EFBFBD>ñ<EFBFBD>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32>ʹ<EFBFBD><CAB9>EHome<6D><65><EFBFBD><EFBFBD>
public byte byUseUTCTime; //0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>,1-<2D>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB>ʹ<EFBFBD><CAB9>UTCʱ<43><CAB1>,SDK<44><4B><EFBFBD><EFBFBD>UTCʱ<43><CAB1><EFBFBD><EFBFBD><EFBFBD>豸ʱ<E8B1B8><CAB1><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>,2-<2D>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB>ʹ<EFBFBD><CAB9>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬SDK<44><4B><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>豸ʱ<E8B1B8><CAB1><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
public byte byLoginMode; //0-Private, 1-ISAPI, 2-<2D><><EFBFBD><EFBFBD>Ӧ
public byte byHttps; //0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>tls<6C><73>1-ʹ<><CAB9>tls 2-<2D><><EFBFBD><EFBFBD>Ӧ
public int iProxyID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣʱ<CFA2><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>ֵ
public byte byVerifyMode; //<2F><>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD>0-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>1-˫<><CBAB><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>TLS<4C><53>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 119, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
//sdk<64><6B><EFBFBD><EFBFBD><E7BBB7>ö<EFBFBD>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum SDK_NETWORK_ENVIRONMENT
{
LOCAL_AREA_NETWORK = 0,
WIDE_AREA_NETWORK,
}
//<2F><>ʾģʽ
public enum DISPLAY_MODE
{
NORMALMODE = 0,
OVERLAYMODE
}
//<2F><><EFBFBD><EFBFBD>ģʽ
public enum SEND_MODE
{
PTOPTCPMODE = 0,
PTOPUDPMODE,
MULTIMODE,
RTPMODE,
RESERVEDMODE
}
//ץͼģʽ
public enum CAPTURE_MODE
{
BMP_MODE = 0, //BMPģʽ
JPEG_MODE = 1 //JPEGģʽ
}
//ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>ģʽ
public enum REALSOUND_MODE
{
MONOPOLIZE_MODE = 1,//<2F><>ռģʽ
SHARE_MODE = 2 //<2F><><EFBFBD><EFBFBD>ģʽ
}
public struct NET_DVR_CLIENTINFO
{
public Int32 lChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public Int32 lLinkMode;//<2F><><EFBFBD><EFBFBD>λ(31)Ϊ0<CEAA><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>30λ<30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>ʽ: 0<><30>TCP<43><50>ʽ,1<><31>UDP<44><50>ʽ,2<><32><EFBFBD><EFBFBD><E0B2A5>ʽ,3 - RTP<54><50>ʽ<EFBFBD><CABD>4-<2D><><EFBFBD><EFBFBD>Ƶ<EFBFBD>ֿ<EFBFBD>(TCP)
public IntPtr hPlayWnd;//<2F><><EFBFBD>Ŵ<EFBFBD><C5B4>ڵľ<DAB5><C4BE><EFBFBD>,ΪNULL<4C><4C>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
public string sMultiCastIP;//<2F><EFBFBD><E0B2A5><EFBFBD><EFBFBD>ַ
}
//SDK״̬<D7B4><CCAC>Ϣ(9000<30><30><EFBFBD><EFBFBD>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SDKSTATE
{
public uint dwTotalLoginNum;//<2F><>ǰlogin<69>û<EFBFBD><C3BB><EFBFBD>
public uint dwTotalRealPlayNum;//<2F><>ǰrealplay·<79><C2B7>
public uint dwTotalPlayBackNum;//<2F><>ǰ<EFBFBD>طŻ<D8B7><C5BB><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwTotalAlarmChanNum;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>·<EFBFBD><C2B7>
public uint dwTotalFormatNum;//<2F><>ǰӲ<C7B0≯<EFBFBD>ʽ<EFBFBD><CABD>·<EFBFBD><C2B7>
public uint dwTotalFileSearchNum;//<2F><>ǰ<EFBFBD><C7B0>־<EFBFBD><D6BE><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwTotalLogSearchNum;//<2F><>ǰ<EFBFBD><C7B0>־<EFBFBD><D6BE><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwTotalSerialNum;//<2F><>ǰ͸<C7B0><CDB8>ͨ<EFBFBD><CDA8>·<EFBFBD><C2B7>
public uint dwTotalUpgradeNum;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwTotalVoiceComNum;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>·<EFBFBD><C2B7>
public uint dwTotalBroadCastNum;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>㲥·<E3B2A5><C2B7>
public uint dwTotalListenNum; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwEmailTestNum; //<2F><>ǰ<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwBackupNum; // <20><>ǰ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public uint dwTotalInquestUploadNum; //<2F><>ǰ<EFBFBD><C7B0>Ѷ<EFBFBD>ϴ<EFBFBD>·<EFBFBD><C2B7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes;
}
//SDK<44><4B><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>Ϣ(9000<30><30><EFBFBD><EFBFBD>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SDKABL
{
public uint dwMaxLoginNum;//<2F><><EFBFBD><EFBFBD>login<69>û<EFBFBD><C3BB><EFBFBD> MAX_LOGIN_USERS
public uint dwMaxRealPlayNum;//<2F><><EFBFBD><EFBFBD>realplay·<79><C2B7> WATCH_NUM
public uint dwMaxPlayBackNum;//<2F><><EFBFBD><EFBFBD><EFBFBD>طŻ<D8B7><C5BB><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7> WATCH_NUM
public uint dwMaxAlarmChanNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>·<EFBFBD><C2B7> ALARM_NUM
public uint dwMaxFormatNum;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD>ʽ<EFBFBD><CABD>·<EFBFBD><C2B7> SERVER_NUM
public uint dwMaxFileSearchNum;//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7> SERVER_NUM
public uint dwMaxLogSearchNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>·<EFBFBD><C2B7> SERVER_NUM
public uint dwMaxSerialNum;//<2F><><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>·<EFBFBD><C2B7> SERVER_NUM
public uint dwMaxUpgradeNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7> SERVER_NUM
public uint dwMaxVoiceComNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>·<EFBFBD><C2B7> SERVER_NUM
public uint dwMaxBroadCastNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㲥·<E3B2A5><C2B7> MAX_CASTNUM
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_ALARMER
{
public byte byUserIDValid;/* userid<69>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte bySerialValid;/* <20><><EFBFBD>к<EFBFBD><D0BA>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte byVersionValid;/* <20><EFBFBD><E6B1BE><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte byDeviceNameValid;/* <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte byMacAddrValid; /* MAC<41><43>ַ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte byLinkPortValid;/* login<69>˿<EFBFBD><CBBF>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte byDeviceIPValid;/* <20>豸IP<49>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public byte bySocketIPValid;/* socket ip<69>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч */
public int lUserID; /* NET_DVR_Login()<29><><EFBFBD><EFBFBD>ֵ, <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber;/* <20><><EFBFBD>к<EFBFBD> */
public uint dwDeviceVersion;/* <20><EFBFBD><E6B1BE>Ϣ <20><>16λ<36><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><E6B1BE><EFBFBD><EFBFBD>16λ<36><CEBB>ʾ<EFBFBD>ΰ汾*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDeviceName;/* <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMacAddr;/* MAC<41><43>ַ */
public ushort wLinkPort; /* link port */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] sDeviceIP;/* IP<49><50>ַ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] sSocketIP;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ʱ<EFBFBD><CAB1>socket IP<49><50>ַ */
public byte byIpProtocol; /* IpЭ<70><D0AD> 0-IPV4, 1-IPV6 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ӽṹ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPLAY_PARA
{
public int bToScreen;
public int bToVideoOut;
public int nLeft;
public int nTop;
public int nWidth;
public int nHeight;
public int nReserved;
}
//Ӳ<><D3B2><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CARDINFO
{
public int lChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public int lLinkMode;//<2F><><EFBFBD><EFBFBD>λ(31)Ϊ0<CEAA><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<CEAA><31>ʾ<EFBFBD>ӣ<EFBFBD>0<EFBFBD><30>30λ<30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>ʽ:0<><30>TCP<43><50>ʽ,1<><31>UDP<44><50>ʽ,2<><32><EFBFBD><EFBFBD><E0B2A5>ʽ,3 - RTP<54><50>ʽ<EFBFBD><CABD>4-<2D><EFBFBD>ߣ<EFBFBD>5<EFBFBD><35>128k<38><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><36>256k<36><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7<EFBFBD><37>384k<34><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38>512k<32><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.LPStr)]
public string sMultiCastIP;
public NET_DVR_DISPLAY_PARA struDisplayPara;
}
//¼<><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_FIND_DATA
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 100)]
public string sFileName;//<2F>ļ<EFBFBD><C4BC><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F>ļ<EFBFBD><C4BC>Ŀ<EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F>ļ<EFBFBD><C4BC>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwFileSize;//<2F>ļ<EFBFBD><C4BC>Ĵ<EFBFBD>С
}
//¼<><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>(9000)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_FINDDATA_V30
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 100)]
public string sFileName;//<2F>ļ<EFBFBD><C4BC><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F>ļ<EFBFBD><C4BC>Ŀ<EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F>ļ<EFBFBD><C4BC>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwFileSize;//<2F>ļ<EFBFBD><C4BC>Ĵ<EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sCardNum;
public byte byLocked;//9000<30>豸֧<E8B1B8><D6A7>,1<><31>ʾ<EFBFBD><CABE><EFBFBD>ļ<EFBFBD><C4BC>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0<><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
public byte byFileType; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>:0<><30><EFBFBD><EFBFBD>ʱ¼<CAB1><C2BC>,1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> <20><>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//3-<2D><><EFBFBD><EFBFBD>|<7C>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD>&<26>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 5-<2D><><EFBFBD><EFBFBD><EEB4A5> 6-<2D>ֶ<EFBFBD>¼<EFBFBD><C2BC>,7<><37><EFBFBD>𶯱<EFBFBD><F0B6AFB1><EFBFBD><EFBFBD><EFBFBD>8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-<2D><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>10-PIR<49><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>11-<2D><><EFBFBD>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD>12-<2D><><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD>,14-<2D><><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//¼<><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>(cvr)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_FINDDATA_V40
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 100)]
public string sFileName;//<2F>ļ<EFBFBD><C4BC><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F>ļ<EFBFBD><C4BC>Ŀ<EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F>ļ<EFBFBD><C4BC>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwFileSize;//<2F>ļ<EFBFBD><C4BC>Ĵ<EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sCardNum;
public byte byLocked;//9000<30>豸֧<E8B1B8><D6A7>,1<><31>ʾ<EFBFBD><CABE><EFBFBD>ļ<EFBFBD><C4BC>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0<><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
public byte byFileType; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>:0<><30><EFBFBD><EFBFBD>ʱ¼<CAB1><C2BC>,1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> <20><>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//3-<2D><><EFBFBD><EFBFBD>|<7C>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD>&<26>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 5-<2D><><EFBFBD><EFBFBD><EEB4A5> 6-<2D>ֶ<EFBFBD>¼<EFBFBD><C2BC>,7<><37><EFBFBD>𶯱<EFBFBD><F0B6AFB1><EFBFBD><EFBFBD><EFBFBD>8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-<2D><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>10-PIR<49><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>11-<2D><><EFBFBD>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD>12-<2D><><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD>,14-<2D><><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD>¼<EFBFBD>
public byte byQuickSearch; //0:<3A><>ͨ<EFBFBD><CDA8>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD>٣<EFBFBD><D9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
public byte byRes;
public uint dwFileIndex; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
//¼<><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_FINDDATA_CARD
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 100)]
public string sFileName;//<2F>ļ<EFBFBD><C4BC><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F>ļ<EFBFBD><C4BC>Ŀ<EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F>ļ<EFBFBD><C4BC>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwFileSize;//<2F>ļ<EFBFBD><C4BC>Ĵ<EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sCardNum;
}
//¼<><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FILECOND
{
public int lChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwFileType;//¼<><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>0xff<66><66>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD>ʱ¼<CAB1><C2BC>,1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> <20><>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//3-<2D><><EFBFBD><EFBFBD>|<7C>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD>&<26>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 5-<2D><><EFBFBD><EFBFBD><EEB4A5> 6-<2D>ֶ<EFBFBD>¼<EFBFBD><C2BC>
public uint dwIsLocked;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>,1-<2D><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>, 0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
public uint dwUseCardNo;//<2F>Ƿ<EFBFBD>ʹ<EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] sCardNumber;//<2F><><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
//<2F><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>С(HIK <20><><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POINT_FRAME
{
public int xTop;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD>
public int yTop;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>
public int xBottom;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD>
public int yBottom;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>
public int bCounter;//<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSION_AUDIO
{
public byte byAudioEncType;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-G722; 1-G711
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byres;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUDIOENC_INFO
{
public uint in_frame_size; /* <20><><EFBFBD><EFBFBD>һ֡<D2BB><D6A1><EFBFBD>ݴ<EFBFBD>С(BYTES)<29><><EFBFBD><EFBFBD>GetInfoParam<61><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.U4)]
public int[] reserved; /* <20><><EFBFBD><EFBFBD> */
}
// <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUDIOENC_PROCESS_PARAM
{
public IntPtr in_buf; /* <20><><EFBFBD><EFBFBD>buf */
public IntPtr out_buf; /* <20><><EFBFBD><EFBFBD>buf */
public uint out_frame_size; /* <20><><EFBFBD><EFBFBD>һ֡<D2BB><D6A1><EFBFBD><EFBFBD>BYTE<54><45> */
public int g726enc_reset; /* <20><><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD> */
public int g711_type; /* g711<31><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 - U law, 1- A law */
public int enc_mode; /* <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>AMR<4D><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.U4)]
public int[] reserved; /* <20><><EFBFBD><EFBFBD> */
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_AP_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = IW_ESSID_MAX_SIZE)]
public string sSsid;
public uint dwMode;/* 0 mange ģʽ;1 ad-hocģʽ<C4A3><CABD><EFBFBD>μ<EFBFBD>NICMODE */
public uint dwSecurity; /*0 <20><><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD>1 wep<65><70><EFBFBD>ܣ<EFBFBD>2 wpa-psk;3 wpa-Enterprise<73><65><EFBFBD>μ<EFBFBD>WIFISECURITY*/
public uint dwChannel;/*1-11<31><31>ʾ11<31><31>ͨ<EFBFBD><CDA8>*/
public uint dwSignalStrength;/*0-100<30>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>ǿ*/
public uint dwSpeed;/*<2A><><EFBFBD><EFBFBD>,<2C><>λ<EFBFBD><CEBB>0.01mbps*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AP_INFO_LIST
{
public uint dwSize;
public uint dwCount;/*<2A><><EFBFBD><EFBFBD>AP<41><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = WIFI_MAX_AP_COUNT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_AP_INFO[] struApInfo;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_WIFIETHERNET
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sIpAddress;/*IP<49><50>ַ*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sIpMask;/*<2A><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] bRes;
public uint dwEnableDhcp;/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>dhcp 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD>*/
public uint dwAutoDns;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dhcp<63>Ƿ<EFBFBD><C7B7>Զ<EFBFBD><D4B6><EFBFBD>ȡdns,0<><30><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>ȡ 1<>Զ<EFBFBD><D4B6><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dhcpĿǰ<C4BF>Զ<EFBFBD><D4B6><EFBFBD>ȡdns*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sFirstDns; /*<2A><>һ<EFBFBD><D2BB>dns<6E><73><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sSecondDns;/*<2A>ڶ<EFBFBD><DAB6><EFBFBD>dns<6E><73><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sGatewayIpAddr;/* <20><><EFBFBD>ص<EFBFBD>ַ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] bRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_EAP_TTLS
{
public byte byEapolVersion; //EAPOL<4F><EFBFBD><E6B1BE>0-<2D>汾1<E6B1BE><31>1-<2D>汾2
public byte byAuthType; //<2F>ڲ<EFBFBD><DAB2><EFBFBD>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD>0-PAP<41><50>1-MSCHAPV2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAnonyIdentity; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName; //<2F>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassword; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
} //WPA-enterprise/WPA2-enterprisģʽ<C4A3><CABD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_EAP_PEAP
{
public byte byEapolVersion; //EAPOL<4F><EFBFBD><E6B1BE>0-<2D>汾1<E6B1BE><31>1-<2D>汾2
public byte byAuthType; //<2F>ڲ<EFBFBD><DAB2><EFBFBD>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD>0-GTC<54><43>1-MD5<44><35>2-MSCHAPV2
public byte byPeapVersion; //PEAP<41><EFBFBD><E6B1BE>0-<2D>汾0<E6B1BE><30>1-<2D>汾1
public byte byPeapLabel; //PEAP<41><50>ǩ<EFBFBD><C7A9>0-<2D>ϱ<EFBFBD>ǩ<EFBFBD><C7A9>1-<2D>±<EFBFBD>ǩ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAnonyIdentity; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName; //<2F>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassword; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
} //WPA-enterprise/WPA2-enterprisģʽ<C4A3><CABD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_EAP_TLS
{
public byte byEapolVersion; //EAPOL<4F><EFBFBD><E6B1BE>0-<2D>汾1<E6B1BE><31>1-<2D>汾2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byIdentity; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPrivateKeyPswd; //˽Կ<CBBD><D4BF><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 76, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct WIFI_AUTH_PARAM
{
[FieldOffsetAttribute(0)]
public UNION_EAP_TTLS EAP_TTLS;//WPA-enterprise/WPA2-enterprisģʽ<C4A3><CABD><EFBFBD><EFBFBD>
[FieldOffsetAttribute(0)]
public UNION_EAP_PEAP EAP_PEAP; //WPA-enterprise/WPA2-enterprisģʽ<C4A3><CABD><EFBFBD><EFBFBD>
[FieldOffsetAttribute(0)]
public UNION_EAP_TLS EAP_TLS;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_WEP
{
public uint dwAuthentication;/*0 -<2D><><EFBFBD><EFBFBD>ʽ 1-<2D><><EFBFBD><EFBFBD>ʽ*/
public uint dwKeyLength;/* 0 -64λ<34><CEBB>1- 128λ<38><CEBB>2-152λ*/
public uint dwKeyType;/*0 16<31><36><EFBFBD><EFBFBD>;1 ASCI */
public uint dwActive;/*0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0---3<><33>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Կ*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = WIFI_WEP_MAX_KEY_COUNT * WIFI_WEP_MAX_KEY_LENGTH)]
public string sKeyInfo;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_WPA_PSK
{
public uint dwKeyLength;/*8-63<36><33>ASCII<49>ַ<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = WIFI_WPA_PSK_MAX_KEY_LENGTH)]
public string sKeyInfo;
public byte byEncryptType;/*WPA/WPA2ģʽ<C4A3>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-AES, 1-TKIP*/
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_WPA_WPA2
{
public byte byEncryptType; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-AES, 1-TKIP*/
public byte byAuthType; //<2F><>֤<EFBFBD><D6A4><EFBFBD>ͣ<EFBFBD>0-EAP_TTLS,1-EAP_PEAP,2-EAP_TLS
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public WIFI_AUTH_PARAM auth_param;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_WIFI_CFG_EX
{
public NET_DVR_WIFIETHERNET struEtherNet;/*wifi<66><69><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = IW_ESSID_MAX_SIZE)]
public string sEssid;/*SSID*/
public uint dwMode;/* 0 mange ģʽ;1 ad-hocģʽ<C4A3><CABD><EFBFBD>μ<EFBFBD>*/
public uint dwSecurity;/*0 <20><><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD>1 wep<65><70><EFBFBD>ܣ<EFBFBD>2 wpa-psk; */
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct key
{
[FieldOffsetAttribute(0)]
public UNION_WEP wep;
[FieldOffsetAttribute(0)]
public UNION_WPA_PSK wpa_psk;
[FieldOffsetAttribute(0)]
public UNION_WPA_WPA2 wpa_wpa2;//WPA-enterprise/WPA2-enterprisģʽ<C4A3><CABD><EFBFBD><EFBFBD>
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WIFI_CFG
{
public uint dwSize;
public NET_DVR_WIFI_CFG_EX struWifiCfg;
}
//wifi<66><69><EFBFBD><EFBFBD>״̬
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WIFI_CONNECT_STATUS
{
public uint dwSize;
public byte byCurStatus; //1-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>2-δ<><CEB4><EFBFBD>ӣ<EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwErrorCode; // byCurStatus = 2ʱ<32><CAB1>Ч,1-<2D>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-<2D>޴<EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>,3-δ֪<CEB4><D6AA><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 244, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WIFI_WORKMODE
{
public uint dwSize;
public uint dwNetworkInterfaceMode;/*0 <20>Զ<EFBFBD><D4B6>л<EFBFBD>ģʽ<C4A3><CABD>1 <20><><EFBFBD><EFBFBD>ģʽ*/
}
//<2F><><EFBFBD>ܿ<EFBFBD><DCBF><EFBFBD><EFBFBD><EFBFBD>Ϣ
public const int MAX_VCA_CHAN = 16;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_CTRLINFO
{
public byte byVCAEnable;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byVCAType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>VCA_CHAN_ABILITY_TYPE
public byte byStreamWithVCA;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public byte byMode;//ģʽ<C4A3><CABD>VCA_CHAN_MODE_TYPE ,atm<74><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
public byte byControlType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
// byControlType &1 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
}
//<2F><><EFBFBD>ܿ<EFBFBD><DCBF><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_CTRLCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VCA_CHAN, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_CTRLINFO[] struCtrlInfo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ,<2C><><EFBFBD><EFBFBD>0<EFBFBD><30>Ӧ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʼͨ<CABC><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_DEV_ABILITY
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byVCAChanNum;//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPlateChanNum;//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBBaseChanNum;//<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBAdvanceChanNum;//<2F><>Ϊ<EFBFBD>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBFullChanNum;//<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byATMChanNum;//<2F><><EFBFBD><EFBFBD>ATM<54><4D><EFBFBD><EFBFBD>
public byte byPDCChanNum; //<2F><><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byITSChanNum; //<2F><>ͨ<EFBFBD>¼<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBPrisonChanNum; //<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFSnapChanNum; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFSnapRecogChanNum; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>ĺ<EFBFBD>ʶ<EFBFBD><CAB6>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFRetrievalChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySupport; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE><D6A7>
//bySupport & 0x1<78><31><EFBFBD><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2012-3-22
//bySupport & 0x2<78><32><EFBFBD><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>128·ȡ<C2B7><C8A1><EFBFBD><EFBFBD>չ2012-12-27
public byte byFRecogChanNum; //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBPPerimeterChanNum; //<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ܽ<EFBFBD><><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTPSChanNum; //<2F><>ͨ<EFBFBD>յ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTFSChanNum; //<2F><>·Υ<C2B7><CEA5>ȡ֤ͨ<D6A4><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFSnapBFullChanNum; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 22, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum VCA_ABILITY_TYPE:uint
{
TRAVERSE_PLANE_ABILITY = 0x01, //<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENTER_AREA_ABILITY = 0x02, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EXIT_AREA_ABILITY = 0x04, //<2F><EFBFBD><EBBFAA><EFBFBD><EFBFBD>
INTRUSION_ABILITY = 0x08, //<2F><><EFBFBD><EFBFBD>
LOITER_ABILITY = 0x10, //<2F>ǻ<EFBFBD>
LEFT_TAKE_ABILITY = 0x20, //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
PARKING_ABILITY = 0x40, //ͣ<><CDA3>
RUN_ABILITY = 0x80, //<2F><><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>
HIGH_DENSITY_ABILITY = 0x100, //<2F><>Ա<EFBFBD>ۼ<EFBFBD>
LF_TRACK_ABILITY = 0x200, //<2F><><EFBFBD><EFBFBD>
VIOLENT_MOTION_ABILITY = 0x400, //<2F><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>
REACH_HIGHT_ABILITY = 0x800, //<2F>ʸ߼<CAB8><DFBC><EFBFBD>
GET_UP_ABILITY = 0x1000, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT_ABILITY = 0x2000, //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
TAKE_ABILITY = 0x4000, //<2F><>Ʒ<EFBFBD><C6B7>ȡ
LEAVE_POSITION = 0x8000, //<2F><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>
TRAIL_ABILITY = 0x10000, //β<><CEB2>
KEY_PERSON_GET_UP_ABILITY = 0x20000, //<2F>ص<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FALL_DOWN_ABILITY = 0x80000, //<2F><><EFBFBD><EFBFBD>
AUDIO_ABNORMAL_ABILITY = 0x100000, //<2F><>ǿͻ<C7BF><CDBB>
ADV_REACH_HEIGHT_ABILITY = 0x200000, //<2F><><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD>
TOILET_TARRY_ABILITY = 0x400000, //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
YARD_TARRY_ABILITY = 0x800000, //<2F>ŷ糡<C5B7><E7B3A1><EFBFBD><EFBFBD>
ADV_TRAVERSE_PLANE_ABILITY = 0x1000000, //<2F><><EFBFBD>߾<EFBFBD><DFBE><EFBFBD><EFBFBD><EFBFBD>
HUMAN_ENTER_ABILITY = 0x10000000, //<2F>˿<EFBFBD><CBBF><EFBFBD>ATM ,ֻ<><D6BB>ATM_PANELģʽ<C4A3><CABD>֧<EFBFBD><D6A7>
OVER_TIME_ABILITY = 0x20000000, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,ֻ<><D6BB>ATM_PANELģʽ<C4A3><CABD>֧<EFBFBD><D6A7>
STICK_UP_ABILITY = 0x40000000, //<2F><>ֽ<EFBFBD><D6BD>
INSTALL_SCANNER_ABILITY = 0x80000000 //<2F><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum VCA_CHAN_ABILITY_TYPE
{
VCA_BEHAVIOR_BASE = 1, //<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_BEHAVIOR_ADVANCE = 2, //<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>߼<EFBFBD><DFBC><EFBFBD>
VCA_BEHAVIOR_FULL = 3, //<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_PLATE = 4, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_ATM = 5, //ATM<54><4D><EFBFBD><EFBFBD>
VCA_PDC = 6, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>
VCA_ITS = 7, //<2F><><EFBFBD><EFBFBD> <20><>ͨ<EFBFBD>¼<EFBFBD>
VCA_BEHAVIOR_PRISON = 8, //<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)
VCA_FACE_SNAP = 9, //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_FACE_SNAPRECOG = 10, //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>ĺ<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_FACE_RETRIEVAL = 11, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_FACE_RECOG = 12, //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_BEHAVIOR_PRISON_PERIMETER = 13, // <20><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28>ܽ<EFBFBD>)
VCA_TPS = 14, //<2F><>ͨ<EFBFBD>յ<EFBFBD>
VCA_TFS = 15, //<2F><>·Υ<C2B7><CEA5>ȡ֤
VCA_BEHAVIOR_FACESNAP = 16 //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ATMģʽ<C4A3><CABD><EFBFBD><EFBFBD>(ATM<54><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
public enum VCA_CHAN_MODE_TYPE
{
VCA_ATM_PANEL = 0,//ATM<54><4D><EFBFBD><EFBFBD>
VCA_ATM_SURROUND = 1,//ATM<54><4D><EFBFBD><EFBFBD>
VCA_ATM_FACE = 2 //ATM<54><4D><EFBFBD><EFBFBD>
}
public enum TFS_CHAN_MODE_TYPE
{
TFS_CITYROAD = 0, //TFS <20><><EFBFBD>е<EFBFBD>·
TFS_FREEWAY = 1 //TFS <20><><EFBFBD>ٵ<EFBFBD>·
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA>𳡾<EFBFBD>ģʽ
public enum BEHAVIOR_SCENE_MODE_TYPE
{
BEHAVIOR_SCENE_DEFAULT = 0, //ϵͳĬ<CDB3><C4AC>
BEHAVIOR_SCENE_WALL = 1, //Χǽ
BEHAVIOR_SCENE_INDOOR = 2 //<2F><><EFBFBD><EFBFBD>
}
//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_CHAN_IN_PARAM
{
public byte byVCAType;//VCA_CHAN_ABILITY_TYPEö<45><C3B6>ֵ
public byte byMode;//ģʽ<C4A3><CABD>VCA_CHAN_MODE_TYPE ,atm<74><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
}
//<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BEHAVIOR_ABILITY
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwAbilityType;//֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>VCA_ABILITY_TYPE<50><45><EFBFBD><EFBFBD>
public byte byMaxRuleNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byMaxTargetNum;//<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
public byte bySupport; // ֧<>ֵĹ<D6B5><C4B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>λ<EFBFBD><CEBB>ʾ
// bySupport & 0x01 ֧<>ֱ궨<D6B1><EAB6A8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
}
// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ITS_ABILITY
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwAbilityType; // ֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD> <20><><EFBFBD><EFBFBD>ITS_ABILITY_TYPE
public byte byMaxRuleNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byMaxTargetNum; //<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD>
}
/***********************************end*******************************************/
/************************************<2A><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD>ṹ*********************************/
//<2F><><EFBFBD>ܹ<EFBFBD><DCB9>ýṹ
//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ<EFBFBD><D2BB>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ<D6B5><CEAA>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>İٷֱȴ<D6B1>С, <20><><EFBFBD><EFBFBD>ΪС<CEAA><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_POINT
{
public float fX;// X<><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0.001~1
public float fY;//Y<><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0.001~1
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RECT
{
public float fX;//<2F>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻǵ<CFBD><C7B5><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0.001~1
public float fY;//<2F>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻǵ<CFBD><C7B5><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0.001~1
public float fWidth;//<2F>߽<EFBFBD><DFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>, 0.001~1
public float fHeight;//<2F>߽<EFBFBD><DFBD><EFBFBD><EFBFBD>ĸ߶<C4B8>, 0.001~1
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public enum VCA_EVENT_TYPE : uint
{
VCA_TRAVERSE_PLANE = 0x1, //<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_ENTER_AREA = 0x2, //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_EXIT_AREA = 0x4, //Ŀ<><C4BF><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_INTRUSION = 0x8, //<2F>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_LOITER = 0x10, //<2F>ǻ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_LEFT_TAKE = 0x20, //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ,֧<><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_PARKING = 0x40, //ͣ<><CDA3><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_RUN = 0x80, //<2F><><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_HIGH_DENSITY = 0x100, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>ۼ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_VIOLENT_MOTION = 0x200, //<2F><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>
VCA_REACH_HIGHT = 0x400, //<2F>ʸ߼<CAB8><DFBC><EFBFBD>
VCA_GET_UP = 0x800, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_LEFT = 0x1000, //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
VCA_TAKE = 0x2000, //<2F><>Ʒ<EFBFBD><C6B7>ȡ
VCA_LEAVE_POSITION = 0x4000, //<2F><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>
VCA_TRAIL = 0x8000, //β<><CEB2>
VCA_KEY_PERSON_GET_UP = 0x10000, //<2F>ص<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_FALL_DOWN = 0x80000, //<2F><><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
VCA_AUDIO_ABNORMAL = 0x100000, //<2F><>ǿͻ<C7BF><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_ADV_REACH_HEIGHT = 0x200000, //<2F><><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD>
VCA_TOILET_TARRY = 0x400000, //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
VCA_YARD_TARRY = 0x800000, //<2F>ŷ糡<C5B7><E7B3A1><EFBFBD><EFBFBD>
VCA_ADV_TRAVERSE_PLANE = 0x1000000, //<2F><><EFBFBD>߾<EFBFBD><DFBE><EFBFBD><EFBFBD><EFBFBD>
VCA_HUMAN_ENTER = 0x10000000, //<2F>˿<EFBFBD><CBBF><EFBFBD>ATM ֻ<><D6BB>ATM_PANELģʽ<C4A3><CABD>֧<EFBFBD><D6A7>
VCA_OVER_TIME = 0x20000000, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ ֻ<><D6BB>ATM_PANELģʽ<C4A3><CABD>֧<EFBFBD><D6A7>
VCA_STICK_UP = 0x40000000, //<2F><>ֽ<EFBFBD><D6BD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_INSTALL_SCANNER = 0x80000000 //<2F><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ
public enum VCA_RULE_EVENT_TYPE_EX : ushort
{
ENUM_VCA_EVENT_TRAVERSE_PLANE = 1, //<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_ENTER_AREA = 2, //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_EXIT_AREA = 3, //Ŀ<><C4BF><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_INTRUSION = 4, //<2F>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_LOITER = 5, //<2F>ǻ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_LEFT_TAKE = 6, //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ,֧<><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_PARKING = 7, //ͣ<><CDA3><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_RUN = 8, //<2F><><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_HIGH_DENSITY = 9, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>ۼ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_VIOLENT_MOTION = 10, //<2F><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_REACH_HIGHT = 11, //<2F>ʸ߼<CAB8><DFBC><EFBFBD>
ENUM_VCA_EVENT_GET_UP = 12, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_LEFT = 13, //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_TAKE = 14, //<2F><>Ʒ<EFBFBD><C6B7>ȡ
ENUM_VCA_EVENT_LEAVE_POSITION = 15, //<2F><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_TRAIL = 16, //β<><CEB2>
ENUM_VCA_EVENT_KEY_PERSON_GET_UP = 17, //<2F>ص<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_FALL_DOWN = 20, //<2F><><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
ENUM_VCA_EVENT_AUDIO_ABNORMAL = 21, //<2F><>ǿͻ<C7BF><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_ADV_REACH_HEIGHT = 22, //<2F><><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD>
ENUM_VCA_EVENT_TOILET_TARRY = 23, //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
ENUM_VCA_EVENT_YARD_TARRY = 24, //<2F>ŷ糡<C5B7><E7B3A1><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_ADV_TRAVERSE_PLANE = 25, //<2F><><EFBFBD>߾<EFBFBD><DFBE><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_HUMAN_ENTER = 29, //<2F>˿<EFBFBD><CBBF><EFBFBD>ATM,ֻ<><D6BB>ATM_PANELģʽ<C4A3><CABD>֧<EFBFBD><D6A7>
ENUM_VCA_EVENT_OVER_TIME = 30, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,ֻ<><D6BB>ATM_PANELģʽ<C4A3><CABD>֧<EFBFBD><D6A7>
ENUM_VCA_EVENT_STICK_UP = 31, //<2F><>ֽ<EFBFBD><D6BD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VCA_EVENT_INSTALL_SCANNER = 32 //<2F><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>洩Խ<E6B4A9><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum VCA_CROSS_DIRECTION
{
VCA_BOTH_DIRECTION,// ˫<><CBAB>
VCA_LEFT_GO_RIGHT,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_RIGHT_GO_LEFT,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F>߽ṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_LINE
{
public NET_VCA_POINT struStart;//<2F><><EFBFBD><EFBFBD>
public NET_VCA_POINT struEnd; //<2F>յ<EFBFBD>
// public void init()
// {
// struStart = new NET_VCA_POINT();
// struEnd = new NET_VCA_POINT();
// }
}
//<2F>ýṹ<C3BD><EFBFBD><E1B5BC>xaml<6D><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>û<EFBFBD><C3BB><EFBFBD>ҵ<EFBFBD>
//<2F><>ʱ<EFBFBD><CAB1><EFBFBD>ν<CEBD><E1B9B9>
//<2F><><EFBFBD><EFBFBD><EFBFBD>ͽṹ<CDBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_POLYGON
{
/// DWORD->unsigned int
public uint dwPointNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = VCA_MAX_POLYGON_POINT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_POINT[] struPos;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TRAVERSE_PLANE
{
public NET_VCA_LINE struPlaneBottom;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ױ<EFBFBD>
public uint dwCrossDirection;//<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>: 0-˫<><CBAB><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ң<EFBFBD>2-<2D><><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>
public byte bySensitivity;//<2F><><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>ȡֵ<C8A1><D6B5>Χ<EFBFBD><CEA7>[1,5] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Smart IPC<50><43>ȡֵ<C8A1><D6B5>ΧΪ[1,100]<5D><>
public byte byPlaneHeight;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 38, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
// public void init()
// {
// struPlaneBottom = new NET_VCA_LINE();
// struPlaneBottom.init();
// byRes2 = new byte[38];
// }
}
//<2F><><EFBFBD><EFBFBD>/<2F><EFBFBD><EBBFAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_AREA
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD>ӳ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49><4F><EFBFBD><EFBFBD>һ<EFBFBD>£<EFBFBD>1<EFBFBD><EFBFBD><EBB7A2>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
//<2F><><EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_INTRUSION
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration;//<2F><><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD>ʱ<EFBFBD><CAB1>: 1-120<32><EFBFBD><EBA3AC><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public byte bySensitivity; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1-100]
public byte byRate; //ռ<>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ߴ<EFBFBD>Ŀ<EFBFBD><C4BF>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1>أ<EFBFBD><D8A3><EFBFBD>һ<EFBFBD><D2BB>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_LOITER
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration;//<2F><><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD>ʱ<EFBFBD>䣺1-120<32><EFBFBD><EBA3AC><EFBFBD><EFBFBD>10<31><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TAKE_LEFT
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD>ʱ<EFBFBD>䣺1-120<32><EFBFBD><EBA3AC><EFBFBD><EFBFBD>10<31><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ͣ<><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_PARKING
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration;//<2F><><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺1-120<32><EFBFBD><EBA3AC><EFBFBD><EFBFBD>10<31><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RUN
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public float fRunDistance;//<2F>˱<EFBFBD><CBB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>Χ: [0.1, 1.00]
public byte byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public byte byMode; // 0 <20><><EFBFBD><EFBFBD>ģʽ 1 ʵ<><CAB5>ģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>Ա<EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_HIGH_DENSITY
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public float fDensity;//<2F>ܶȱ<DCB6><C8B1><EFBFBD>, <20><>Χ: [0.1, 1.0]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public ushort wDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 20-360s
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_VIOLENT_MOTION
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>1-50<35><30>
public byte bySensitivity; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
public byte byMode; //0-<2D><><EFBFBD><EFBFBD>Ƶģʽ<C4A3><CABD>1-<2D><><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>2-<2D><><EFBFBD><EFBFBD>Ƶģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F>ʸ߲<CAB8><DFB2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_REACH_HIGHT
{
public NET_VCA_LINE struVcaLine; //<2F>ʸ߾<CAB8><DFBE><EFBFBD><EFBFBD><EFBFBD>
public ushort wDuration; //<2F><><EFBFBD><EFBFBD><EFBFBD>ʸ߱<CAB8><DFB1><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>1-120<32><30>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F>𴲲<EFBFBD><F0B4B2B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_GET_UP
{
public NET_VCA_POLYGON struRegion; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration; //<2F><><EFBFBD><EFBFBD><EFBFBD>𴲱<EFBFBD><F0B4B2B1><EFBFBD><EFBFBD><EFBFBD>ֵ1-100 <20><>
public byte byMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ,0-<2D><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>ģʽ,1-<2D>ߵ<EFBFBD><DFB5><EFBFBD>ģʽ,2-<2D><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
public byte bySensitivity; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,10]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_LEFT
{
public NET_VCA_POLYGON struRegion; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 10-100<30><30>
public byte bySensitivity; // <20><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
// <20><>Ʒ<EFBFBD><C6B7>ȡ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TAKE
{
public NET_VCA_POLYGON struRegion; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ10-100<30><30>
public byte bySensitivity; // <20><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_OVER_TIME
{
public NET_VCA_POLYGON struRegion; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ֵ 4s-60000s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_HUMAN_ENTER
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ֽ<EFBFBD><D6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_STICK_UP
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺10-60<36><EFBFBD><EBA3AC><EFBFBD><EFBFBD>10<31><30>
public byte bySensitivity;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SCANNER
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺10-60<36><30>
public byte bySensitivity;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_LEAVE_POSITION
{
public NET_VCA_POLYGON struRegion; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wLeaveDelay; //<2F><><EFBFBD>˱<EFBFBD><CBB1><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC>λ<EFBFBD><CEBB>s<EFBFBD><73>ȡֵ1-1800
public ushort wStaticDelay; //˯<><CBAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC>λ<EFBFBD><CEBB>s<EFBFBD><73>ȡֵ1-1800
public byte byMode; //ģʽ<C4A3><CABD>0-<2D><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>1-<2D><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><><CBAF><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>2-<2D><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>˯<EFBFBD><CBAF><EFBFBD>¼<EFBFBD>
public byte byPersonType; //ֵ<><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD>ֵ<EFBFBD>ڣ<EFBFBD>1-˫<><CBAB>ֵ<EFBFBD><D6B5>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//β<><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TRAIL
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wRes; /* <20><><EFBFBD><EFBFBD> */
public byte bySensitivity; /* <20><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5] */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FALL_DOWN
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDuration; /* <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ֵ 1-60s*/
public byte bySensitivity; /* <20><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5] */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ǿͻ<C7BF><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_AUDIO_ABNORMAL
{
public ushort wDecibel; //<2F><><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>
public byte bySensitivity; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
public byte byAudioMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC>⣬1-<2D>ֱ<EFBFBD><D6B1><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>⣬2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
public byte byEnable; //ʹ<>ܣ<EFBFBD><DCA3>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
public byte byThreshold; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ[0,100]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 54, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUDIO_EXCEPTION
{
public uint dwSize;
public byte byEnableAudioInException; //ʹ<>ܣ<EFBFBD><DCA3>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_VCA_AUDIO_ABNORMAL struAudioAbnormal;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmSched; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V40 struHandleException; //<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
public uint dwMaxRelRecordChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8> <20><><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwRelRecordChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8> <20><> ʵ<><CAB5>֧<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint[] byRelRecordChan;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TOILET_TARRY
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDelay; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1><CAB1>[1,3600]<5D><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_YARD_TARRY
{
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ
public ushort wDelay; //<2F>ŷ糡<C5B7><E7B3A1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>[1,120]<5D><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_ADV_REACH_HEIGHT
{
public NET_VCA_POLYGON struRegion; //<2F>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD><EFBFBD>
public uint dwCrossDirection; //<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>VCA_CROSS_DIRECTION): 0-˫<><CBAB><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_ADV_TRAVERSE_PLANE
{
public NET_VCA_POLYGON struRegion; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwCrossDirection; //<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>VCA_CROSS_DIRECTION): 0-˫<><CBAB><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>
public byte bySensitivity; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[1,5]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_VCA_EVENT_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.U4)]
public uint[] uLen;//<2F><><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_TRAVERSE_PLANE struTraversePlane;//<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_AREA struArea;//<2F><><EFBFBD><EFBFBD>/<2F><EFBFBD><EBBFAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_INTRUSION struIntrusion;//<2F><><EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_LOITER struLoiter;//<2F>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_TAKE_LEFT struTakeTeft;//<2F><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_PARKING struParking;//ͣ<><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_RUN struRun;//<2F><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_HIGH_DENSITY struHighDensity;//<2F><>Ա<EFBFBD>ۼ<EFBFBD><DBBC><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_VIOLENT_MOTION struViolentMotion; //<2F><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_REACH_HIGHT struReachHight; //<2F>ʸ<EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_GET_UP struGetUp; //<2F><><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_LEFT struLeft; //<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_TAKE struTake; // <20><>Ʒ<EFBFBD><C6B7>ȡ
//[FieldOffsetAttribute(0)]
//public NET_VCA_HUMAN_ENTER struHumanEnter; //<2F><>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_OVER_TIME struOvertime; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
//[FieldOffsetAttribute(0)]
//public NET_VCA_STICK_UP struStickUp;//<2F><>ֽ<EFBFBD><D6BD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_SCANNER struScanner;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_LEAVE_POSITION struLeavePos; //<2F><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_TRAIL struTrail; //β<><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_FALL_DOWN struFallDown; //<2F><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_AUDIO_ABNORMAL struAudioAbnormal; //<2F><>ǿͻ<C7BF><CDBB>
//[FieldOffsetAttribute(0)]
//public NET_VCA_ADV_REACH_HEIGHT struReachHeight; //<2F><><EFBFBD><EFBFBD><EFBFBD>ʸ߲<CAB8><DFB2><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_TOILET_TARRY struToiletTarry; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_YARD_TARRY struYardTarry; //<2F>ŷ糡<C5B7><E7B3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//[FieldOffsetAttribute(0)]
//public NET_VCA_ADV_TRAVERSE_PLANE struAdvTraversePlane;//<2F><><EFBFBD>߾<EFBFBD><DFBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
// <20>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum SIZE_FILTER_MODE
{
IMAGE_PIX_MODE,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
REAL_WORLD_MODE,//<2F><><EFBFBD><EFBFBD>ʵ<EFBFBD>ʴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
DEFAULT_MODE // Ĭ<><C4AC>ģʽ
}
//<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SIZE_FILTER
{
public byte byActive;//<2F>Ƿ񼤻<C7B7><F1BCA4BB>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><> <20><>0-<2D><>
public byte byMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽSIZE_FILTER_MODE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
public NET_VCA_RECT struMiniRect;//<2F><>СĿ<D0A1><C4BF><EFBFBD><EFBFBD>,ȫ0<C8AB><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_RECT struMaxRect;//<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>,ȫ0<C8AB><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_ONE_RULE
{
public byte byActive;//<2F>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>,<2C><>0-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA>ֶ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public VCA_EVENT_TYPE dwEventType;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_EVENT_UNION uEventParam;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter;//<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RULECFG
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byPicProType;//<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_JPEGPARA struPictureParam;//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RULE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_ONE_RULE[] struRule;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FILTER_STRATEGY
{
public byte byStrategy; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD> 0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D>߶ȺͿ<C8BA><CDBF>ȹ<EFBFBD><C8B9><EFBFBD>,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD>򴥷<EFBFBD><F2B4A5B7><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RULE_TRIGGER_PARAM
{
public byte byTriggerMode; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>0- <20><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1- <20><> 2- Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTriggerPoint; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽΪ<CABD><CEAA>ʱ<EFBFBD><CAB1>Ч 0- <20><>,1-<2D><>,2-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public float fTriggerArea; //<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٷֱ<D9B7> [0,100]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽΪĿ<CEAA><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_ONE_RULE_V41
{
public byte byActive; //<2F>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>,<2C><>0-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA>ֶ<EFBFBD>
public ushort wEventTypeEx; //<2F><>Ϊ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ֶ<EFBFBD>dwEventType<70><65><EFBFBD>ο<EFBFBD>VCA_RULE_EVENT_TYPE_EX
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwEventType; //<2F><>Ϊ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>˼<EFBFBD><CBBC>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>wEventTypeEx<45><78>ȡ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_EVENT_UNION uEventParam; //<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public ushort wAlarmDelay; //<2F><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>0-5s,1-10,2-30s,3-60s,4-120s,5-300s,6-600s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
public NET_VCA_FILTER_STRATEGY struFilterStrategy; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>
public NET_VCA_RULE_TRIGGER_PARAM struTriggerParam; //<2F><><EFBFBD>򴥷<EFBFBD><F2B4A5B7><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RULECFG_V41
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byPicProType; //<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
public byte byUpLastAlarm; //2011-04-06 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>εı<CEB5><C4B1><EFBFBD>
public byte byPicRecordEnable; /*2012-3-1<>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC>洢, 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1-<2D><><EFBFBD><EFBFBD>*/
public byte byRes1;
public NET_DVR_JPEGPARA struPictureParam; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RULE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_ONE_RULE_V41[] struRule; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TARGET_INFO
{
public uint dwID;//Ŀ<><C4BF>ID ,<2C><>Ա<EFBFBD>ܶȹ<DCB6><C8B9>߱<EFBFBD><DFB1><EFBFBD>ʱΪ0
public NET_VCA_RECT struRect; //Ŀ<><C4BF><EFBFBD>߽<EFBFBD><DFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
//<2F>򻯵Ĺ<F2BBAFB5><C4B9><EFBFBD><EFBFBD><EFBFBD>Ϣ, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RULE_INFO
{
public byte byRuleID;//<2F><><EFBFBD><EFBFBD>ID,0-7
public byte byRes;//<2F><><EFBFBD><EFBFBD>
public ushort wEventTypeEx; //<2F><>Ϊ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ֶ<EFBFBD>dwEventType<70><65><EFBFBD>ο<EFBFBD>VCA_RULE_EVENT_TYPE_EX
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public VCA_EVENT_TYPE dwEventType;//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_EVENT_UNION uEventParam;//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
}
//ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>ַ<EFBFBD><D6B7>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ĵ<EFBFBD>ַ<EFBFBD><D6B7>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ַ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_DEV_INFO
{
public NET_DVR_IPADDR struDevIP;//ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>ַ<EFBFBD><D6B7>
public ushort wPort;//ǰ<><C7B0><EFBFBD><EFBFBD>˿ںţ<DABA>
public byte byChannel;//ǰ<><C7B0><EFBFBD>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD>
public byte byIvmsChannel;// <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_RULE_ALARM
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwRelativeTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_RULE_INFO struRuleInfo;//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_VCA_TARGET_INFO struTargetInfo;//<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>Ϣ
public NET_VCA_DEV_INFO struDevInfo;//ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public uint dwPicDataLen;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC>ij<EFBFBD><C4B3><EFBFBD> Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>*/
public byte byPicType; //0-<2D><>ͨͼƬ 1-<2D>Ա<EFBFBD>ͼƬ
public byte byRelAlarmPicNum; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public byte bySmart;//IDS<44><EFBFBD><E8B1B8><EFBFBD><EFBFBD>0(Ĭ<><C4AC>ֵ)<29><>Smart Functiom Return 1
public byte byPicTransType; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD><DDB4>ʽ: 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-url
public uint dwAlarmID; //<2F><><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>ʶͨ<CAB6><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ч
public ushort wDevInfoIvmsChannelEx; //<2F><>NET_VCA_DEV_INFO<46><4F><EFBFBD><EFBFBD>byIvmsChannel<65><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܱ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ͽͻ<CFBF><CDBB><EFBFBD><EFBFBD><EFBFBD>byIvmsChannel<65>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>255<35><35><EFBFBD>¿ͻ<C2BF><CDBB>˰汾<CBB0><E6B1BE>ʹ<EFBFBD><CAB9>wDevInfoIvmsChannelEx<45><78>
public byte byRelativeTimeFlag; //dwRelativeTime<6D>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-<2D><>Ч<EFBFBD><D0A7> 1-<2D><>Ч<EFBFBD><D0A7>dwRelativeTime<6D><65>ʾUTCʱ<43><CAB1>
public byte byAppendInfoUploadEnabled; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ϴ<EFBFBD>ʹ<EFBFBD><CAB9> 0-<2D><><EFBFBD>ϴ<EFBFBD> 1-<2D>ϴ<EFBFBD>
public IntPtr pAppendInfo; //ָ<>򸽼<EFBFBD><F2B8BDBC><EFBFBD>ϢNET_VCA_APPEND_INFO<46><4F>ָ<EFBFBD>룬byAppendInfoUploadEnabledΪ1ʱ<31><CAB1><EFBFBD><EFBFBD>byTimeDiffFlagΪ1ʱ<31><CAB1>Ч
public IntPtr pImage;//ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SYSTEM_TIME
{
public ushort wYear; //<2F><>
public ushort wMonth; //<2F><>
public ushort wDay; //<2F><>
public ushort wHour; //ʱ
public ushort wMinute; //<2F><>
public ushort wSecond; //<2F><>
public ushort wMilliSec; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>豸֧<E8B1B8><D6A7>AI<41><49><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_AIOP_VIDEO_HEAD
{
public uint dwSize; //dwSize = sizeof(NET_AIOP_VIDEO_HEAD)
public uint dwChannel; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD>
public NET_DVR_SYSTEM_TIME struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szTaskID; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD>
public uint dwAIOPDataSize; //<2F><>ӦAIOPDdata<74><61><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public uint dwPictureSize; //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szMPID; //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD>Ͱ<EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5>AIOP<4F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>URI(GET /ISAPI/Intelligent/AIOpenPlatform/algorithmModel/management?format=json)<29><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><EFBFBD><E8B1B8><EFBFBD>ص<EFBFBD>ģ<EFBFBD>Ͱ<EFBFBD><CDB0><EFBFBD>label description<6F><6E>Ϣ<EFBFBD><CFA2>
public IntPtr pBufferAIOPData; //AIOPDdata<74><61><EFBFBD><EFBFBD>
public IntPtr pBufferPicture;//<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 184, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>豸֧<E8B1B8><D6A7>AI<41><49><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ϴ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_AIOP_PICTURE_HEAD
{
public uint dwSize; //dwSize = sizeof(NET_AIOP_PICTURE_HEAD)
public NET_DVR_SYSTEM_TIME struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szPID; //͸<><CDB8><EFBFBD>·<EFBFBD><C2B7><EFBFBD>ͼƬID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD>
public uint dwAIOPDataSize; //<2F><>ӦAIOPDdata<74><61><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public byte byStatus; //״ֵ̬<CCAC><D6B5>0-<2D>ɹ<EFBFBD><C9B9><EFBFBD>1-ͼƬ<CDBC><C6AC>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szMPID; //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD>Ͱ<EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5>AIOP<4F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBufferAIOPData;//AIOPDdata<74><61><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 184, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_AIOP_POLLING_VIDEO_HEAD
{
public uint dwSize; //dwSize = sizeof(NET_AIOP_POLLING_VIDEO_HEAD)
public uint dwChannel; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>(<28><>SDKЭ<4B><D0AD>)<29><>
public NET_DVR_SYSTEM_TIME struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szTaskID; //<2F><>ѯץͼ<D7A5><CDBC><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD>
public uint dwAIOPDataSize; //<2F><>ӦAIOPDdata<74><61><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public uint dwPictureSize; //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szMPID; //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD>Ͱ<EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5>AIOP<4F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBufferAIOPData;//AIOPDdata<74><61><EFBFBD><EFBFBD>
public IntPtr pBufferPicture;//<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 184, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_AIOP_POLLING_SNAP_HEAD
{
public uint dwSize; //dwSize = sizeof(NET_AIOP_POLLING_SNAP_HEAD)
public uint dwChannel; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>(<28><>SDKЭ<4B><D0AD>)<29><>
public NET_DVR_SYSTEM_TIME struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szTaskID; //<2F><>ѯץͼ<D7A5><CDBC><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD>
public uint dwAIOPDataSize; //<2F><>ӦAIOPDdata<74><61><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public uint dwPictureSize; //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] szMPID; //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD>Ͱ<EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5>AIOP<4F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBufferAIOPData;//AIOPDdata<74><61><EFBFBD><EFBFBD>
public IntPtr pBufferPicture;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 184, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DSP<53><50>Ϣ<EFBFBD><CFA2><EFBFBD>ӽṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_DRAW_MODE
{
public uint dwSize;
public byte byDspAddTarget;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>
public byte byDspAddRule;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9><EFBFBD>
public byte byDspPicAddTarget;//ץͼ<D7A5>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>
public byte byDspPicAddRule;//ץͼ<D7A5>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum OBJECT_TYPE_ENUM
{
ENUM_OBJECT_TYPE_COAT = 1 //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OBJECT_COLOR_COND
{
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwObjType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>μ<EFBFBD>OBJECT_TYPE_ENUM
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PIC
{
public byte byPicType; //ͼƬ<CDBC><C6AC><EFBFBD>ͣ<EFBFBD>1-jpg
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwPicWidth; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwPicHeight; //ͼƬ<CDBC>߶<EFBFBD>
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ʵ<EFBFBD>ʴ<EFBFBD>С
public uint dwPicDataBuffLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
public IntPtr byPicDataBuff; //ͼƬ<CDBC><C6AC><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OBJECT_COLOR_UNION
{
public NET_DVR_COLOR struColor; //<2F><>ɫֵ
public NET_DVR_PIC struPicture; //ͼƬ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OBJECT_COLOR
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; //0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byColorMode; //ȡɫ<C8A1><C9AB>ʽ<EFBFBD><CABD>1-<2D><>ɫֵ<C9AB><D6B5>2-ͼƬ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_OBJECT_COLOR_UNION uObjColor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD>壬ȡֵ<C8A1><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡɫ<C8A1><C9AB>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum AREA_TYPE_ENUM
{
ENUM_OVERLAP_REGION = 1,//<2F><>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>
ENUM_BED_LOCATION = 2 //<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUXAREA
{
public uint dwAreaType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>μ<EFBFBD>AREA_TYPE_ENUM
public byte byEnable; //0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struPolygon; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUXAREA_LIST
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AUXAREA_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_AUXAREA[] struArea; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD>
}
//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
public enum CHAN_WORKMODE_ENUM
{
ENUM_CHAN_WORKMODE_INDEPENDENT = 1, //<2F><><EFBFBD><EFBFBD>ģʽ
ENUM_CHAN_WORKMODE_MASTER = 2, //<2F><>ģʽ
ENUM_CHAN_WORKMODE_SLAVE = 3 //<2F><>ģʽ
}
//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHANNEL_WORKMODE
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byWorkMode; //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD>μ<EFBFBD>CHAN_WORKMODE_ENUM
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 63, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHANNEL
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byAddress; //<2F>豸IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDVRPort; //<2F>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; //<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayout(LayoutKind.Explicit)]
public struct NET_DVR_SLAVE_CHANNEL_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 152, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
}
//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SLAVE_CHANNEL_PARAM
{
public byte byChanType; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>2-Զ<><D4B6>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_SLAVE_CHANNEL_UNION uSlaveChannel; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬ȡֵ<C8A1><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>byChanType
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SLAVE_CHANNEL_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SLAVE_CHANNEL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SLAVE_CHANNEL_PARAM[] struChanParam;//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD>¼<EFBFBD>
public enum VQD_EVENT_ENUM
{
ENUM_VQD_EVENT_BLUR = 1, //ͼ<><CDBC>ģ<EFBFBD><C4A3>
ENUM_VQD_EVENT_LUMA = 2, //<2F><><EFBFBD><EFBFBD><EFBFBD>
ENUM_VQD_EVENT_CHROMA = 3, //ͼ<><CDBC>ƫɫ
ENUM_VQD_EVENT_SNOW = 4, //ѩ<><D1A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ENUM_VQD_EVENT_STREAK = 5, //<2F><><EFBFBD>Ƹ<EFBFBD><C6B8><EFBFBD>
ENUM_VQD_EVENT_FREEZE = 6, //<2F><><EFBFBD><EFBFBD><E6B6B3>
ENUM_VQD_EVENT_SIGNAL_LOSS = 7, //<2F>źŶ<C5BA>ʧ
ENUM_VQD_EVENT_PTZ = 8, //<2F><>̨ʧ<CCA8><CAA7>
ENUM_VQD_EVENT_SCNENE_CHANGE = 9, //<2F><><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB>
ENUM_VQD_EVENT_VIDEO_ABNORMAL = 10, //<2F><>Ƶ<EFBFBD>
ENUM_VQD_EVENT_VIDEO_BLOCK = 11, //<2F><>Ƶ<EFBFBD>ڵ<EFBFBD>
}
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VQD_EVENT_COND
{
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwEventType; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>μ<EFBFBD>VQD_EVENT_ENUM
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VQD_EVENT_PARAM
{
public byte byThreshold; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Χ[0,100]
public byte byTriggerMode; //1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>
public byte byUploadPic; //0-<2D><><EFBFBD>ϴ<EFBFBD>ͼƬ<CDBC><C6AC>1-<2D>ϴ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ϴ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>º󶼿<C2BA><F3B6BCBF>Դ<EFBFBD><D4B4><EFBFBD><E8B1B8>ȡ<EFBFBD><C8A1><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>µ<EFBFBD>һ<EFBFBD>ű<EFBFBD><C5B1><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>μ<EFBFBD><CEBC>ӿ<EFBFBD>NET_DVR_StartDownload
public byte byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwTimeInterval; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ[0,3600] <20><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VQD_EVENT_RULE
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; //0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_VQD_EVENT_PARAM struEventParam; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IVMS_IP_CHANNEL, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BASELINE_SCENE
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; //0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 63, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CONTROL_BASELINE_SCENE_PARAM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byCommand; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD>ֶα<D6B6><CEB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD>ʹ<EFBFBD>ã<EFBFBD>2-<2D><><EFBFBD>»<EFBFBD>׼<EFBFBD><D7BC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 127, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VQD_ALARM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public uint dwEventType; //<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD>VQD_EVENT_ENUM
public float fThreshold; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ[0.000,1.000]
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD>Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ
public IntPtr pImage; //ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><EFBFBD><EAB6A8><EFBFBD>ӽṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CB_POINT
{
public NET_VCA_POINT struPoint; //<2F><EFBFBD><EFBFBD><E3A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD><EFBFBD>
public NET_DVR_PTZPOS struPtzPos; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PTZ<54><5A><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRACK_CALIBRATION_PARAM
{
public byte byPointNum; //<2F><>Ч<EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CALIB_PT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CB_POINT[] struCBPoint; //<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRACK_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byEnable; //<2F>ʹ<EAB6A8><CAB9>
public byte byFollowChan; // <20><><EFBFBD><EFBFBD><EFBFBD>ƵĴ<C6B5>ͨ<EFBFBD><CDA8>
public byte byDomeCalibrate; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8>1<EFBFBD><31><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_TRACK_CALIBRATION_PARAM struCalParam; //<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
}
//ģʽ
public enum TRACK_MODE
{
MANUAL_CTRL = 0, //<2F>ֶ<EFBFBD>
ALARM_TRACK //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD>ƽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MANUAL_CTRL_INFO
{
public NET_VCA_POINT struCtrlPoint;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ģʽ<C4A3>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRACK_MODE
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byTrackMode; //ģʽ
public byte byRuleConfMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
[StructLayout(LayoutKind.Explicit)]
public struct uModeParam
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.U4)]
public uint[] dwULen;
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARM_JPEG
{
public byte byPicProType; /*<2A><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D>ϴ<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_JPEGPARA struPicParam; /*ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>ṹ*/
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_ONE_RULE
{
public byte byActive;/* <20>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>, <20><>0-<2D><> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA>ֶ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public VCA_EVENT_TYPE dwEventType;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_EVENT_UNION uEventParam;//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter;//<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 68, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0*/
}
// <20><><EFBFBD><EFBFBD><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_RULECFG
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RULE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_IVMS_ONE_RULE[] struRule; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
// IVMS<4D><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_BEHAVIORCFG
{
public uint dwSize;
public byte byPicProType;//<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_JPEGPARA struPicParam;//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_IVMS_RULECFG[] struRuleCfg;//ÿ<><C3BF>ʱ<EFBFBD><CAB1><EFBFBD>ζ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>ƻ<EFBFBD><C6BB>ӽṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_DEVSCHED
{
public NET_DVR_SCHEDTIME struTime;//ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PU_STREAM_CFG struPUStream;//ǰ<><C7B0>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_STREAMCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_IVMS_DEVSCHED[] struDevSched;//<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>ȡ<EFBFBD><C8A1><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_MASK_REGION
{
public byte byEnable;//<2F>Ƿ񼤻<C7B7>, 0-<2D>񣬷<EFBFBD>0-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
public NET_VCA_POLYGON struPolygon;//<2F><><EFBFBD>ζ<EFBFBD><CEB6><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_MASK_REGION_LIST
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_MASK_REGION_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_MASK_REGION[] struMask;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//ATM<54><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_ENTER_REGION
{
public uint dwSize;
public byte byEnable;//<2F>Ƿ񼤻0-<2D>񣬷<EFBFBD>0-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_VCA_POLYGON struPolygon;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//IVMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_MASK_REGION_LIST
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_MASK_REGION_LIST[] struList;
}
//IVMS<4D><53>ATM<54><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_ENTER_REGION
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_ENTER_REGION[] struEnter;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
// ivms <20><><EFBFBD><EFBFBD>ͼƬ<CDBC>ϴ<EFBFBD><CFB4>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_ALARM_JPEG
{
public byte byPicProType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_JPEGPARA struPicParam;
}
// IVMS <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_IVMS_SEARCHCFG
{
public uint dwSize;
public NET_DVR_MATRIX_DEC_REMOTE_PLAY struRemotePlay;// Զ<>̻ط<CCBB>
public NET_IVMS_ALARM_JPEG struAlarmJpeg;// <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public NET_IVMS_RULECFG struRuleCfg;//IVMS <20><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
/************************************end******************************************/
//NAS<41><53>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IDENTIFICATION_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /* <20>û<EFBFBD><C3BB><EFBFBD> 32*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /* <20><><EFBFBD><EFBFBD> 16*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_MOUNT_PARAM_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 52, ArraySubType = UnmanagedType.I1)]
public byte[] uLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>С
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NAS_MOUNT_PARAM
{
public byte byMountType; //0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1~NFS, 2~ SMB/CIFS
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_MOUNT_PARAM_UNION uMountParam;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_MOUNTMETHOD_PARAM_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 56, ArraySubType = UnmanagedType.I1)]
public byte[] uLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>С
}
//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD>̽ṹ<CCBD><E1B9B9><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLE_NET_DISK_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struNetDiskAddr;//<2F><><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PATHNAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDirectory;// PATHNAME_LEN = 128
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 68, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD>
}
public const int MAX_NET_DISK = 16;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NET_DISKCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NET_DISK, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_NET_DISK_INFO[] struNetDiskParam;
}
//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum MAIN_EVENT_TYPE
{
EVENT_MOT_DET = 0,//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
EVENT_ALARM_IN = 1,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_VCA_BEHAVIOR = 2,//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6>
EVENT_INQUEST = 3, //<2F><>Ѷ<EFBFBD>¼<EFBFBD>
EVENT_VCA_DETECTION = 4, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_STREAM_INFO = 100 //<2F><>ID<49><44>Ϣ
}
public const int INQUEST_START_INFO = 0x1001; /*Ѷ<>ʿ<EFBFBD>ʼ<EFBFBD><CABC>Ϣ*/
public const int INQUEST_STOP_INFO = 0x1002; /*Ѷ<><D1B6>ֹͣ<CDA3><D6B9>Ϣ*/
public const int INQUEST_TAG_INFO = 0x1003; /*<2A>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
public const int INQUEST_SEGMENT_INFO = 0x1004; /*<2A><>ѶƬ<D1B6><C6AC>״̬<D7B4><CCAC>Ϣ*/
public enum VCA_DETECTION_MINOR_TYPE:uint
{
EVENT_VCA_TRAVERSE_PLANE = 1, //Խ<><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_FIELD_DETECTION, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_AUDIO_INPUT_ALARM, //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>
EVENT_SOUND_INTENSITY_ALARM, //<2F><>ǿͻ<C7BF><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_FACE_DETECTION, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_VIRTUAL_FOCUS_ALARM, /*<2A><EFBFBD><E9BDB9><EFBFBD><EFBFBD>*/
EVENT_SCENE_CHANGE_ALARM, /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
EVENT_ALL = 0xffffffff //<2F><>ʾȫ<CABE><C8AB>
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD>Ӧ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD>ͣ<EFBFBD> 0xffff<66><66>ʾȫ<CABE><C8AB>
public enum BEHAVIOR_MINOR_TYPE
{
EVENT_TRAVERSE_PLANE = 0,// <20><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
EVENT_ENTER_AREA,//Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_EXIT_AREA,//Ŀ<><C4BF><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_INTRUSION,// <20>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_LOITER,//<2F>ǻ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_LEFT_TAKE,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_PARKING,//ͣ<><CDA3><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_RUN,//<2F><><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_HIGH_DENSITY,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>ܶ<EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_STICK_UP,//<2F><>ֽ<EFBFBD><D6BD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_INSTALL_SCANNER,//<2F><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_OPERATE_OVER_TIME, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
EVENT_FACE_DETECT, // <20><EFBFBD><ECB3A3><EFBFBD><EFBFBD>
EVENT_LEFT, // <20><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
EVENT_TAKE, // <20><>Ʒ<EFBFBD><C6B7>ȡ
EVENT_LEAVE_POSITION, //<2F><>ΣĿ<CEA3><C4BF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
EVENT_TRAIL_INFO = 16, //β<><CEB2>
EVENT_FALL_DOWN_INFO = 19, //<2F><><EFBFBD><EFBFBD>
EVENT_OBJECT_PASTE = 20, // <20><><EFBFBD><EFBFBD>ճ<EFBFBD><D5B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_FACE_CAPTURE_INFO = 21, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_MULTI_FACES_INFO = 22, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EVENT_AUDIO_ABNORMAL_INFO = 23, //<2F><>ǿͻ<C7BF><CDBB>
EVENT_DETECT = 24 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>100<30><30><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
public enum STREAM_INFO_MINOR_TYPE
{
EVENT_STREAM_ID = 0, // <20><>ID
EVENT_TIMING = 1, // <20><>ʱ¼<CAB1><C2BC>
EVENT_MOTION_DETECT = 2, // <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
EVENT_ALARM = 3, // <20><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>
EVENT_ALARM_OR_MOTION_DETECT = 4, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
EVENT_ALARM_AND_MOTION_DETECT = 5, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
EVENT_COMMAND_TRIGGER = 6, // <20><><EFBFBD><EFBFBD><EEB4A5>
EVENT_MANNUAL = 7, // <20>ֶ<EFBFBD>¼<EFBFBD><C2BC>
EVENT_BACKUP_VOLUME = 8 // <20><EFBFBD><E6B5B5>¼<EFBFBD><C2BC>
}
//<2F><>ŵCVR
public const int MAX_ID_COUNT = 256;
public const int MAX_STREAM_ID_COUNT = 1024;
public const int STREAM_ID_LEN = 32;
public const int PLAN_ID_LEN = 32;
// <20><><EFBFBD><EFBFBD>Ϣ - 72<37>ֽڳ<D6BD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STREAM_INFO
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = STREAM_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byID; //ID<49><44><EFBFBD><EFBFBD>
public uint dwChannel; //<2F><><EFBFBD><EFBFBD><EFBFBD>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xffffffffʱ<66><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public void Init()
{
byID = new byte[STREAM_ID_LEN];
byRes = new byte[32];
}
}
//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 200-04-07 9000_1.1
public const int SEARCH_EVENT_INFO_LEN = 300;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_ALARM_BYBIT
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmInNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>byAlarmInNo[0]<5D><><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SEARCH_EVENT_INFO_LEN - MAX_ALARMIN_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byAlarmInNo = new byte[MAX_ALARMIN_V30];
byRes = new byte[SEARCH_EVENT_INFO_LEN - MAX_CHANNUM_V30];
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ֵ<EFBFBD><D6B5>ʾ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_ALARM_BYVALUE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.U2)]
public ushort[] wAlarmInNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>byAlarmInNo[0]<5D><><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
wAlarmInNo = new ushort[128];
byRes = new byte[44];
}
}
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_MOTION_BYBIT
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byMotDetChanNo;//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>byMotDetChanNo[0]<5D><><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B4A5><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SEARCH_EVENT_INFO_LEN - MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byMotDetChanNo = new byte[MAX_CHANNUM_V30];
byRes = new byte[SEARCH_EVENT_INFO_LEN - MAX_CHANNUM_V30];
}
}
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>--<2D><>ֵ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_MOTION_BYVALUE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.U2)]
public ushort[] wMotDetChanNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>byAlarmInNo[0]<5D><><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 172, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
wMotDetChanNo = new ushort[64];
byRes = new byte[172];
}
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_VCA_BYBIT
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byChanNo;//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byRuleID;//<2F><><EFBFBD><EFBFBD>ID<49><44>0xff<66><66>ʾȫ<CABE><C8AB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 235, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public void init()
{
byChanNo = new byte[MAX_CHANNUM_V30];
byRes1 = new byte[235];
}
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6>--<2D><>ֵ<EFBFBD><D6B5>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_VCA_BYVALUE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.U2)]
public ushort[] wChanNo; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byRuleID; //<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>0xff<66><66>ʾȫ<CABE><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 171, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /*<2A><><EFBFBD><EFBFBD>*/
public void init()
{
wChanNo = new ushort[64];
byRes = new byte[171];
}
}
//<2F><>Ѷ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_INQUEST_PARAM
{
public byte byRoomIndex; //<2F><>Ѷ<EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 299, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public void init()
{
byRes = new byte[299];
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_VCADETECT_BYBIT
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD>ʾ<EFBFBD><CABE>byChan[0]<5D><><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B4A5><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public void init()
{
byChan = new byte[256];
byRes = new byte[44];
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ͨ<EFBFBD><CDA8><EFBFBD>Ű<EFBFBD>ֵ<EFBFBD><D6B5>ʾ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_VCADETECT_BYVALUE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30-1, ArraySubType = UnmanagedType.U4)]
public uint[] dwChanNo;// <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>,<2C><>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE>0xffffffff<66><66>Ч<EFBFBD><D0A7><EFBFBD>Һ<EFBFBD><D2BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><D2B2>ʾ<EFBFBD><CABE>Чֵ
public byte byAll;//0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>1-<2D><>ʾȫ<CABE><C8AB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 47, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
dwChanNo = new uint[MAX_CHANNUM_V30 - 1];
byRes = new byte[47];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_STREAMID_PARAM
{
public NET_DVR_STREAM_INFO struIDInfo; // <20><>id<69><64>Ϣ<EFBFBD><CFA2>72<37>ֽڳ<D6BD>
public uint dwCmdType; // <20>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>NVR<56><52><EFBFBD><EFBFBD><EFBFBD>ƴ洢ʹ<E6B4A2><CAB9>
public byte byBackupVolumeNum; //<2F><EFBFBD><E6B5B5><EFBFBD>ţ<EFBFBD>CVRʹ<52><CAB9>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 223, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
struIDInfo.Init();
byRes = new byte[223];
}
}
[StructLayout(LayoutKind.Explicit)]
public struct SEARCH_EVENT_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SEARCH_EVENT_INFO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLen;
/* [FieldOffsetAttribute(0)]
public EVENT_ALARM_BYBIT struAlarmParam;
[FieldOffsetAttribute(0)]
public EVENT_ALARM_BYVALUE struAlarmParamByValue;
[FieldOffsetAttribute(0)]
public EVENT_MOTION_BYBIT struMotionParam;
[FieldOffsetAttribute(0)]
public EVENT_MOTION_BYVALUE struMotionParamByValue;
[FieldOffsetAttribute(0)]
public EVENT_VCA_BYBIT struVcaParam;
[FieldOffsetAttribute(0)]
public EVENT_VCA_BYVALUE struVcaParamByValue;
[FieldOffsetAttribute(0)]
public EVENT_INQUEST_PARAM struInquestParam;
[FieldOffsetAttribute(0)]
public EVENT_VCADETECT_BYBIT struVCADetectByBit;
[FieldOffsetAttribute(0)]
public EVENT_VCADETECT_BYVALUE struVCADetectByValue;
[FieldOffsetAttribute(0)]
public EVENT_STREAMID_PARAM struStreamIDParam;
* */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SEARCH_EVENT_PARAM
{
public ushort wMajorType;//0-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 2-<2D><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
public ushort wMinorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ仯<CDB1><E4BBAF>0xffff<66><66>ʾȫ<CABE><C8AB>
public NET_DVR_TIME struStartTime;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>ʼʱ<CABC>䣬ֹͣʱ<D6B9><CAB1>: ͬʱΪ(0, 0) <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ʼ<E4BFAA><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>4000<30><30><EFBFBD>¼<EFBFBD>
public NET_DVR_TIME struEndTime;
public byte byLockType; // 0xff-ȫ<><C8AB><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byValue; //0-<2D><>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>1-<2D><>ֵ<EFBFBD><D6B5>ʾ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 130, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
public SEARCH_EVENT_UNION uSeniorPara;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_ALARM_RET
{
public uint dwAlarmInNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SEARCH_EVENT_INFO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byRes = new byte[SEARCH_EVENT_INFO_LEN];
}
}
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_MOTION_RET
{
public uint dwMotDetNo;//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SEARCH_EVENT_INFO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byRes = new byte[SEARCH_EVENT_INFO_LEN];
}
}
//<2F><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_VCA_RET
{
public uint dwChanNo;//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte byRuleID;//<2F><><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_EVENT_UNION uEvent;//<2F><>Ϊ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>wMinorType = VCA_EVENT_TYPE<50><45><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public void init()
{
byRes1 = new byte[3];
byRuleName = new byte[NAME_LEN];
}
}
//<2F><>Ѷ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_INQUEST_RET
{
public byte byRoomIndex; //<2F><>Ѷ<EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
public byte byDriveIndex; //<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwSegmentNo; //<2F><>Ƭ<EFBFBD><C6AC><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
public ushort wSegmetSize; //<2F><>Ƭ<EFBFBD>ϵĴ<CFB5>С, <20><>λM
public ushort wSegmentState; //<2F><>Ƭ<EFBFBD><C6AC>״̬ 0 <20><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1 <20><>¼<EFBFBD><EFBFBD><ECB3A3>2 <20><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ѷ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 288, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
public void init()
{
byRes1 = new byte[6];
byRes2 = new byte[288];
}
}
//<2F><>id¼<64><C2BC><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct EVENT_STREAMID_RET
{
public uint dwRecordType; //¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>ʱ¼<CAB1><C2BC> 1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC> 3-<2D><><EFBFBD><EFBFBD>|<7C>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD>&<26>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 5-<2D><><EFBFBD><EFBFBD><EEB4A5> 6-<2D>ֶ<EFBFBD>¼<EFBFBD><C2BC> 7-<2D>𶯱<EFBFBD><F0B6AFB1><EFBFBD> 8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 9-<2D><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD> 10-<2D>ش<EFBFBD>¼<EFBFBD><C2BC>
public uint dwRecordLength; //¼<><C2BC><EFBFBD><EFBFBD>С
public byte byLockFlag; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־ 0<><30>û<EFBFBD><C3BB><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDrawFrameType; // 0<><30><EFBFBD>dz<EFBFBD>֡¼<D6A1><C2BC> 1<><31><EFBFBD><EFBFBD>֡¼<D6A1><C2BC>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byFileName; //<2F>ļ<EFBFBD><C4BC><EFBFBD>
public uint dwFileIndex; // <20><EFBFBD><E6B5B5><EFBFBD>ϵ<EFBFBD><CFB5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byRes1 = new byte[2];
byFileName = new byte[NAME_LEN];
byRes = new byte[256];
}
}
[StructLayout(LayoutKind.Explicit)]
public struct SEARCH_EVENT_RET
{
[FieldOffset(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 304, ArraySubType = UnmanagedType.I1)]
public byte[] byEventRetUnion;
/*
[FieldOffset(0)]
public EVENT_ALARM_RET struAlarmRet;
[FieldOffset(0)]
public EVENT_MOTION_RET struMotionRet;
[FieldOffset(0)]
public EVENT_VCA_RET struVcaRet;
[FieldOffset(0)]
public EVENT_INQUEST_RET struInquestRet;
[FieldOffset(0)]
public EVENT_STREAMID_RET struStreamIDRet;
* */
}
//<2F><><EFBFBD>ҷ<EFBFBD><D2B7>ؽ<EFBFBD><D8BD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SEARCH_EVENT_RET
{
public ushort wMajorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>MA
public ushort wMinorType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F>¼<EFBFBD><C2BC><EFBFBD>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1>
public NET_DVR_TIME struEndTime;//<2F>¼<EFBFBD>ֹͣ<CDA3><D6B9>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>ʱ<EFBFBD>Ϳ<EFBFBD>ʼʱ<CABC><CAB1>һ<EFBFBD><D2BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byChan;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 36, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public SEARCH_EVENT_RET uSeniorRet;
public void init()
{
byChan = new byte[MAX_CHANNUM_V30];
byRes = new byte[36];
}
}
//SDK_V35 2009-10-26
// <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum tagCALIBRATE_TYPE
{
PDC_CALIBRATE = 0x01, // PDC <20>
BEHAVIOR_OUT_CALIBRATE = 0x02, //<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><E2B3A1><EFBFBD>
BEHAVIOR_IN_CALIBRATE = 0x03, // <20><>Ϊ<EFBFBD><CEAA><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD>
ITS_CALBIRETE = 0x04 // <20><>ͨ<EFBFBD>¼<EFBFBD><C2BC>
}
public const int MAX_RECT_NUM = 6;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECT_LIST
{
public byte byRectNum; // <20><><EFBFBD>ο<EFBFBD><CEBF>ĸ<EFBFBD><C4B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RECT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_RECT[] struVcaRect; // <20><><EFBFBD><EFBFBD>Ϊ6<CEAA><36>Rect
}
// PDC <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_CALIBRATION
{
public NET_DVR_RECT_LIST struRectList; // <20><EFBFBD><EAB6A8><EFBFBD>ο<EFBFBD><CEBF>б<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 120, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
// <20><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ǰ<EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>ʵ<EFBFBD>ʱ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>Ǹ߶<C7B8><DFB6>߻<EFBFBD><DFBB>dz<EFBFBD><C7B3><EFBFBD><EFBFBD>ߡ<EFBFBD>
public enum LINE_MODE
{
HEIGHT_LINE, //<2F>߶<EFBFBD><DFB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LENGTH_LINE //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD>ñ궨<C3B1><EAB6A8>Ϣ<EFBFBD><CFA2>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧλ<D3A6><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAMERA_PARAM
{
public byte byEnableHeight; // <20>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><DFB6><EFBFBD>
public byte byEnableAngle; // <20>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>
public byte byEnableHorizon; // <20>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public float fCameraHeight; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>
public float fCameraAngle; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>
public float fHorizon; // <20><><EFBFBD><EFBFBD><EFBFBD>еĵ<D0B5>ƽ<EFBFBD><C6BD>
}
/*<EFBFBD><EFBFBD>fValue<EFBFBD><EFBFBD>ʾĿ<EFBFBD><EFBFBD><EFBFBD>߶ȵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>struStartPoint<EFBFBD><EFBFBD>struEndPoint<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>ʾĿ<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͽŲ<EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD>fValue<EFBFBD><EFBFBD>ʾ<EFBFBD>߶γ<EFBFBD><EFBFBD>ȵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>struStartPoint<EFBFBD><EFBFBD>struEndPoint<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>߶<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>յ
* mode<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD>ʾ<EFBFBD>߶<EFBFBD><EFBFBD>߻<EFBFBD><EFBFBD>dz<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߡ<EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LINE_SEGMENT
{
public byte byLineMode; // <20><><EFBFBD><EFBFBD> LINE_MODE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_VCA_POINT struStartPoint;
public NET_VCA_POINT struEndPoint;
public float fValue;
}
public const int MAX_LINE_SEG_NUM = 8;
/*<2A><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀǰ<C4BF><C7B0>Ҫ4-8<><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><DFA3>Ի<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BEHAVIOR_OUT_CALIBRATION
{
public uint dwLineSegNum; // <20><><EFBFBD><EFBFBD><EFBFBD>߸<EFBFBD><DFB8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LINE_SEG_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_LINE_SEGMENT[] struLineSegment; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_CAMERA_PARAM struCameraParam; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*<EFBFBD>ý<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾIAS<EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ĸ߶ȱ<EFBFBD>ߣ<EFBFBD>
* Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊվ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӿ<EFBFBD><EFBFBD>ο򣻸߶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><EFBFBD>ı<EFBFBD>ߣ<EFBFBD><EFBFBD>ù<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IN_CAL_SAMPLE
{
public NET_VCA_RECT struVcaRect; // Ŀ<><C4BF><EFBFBD><EFBFBD>
public NET_DVR_LINE_SEGMENT struLineSegment; // <20>߶ȱ궨<C8B1><EAB6A8>
}
public const int MAX_SAMPLE_NUM = 5;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BEHAVIOR_IN_CALIBRATION
{
public uint dwCalSampleNum; // <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SAMPLE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IN_CAL_SAMPLE[] struCalSample; // <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_CAMERA_PARAM struCameraParam; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int CALIB_PT_NUM = 4;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ITS_CALIBRATION
{
public uint dwPointNum; //<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CALIB_PT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_POINT[] struPoint; //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fWidth;
public float fHeight;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
// <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر궨<D8B1><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Է<EFBFBD><D4B7>ڸýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_CALIBRATION_PRARM_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 240, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>С
/*[FieldOffsetAttribute(0)]
public NET_DVR_PDC_CALIBRATION struPDCCalibration; //PDC <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
[FieldOffsetAttribute(0)]
public NET_DVR_BEHAVIOR_OUT_CALIBRATION struBehaviorOutCalibration; // <20><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><E2B3A1><EFBFBD><20><>ҪӦ<D2AA><D3A6><EFBFBD><EFBFBD>IVS<56><53>
[FieldOffsetAttribute(0)]
public NET_DVR_BEHAVIOR_IN_CALIBRATION struBehaviorInCalibration; // <20><>Ϊ<EFBFBD><CEAA><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>ҪӦ<D2AA><D3A6>IAS<41><53>
[FieldOffsetAttribute(0)]
public NET_DVR_ITS_CALIBRATION struITSCalibration;
* */
}
// <20><EFBFBD><EAB6A8><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CALIBRATION_CFG
{
public uint dwSize; //<2F><EFBFBD><EFBFBD><E1B9B9>С
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ñ궨
public byte byCalibrationType; // <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD> <20><><EFBFBD>ݲ<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>ͬ<EFBFBD>ı<20>ο<EFBFBD>CALIBRATE_TYPE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_CALIBRATION_PRARM_UNION uCalibrateParam; // <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_ENTER_DIRECTION
{
public NET_VCA_POINT struStartPoint; //<2F><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
public NET_VCA_POINT struEndPoint; // <20><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_RULE_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public byte byEnable; // <20>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD>;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_VCA_POLYGON struPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB7BD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_RULE_CFG_V41
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public byte byEnable; // <20>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD>;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_VCA_POLYGON struPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB7BD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_TIME_EX struDayStartTime; //<2F><><EFBFBD>ʼʱ<CABC>䣬ʱ<E4A3AC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
public NET_DVR_TIME_EX struNightStartTime; //ҹ<><D2B9><EFBFBD><EFBFBD>ʼʱ<CABC>䣬ʱ<E4A3AC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD>ð<EFBFBD><C3B0><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRIAL_VERSION_CFG
{
public uint dwSize;
public ushort wReserveTime; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3>ʱ<EFBFBD>䣬0xffff<66><66>ʾ<EFBFBD><CABE>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 62, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SYN_CHANNEL_NAME_PARAM
{
public uint dwSize;
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIME_SEGMENT
{
public NET_DVR_SIMPLE_DAYTIME struBeginTime; //begin time
public NET_DVR_SIMPLE_DAYTIME struEndTime; //end time
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLE_PLAN_SEGMENT
{
public byte byEnable; //whether to enable, 1-enable, 0-disable
public byte byDoorStatus; //door status(control ladder status),0-invaild, 1-always open(free), 2-always close(forbidden), 3-ordinary status(used by door plan)
public byte byVerifyMode; //verify method, 0-invaild, 1-swipe card, 2-swipe card +password(used by card verify ) 3-swipe card(used by card verify) 4-swipe card or password(used by card verify)
//5-fingerprint, 6-fingerprint and passwd, 7-fingerprint or swipe card, 8-fingerprint and swipe card, 9-fingerprint and passwd and swipe card,
//10-face or finger print or swipe card or password,11-face and finger print,12-face and password,13-face and swipe card,14-face,15-employee no and password,
//16-finger print or password,17-employee no and finger print,18-employee no and finger print and password,
//19-face and finger print and swipe card,20-face and password and finger print,21-employee no and face,22-face or face and swipe card
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_TIME_SEGMENT struTimeSegment; //time segment parameter
public void Init()
{
byRes = new byte[5];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WEEK_PLAN_CFG
{
public uint dwSize;
public byte byEnable; //whether to enable, 1-enable, 0-disable
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_PLAN_SEGMENT[] struPlanCfg; //week plan parameter
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
struPlanCfg = new NET_DVR_SINGLE_PLAN_SEGMENT[MAX_DAYS * MAX_TIMESEGMENT_V30];
foreach (NET_DVR_SINGLE_PLAN_SEGMENT singlStruPlanCfg in struPlanCfg)
{
singlStruPlanCfg.Init();
}
byRes1 = new byte[3];
byRes2 = new byte[16];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_PLAN_CFG
{
public uint dwSize;
public byte byEnable; //whether to enable, 1-enable, 0-disable
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_DATE struBeginDate; //holiday begin date
public NET_DVR_DATE struEndDate; //holiday end date
[MarshalAs(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SINGLE_PLAN_SEGMENT[] struPlanCfg; //time segment parameter
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)]
public byte[] byRes2;
public void Init()
{
struPlanCfg = new NET_DVR_SINGLE_PLAN_SEGMENT[MAX_TIMESEGMENT_V30];
foreach (NET_DVR_SINGLE_PLAN_SEGMENT singlStruPlanCfg in struPlanCfg)
{
singlStruPlanCfg.Init();
}
byRes1 = new byte[3];
byRes2 = new byte[16];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_GROUP_CFG
{
public uint dwSize;
public byte byEnable; //whether to enable, 1-enable, 0-disable
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = HOLIDAY_GROUP_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byGroupName; //holiday group name
[MarshalAs(UnmanagedType.ByValArray, SizeConst = MAX_HOLIDAY_PLAN_NUM, ArraySubType = UnmanagedType.U4)]
public uint[] dwHolidayPlanNo; //holiday plan No. fill in from the front side, invalid when meet zero.
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
byGroupName = new byte[HOLIDAY_GROUP_NAME_LEN];
dwHolidayPlanNo = new uint[MAX_HOLIDAY_PLAN_NUM];
byRes1 = new byte[3];
byRes2 = new byte[32];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLAN_TEMPLATE
{
public uint dwSize;
public byte byEnable; //whether to enable, 1-enable, 0-disable
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = TEMPLATE_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byTemplateName; //template name
public uint dwWeekPlanNo; //week plan no. 0 invalid
[MarshalAs(UnmanagedType.ByValArray, SizeConst = MAX_HOLIDAY_GROUP_NUM, ArraySubType = UnmanagedType.U4)]
public uint[] dwHolidayGroupNo; //holiday group. fill in from the front side, invalid when meet zero.
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public void Init()
{
byTemplateName = new byte[TEMPLATE_NAME_LEN];
dwHolidayGroupNo = new uint[MAX_HOLIDAY_GROUP_NUM];
byRes1 = new byte[3];
byRes2 = new byte[32];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_PLAN_COND
{
public uint dwSize;
public uint dwHolidayPlanNumber; //Holiday plan number
public ushort wLocalControllerID; //On the controller serial number [1, 64]
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 106, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes = new byte[106];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WEEK_PLAN_COND
{
public uint dwSize;
public uint dwWeekPlanNumber; //Week plan number
public ushort wLocalControllerID; //On the controller serial number [1, 64]
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 106, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes = new byte[106];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_GROUP_COND
{
public uint dwSize;
public uint dwHolidayGroupNumber; //Holiday group number
public ushort wLocalControllerID; //On the controller serial number [1, 64]
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 106, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes = new byte[106];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLAN_TEMPLATE_COND
{
public uint dwSize;
public uint dwPlanTemplateNumber; //Plan template number, starting from 1, the maximum value from the entrance guard capability sets
public ushort wLocalControllerID; //On the controller serial number[1,64], 0 is invalid
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 106, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes = new byte[106];
}
}
public const int MAX_TIMESEGMENT_V30 = 8; //Maximum number of time segments in 9000 DVR's guard schedule
public const int HOLIDAY_GROUP_NAME_LEN = 32; //holiday group name len
public const int MAX_HOLIDAY_PLAN_NUM = 16; //holiday max plan number
public const int TEMPLATE_NAME_LEN = 32; //plan template name len
public const int MAX_HOLIDAY_GROUP_NUM = 16; //plan template max group number
public const int NET_DVR_GET_WEEK_PLAN_CFG = 2100; //get door status week plan config
public const int NET_DVR_SET_WEEK_PLAN_CFG = 2101; //set door status week plan config
public const int NET_DVR_GET_DOOR_STATUS_HOLIDAY_PLAN = 2102; //get door status holiday week plan config
public const int NET_DVR_SET_DOOR_STATUS_HOLIDAY_PLAN = 2103; //set door status holiday week plan config
public const int NET_DVR_GET_DOOR_STATUS_HOLIDAY_GROUP = 2104; //get door holiday group parameter
public const int NET_DVR_SET_DOOR_STATUS_HOLIDAY_GROUP = 2105; //set door holiday group parameter
public const int NET_DVR_GET_DOOR_STATUS_PLAN_TEMPLATE = 2106; //get door status plan template parameter
public const int NET_DVR_SET_DOOR_STATUS_PLAN_TEMPLATE = 2107; //set door status plan template parameter
public const int NET_DVR_GET_VERIFY_WEEK_PLAN = 2124; //get reader card verfy week plan
public const int NET_DVR_SET_VERIFY_WEEK_PLAN = 2125; //set reader card verfy week plan
public const int NET_DVR_GET_CARD_RIGHT_WEEK_PLAN = 2126; //get card right week plan
public const int NET_DVR_SET_CARD_RIGHT_WEEK_PLAN = 2127; //set card right week plan
public const int NET_DVR_GET_VERIFY_HOLIDAY_PLAN = 2128; //get card reader verify holiday plan
public const int NET_DVR_SET_VERIFY_HOLIDAY_PLAN = 2129; //set card reader verify holiday plan
public const int NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN = 2130; //get card right holiday plan
public const int NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN = 2131; //set card right holiday plan
public const int NET_DVR_GET_VERIFY_HOLIDAY_GROUP = 2132; //get card reader verify holiday group
public const int NET_DVR_SET_VERIFY_HOLIDAY_GROUP = 2133; //set card reader verify holiday group
public const int NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP = 2134; //get card right holiday group
public const int NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP = 2135; //set card right holiday group
public const int NET_DVR_GET_VERIFY_PLAN_TEMPLATE = 2136; //get card reader verify plan template
public const int NET_DVR_SET_VERIFY_PLAN_TEMPLATE = 2137; //set card reader verify plan template
public const int NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE = 2138; //get card right plan template
public const int NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE = 2139; //set card right plan template
// V50
public const int NET_DVR_GET_CARD_RIGHT_WEEK_PLAN_V50 = 2304; //Access card right V50 weeks plan parameters
public const int NET_DVR_SET_CARD_RIGHT_WEEK_PLAN_V50 = 2305; //Set card right V50 weeks plan parameters
public const int NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN_V50 = 2310; //Access card right parameters V50 holiday plan
public const int NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN_V50 = 2311; //Set card right parameters V50 holiday plan
public const int NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP_V50 = 2316; //Access card right parameters V50 holiday group
public const int NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP_V50 = 2317; //Set card right parameters V50 holiday group
public const int NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE_V50 = 2322; //Access card right parameters V50 plan template
public const int NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE_V50 = 2323; //Set card right parameters V50 plan template
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RESET_COUNTER_CFG
{
public uint dwSize;
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_TIME_EX[] struTime;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬ʱ<E4A3AC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VCA_CTRLINFO_COND
{
public uint dwSize;
public NET_DVR_STREAM_INFO struStreamInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VCA_CTRLINFO_CFG
{
public uint dwSize;
public byte byVCAEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byVCAType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>VCA_CHAN_ABILITY_TYPE
public byte byStreamWithVCA; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public byte byMode; //ģʽ<C4A3><CABD>ATM <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>VCA_CHAN_MODE_TYPE ,TFS <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> TFS_CHAN_MODE_TYPE<50><45><EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>BEHAVIOR_SCENE_MODE_TYPE
public byte byControlType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
//byControlType &1 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>
//byControlType &2 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 83, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
}
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ڲ<EFBFBD><EFBFBD>ؼ<EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD>
* HUMAN_GENERATE_RATE
* Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶȲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PDC<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶȡ<EFBFBD><EFBFBD>ٶ<EFBFBD>Խ<EFBFBD>Ŀ<EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɡ<EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD>ԱȶȽϵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õĹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сʱ<EFBFBD><EFBFBD>Ӧ<EFBFBD>ӿ<EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶȣ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>©<EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>жԱȶȽϸ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ʱ<EFBFBD><EFBFBD>Ӧ<EFBFBD>ý<EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶȣ<EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶȲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD>Ϊ3<EFBFBD><EFBFBD>
*
* DETECT_SENSITIVE
* Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȿ<EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PDC<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򱻼<EFBFBD><EFBFBD><EFBFBD>ΪĿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>ױ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪĿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>Ѽ<EFBFBD><EFBFBD><EFBFBD>ΪĿ<EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD>ԱȶȽϵ<EFBFBD>ʱ<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD>߼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>©<EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>жԱȶȽϸ<EFBFBD>ʱ<EFBFBD><EFBFBD>Ӧ<EFBFBD>ý<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>Ĭ<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD>Ϊ3<EFBFBD><EFBFBD>
*
* TRAJECTORY_LEN
* <EFBFBD><EFBFBD><EFBFBD>ɳ<EFBFBD><EFBFBD>ȿ<EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱҪ<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>
* <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD>Ϊ3<EFBFBD><EFBFBD>
*
* TRAJECT_CNT_LEN
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȿ<EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱҪ<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>
* <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>󳤶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>󳤶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD>Ϊ3<EFBFBD><EFBFBD>
*
* PREPROCESS
* ͼ<EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0 - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1 - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD>Ϊ0<EFBFBD><EFBFBD>
*
* CAMERA_ANGLE
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 - <EFBFBD><EFBFBD>б<EFBFBD><EFBFBD> 1 - <EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD>Ϊ0<EFBFBD><EFBFBD>
*/
public enum PDC_PARAM_KEY
{
HUMAN_GENERATE_RATE = 50, // Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD> <20><>50<35><30>ʼ
DETECT_SENSITIVE = 51, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_TARGET_INFO
{
public uint dwTargetID; // Ŀ<><C4BF>id
public NET_VCA_RECT struTargetRect; // Ŀ<><C4BF><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_TARGET_IN_FRAME
{
public byte byTargetNum; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] yRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TARGET_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PDC_TARGET_INFO[] struTargetInfo; //Ŀ<><C4BF><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>֡ͳ<D6A1>ƽ<EFBFBD><C6BD><EFBFBD>ʱʹ<CAB1><CAB9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_STATFRAME
{
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 92, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_STATTIME
{
public NET_DVR_TIME tmStart; // ͳ<><CDB3><EFBFBD><EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME tmEnd; // ͳ<>ƽ<EFBFBD><C6BD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 92, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_PDCPARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 140, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_ALRAM_INFO
{
public uint dwSize; // PDC<44><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byMode; // 0 <20><>֡ͳ<D6A1>ƽ<EFBFBD><C6BD><EFBFBD> 1<><31>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>ͳ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>
public byte byChannel; // <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public UNION_PDCPARAM uStatModeParam;
public uint dwLeaveNum; // <20><EFBFBD><EBBFAA><EFBFBD><EFBFBD>
public uint dwEnterNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBrokenNetHttp; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־λ<D6BE><CEBB>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD>ݣ<EFBFBD>1-<2D>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>
public byte byRes3;
public ushort wDevInfoIvmsChannelEx; //<2F><>NET_VCA_DEV_INFO<46><4F><EFBFBD><EFBFBD>byIvmsChannel<65><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܱ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ͽͻ<CFBF><CDBB><EFBFBD><EFBFBD><EFBFBD>byIvmsChannel<65>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>255<35><35><EFBFBD>¿ͻ<C2BF><CDBB>˰汾<CBB0><E6B1BE>ʹ<EFBFBD><CAB9>wDevInfoIvmsChannelEx
public uint dwPassingNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD>û<EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwChildLeaveNum; // С<><D0A1><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD>
public uint dwChildEnterNum; // С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwDuplicatePeople; // <20>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD>
public uint dwXmlLen;//XML͸<4C><CDB8><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>, <20><>EventNotificationAlert XML Block<63><6B><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public IntPtr pXmlBuf; // XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>,<2C><>XML<4D><4C>Ӧ<EFBFBD><D3A6>EventNotificationAlert XML Block
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ѯ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PDC_QUERY
{
public NET_DVR_TIME tmStart;
public NET_DVR_TIME tmEnd;
public uint dwLeaveNum;
public uint dwEnterNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZ_POSITION
{
// <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD><C3B3><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣʱ<CFA2><CAB1>Ϊʹ<CEAA><CAB9>λ
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPtzPositionName; //<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PTZPOS struPtzPos; //ptz <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POSITION_RULE_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public NET_DVR_PTZ_POSITION struPtzPosition; // <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣ
public NET_VCA_RULECFG struVcaRuleCfg; //<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 80, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POSITION_RULE_CFG_V41
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public NET_DVR_PTZ_POSITION struPtzPosition; // <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣ
public NET_VCA_RULECFG_V41 struVcaRuleCfg; //<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTrackEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1;
public ushort wTrackDuration; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC>λs
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 76, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LIMIT_ANGLE
{
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_PTZPOS struUp; // <20><><EFBFBD><EFBFBD>λ
public NET_DVR_PTZPOS struDown; // <20><><EFBFBD><EFBFBD>λ
public NET_DVR_PTZPOS struLeft; // <20><><EFBFBD><EFBFBD>λ
public NET_DVR_PTZPOS struRight; // <20><><EFBFBD><EFBFBD>λ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POSITION_INDEX
{
public byte byIndex; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1;
public ushort wDwell; // ͣ<><CDA3>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_POSITION_NUM = 10;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POSITION_TRACK_CFG
{
public uint dwSize;
public byte byNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_POSITION_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_POSITION_INDEX[] struPositionIndex;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//Ѳ<><D1B2>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PATROL_SCENE_INFO
{
public ushort wDwell; // ͣ<><CDA3>ʱ<EFBFBD><CAB1> 30-300
public byte byPositionID; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-10<31><30>Ĭ<EFBFBD><C4AC>0<EFBFBD><30>ʾ<EFBFBD><CABE>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><E3B2BB><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PATROL_TRACKCFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PATROL_SCENE_INFO[] struPatrolSceneInfo; // Ѳ<><D1B2>·<EFBFBD><C2B7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD><D8B9><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRACK_PARAMCFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public ushort wAlarmDelayTime; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1>䣬Ŀǰ<C4BF><C7B0><EFBFBD><EFBFBD>ֻ֧<D6BB><D6A7>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ1-120<32><30>
public ushort wTrackHoldTime; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> <20><>Χ0-300<30><30>
public byte byTrackMode; // <20><><EFBFBD><EFBFBD> IPDOME_TRACK_MODE
public byte byPreDirection; // <20><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>
public byte byTrackSmooth; // <20><><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>
public byte byZoomAdjust; // <20><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>μ<EFBFBD><CEBC>±<EFBFBD>
public byte byMaxTrackZoom; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>,0-<2D><>ʾĬ<CABE>ϱ<EFBFBD><CFB1><EFBFBD>ϵ<EFBFBD><CFB5>,<2C>ȼ<EFBFBD>6-<2D>궨ֵ*1.0(Ĭ<><C4AC>),1-5Ϊ<35><CEAA>С<EFBFBD>궨ֵ<EAB6A8><D6B5>ֵԽС<D4BD><D0A1><EFBFBD><EFBFBD>С<EFBFBD>ı<EFBFBD><C4B1><EFBFBD>Խ<EFBFBD><D4BD>,7-15Ϊ<35>Ŵ<EFBFBD><C5B4><EFBFBD>ֵԽ<D6B5>󣬷Ŵ<F3A3ACB7><C5B4>ı<EFBFBD><C4B1><EFBFBD>Խ<EFBFBD><D4BD>
public byte byStopTrackWhenFindFace; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B5BD><EFBFBD>Ƿ<EFBFBD>ֹͣ 0-<2D><> 1-<2D><>
public byte byStopTrackThreshold; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>о<EFBFBD><D0BE><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DOME_MOVEMENT_PARAM
{
public ushort wMaxZoom; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 42, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
/********************************<2A><><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD>¼<EFBFBD> begin****************************************/
public const int MAX_REGION_NUM = 8; // <20><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int MAX_TPS_RULE = 8; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int MAX_AID_RULE = 8; // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
public const int MAX_LANE_NUM = 8; // <20><><EFBFBD>󳵵<EFBFBD><F3B3B5B5><EFBFBD>Ŀ
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public enum TRAFFIC_AID_TYPE
{
CONGESTION = 0x01, //ӵ<><D3B5>
PARKING = 0x02, //ͣ<><CDA3>
INVERSE = 0x04, //<2F><><EFBFBD><EFBFBD>
PEDESTRIAN = 0x08, //<2F><><EFBFBD><EFBFBD>
DEBRIS = 0x10, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ
SMOKE = 0x20, //<2F><><EFBFBD><EFBFBD>
OVERLINE = 0x40, //ѹ<><D1B9>
VEHICLE_CONTROL_LIST = 0x80, //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SPEED = 0x100 //<2F><><EFBFBD><EFBFBD>
}
public enum TRAFFIC_SCENE_MODE
{
FREEWAY = 0, // <20><><EFBFBD>ٻ<EFBFBD><D9BB><EFBFBD><E2B3A1>
TUNNEL, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BRIDGE // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
public enum ITS_ABILITY_TYPE
{
ITS_CONGESTION_ABILITY = 0x01, //ӵ<><D3B5>
ITS_PARKING_ABILITY = 0x02, //ͣ<><CDA3>
ITS_INVERSE_ABILITY = 0x04, //<2F><><EFBFBD><EFBFBD>
ITS_PEDESTRIAN_ABILITY = 0x08, //<2F><><EFBFBD><EFBFBD>
ITS_DEBRIS_ABILITY = 0x10, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ
ITS_SMOKE_ABILITY = 0x20, //<2F><><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>
ITS_OVERLINE_ABILITY = 0x40, //ѹ<><D1B9>
ITS_VEHICLE_CONTROL_LIST_ABILITY = 0x80, //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ITS_SPEED_ABILITY = 0x100, //<2F><><EFBFBD><EFBFBD>
ITS_LANE_VOLUME_ABILITY = 0x010000, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ITS_LANE_VELOCITY_ABILITY = 0x020000, //<2F><><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ٶ<EFBFBD>
ITS_TIME_HEADWAY_ABILITY = 0x040000, //<2F><>ͷʱ<CDB7><CAB1>
ITS_SPACE_HEADWAY_ABILITY = 0x080000, //<2F><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
ITS_TIME_OCCUPANCY_RATIO_ABILITY = 0x100000, //<2F><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>)
ITS_SPACE_OCCUPANCY_RATIO_ABILITY = 0x200000, //<2F><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>)
ITS_LANE_QUEUE_ABILITY = 0x400000, //<2F>Ŷӳ<C5B6><D3B3><EFBFBD>
ITS_VEHICLE_TYPE_ABILITY = 0x800000, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ITS_TRAFFIC_STATE_ABILITY = 0x1000000 //<2F><>ͨ״̬
}
// <20><>ͨͳ<CDA8>Ʋ<EFBFBD><C6B2><EFBFBD>
public enum ITS_TPS_TYPE
{
LANE_VOLUME = 0x01, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LANE_VELOCITY = 0x02, //<2F><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
TIME_HEADWAY = 0x04, //<2F><>ͷʱ<CDB7><CAB1>
SPACE_HEADWAY = 0x08, //<2F><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
TIME_OCCUPANCY_RATIO = 0x10, //<2F><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><><CAB1><EFBFBD><EFBFBD>)
SPACE_OCCUPANCY_RATIO = 0x20, //<2F><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>(<28>ռ<EFBFBD><D5BC><EFBFBD>)
QUEUE = 0x40, //<2F>Ŷӳ<C5B6><D3B3><EFBFBD>
VEHICLE_TYPE = 0x80, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TRAFFIC_STATE = 0x100 //<2F><>ͨ״̬
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_REGION_LIST
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_REGION_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_POLYGON[] struPolygon; // <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DIRECTION
{
public NET_VCA_POINT struStartPoint; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
public NET_VCA_POINT struEndPoint; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_LANE
{
public byte byEnable; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLaneName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_DIRECTION struFlowDirection;// <20><><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LANE_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LANE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_LANE[] struLane; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AID_PARAM
{
public ushort wParkingDuration; // Υͣ<CEA5><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10-120s
public ushort wPedestrianDuration; // <20><><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>ʱ<EFBFBD><CAB1> 1-120s
public ushort wDebrisDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 10-120s
public ushort wCongestionLength; // ӵ<>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD>ֵ 5-200<30><30><EFBFBD>ף<EFBFBD>
public ushort wCongestionDuration; // ӵ<>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10-120s
public ushort wInverseDuration; // <20><><EFBFBD>г<EFBFBD><D0B3><EFBFBD>ʱ<EFBFBD><CAB1> 1-10s
public ushort wInverseDistance; // <20><><EFBFBD>о<EFBFBD><D0BE><EFBFBD><EFBFBD><EFBFBD>ֵ <20><>λm <20><>Χ[2-100] Ĭ<><C4AC> 10<31><30>
public ushort wInverseAngleTolerance; // <20><><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>ƫ<EFBFBD><C6AB> 90-180<38><30>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļн<C4BC>
public ushort wIllegalParkingTime; // Υͣʱ<CDA3><CAB1>[4,60]<5D><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ,TFS(<28><>ͨΥ<CDA8><CEA5>ȡ֤) <20><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>
public ushort wIllegalParkingPicNum; // ΥͣͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>[1,6], TFS(<28><>ͨΥ<CDA8><CEA5>ȡ֤) <20><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>
public byte byMergePic; // ͼƬƴ<C6AC><C6B4>,TFS <20><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD> 0- <20><>ƴ<EFBFBD><C6B4> 1- ƴ<><C6B4>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_AID_RULE
{
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwEventType; // <20><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TRAFFIC_AID_TYPE
public NET_VCA_SIZE_FILTER struSizeFilter; // <20>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_AID_PARAM struAIDParam; // <20>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AID_RULECFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byPicProType; //<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_JPEGPARA struPictureParam; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AID_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_AID_RULE[] struOneAIDRule;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_AID_RULE_V41
{
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwEventType; // <20><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TRAFFIC_AID_TYPE
public NET_VCA_SIZE_FILTER struSizeFilter; // <20>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_AID_PARAM struAIDParam; // <20>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;// <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IVMS_IP_CHANNEL, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AID_RULECFG_V41
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byPicProType; // <20><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_JPEGPARA struPictureParam; // ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_AID_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_AID_RULE_V41[] struAIDRule; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ͨͳ<CDA8>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_TPS_RULE
{
public byte byEnable; //<2F>Ƿ<EFBFBD>ʹ<EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byLaneID; //<2F><><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwCalcType; //ͳ<>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITS_TPS_TYPE
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struVitrualLoop; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ,һ<><D2BB>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD>Ҫ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_RULECFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TPS_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_TPS_RULE[] struOneTpsRule; // <20>±<EFBFBD><C2B1><EFBFBD>Ӧ<EFBFBD><D3A6>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨͳ<CDA8>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><E1B9B9>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_TPS_RULE_V41
{
public byte byEnable; //<2F>Ƿ<EFBFBD>ʹ<EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byLaneID; //<2F><><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwCalcType; // ͳ<>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITS_TPS_TYPE
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struVitrualLoop; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_RULECFG_V41
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TPS_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_TPS_RULE_V41[] struOneTpsRule; // <20>±<EFBFBD><C2B1><EFBFBD>Ӧ<EFBFBD><D3A6>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD>
}
//ʵʱ<CAB5><CAB1>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_PARAM
{
public byte byStart; // <20><>ʼ<EFBFBD><CABC>
public byte byCMD; // <20><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>01-<2D><><EFBFBD><EFBFBD>ָ<EFBFBD>02-<2D>뿪ָ<EBBFAA>03-ӵ<><D3B5>״ָ̬<CCAC><D6B8>(Ϊ03ʱ<33><CAB1>ֻ<EFBFBD><D6BB>byLaneState<74><65>byQueueLen<65><6E>Ч)<29><>04-<2D><><EFBFBD><EFBFBD>Ȧ״̬<D7B4><CCAC>Ϊ04ʱ<34><CAB1>wLoopState<74><65>wStateMask<73><6B>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>ʾbyLane<6E><65><EFBFBD><EFBFBD><EFBFBD>϶<EFBFBD><CFB6><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>״̬<D7B4><CCAC>
public ushort wSpaceHeadway; //<2F><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDeviceID; // <20>豸ID
public ushort wDataLen; // <20><><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public byte byLane; // <20><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySpeed; // <20><>Ӧ<EFBFBD><D3A6><EFBFBD>٣<EFBFBD>KM/H<><48>
public byte byLaneState; // <20><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-<2D><>״̬<D7B4><CCAC>1-<2D><>ͨ<EFBFBD><CDA8>2-ӵ<><D3B5><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD>
public byte byQueueLen; // <20><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD>Ŷӳ<C5B6><D3B3>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD>50<35>ף<EFBFBD>
public ushort wLoopState; //<2F><>Ȧ״̬<D7B4><CCAC><EFBFBD>ڼ<EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD>ŴӾ<C5B4>ͷ<EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬1-<2D><><EFBFBD>0-<2D>
public ushort wStateMask; //<2F><>Ȧ״̬<D7B4><CCAC><EFBFBD><EFBFBD><EBA3AC><EFBFBD><EFBFBD>λΪ1<CEAA><31>ӦwLoopState״̬λ<CCAC><CEBB>Ч<EFBFBD><D0A7>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>Ч
public uint dwDownwardFlow; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD> <20><><EFBFBD>ϵ<EFBFBD><CFB5>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD>
public uint dwUpwardFlow; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD> <20><><EFBFBD>µ<EFBFBD><C2B5>ϳ<EFBFBD><CFB3><EFBFBD><EFBFBD><EFBFBD>
public byte byJamLevel; //ӵ<>µȼ<C2B5><C8BC><EFBFBD><EFBFBD><EFBFBD>byLaneStateΪ3ʱ<33><CAB1>Ч<EFBFBD><D0A7>1-<2D><><EFBFBD>ȣ<EFBFBD>2-<2D>жȣ<D0B6>3-<2D>ض<EFBFBD>
public byte byVehicleDirection; //0-δ֪<CEB4><D6AA>1-<2D><><EFBFBD>϶<EFBFBD><CFB6>£<EFBFBD>2-<2D><><EFBFBD><EFBFBD><C2B6><EFBFBD>
public byte byJamFlow; //ӵ<><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ۼƳ<DBBC><C6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public ushort wTimeHeadway; // <20><>ͷʱ<CDB7><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LLI_PARAM
{
public float fSec;//<2F><>[0.000000,60.000000]
public byte byDegree;//<2F><>:γ<><CEB3>[0,90] <20><><EFBFBD><EFBFBD>[0,180]
public byte byMinute;//<2F><>[0,59]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LLPOS_PARAM
{
public byte byLatitudeType;//γ<><CEB3><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>γ<EFBFBD><CEB3>1-<2D><>γ
public byte byLongitudeType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_LLI_PARAM struLatitude; /*γ<><CEB3>*/
public NET_DVR_LLI_PARAM struLongitude; /*<2A><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//TPS<50><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_ADDINFO
{
public NET_DVR_LLPOS_PARAM struLLPos;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD>γ<EFBFBD><CEB3>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣ(byLaneState=3<><33>byQueueLen>0ʱ<30>ŷ<EFBFBD><C5B7><EFBFBD>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 1024, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//TPSʵʱ<CAB5><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_REAL_TIME_INFO
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChan;//ͨ<><CDA8><EFBFBD><EFBFBD>
public NET_DVR_TIME_V30 struTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_TPS_PARAM struTPSRealTimeInfo;// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD>Ϣ
public IntPtr pAddInfoBuffer;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>NET_DVR_TPS_ADDINFO<46><EFBFBD>壩,0-<2D>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>Ϣ, 1-<2D>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>*/
public byte byAddInfoFlag;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD>
}
//ͳ<><CDB3><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_LANE_PARAM
{
public byte byLane; // <20><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySpeed; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ٶ<EFBFBD>
public ushort wArrivalFlow; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwLightVehicle; // С<>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD>
public uint dwMidVehicle; // <20><><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD>
public uint dwHeavyVehicle; // <20><><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD>
public uint dwTimeHeadway; // <20><>ͷʱ<CDB7><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwSpaceHeadway; // <20><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fSpaceOccupyRation; // <20>ռ<EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*1000
public float fTimeOccupyRation; // ʱ<><CAB1>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*1000
public byte byStoppingTimes; //ƽ<><C6BD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byQueueLen; // <20><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD>Ŷӳ<C5B6><D3B3>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD>50<35>ף<EFBFBD>
public byte byFlag; //<2F>ϴ<EFBFBD><CFB4><EFBFBD>ʶ<EFBFBD><CAB6>0-<2D><>ʾT1ʱ<31><CAB1><EFBFBD><EFBFBD>ͳ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>,1-<2D><>ʾT2ʱ<32><CAB1><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>
public byte byVehicelNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDelay; //ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD>
public uint dwNonMotor; // <20>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_STATISTICS_PARAM
{
public byte byStart; // <20><>ʼ<EFBFBD><CABC>
public byte byCMD; // <20><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD> 08-<2D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // Ԥ<><D4A4><EFBFBD>ֽ<EFBFBD>
public ushort wDeviceID; // <20>豸ID
public ushort wDataLen; // <20><><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public byte byTotalLaneNum; // <20><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_TIME_V30 struStartTime; //ͳ<>ƿ<EFBFBD>ʼʱ<CABC><CAB1>
public uint dwSamplePeriod; //ͳ<><CDB3>ʱ<EFBFBD><CAB1>,<2C><>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TPS_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_TPS_LANE_PARAM[] struLaneParam;
}
//TPSͳ<53>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_STATISTICS_INFO
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChan;//ͨ<><CDA8><EFBFBD><EFBFBD>
public NET_DVR_TPS_STATISTICS_PARAM struTPSStatisticsInfo;// <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD>
}
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AID_INFO
{
public byte byRuleID; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD>±꣬0-16
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwAIDType; // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_DIRECTION struDirect; // <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySpeedLimit; //<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λkm/h[0,255]
public byte byCurrentSpeed; //<2F><>ǰ<EFBFBD>ٶ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λkm/h[0,255]
public byte byVehicleEnterState;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ 0-<2D><>Ч 1-ʻ<><CABB> 2-ʻ<><CABB>
public byte byState; //0-<2D><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>1-<2D><>Ѳ<EFBFBD>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byParkingID; //ͣ<><CDA3>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AID_ALARM
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; // ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_AID_INFO struAIDInfo; // <20><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>Ϣ
public uint dwPicDataLen; // <20><><EFBFBD><EFBFBD>ͼƬ<CDBC>ij<EFBFBD><C4B3><EFBFBD> Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pImage; // ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨȡ֤<C8A1><D6A4><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TFS_ALARM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwIllegalType; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>ù<EFBFBD><C3B9><EFBFBD><EFBFBD><E5A3AC>dwIllegalTypeֵΪ0xffffffffʱʹ<CAB1><CAB9>byIllegalCode
public uint dwIllegalDuration; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3A8>λ<EFBFBD><CEBB><EFBFBD>룩 = ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC>ʱ<EFBFBD><CAB1> - ץ<>ĵ<EFBFBD>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MONITORSITE_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitoringSiteID;//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>·<EFBFBD>ڱ<EFBFBD><DAB1>š<EFBFBD><C5A1>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD>ţ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DEVICE_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDeviceID; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_SCENE_INFO struSceneInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_DVR_TIME_EX struBeginRecTime; //¼<><C2BC><EFBFBD><EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME_EX struEndRecTime; //¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_AID_INFO struAIDInfo; //<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>Ϣ
public NET_DVR_PLATE_INFO struPlateInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_DVR_VEHICLE_INFO struVehicleInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public uint dwPicNum; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.Struct)]
public NET_ITS_PICTURE_INFO[] struPicInfo; //ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38>
public byte bySpecificVehicleType; //<2F><><EFBFBD><EFBFBD><E5B3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ο<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>VTR_RESULT
public byte byLaneNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_TIME_V30 struTime;//<2F>ֶ<EFBFBD><D6B6><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>ǰʱ<C7B0>
public uint dwSerialNo;//<2F><><EFBFBD>ţ<EFBFBD>
public byte byVehicleAttribute;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0- <20>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>ͨ<EFBFBD><CDA8>)<29><>bit1- <20>Ʊ공(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>־)<29><>bit2- Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>0- <20><><EFBFBD><EFBFBD>1- <20><>
public byte byPilotSafebelt;//0-<2D><>ʾδ֪,1-ϵ<><CFB5>ȫ<EFBFBD><C8AB>,2-<2D><>ϵ<EFBFBD><CFB5>ȫ<EFBFBD><C8AB>
public byte byCopilotSafebelt;//0-<2D><>ʾδ֪,1-ϵ<><CFB5>ȫ<EFBFBD><C8AB>,2-<2D><>ϵ<EFBFBD><CFB5>ȫ<EFBFBD><C8AB>
public byte byPilotSunVisor;//0-<2D><>ʾδ֪,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCopilotSunVisor;//0-<2D><>ʾδ֪, 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPilotCall;// 0-<2D><>ʾδ֪, 1-<2D><><EFBFBD><EFBFBD><EFBFBD>绰,2-<2D><><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ILLEGAL_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byIllegalCode;//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>dwIllegalTypeֵΪ0xffffffff<66><66>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
public ushort wCountry; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ,<2C><><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>COUNTRY_INDEX
public byte byRegion; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-ŷ<><C5B7>(Europe Region)<29><>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Russian Region)<29><>3-ŷ<><C5B7>&<26><><EFBFBD><EFBFBD>˹(EU&CIS) , 4-<2D>ж<EFBFBD><D0B6><EFBFBD>Middle East<73><74><EFBFBD><EFBFBD>0xff-<2D><><EFBFBD><EFBFBD>
public byte byCrossLine;//<2F>Ƿ<EFBFBD>ѹ<EFBFBD><D1B9>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>෽ͣ<E0B7BD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><>ʾδ֪<CEB4><D6AA>1-<2D><>ѹ<EFBFBD>ߣ<EFBFBD>2-ѹ<><D1B9>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIAL_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byParkingSerialNO;//<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
public byte byCrossSpaces;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><E7B2B4>λͣ<CEBB><CDA3><EFBFBD><EFBFBD><EFBFBD>෽ͣ<E0B7BD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><>ʾδ֪<CEB4><D6AA>1-δ<><EFBFBD><E7B2B4>λͣ<CEBB><CDA3><EFBFBD><EFBFBD>2-<2D><EFBFBD><E7B2B4>λͣ<CEBB><CDA3>
public byte byAngledParking;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>бͣ<D0B1><CDA3><EFBFBD><EFBFBD><EFBFBD>෽ͣ<E0B7BD><CDA3><EFBFBD><EFBFBD>, 0-<2D><>ʾδ֪<CEB4><D6AA>1-δ<><CEB4>бͣ<D0B1><CDA3><EFBFBD><EFBFBD>2-<2D><>бͣ<D0B1><CDA3>
public byte byAlarmValidity;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷȣ<C5B6><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʻ<EFBFBD><CABB>ʻ<EFBFBD><CABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷȣ<C5B6><C8A3><EFBFBD>Χ0-100<30><30><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD>Խ<EFBFBD>ߣ<EFBFBD><DFA3>¼<EFBFBD><C2BC><EFBFBD>ʵ<EFBFBD><CAB5>Խ<EFBFBD><D4BD>
public byte byDoorsStatus;//<2F><><EFBFBD><EFBFBD>״̬ 0-<2D><><EFBFBD>Źر<C5B9> 1-<2D><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>
public uint dwXmlLen;//XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
public IntPtr pXmlBuf; // XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>,<2C><>XML<4D><4C>Ӧ<EFBFBD><D3A6>EventNotificationAlert XML Block
//[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
//public byte[] byRes3; //32λSDK<44><4B>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>ֽڶ<D6BD><DAB6><EFBFBD>
public byte byVehicleHeadTailStatus;//<2F><>ͷ<EFBFBD><CDB7>β״̬ 0-<2D><><EFBFBD><EFBFBD> 1-<2D><>ͷ 2-<2D><>β
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>нṹ<D0BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LANE_QUEUE
{
public NET_VCA_POINT struHead; //<2F><><EFBFBD><EFBFBD>ͷ
public NET_VCA_POINT struTail; //<2F><><EFBFBD><EFBFBD>β
public uint dwLength; //ʵ<>ʶ<EFBFBD><CAB6>г<EFBFBD><D0B3><EFBFBD> <20><>λΪ<CEBB><CEAA> [0-500]
}
public enum TRAFFIC_DATA_VARY_TYPE
{
NO_VARY, //<2F>ޱ仯
VEHICLE_ENTER, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ
VEHICLE_LEAVE, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ
UEUE_VARY //<2F><><EFBFBD>б
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LANE_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRuleID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD>±꣬0-7
public byte byVaryType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BBAF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> TRAFFIC_DATA_VARY_TYPE
public byte byLaneType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1;
public uint dwLaneVolume; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ͳ<EFBFBD><CDB3><EFBFBD>ж<EFBFBD><D0B6>ٳ<EFBFBD><D9B3><EFBFBD>ͨ<EFBFBD><CDA8>
public uint dwLaneVelocity; //<2F><><EFBFBD><EFBFBD><EFBFBD>ٶȣ<D9B6><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwTimeHeadway; //<2F><>ͷʱ<CDB7><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwSpaceHeadway; //<2F><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fSpaceOccupyRation; //<2F><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>)
public NET_DVR_LANE_QUEUE struLaneQueue; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>
public NET_VCA_POINT struRuleLocation; //<2F><>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_INFO
{
public uint dwLanNum; // <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TPS_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_LANE_PARAM[] struLaneParam;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_ALARM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_TPS_INFO struTPSInfo; //<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public enum TRAFFIC_DATA_VARY_TYPE_EX_ENUM
{
ENUM_TRAFFIC_VARY_NO = 0x00, //<2F>ޱ仯
ENUM_TRAFFIC_VARY_VEHICLE_ENTER = 0x01, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ
ENUM_TRAFFIC_VARY_VEHICLE_LEAVE = 0x02, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBFAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ
ENUM_TRAFFIC_VARY_QUEUE = 0x04, //<2F><><EFBFBD>б
ENUM_TRAFFIC_VARY_STATISTIC = 0x08, //ͳ<><CDB3><EFBFBD><EFBFBD><EFBFBD>ݱ仯<DDB1><E4BBAF>ÿ<EFBFBD><C3BF><EFBFBD>ӱ仯һ<E4BBAF>ΰ<EFBFBD><CEB0><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ٶȣ<D9B6><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><><CAB1>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>ͨ״̬<D7B4><CCAC>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LANE_PARAM_V41
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRuleID; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD>±꣬0-7
public byte byLaneType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>
public byte byTrafficState; // <20><><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD>ͨ״̬<D7B4><CCAC>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>ͨ<EFBFBD><CDA8>2-ӵ<><D3B5><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD>
public byte byRes1; // <20><><EFBFBD><EFBFBD>
public uint dwVaryType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BBAF><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD> TRAFFIC_DATA_VARY_TYPE_EX_ENUM<55><4D><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
public uint dwTpsType; // <20><><EFBFBD>ݱ仯<DDB1><E4BBAF><EFBFBD>ͱ<EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ǰ<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>ͳ<EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITS_TPS_TYPE,<2C><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
public uint dwLaneVolume; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD>ж<EFBFBD><D0B6>ٳ<EFBFBD><D9B3><EFBFBD>ͨ<EFBFBD><CDA8>
public uint dwLaneVelocity; // <20><><EFBFBD><EFBFBD><EFBFBD>ٶȣ<D9B6><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwTimeHeadway ; // <20><>ͷʱ<CDB7><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwSpaceHeadway; // <20><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><E0A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fSpaceOccupyRation; // <20><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>)
public float fTimeOccupyRation; // ʱ<><CAB1>ռ<EFBFBD><D5BC><EFBFBD>ʣ<EFBFBD><CAA3>ٷֱȼ<D6B1><C8BC><EFBFBD>
public uint dwLightVehicle; // С<>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD>
public uint dwMidVehicle; // <20><><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD>
public uint dwHeavyVehicle; // <20><><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_LANE_QUEUE struLaneQueue; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>
public NET_VCA_POINT struRuleLocation; // <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_INFO_V41
{
public uint dwLanNum; // <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TPS_RULE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_LANE_PARAM_V41[] struLaneParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACEDETECT_RULECFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
public byte byEventType; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD> 0-<2D><EFBFBD><ECB3A3><EFBFBD><EFBFBD>; 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;2-<2D><EFBFBD><ECB3A3><EFBFBD><EFBFBD>&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
public byte byUpLastAlarm; //2011-04-06 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>εı<CEB5><C4B1><EFBFBD>
public byte byUpFacePic; //<2F>Ƿ<EFBFBD><C7B7>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName;
public NET_VCA_POLYGON struVcaPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicProType; //<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
public byte bySensitivity; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ֵ
public NET_DVR_JPEGPARA struPictureParam; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byPicRecordEnable; /*2012-3-1<>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC>洢, 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1-<2D><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 39, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_PIPCFG
{
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>
public byte byBackChannel; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte byPosition; //<2F><><EFBFBD><EFBFBD>λ<EFBFBD>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>,2-<2D><><EFBFBD><EFBFBD>,3-<2D><><EFBFBD><EFBFBD>
public byte byPIPDiv; //<2F><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:<3A><><EFBFBD><EFBFBD><E5BBAD>)<29><>0-1:4,1-1:9,2-1:16
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACEDETECT_RULECFG_V41
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
public byte byEventType; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD> 0-<2D><EFBFBD><ECB3A3><EFBFBD><EFBFBD>; 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;2-<2D><EFBFBD><ECB3A3><EFBFBD><EFBFBD>&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
public byte byUpLastAlarm; //2011-04-06 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>εı<CEB5><C4B1><EFBFBD>
public byte byUpFacePic; //<2F>Ƿ<EFBFBD><C7B7>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName;
public NET_VCA_POLYGON struVcaPolygon; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicProType; //<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
public byte bySensitivity; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDuration; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ֵ
public NET_DVR_JPEGPARA struPictureParam; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byPicRecordEnable; /*2012-10-22<32>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC>洢, 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1-<2D><><EFBFBD><EFBFBD>*/
public byte byRes1;
public ushort wAlarmDelay; //2012-10-22<32><32><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>0-5s,1-10,2-30s,3-60s,4-120s,5-300s,6-600s
public NET_DVR_FACE_PIPCFG struFacePIP; //2012-11-7<><37><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 28, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACEDETECT_ALARM
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_TARGET_INFO struTargetInfo; //<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>Ϣ
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public uint dwPicDataLen; //<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC>ij<EFBFBD><C4B3><EFBFBD> Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>*/
public byte byAlarmPicType; // 0-<2D><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ 1- <20><><EFBFBD><EFBFBD>ͼƬ,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPanelChan; /*2012-3-1<><31><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwFacePicDataLen; //<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC>ij<EFBFBD><C4B3><EFBFBD> Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 48, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public IntPtr pFaceImage; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼָ<CDBC><D6B8>
public IntPtr pImage; //ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EVENT_PARAM_UNION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.U4)]
public uint[] uLen; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>СΪ12<31>ֽ<EFBFBD>
public uint dwHumanIn; //<2F><><EFBFBD><EFBFBD><EFBFBD>˽ӽ<CBBD> 0 - <20><><EFBFBD><EFBFBD> 1- <20><><EFBFBD><EFBFBD>
public float fCrowdDensity; // <20><>Ա<EFBFBD>ۼ<EFBFBD>ֵ
}
//Ŀǰֻ<C7B0><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>ۼ<EFBFBD><DBBC>¼<EFBFBD>ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EVENT_INFO
{
public byte byRuleID; // Rule ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRuleName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwEventType; // <20><><EFBFBD><EFBFBD>VCA_EVENT_TYPE
public NET_DVR_EVENT_PARAM_UNION uEventParam; //
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EVENT_INFO_LIST
{
public byte byNum; // <20>¼<EFBFBD>ʵʱ<CAB5><CAB1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RULE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_EVENT_INFO[] struEventInfo; // <20>¼<EFBFBD>ʵʱ<CAB5><CAB1>Ϣ
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RULE_INFO_ALARM
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; // ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_EVENT_INFO_LIST struEventInfoList; //<2F>¼<EFBFBD><C2BC><EFBFBD>Ϣ<EFBFBD>б<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_SCENE_TIME
{
public byte byActive; //0 -<2D><>Ч,1<>C<EFBFBD><43>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwSceneID; //<2F><><EFBFBD><EFBFBD>ID
public NET_DVR_SCHEDTIME struEffectiveTime; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Чʱ<D0A7><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Чʱ<D0A7><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCENE_TIME_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SCENE_TIMESEG_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_SCENE_TIME[] struSceneTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_SCENE_CFG
{
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>øó<C3B8><C3B3><EFBFBD>,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1- <20><><EFBFBD><EFBFBD>
public byte byDirection; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> 1-<2D><><EFBFBD>У<EFBFBD>2-<2D><><EFBFBD>У<EFBFBD>3-˫<><CBAB><EFBFBD><EFBFBD>4-<2D>ɶ<EFBFBD><C9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-<2D><><EFBFBD><EFBFBD><EFBFBD>򱱣<EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD>򶫣<EFBFBD>7-<2D>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD>ϣ<EFBFBD>8-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwSceneID; //<2F><><EFBFBD><EFBFBD>ID(ֻ<><D6BB>), 0 - <20><>ʾ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] bySceneName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PTZPOS struPtzPos; //ptz <20><><EFBFBD><EFBFBD>
public uint dwTrackTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>[5,300] <20>룬TFS(<28><>ͨȡ֤)ģʽ<C4A3><CABD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCENE_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ITS_SCENE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_SCENE_CFG[] struSceneCfg; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><EFBFBD><E0B3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCENE_COND
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public Int32 lChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwSceneID; //<2F><><EFBFBD><EFBFBD>ID, 0-<2D><>ʾ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 48, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//ȡ֤<C8A1><D6A4>ʽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FORENSICS_MODE
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public byte byMode; // 0-<2D>ֶ<EFBFBD>ȡ֤ ,1-<2D>Զ<EFBFBD>ȡ֤
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCENE_INFO
{
public uint dwSceneID; //<2F><><EFBFBD><EFBFBD>ID, 0 - <20><>ʾ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] bySceneName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDirection; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> 1-<2D><><EFBFBD>У<EFBFBD>2-<2D><><EFBFBD>У<EFBFBD>3-˫<><CBAB><EFBFBD><EFBFBD>4-<2D>ɶ<EFBFBD><C9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-<2D><><EFBFBD><EFBFBD><EFBFBD>򱱣<EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD>򶫣<EFBFBD>7-<2D>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD>ϣ<EFBFBD>8-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_PTZPOS struPtzPos; //Ptz <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2 ; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AID_ALARM_V41
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_AID_INFO struAIDInfo; //<2F><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>Ϣ
public NET_DVR_SCENE_INFO struSceneInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pImage; //ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
// 0-<2D><><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>ϴ<EFBFBD>; 1-<2D>ƴ洢<C6B4><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>URL(3.7Ver)ԭ<>ȵ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>URL<52><4C><EFBFBD>ݣ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD>URL<52><4C><EFBFBD><EFBFBD>
public byte byDataType;
public byte byLaneNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMilliSecond; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>·<EFBFBD>ڱ<EFBFBD><DAB1>š<EFBFBD><C5A1>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD>ţ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MONITORSITE_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitoringSiteID;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DEVICE_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDeviceID;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public uint dwXmlLen;//XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
public IntPtr pXmlBuf;// XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>,<2C><>XML<4D><4C>Ӧ<EFBFBD><D3A6>EventNotificationAlert XML Block
public byte byTargetType;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0~δ֪<CEB4><D6AA>1~<7E><><EFBFBD>ˡ<EFBFBD>2~<7E><><EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD>3~<7E><><EFBFBD>ֳ<EFBFBD>(<28><><EFBFBD>˼<EFBFBD><CBBC><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 19, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ͨͳ<CDA8><CDB3><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>(<28><>չ)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TPS_ALARM_V41
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; // ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_TPS_INFO_V41 struTPSInfo; // <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VCA_VERSION
{
public ushort wMajorVersion; // <20><><EFBFBD><EFBFBD><E6B1BE>
public ushort wMinorVersion; // <20>ΰ汾<CEB0><E6B1BE>
public ushort wRevisionNumber; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wBuildNumber; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wVersionYear; // <09><EFBFBD><E6B1BE><EFBFBD><EFBFBD>-<2D><>
public byte byVersionMonth; // <09><EFBFBD><E6B1BE><EFBFBD><EFBFBD>-<2D><>
public byte byVersionDay; // <09><EFBFBD><E6B1BE><EFBFBD><EFBFBD>-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
/*******************************<2A><><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD>¼<EFBFBD> end*****************************************/
/******************************<2A><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6> begin******************************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLATE_PARAM
{
public byte byPlateRecoMode; //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>ģʽ<><C4AC>Ϊ1(<28><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ)
public byte byBelive; /*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD><EFBFBD><EFBFBD>ֵ, ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ, <EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD>󴥷<EFBFBD><EFBFBD>ʸ߾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ©<EFBFBD><EFBFBD><EFBFBD>ʸ߾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>80-90<EFBFBD><EFBFBD>Χ<EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 22, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLATECFG
{
public uint dwSize;
public uint dwEnable; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6> 0<><30><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD> */
public byte byPicProType; //<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_JPEGPARA struPictureParam; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_PLATE_PARAM struPlateParam; // <20><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_HANDLEEXCEPTION struHandleType; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӽṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLATE_INFO
{
public byte byPlateType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byColor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
public byte byBright; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byLicenseLen; //<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>
public byte byEntireBelieve;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>Ŷȣ<C5B6>0-100
public byte byRegion; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-ŷ<><C5B7>(EU)<29><>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(ER)<29><>3-ŷ<><C5B7>&<26><><EFBFBD><EFBFBD>˹(EU&CIS) ,4-<2D>ж<EFBFBD>(ME),0xff-<2D><><EFBFBD><EFBFBD>
public byte byCountry; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>COUNTRY_INDEX<45><58><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>"COUNTRY_ALL = 0xff, //ALL ȫ<><C8AB>"<22><>
public byte byArea; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʡ<EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>٣<EFBFBD><D9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> EMI_AREA
public byte byPlateSize; //<2F><><EFBFBD>Ƴߴ磬0~δ֪<CEB4><D6AA>1~long, 2~short(<28>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CATEGORY_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPlateCategory;//<2F><><EFBFBD>Ƹ<EFBFBD><C6B8><EFBFBD><EFBFBD><EFBFBD>Ϣ, <20><><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD>Աߵ<D4B1>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>(Ŀǰֻ<C7B0><D6BB><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>)
public uint dwXmlLen; //XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
public IntPtr pXmlBuf; // XML<4D><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ COMM_ITS_PLATE_RESULʱ<4C><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>XML<4D><4C>Ӧ<EFBFBD><D3A6>EventNotificationAlert XML Block
public NET_VCA_RECT struPlateRect; //<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LICENSE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLicense; //<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LICENSE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byBelieve; //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷȣ<C5B6><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B5BD><EFBFBD><EFBFBD>"<22><>A12345", <20><><EFBFBD>Ŷ<EFBFBD>Ϊ,20,30,40,50,60,70<37><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ"<22><>"<22><><EFBFBD><EFBFBD>ȷ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB>%<25><>"A"<22>ֵ<EFBFBD><D6B5><EFBFBD>ȷ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLATERECO_RESULE
{
public uint dwSize;
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; // ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public NET_DVR_PLATE_INFO struPlateInfo;
public uint dwPicDataLen; //<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC>ij<EFBFBD><C4B3><EFBFBD> Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
public IntPtr pImage; //ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
}
/******************************<2A><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6> end******************************************/
/******************************ץ<>Ļ<EFBFBD>*******************************************/
//IO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IO_INCFG
{
public uint dwSize;
public byte byIoInStatus;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49><4F>״̬<D7B4><CCAC>0-<2D>½<EFBFBD><C2BD>أ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD><D8BA>½<EFBFBD><C2BD>أ<EFBFBD>3-<2D>ߵ<EFBFBD>ƽ<EFBFBD><C6BD>4-<2D>͵<EFBFBD>ƽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//IO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IO_OUTCFG
{
public uint dwSize;
public byte byDefaultStatus;//IOĬ<4F><C4AC>״̬<D7B4><CCAC>0-<2D>͵<EFBFBD>ƽ<EFBFBD><C6BD>1-<2D>ߵ<EFBFBD>ƽ
public byte byIoOutStatus;//IO<49><4F>Чʱ״̬<D7B4><CCAC>0-<2D>͵<EFBFBD>ƽ<EFBFBD><C6BD>1-<2D>ߵ<EFBFBD>ƽ<EFBFBD><C6BD>2-<2D><><EFBFBD><EFBFBD>
public ushort wAheadTime;//<2F><><EFBFBD><EFBFBD>IO<49><4F>ǰʱ<C7B0><EFBFBD><E4A3AC>λus
public uint dwTimePluse;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC>λus
public uint dwTimeDelay;//IO<49><4F>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC>λus
public byte byFreqMulti; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Χ[1,15]
public byte byDutyRate; //ռ<>ձȣ<D5B1>[0,40%]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FLASH_OUTCFG
{
public uint dwSize;
public byte byMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ģʽ<C4A3><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD>
public byte byRelatedIoIn;//<2F><><EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public byte byRecognizedLane; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49>ţ<EFBFBD><C5A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>bit0<74><30>ʾIO1<4F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>*/
public byte byDetectBrightness;/*<2A>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>⣻1-<2D><><EFBFBD><EFBFBD>*/
public byte byBrightnessThreld;/*ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Χ[0,100],<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>*/
public byte byStartHour; //<2F><>ʼʱ<CABC><CAB1>-Сʱ,ȡֵ<C8A1><D6B5>Χ0-23
public byte byStartMinute; //<2F><>ʼʱ<CABC><CAB1>-<2D><>,ȡֵ<C8A1><D6B5>Χ0-59
public byte byEndHour; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>-Сʱ,ȡֵ<C8A1><D6B5>Χ0-23
public byte byEndMinute; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>-<2D><>,ȡֵ<C8A1><D6B5>Χ0-59
public byte byFlashLightEnable; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ʹ<EFBFBD><CAB9>:0-<2D><>;1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>̵ƹ<CCB5><C6B9>ܣ<EFBFBD>2<EFBFBD><32>IO<49><4F><EFBFBD><EFBFBD>һ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LIGHTSNAPCFG
{
public uint dwSize;
public byte byLightIoIn;//<2F><><EFBFBD>̵Ƶ<CCB5>IO <20><>
public byte byTrigIoIn;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49><4F>
public byte byRelatedDriveWay;//<2F><><EFBFBD><EFBFBD>IO<49><4F><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>
public byte byTrafficLight; //0-<2D>ߵ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ƣ<EFBFBD><C6A3>͵<EFBFBD>ƽ<EFBFBD>̵ƣ<CCB5>1-<2D>ߵ<EFBFBD>ƽ<EFBFBD>̵ƣ<CCB5><C6A3>͵<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD>
public byte bySnapTimes1; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>1<EFBFBD><31>0-<2D><>ץ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>0-<2D><><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35>
public byte bySnapTimes2; //<2F>̵<EFBFBD>ץ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>2<EFBFBD><32>0-<2D><>ץ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>0-<2D><><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTERVAL_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wIntervalTime1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ʱ<EFBFBD>䣬ms
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTERVAL_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wIntervalTime2;//<2F>̵<EFBFBD><CCB5><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ʱ<EFBFBD>䣬ms
public byte byRecord;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>־<EFBFBD><D6BE>0-<2D><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>1-¼<><C2BC>
public byte bySessionTimeout;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ʱʱ<CAB1><EFBFBD>
public byte byPreRecordTime;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ƭ<EFBFBD><C6AC>Ԥ¼ʱ<C2BC><CAB1>(<28><>)
public byte byVideoDelay;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD>ʱʱ<CAB1><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD>ٹ<EFBFBD><D9B9><EFBFBD>(2<><32>IO<49><4F><EFBFBD><EFBFBD>һ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MEASURESPEEDCFG
{
public uint dwSize;
public byte byTrigIo1; //<2F><><EFBFBD>ٵ<EFBFBD>1<EFBFBD><31>Ȧ
public byte byTrigIo2; //<2F><><EFBFBD>ٵ<EFBFBD>2<EFBFBD><32>Ȧ
public byte byRelatedDriveWay;//<2F><><EFBFBD><EFBFBD>IO<49><4F><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>
public byte byTestSpeedTimeOut;//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>ʱʱ<CAB1><EFBFBD><E4A3AC>λs
public uint dwDistance;//<2F><>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD>,cm
public byte byCapSpeed;//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD>ٶȣ<D9B6><C8A3><EFBFBD>λkm/h
public byte bySpeedLimit;//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λkm/h
public byte bySnapTimes1; //<2F><>Ȧ1ץ<31>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>0-<2D><>ץ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>0-<2D><><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35>
public byte bySnapTimes2; //<2F><>Ȧ2ץ<32>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>0-<2D><>ץ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>0-<2D><><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTERVAL_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wIntervalTime1;//<2F><>Ȧ1<C8A6><31><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ʱ<EFBFBD>䣬ms
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTERVAL_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wIntervalTime2;//<2F><>Ȧ2<C8A6><32><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ʱ<EFBFBD>䣬ms
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOEFFECT
{
public byte byBrightnessLevel; /*0-100*/
public byte byContrastLevel; /*0-100*/
public byte bySharpnessLevel; /*0-100*/
public byte bySaturationLevel; /*0-100*/
public byte byHueLevel; /*0-100,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byEnableFunc; //ʹ<>ܣ<EFBFBD><DCA3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>bit0-SMART IR(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>bit1-<2D><><EFBFBD>ն<EFBFBD>,bit2-ǿ<><C7BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byLightInhibitLevel; //ǿ<><C7BF><EFBFBD><EFBFBD><EFBFBD>Ƶȼ<C6B5><C8BC><EFBFBD>[1-3]<5D><>ʾ<EFBFBD>ȼ<EFBFBD>
public byte byGrayLevel; //<2F>Ҷ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>0-[0-255]<5D><>1-[16-235]
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GAIN
{
public byte byGainLevel; /*<2A><><EFBFBD>棺0-100*/
public byte byGainUserSet; /*<2A>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>棻0-100<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD>CCDģʽ<C4A3>µ<EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwMaxGainValue;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λdB*/
}
//<2F><>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WHITEBALANCE
{
public byte byWhiteBalanceMode; /*0-<EFBFBD>ֶ<EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD>MWB<EFBFBD><EFBFBD>,1-<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD>1<EFBFBD><EFBFBD>AWB1<EFBFBD><EFBFBD>,2-<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD>2 (AWB2),3-<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƹ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD>(Locked WB)<EFBFBD><EFBFBD>
4-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Indoor)<EFBFBD><EFBFBD>5-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Outdoor)6-<EFBFBD>չ<EFBFBD><EFBFBD><EFBFBD>(Fluorescent Lamp)<EFBFBD><EFBFBD>7-<EFBFBD>Ƶ<EFBFBD>(Sodium Lamp)<EFBFBD><EFBFBD>
8-<EFBFBD>Զ<EFBFBD>(Auto-Track)9-һ<EFBFBD>ΰ<EFBFBD>ƽ<EFBFBD><EFBFBD>(One Push)<EFBFBD><EFBFBD>10-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>(Auto-Outdoor)<EFBFBD><EFBFBD>
11-<EFBFBD>Ƶ<EFBFBD><EFBFBD>Զ<EFBFBD> (Auto-Sodiumlight)<EFBFBD><EFBFBD>12-ˮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Mercury Lamp)<EFBFBD><EFBFBD>13-<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD>(Auto)<EFBFBD><EFBFBD>
14-<EFBFBD>׳<EFBFBD><EFBFBD><EFBFBD> (IncandescentLamp)<EFBFBD><EFBFBD>15-ů<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Warm Light Lamp)<EFBFBD><EFBFBD>16-<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD>(Natural Light) */
public byte byWhiteBalanceModeRGain; /*<2A>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD> R<><52><EFBFBD><EFBFBD>*/
public byte byWhiteBalanceModeBGain; /*<2A>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD> B<><42><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EXPOSURE
{
public byte byExposureMode; /*0 <20>ֶ<EFBFBD><D6B6>ع<EFBFBD> 1<>Զ<EFBFBD><D4B6>ع<EFBFBD>*/
public byte byAutoApertureLevel; /* <20>Զ<EFBFBD><D4B6><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0-10 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwVideoExposureSet; /* <20>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3A8>λus<75><73>*//*ע:<3A>Զ<EFBFBD><D4B6>ع<EFBFBD>ʱ<EFBFBD><CAB1>ֵΪ<D6B5>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD>20-1s(1000000us)*/
public uint dwExposureUserSet; /* <20>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>,<2C><>ץ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1>CCDģʽʱ<CABD><CAB1>ץ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ٶ<EFBFBD>*/
public uint dwRes;
}
//<2F><><EFBFBD><EFBFBD>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WDR
{
public byte byWDREnabled; /*<2A><><EFBFBD><EFBFBD>̬<EFBFBD><CCAC>0 dsibale 1 enable 2 auto*/
public byte byWDRLevel1; /*0-F*/
public byte byWDRLevel2; /*0-F*/
public byte byWDRContrastLevel; /*0-100*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ҹת<D2B9><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DAYNIGHT
{
public byte byDayNightFilterType; /*<2A><>ҹ<EFBFBD>л<EFBFBD><D0BB><EFBFBD>0-<2D><><EFBFBD>죬1-ҹ<><D2B9><EFBFBD><EFBFBD>2-<2D>Զ<EFBFBD><D4B6><EFBFBD>3-<2D><>ʱ<EFBFBD><CAB1>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5>*/
public byte bySwitchScheduleEnabled; /*0 dsibale 1 enable,(<28><><EFBFBD><EFBFBD>)*/
//<2F><>ʱģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public byte byBeginTime; /*<2A><>ʼʱ<CABC>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>0-23*/
public byte byEndTime; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>0-23*/
//ģʽ2
public byte byDayToNightFilterLevel; //0-7
public byte byNightToDayFilterLevel; //0-7
public byte byDayNightFilterTime;//(60<36><30>)
//<2F><>ʱģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public byte byBeginTimeMin; //<2F><>ʼʱ<CABC><EFBFBD>֣<EFBFBD><D6A3><EFBFBD>0-59
public byte byBeginTimeSec; //<2F><>ʼʱ<CABC><EFBFBD><EFBFBD><EBA3A9>0-59
public byte byEndTimeMin; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>֣<EFBFBD><D6A3><EFBFBD>0-59
public byte byEndTimeSec; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EBA3A9>0-59
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public byte byAlarmTrigState; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5>״̬<D7B4><CCAC>0-<2D><><EFBFBD>죬1-ҹ<><D2B9>
}
//GammaУ<61><D0A3>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GAMMACORRECT
{
public byte byGammaCorrectionEnabled; /*0 dsibale 1 enable*/
public byte byGammaCorrectionLevel; /*0-100*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><E2B2B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BACKLIGHT
{
public byte byBacklightMode; /*<2A><><EFBFBD><EFBFBD><E2B2B9>:0 off 1 UP<55><50>2 DOWN<57><4E>3 LEFT<46><54>4 RIGHT<48><54>5MIDDLE<4C><45>6<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>*/
public byte byBacklightLevel; /*0x0-0xF*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwPositionX1; //<2F><>X<EFBFBD><58><EFBFBD><EFBFBD>1<EFBFBD><31>
public uint dwPositionY1; //<2F><>Y<EFBFBD><59><EFBFBD><EFBFBD>1<EFBFBD><31>
public uint dwPositionX2; //<2F><>X<EFBFBD><58><EFBFBD><EFBFBD>2<EFBFBD><32>
public uint dwPositionY2; //<2F><>Y<EFBFBD><59><EFBFBD><EFBFBD>2<EFBFBD><32>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD><EBB9A6>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NOISEREMOVE
{
public byte byDigitalNoiseRemoveEnable; /*0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><>ͨģʽ<C4A3><CABD><EFBFBD>ֽ<EFBFBD><D6BD>룬2-ר<><D7A8>ģʽ<C4A3><CABD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>*/
public byte byDigitalNoiseRemoveLevel; /*<2A><>ͨģʽ<C4A3><CABD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD><EBBCB6><EFBFBD><EFBFBD>0x0-0xF*/
public byte bySpectralLevel; /*ר<><D7A8>ģʽ<C4A3>¿<EFBFBD><C2BF><EFBFBD>ǿ<EFBFBD>ȣ<EFBFBD>0-100*/
public byte byTemporalLevel; /*ר<><D7A8>ģʽ<C4A3><CABD>ʱ<EFBFBD><CAB1>ǿ<EFBFBD>ȣ<EFBFBD>0-100*/
public byte byDigitalNoiseRemove2DEnable; /* ץ<><D7A5>֡2D<32><44><EFBFBD>룬0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD> */
public byte byDigitalNoiseRemove2DLevel; /* ץ<><D7A5>֡2D<32><44><EFBFBD><EFBFBD><EBBCB6><EFBFBD><EFBFBD>0-100 */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//CMOSģʽ<C4A3><CABD>ǰ<EFBFBD>˾<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CMOSMODECFG
{
public byte byCaptureMod; //ץ<><D7A5>ģʽ<C4A3><CABD>0-ץ<><D7A5>ģʽ1<CABD><31>1-ץ<><D7A5>ģʽ2
public byte byBrightnessGate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
public byte byCaptureGain1; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1,0-100
public byte byCaptureGain2; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2,0-100
public uint dwCaptureShutterSpeed1;//ץ<>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ٶ<EFBFBD>1
public uint dwCaptureShutterSpeed2;//ץ<>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ٶ<EFBFBD>2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ǰ<>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAMERAPARAMCFG
{
public uint dwSize;
public NET_DVR_VIDEOEFFECT struVideoEffect;/*<2A><><EFBFBD>ȡ<EFBFBD><C8A1>Աȶȡ<C8B6><C8A1><EFBFBD><EFBFBD>Ͷȡ<CDB6><C8A1><EFBFBD><EFBFBD>ȡ<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_GAIN struGain;/*<2A>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_WHITEBALANCE struWhiteBalance;/*<2A><>ƽ<EFBFBD><C6BD>*/
public NET_DVR_EXPOSURE struExposure; /*<2A>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_GAMMACORRECT struGammaCorrect;/*GammaУ<61><D0A3>*/
public NET_DVR_WDR struWdr;/*<2A><><EFBFBD><EFBFBD>̬*/
public NET_DVR_DAYNIGHT struDayNight;/*<2A><>ҹת<D2B9><D7AA>*/
public NET_DVR_BACKLIGHT struBackLight;/*<2A><><EFBFBD><EFBFBD><E2B2B9>*/
public NET_DVR_NOISEREMOVE struNoiseRemove;/*<2A><><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>*/
public byte byPowerLineFrequencyMode; /*0-50HZ; 1-60HZ*/
public byte byIrisMode; /*0 <20>Զ<EFBFBD><D4B6><EFBFBD>Ȧ 1<>ֶ<EFBFBD><D6B6><EFBFBD>Ȧ*/
public byte byMirror ; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0 off<66><66>1- leftright<68><74>2- updown<77><6E>3-center */
public byte byDigitalZoom; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:0 dsibale 1 enable*/
public byte byDeadPixelDetect; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 dsibale 1 enable*/
public byte byBlackPwl;/*<2A>ڵ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD> , 0-255*/
public byte byEptzGate;// EPTZ<54><5A><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>:0-<2D><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>1-<2D><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>̨
public byte byLocalOutputGate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>1-<2D><><EFBFBD><EFBFBD>BNC<4E><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-HDMI<4D><49><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>
//20-HDMI_720P50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//21-HDMI_720P60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//22-HDMI_1080I60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//23-HDMI_1080I50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//24-HDMI_1080P24<32><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//25-HDMI_1080P25<32><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//26-HDMI_1080P30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//27-HDMI_1080P50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//28-HDMI_1080P60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//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
public byte byCoderOutputMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>fpga<67><61><EFBFBD><EFBFBD>ģʽ0ֱͨ3<CDA8><33><EFBFBD>ذ<EFBFBD><D8B0><EFBFBD>
public byte byLineCoding; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1>룺0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byDimmerMode; //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>1-<2D>Զ<EFBFBD>
public byte byPaletteMode; //<2F><>ɫ<EFBFBD>壺0-<2D><><EFBFBD>ȣ<EFBFBD>1-<2D><><EFBFBD>ȣ<EFBFBD>2-<2D><>ɫ<EFBFBD><C9AB>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8-<2D><>ɫ<EFBFBD><C9AB>8
public byte byEnhancedMode; //<2F><>ǿ<EFBFBD><C7BF>ʽ<EFBFBD><CABD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱߣ<DCB1><DFA3><EFBFBD>0-<2D><><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>1-1<><31>2-2<><32>3-3<><33>4-4
public byte byDynamicContrastEN; //<2F><>̬<EFBFBD>Աȶ<D4B1><C8B6><EFBFBD>ǿ 0-1
public byte byDynamicContrast; //<2F><>̬<EFBFBD>Աȶ<D4B1> 0-100
public byte byJPEGQuality; //JPEGͼ<47><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-100
public NET_DVR_CMOSMODECFG struCmosModeCfg;//CMOSģʽ<C4A3><CABD>ǰ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ͷģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public byte byFilterSwitch; //<2F>˲<EFBFBD><CBB2><EFBFBD><EFBFBD>أ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byFocusSpeed; //<2F><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD>ٶȣ<D9B6>0-10
public byte byAutoCompensationInterval; //<2F><>ʱ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>1-120<32><30><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySceneMode; //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD>⣬1-<2D><><EFBFBD>ڣ<EFBFBD>2-Ĭ<>ϣ<EFBFBD>3-<2D><><EFBFBD><EFBFBD>
}
//͸<><CDB8>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEFOGCFG
{
public byte byMode; //ģʽ<C4A3><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D>Զ<EFBFBD>ģʽ<C4A3><CABD>2-<2D><><EFBFBD><EFBFBD>ģʽ
public byte byLevel; //<2F>ȼ<EFBFBD><C8BC><EFBFBD>0-100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ELECTRONICSTABILIZATION
{
public byte byEnable;//ʹ<><CAB9> 0- <20><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1- <20><><EFBFBD><EFBFBD>
public byte byLevel; //<2F>ȼ<EFBFBD><C8BC><EFBFBD>0-100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>ģʽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CORRIDOR_MODE_CCD
{
public byte byEnableCorridorMode; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//SMART IR(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SMARTIR_PARAM
{
public byte byMode;//0<><30><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>1<EFBFBD><31><EFBFBD>Զ<EFBFBD>
public byte byIRDistance;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>(<28>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)level:1~100 Ĭ<><C4AC>:50<35><30><EFBFBD>ֶ<EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>byIrisMode ΪP-Iris1ʱ<31><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6>С<EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PIRIS_PARAM
{
public byte byMode;//0-<2D>Զ<EFBFBD><D4B6><EFBFBD>1-<2D>ֶ<EFBFBD>
public byte byPIrisAperture;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6>С<EFBFBD>ȼ<EFBFBD>(<28>ȼ<EFBFBD>,<2C><>Ȧ<EFBFBD><C8A6>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)level:1~100 Ĭ<><C4AC>:50<35><30><EFBFBD>ֶ<EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ǰ<>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAMERAPARAMCFG_EX
{
public uint dwSize;
public NET_DVR_VIDEOEFFECT struVideoEffect;/*<2A><><EFBFBD>ȡ<EFBFBD><C8A1>Աȶȡ<C8B6><C8A1><EFBFBD><EFBFBD>Ͷȡ<CDB6><C8A1><EFBFBD><EFBFBD>ȡ<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_GAIN struGain;/*<2A>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_WHITEBALANCE struWhiteBalance;/*<2A><>ƽ<EFBFBD><C6BD>*/
public NET_DVR_EXPOSURE struExposure; /*<2A>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_GAMMACORRECT struGammaCorrect;/*GammaУ<61><D0A3>*/
public NET_DVR_WDR struWdr;/*<2A><><EFBFBD><EFBFBD>̬*/
public NET_DVR_DAYNIGHT struDayNight;/*<2A><>ҹת<D2B9><D7AA>*/
public NET_DVR_BACKLIGHT struBackLight;/*<2A><><EFBFBD><EFBFBD><E2B2B9>*/
public NET_DVR_NOISEREMOVE struNoiseRemove;/*<2A><><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>*/
public byte byPowerLineFrequencyMode; /*0-50HZ; 1-60HZ*/
public byte byIrisMode; /*0-<2D>Զ<EFBFBD><D4B6><EFBFBD>Ȧ 1-<2D>ֶ<EFBFBD><D6B6><EFBFBD>Ȧ, 2-P-Iris1*/
public byte byMirror ; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0 off<66><66>1- leftright<68><74>2- updown<77><6E>3-center */
public byte byDigitalZoom; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:0 dsibale 1 enable*/
public byte byDeadPixelDetect; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 dsibale 1 enable*/
public byte byBlackPwl;/*<2A>ڵ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD> , 0-255*/
public byte byEptzGate;// EPTZ<54><5A><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>:0-<2D><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>1-<2D><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>̨
public byte byLocalOutputGate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>1-<2D><><EFBFBD><EFBFBD>BNC<4E><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-HDMI<4D><49><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>
//20-HDMI_720P50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//21-HDMI_720P60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//22-HDMI_1080I60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//23-HDMI_1080I50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//24-HDMI_1080P24<32><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//25-HDMI_1080P25<32><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//26-HDMI_1080P30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//27-HDMI_1080P50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//28-HDMI_1080P60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCoderOutputMode;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>fpga<67><61><EFBFBD><EFBFBD>ģʽ0ֱͨ3<CDA8><33><EFBFBD>ذ<EFBFBD><D8B0><EFBFBD>
public byte byLineCoding; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1>룺0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byDimmerMode; //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>1-<2D>Զ<EFBFBD>
public byte byPaletteMode; //<2F><>ɫ<EFBFBD>壺0-<2D><><EFBFBD>ȣ<EFBFBD>1-<2D><><EFBFBD>ȣ<EFBFBD>2-<2D><>ɫ<EFBFBD><C9AB>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8-<2D><>ɫ<EFBFBD><C9AB>8
public byte byEnhancedMode; //<2F><>ǿ<EFBFBD><C7BF>ʽ<EFBFBD><CABD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱߣ<DCB1><DFA3><EFBFBD>0-<2D><><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>1-1<><31>2-2<><32>3-3<><33>4-4
public byte byDynamicContrastEN; //<2F><>̬<EFBFBD>Աȶ<D4B1><C8B6><EFBFBD>ǿ 0-1
public byte byDynamicContrast; //<2F><>̬<EFBFBD>Աȶ<D4B1> 0-100
public byte byJPEGQuality; //JPEGͼ<47><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-100
public NET_DVR_CMOSMODECFG struCmosModeCfg;//CMOSģʽ<C4A3><CABD>ǰ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ͷģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public byte byFilterSwitch; //<2F>˲<EFBFBD><CBB2><EFBFBD><EFBFBD>أ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byFocusSpeed; //<2F><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD>ٶȣ<D9B6>0-10
public byte byAutoCompensationInterval; //<2F><>ʱ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>1-120<32><30><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySceneMode; //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD>⣬1-<2D><><EFBFBD>ڣ<EFBFBD>2-Ĭ<>ϣ<EFBFBD>3-<2D><><EFBFBD><EFBFBD>
public NET_DVR_DEFOGCFG struDefogCfg;//͸<><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_ELECTRONICSTABILIZATION struElectronicStabilization;//<2F><><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD>
public NET_DVR_CORRIDOR_MODE_CCD struCorridorMode;//<2F><><EFBFBD><EFBFBD>ģʽ
public byte byExposureSegmentEnable; //0~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1~<7E><><EFBFBD><EFBFBD> <20>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>״<EFBFBD><D7B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD><D8B9><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><EFBFBD>м<EFBFBD>ֵ<EFBFBD><D6B5>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع⵽<D8B9><E2B5BD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B5BD><EFBFBD><EFBFBD>ֵ
public byte byBrightCompensate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ [0~100]
/*0-<EFBFBD>رա<EFBFBD>1-640*480@25fps<EFBFBD><EFBFBD>2-640*480@30ps<EFBFBD><EFBFBD>3-704*576@25fps<EFBFBD><EFBFBD>4-704*480@30fps<EFBFBD><EFBFBD>5-1280*720@25fps<EFBFBD><EFBFBD>6-1280*720@30fps<EFBFBD><EFBFBD>
* 7-1280*720@50fps<EFBFBD><EFBFBD>8-1280*720@60fps<EFBFBD><EFBFBD>9-1280*960@15fps<EFBFBD><EFBFBD>10-1280*960@25fps<EFBFBD><EFBFBD>11-1280*960@30fps<EFBFBD><EFBFBD>
* 12-1280*1024@25fps<EFBFBD><EFBFBD>13--1280*1024@30fps<EFBFBD><EFBFBD>14-1600*900@15fps<EFBFBD><EFBFBD>15-1600*1200@15fps<EFBFBD><EFBFBD>16-1920*1080@15fps<EFBFBD><EFBFBD>
* 17-1920*1080@25fps<EFBFBD><EFBFBD>18-1920*1080@30fps<EFBFBD><EFBFBD>19-1920*1080@50fps<EFBFBD><EFBFBD>20-1920*1080@60fps<EFBFBD><EFBFBD>21-2048*1536@15fps<EFBFBD><EFBFBD>22-2048*1536@20fps<EFBFBD><EFBFBD>
* 23-2048*1536@24fps<EFBFBD><EFBFBD>24-2048*1536@25fps<EFBFBD><EFBFBD>25-2048*1536@30fps<EFBFBD><EFBFBD>26-2560*2048@25fps<EFBFBD><EFBFBD>27-2560*2048@30fps<EFBFBD><EFBFBD>
* 28-2560*1920@7.5fps<EFBFBD><EFBFBD>29-3072*2048@25fps<EFBFBD><EFBFBD>30-3072*2048@30fps<EFBFBD><EFBFBD>31-2048*1536@12.5<EFBFBD><EFBFBD>32-2560*1920@6.25<EFBFBD><EFBFBD>
* 33-1600*1200@25<EFBFBD><EFBFBD>34-1600*1200@30<EFBFBD><EFBFBD>35-1600*1200@12.5<EFBFBD><EFBFBD>36-1600*900@12.5<EFBFBD><EFBFBD>37-1600@900@15<EFBFBD><EFBFBD>38-800*600@25<EFBFBD><EFBFBD>39-800*600@30*/
public byte byCaptureModeN; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>N<EFBFBD>ƣ<EFBFBD>
public byte byCaptureModeP; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>P<EFBFBD>ƣ<EFBFBD>
public NET_DVR_SMARTIR_PARAM struSmartIRParam; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ź<EFBFBD><C5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_DVR_PIRIS_PARAM struPIrisParam;//PIris<69><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ӦbyIrisMode<64>ֶδ<D6B6>2-PIris1<73><31>ʼ<EFBFBD><CABC>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 296, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
public enum VCA_PLATE_COLOR
{
VCA_BLUE_PLATE = 0,//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
VCA_YELLOW_PLATE,//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
VCA_WHITE_PLATE,//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
VCA_BLACK_PLATE,//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
VCA_GREEN_PLATE //<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum VCA_PLATE_TYPE
{
VCA_STANDARD92_PLATE = 0,//<2F><>׼<EFBFBD><D7BC><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֳ<EFBFBD>
VCA_STANDARD02_PLATE,//02ʽ<32><CABD><EFBFBD>ó<EFBFBD><C3B3><EFBFBD>
VCA_WJPOLICE_PLATE,//<2F><EFBFBD><E4BEAF>
VCA_JINGCHE_PLATE,//<2F><><EFBFBD><EFBFBD>
STANDARD92_BACK_PLATE,//<2F><><EFBFBD>ó<EFBFBD>˫<EFBFBD><CBAB>β<EFBFBD><CEB2>
VCA_SHIGUAN_PLATE, //ʹ<>ݳ<EFBFBD><DDB3><EFBFBD>
VCA_NONGYONG_PLATE, //ũ<>ó<EFBFBD>
VCA_MOTO_PLATE //Ħ<>г<EFBFBD>
}
public enum VLR_VEHICLE_CLASS
{
VLR_OTHER = 0, //<2F><><EFBFBD><EFBFBD>
VLR_VOLKSWAGEN = 1, //<2F><><EFBFBD><EFBFBD>
VLR_BUICK = 2, //<2F><><EFBFBD><EFBFBD>
VLR_BMW = 3, //<2F><><EFBFBD><EFBFBD>
VLR_HONDA = 4, //<2F><><EFBFBD><EFBFBD>
VLR_PEUGEOT = 5, //<2F><><EFBFBD><EFBFBD>
VLR_TOYOTA = 6, //<2F><><EFBFBD><EFBFBD>
VLR_FORD = 7, //<2F><><EFBFBD><EFBFBD>
VLR_NISSAN = 8, //<2F>ղ<EFBFBD>
VLR_AUDI = 9, //<2F>µ<EFBFBD>
VLR_MAZDA = 10, //<2F><><EFBFBD>Դ<EFBFBD>
VLR_CHEVROLET = 11, //ѩ<><D1A9><EFBFBD><EFBFBD>
VLR_CITROEN = 12, //ѩ<><D1A9><EFBFBD><EFBFBD>
VLR_HYUNDAI = 13, //<2F>ִ<EFBFBD>
VLR_CHERY = 14 //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VEHICLE_INFO
{
public uint dwIndex;
public byte byVehicleType;
public byte byColorDepth;
public byte byColor;
public byte byRadarState;
public ushort wSpeed;
public ushort wLength;
public byte byIllegalType;
public byte byVehicleLogoRecog; //<2F>ο<EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD> VLR_VEHICLE_CLASS
public byte byVehicleSubLogoRecog; //<2F><><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD>𣻲ο<F0A3BBB2>VSB_VOLKSWAGEN_CLASS<53><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>١<EFBFBD>
public byte byVehicleModel; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>0-δ֪<CEB4><D6AA><EFBFBD>ο<EFBFBD>"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.xlsx"
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byCustomInfo; //<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>Ϣ
public ushort wVehicleLogoRecog; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>ƣ<EFBFBD><C6A3>ο<EFBFBD>"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>.xlsx" (<28><><EFBFBD>ֶμ<D6B6><CEBC><EFBFBD>byVehicleLogoRecog);
public byte byIsParking;//<2F>Ƿ<EFBFBD>ͣ<EFBFBD><CDA3> 0-<2D><>Ч<EFBFBD><D0A7>1-ͣ<><CDA3><EFBFBD><EFBFBD>2-δͣ<CEB4><CDA3>
public byte byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public uint dwParkingTime; //ͣ<><CDA3>ʱ<EFBFBD><EFBFBD><E4A3AC>λ<EFBFBD><CEBB>s
public byte byBelieve; //byIllegalType<70><65><EFBFBD>Ŷȣ<C5B6>1-100
public byte byCurrentWorkerNumber;//<2F><>ǰ<EFBFBD><C7B0>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
public byte byCurrentGoodsLoadingRate;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD> 0-<2D><> 1-<2D><> 2-<2D><> 3-<2D><> 4-<2D><>
public byte byDoorsStatus;//<2F><><EFBFBD><EFBFBD>״̬ 0-<2D><><EFBFBD>Źر<C5B9> 1-<2D><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
public void Init()
{
byCustomInfo = new byte[16];
byRes3 = new byte[4];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLATE_RESULT
{
public uint dwSize;
public byte byResultType;
public byte byChanIndex;
public ushort wAlarmRecordID; //<2F><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ID(<28><><EFBFBD>ڲ<EFBFBD>ѯ¼<D1AF>񣬽<EFBFBD><F1A3ACBD><EFBFBD>byResultTypeΪ2ʱ<32><CAB1>Ч)
public uint dwRelativeTime;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byAbsTime;
public uint dwPicLen;
public uint dwPicPlateLen;
public uint dwVideoLen;
public byte byTrafficLight;
public byte byPicNum;
public byte byDriveChan;
public byte byVehicleType; //0- δ֪<CEB4><D6AA>1- <20>ͳ<EFBFBD><CDB3><EFBFBD>2- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3- <20>γ<EFBFBD><CEB3><EFBFBD>4- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5- С<><D0A1><EFBFBD><EFBFBD>
public uint dwBinPicLen;
public uint dwCarPicLen;
public uint dwFarCarPicLen;
public IntPtr pBuffer3;
public IntPtr pBuffer4;
public IntPtr pBuffer5;
public byte byRelaLaneDirectionType;
public byte byCarDirectionType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
public NET_DVR_PLATE_INFO struPlateInfo;
public NET_DVR_VEHICLE_INFO struVehicleInfo;
public IntPtr pBuffer1;
public IntPtr pBuffer2;
public void Init()
{
byAbsTime = new byte[32];
byRes3 = new byte[6];
}
}
//ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IMAGEOVERLAYCFG
{
public uint dwSize;
public byte byOverlayInfo;//<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD>ܿ<EFBFBD><DCBF>أ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayMonitorInfo;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayTime;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlaySpeed;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶȣ<D9B6>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlaySpeeding;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayLimitFlag;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD>־<EFBFBD><D6BE>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayPlate;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>ƺţ<C6BA>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayColor;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayLength;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayType;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayColorDepth;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>dz<EFBFBD><C7B3>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayDriveChan;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayMilliSec; //<2F><><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD><EFBFBD><EFBFBD>Ϣ 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayIllegalInfo; //<2F><><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD>Ϣ 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byOverlayRedOnTime; //<2F><><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byFarAddPlateJpeg; //Զ<><D4B6>ͼ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>ƽ<EFBFBD>ͼ,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>
public byte byNearAddPlateJpeg; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>ƽ<EFBFBD>ͼ,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitorInfo1; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ϣ1
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitorInfo2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 52, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
public struct NET_DVR_FACELIB_GUARD_COND
{
public uint dwSize;
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 68, ArraySubType = UnmanagedType.I1)]
public byte[] szFDID;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public struct NET_DVR_EVENT_SCHEDULE
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struHolidayAlarmTime; /*<2A><><EFBFBD>ղ<EFBFBD><D5B2><EFBFBD>ʱ<EFBFBD><CAB1>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.I1)]
public byte[] bySceneID;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,Ŀǰ֧<C7B0><D6A7>1~4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CEAA>Ч<EFBFBD><D0A7><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>һһ<D2BB><D2BB>Ӧ<EFBFBD><D3A6>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 72, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SNAPCFG
{
public uint dwSize;
public byte byRelatedDriveWay;
public byte bySnapTimes;
public ushort wSnapWaitTime;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTERVAL_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wIntervalTime;
public uint dwSnapVehicleNum; //ץ<>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD>
public NET_DVR_JPEGPARA struJpegPara;//ץ<><D7A5>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public enum ITC_MAINMODE_ABILITY
{
ITC_MODE_UNKNOW = 0x0, //<2F><>
ITC_POST_MODE = 0x1, //<2F><><EFBFBD><EFBFBD>ģʽ
ITC_EPOLICE_MODE = 0x2, //<2F>羯ģʽ
ITC_POSTEPOLICE_MODE = 0x4 //<2F><>ʽ<EFBFBD>羯ģʽ
}
public enum ITC_RECOG_REGION_TYPE
{
ITC_REGION_RECT = 0x0, //<2F><><EFBFBD><EFBFBD>
ITC_REGION_POLYGON = 0x1, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SNAP_ABILITY
{
public uint dwSize;
public byte byIoInNum;//IO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byIoOutNum;//IO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySingleSnapNum;//<2F><>IO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byLightModeArrayNum;//<2F><><EFBFBD>̵<EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public byte byMeasureModeArrayNum;//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
public byte byPlateEnable; //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byLensMode;//<2F><>ͷģʽ0-CCD,1-CMOS
public byte byPreTriggerSupport; //<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-֧<>֣<EFBFBD>1-<2D><>֧<EFBFBD><D6A7>
public uint dwAbilityType; //֧<>ֵĴ<D6B5><C4B4><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITC_MAINMODE_ABILITY
public byte byIoSpeedGroup; //֧<>ֵ<EFBFBD>IO<49><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byIoLightGroup; //֧<>ֵ<EFBFBD>IO<49><4F><EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD>
public byte byRecogRegionType; //<2F><>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITC_RECOG_REGION_TYPE
public byte bySupport; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
// bySupport&0x1<78><31><EFBFBD><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// bySupport&0x2<78><32><EFBFBD><EFBFBD>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>Уʱ<D0A3><CAB1><EFBFBD>ýṹ
// bySupport&0x4, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
// bySupport&0x8, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bonding<6E><67><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD>)
// bySupport&0x10, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>
//2013-07-09 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wSupportMultiRadar;// <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
// wSupportMultiRadar&0x1<78><31><EFBFBD><EFBFBD>ʾ <20><><EFBFBD><EFBFBD>RS485<38>״<EFBFBD> ֧<>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״ﴦ<D7B4><EFB4A6>
// wSupportMultiRadar&0x2<78><32><EFBFBD><EFBFBD>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ ֧<>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״ﴦ<D7B4><EFB4A6>
// wSupportMultiRadar&0x4<78><34><EFBFBD><EFBFBD>ʾ <20><><EFBFBD>п<EFBFBD><D0BF><EFBFBD> ֧<>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״ﴦ<D7B4><EFB4A6>
// wSupportMultiRadar&0x8<78><38><EFBFBD><EFBFBD>ʾ <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD> ֧<>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״ﴦ<D7B4><EFB4A6>
public byte byICRPresetNum;
// <20><>ʾ֧<CABE>ֵ<EFBFBD>ICRԤ<52>õ㣨<C3B5>˹<EFBFBD>Ƭƫ<C6AC>Ƶ㣩<C6B5><E3A3A9>
public byte byICRTimeSlot;//<2F><>ʾ֧<CABE>ֵ<EFBFBD>ICR<43><52>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>8<EFBFBD><38>
public byte bySupportRS485Num;//<2F><>ʾ֧<CABE>ֵ<EFBFBD>RS485<38>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>
public byte byExpandRs485SupportSensor;// <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
// byExpandRs485SupportSensor &0x1<78><31><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><E7BEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD>
// byExpandRs485SupportSensor &0x2<78><32><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʽ<EFBFBD><EFBFBD><E7BEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD>
public byte byExpandRs485SupportSignalLampDet;// <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
// byExpandRs485SupportSignalLampDet &0x1<78><31><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><E7BEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źŵƼ<C5B5><C6BC><EFBFBD><EFBFBD><EFBFBD>
// byExpandRs485SupportSignalLampDet &0x2<78><32><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʽ<EFBFBD><EFBFBD><E7BEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źŵƼ<C5B5><C6BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 13, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_ICRTIMECFG
{
public NET_DVR_SCHEDTIME struTime;
public byte byAssociateRresetNo;//Ԥ<>õ<EFBFBD><C3B5><EFBFBD>1<EFBFBD><31>8 , 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySubSwitchMode;//1~<7E><><EFBFBD>죬2~<7E><><EFBFBD><EFBFBD> (<28><>Ԥ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>0 <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_ICR_TIMESWITCH_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_ICRTIMECFG[] struAutoCtrlTime;//<2F>Զ<EFBFBD><D4B6>л<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> (<28>Զ<EFBFBD><D4B6>л<EFBFBD><D0BB><EFBFBD> ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч <20><><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>4<EFBFBD>飬Ԥ<E9A3AC><D4A4>4<EFBFBD><34>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ICR_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byICRPreset; //ʵ<><CAB5><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><CCAC>ʾ [0~100] <20><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD>ʾԤ<CABE>õ<EFBFBD><C3B5><EFBFBD>1<EFBFBD><31>8 <20><>0<EFBFBD><30>7 <20><><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_ICR_MANUALSWITCH_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ICR_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byICRPreset; //ʵ<><CAB5><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><CCAC>ʾ [0~100]
public byte bySubSwitchMode;//1~<7E><><EFBFBD>죬2~<7E><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 147, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_ICR_AOTOSWITCH_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ICR_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byICRPreset; //ʵ<><CAB5><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><CCAC>ʾ [0~100] <20><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD>ʾԤ<CABE>õ<EFBFBD><C3B5><EFBFBD>1<EFBFBD><31>8 <20><>0<EFBFBD><30>7 <20><><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 148, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_ICR_PARAM_UNION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 156, ArraySubType = UnmanagedType.I1)]
public byte[] uLen;
public NET_ITC_ICR_AOTOSWITCH_PARAM struICRAutoSwitch;
public NET_ITC_ICR_MANUALSWITCH_PARAM struICRManualSwitch;
public NET_ITC_ICR_TIMESWITCH_PARAM struICRTimeSwitch;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_ICRCFG
{
public uint dwSize;
public byte bySwitchType;//1~<7E>Զ<EFBFBD><D4B6>л<EFBFBD><D0BB><EFBFBD>2~<7E>ֶ<EFBFBD><D6B6>л<EFBFBD> ,3~<7E><>ʱ<EFBFBD>л<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_ITC_ICR_PARAM_UNION uICRParam;
}
//2013-07-09 <20><EFBFBD><ECB3A3><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_HANDLEEXCEPTION
{
public uint dwHandleType; //<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD>,<2C><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>"<22><>"<22><><EFBFBD><EFBFBD>
/*0x00: <20><><EFBFBD><EFBFBD>Ӧ*/
/*0x01: <20><>ʾ<EFBFBD><CABE><EFBFBD>Ͼ<EFBFBD><CFBE><EFBFBD>*/
/*0x02: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x04: <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
/*0x08: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x10: <20><><EFBFBD><EFBFBD>JPRGץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>Email*/
/*0x20: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*0x40: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>ͼ(Ŀǰֻ<C7B0><D6BB>PCNVR֧<52><D6A7>)*/
/*0x200: ץͼ<D7A5><CDBC><EFBFBD>ϴ<EFBFBD>FTP*/
public byte byEnable; //0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes;
public ushort wDuration;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ/s)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ITC_EXCEPTIONOUT, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmOutTriggered;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITC_EXCEPTION
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_EXCEPTIONNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_HANDLEEXCEPTION[] struSnapExceptionType;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>Ԫ<EFBFBD>ض<EFBFBD><D8B6><EFBFBD>ʾһ<CABE><D2BB><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0- Ӳ<>̳<EFBFBD><CCB3><EFBFBD>,1-<2D><><EFBFBD>߶<EFBFBD>,2-IP <20><>ַ<EFBFBD><D6B7>ͻ, 3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣, 4-<2D>źŵƼ<C5B5><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRIGCOORDINATE
{
public ushort wTopLeftX; /*<2A><>Ȧ<EFBFBD><C8A6><EFBFBD>ϽǺ<CFBD><C7BA><EFBFBD><EFBFBD>꣨2<EAA3A8><32><EFBFBD>ֽڣ<D6BD>*/
public ushort wTopLeftY; /*<2A><>Ȧ<EFBFBD><C8A6><EFBFBD>Ͻ<EFBFBD><CFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>꣨2<EAA3A8><32><EFBFBD>ֽڣ<D6BD>*/
public ushort wWdith; /*<2A><>Ȧ<EFBFBD><C8A6><EFBFBD>ȣ<EFBFBD>2<EFBFBD><32><EFBFBD>ֽڣ<D6BD>*/
public ushort wHeight; /*<2A><>Ȧ<EFBFBD>߶ȣ<DFB6>2<EFBFBD><32><EFBFBD>ֽڣ<D6BD>*/
}
public enum PROVINCE_CITY_IDX
{
ANHUI_PROVINCE = 0, //<2F><><EFBFBD><EFBFBD>
AOMEN_CHINA_PROVINCE = 1, //<2F><><EFBFBD>ţ<EFBFBD><C5A3>й<EFBFBD><D0B9><EFBFBD>
BEIJING_PROVINCE = 2, //<2F><><EFBFBD><EFBFBD>
CHONGQING_PROVINCE = 3, //<2F><><EFBFBD><EFBFBD>
FUJIAN_PROVINCE = 4, //<2F><><EFBFBD><EFBFBD>
GANSU_PROVINCE = 5, //<2F><><EFBFBD><EFBFBD>
GUANGDONG_PROVINCE = 6, //<2F>
GUANGXI_PROVINCE = 7, //<2F><><EFBFBD><EFBFBD>
GUIZHOU_PROVINCE = 8, //<2F><><EFBFBD><EFBFBD>
HAINAN_PROVINCE = 9, //<2F><><EFBFBD><EFBFBD>
HEBEI_PROVINCE = 10, //<2F>ӱ<EFBFBD>
HENAN_PROVINCE = 11, //<2F><><EFBFBD><EFBFBD>
HEILONGJIANG_PROVINCE = 12, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
HUBEI_PROVINCE = 13, //<2F><><EFBFBD><EFBFBD>
HUNAN_PROVINCE = 14, //<2F><><EFBFBD><EFBFBD>
JILIN_PROVINCE = 15, //<2F><><EFBFBD><EFBFBD>
JIANGSU_PROVINCE = 16, //<2F><><EFBFBD><EFBFBD>
JIANGXI_PROVINCE = 17, //<2F><><EFBFBD><EFBFBD>
LIAONING_PROVINCE = 18, //<2F><><EFBFBD><EFBFBD>
NEIMENGGU_PROVINCE = 19, //<2F><><EFBFBD>ɹ<EFBFBD>
NINGXIA_PROVINCE = 20, //<2F><><EFBFBD><EFBFBD>
QINGHAI_PROVINCE = 21, //<2F>
SHANDONG_PROVINCE = 22, //ɽ<><C9BD>
SHANXI_JIN_PROVINCE = 23, //ɽ<><C9BD>
SHANXI_SHAN_PROVINCE = 24, //<2F><><EFBFBD><EFBFBD>
SHANGHAI_PROVINCE = 25, //<2F>Ϻ<EFBFBD>
SICHUAN_PROVINCE = 26, //<2F>Ĵ<EFBFBD>
TAIWAN_CHINA_PROVINCE = 27, //̨<><EFBFBD>й<EFBFBD><D0B9><EFBFBD>
TIANJIN_PROVINCE = 28, //<2F><><EFBFBD><EFBFBD>
XIZANG_PROVINCE = 29, //<2F><><EFBFBD><EFBFBD>
XIANGGANG_CHINA_PROVINCE = 30, //<2F><><EFBFBD>ۣ<EFBFBD><DBA3>й<EFBFBD><D0B9><EFBFBD>
XINJIANG_PROVINCE = 31, //<2F>½<EFBFBD>
YUNNAN_PROVINCE = 32, //<2F><><EFBFBD><EFBFBD>
ZHEJIANG_PROVINCE = 33 //<2F>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GEOGLOCATION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.U4)]
public int[] iRes; /*<2A><><EFBFBD><EFBFBD>*/
public uint dwCity; /*<2A><><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>PROVINCE_CITY_IDX */
}
//<2F><><EFBFBD><EFBFBD>ģʽ
public enum SCENE_MODE
{
UNKOWN_SCENE_MODE = 0, //δ֪<CEB4><D6AA><EFBFBD><EFBFBD>ģʽ
HIGHWAY_SCENE_MODE = 1, //<2F><><EFBFBD>ٳ<EFBFBD><D9B3><EFBFBD>ģʽ
SUBURBAN_SCENE_MODE = 2, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ(<28><><EFBFBD><EFBFBD>)
URBAN_SCENE_MODE = 3, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
TUNNEL_SCENE_MODE = 4 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ(<28><><EFBFBD><EFBFBD>)
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VTPARAM
{
public uint dwSize;
public byte byEnable; /* <20>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6>0-<2D><>ʹ<EFBFBD>ã<EFBFBD>1-ʹ<><CAB9>*/
public byte byIsDisplay; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6>0-<2D><><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>1-<2D><>ʾ*/
public byte byLoopPos; //<2F><><EFBFBD><EFBFBD><E4B4A5><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>0-<2D><><EFBFBD>ϣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte bySnapGain; /*ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwSnapShutter; /*ץ<>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ٶ<EFBFBD>*/
public NET_DVR_TRIGCOORDINATE struTrigCoordinate; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_TRIGCOORDINATE[] struRes;
public byte byTotalLaneNum;/*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>1*/
public byte byPolarLenType; /*ƫ<><C6AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD>񾵣<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ʩ<EFBFBD>͵<EFBFBD>ƫ<EFBFBD>񾵡<EFBFBD>*/
public byte byDayAuxLightMode; /*<2A><><EFBFBD><EFBFBD><ECB8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0<EFBFBD><30><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>LED<45><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byLoopToCalRoadBright; /*<2A><><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD>ȵij<C8B5><C4B3><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ)*/
public byte byRoadGrayLowTh; /*·<><C2B7><EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD>ֵ<EFBFBD><D6B5>ʼ<EFBFBD><CABC>ֵ1*/
public byte byRoadGrayHighTh; /*·<><C2B7><EFBFBD><EFBFBD><EFBFBD>ȸ<EFBFBD><C8B8><EFBFBD>ֵ<EFBFBD><D6B5>ʼ<EFBFBD><CABC>ֵ140*/
public ushort wLoopPosBias; /*<2A><><EFBFBD><EFBFBD><E4B4A5><EFBFBD><EFBFBD>Ȧλ<C8A6><CEBB>30*/
public uint dwHfrShtterInitValue; /*<2A><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ij<EFBFBD>ʼֵ2000*/
public uint dwSnapShtterInitValue; /*ץ<><D7A5>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ij<EFBFBD>ʼֵ500*/
public uint dwHfrShtterMaxValue; /*<2A><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ20000*/
public uint dwSnapShtterMaxValue; /*ץ<><D7A5>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ1500*/
public uint dwHfrShtterNightValue; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ3000*/
public uint dwSnapShtterNightMinValue; /*<2A><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ3000*/
public uint dwSnapShtterNightMaxValue; /*<2A><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5>ͼ<EFBFBD><CDBC><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ5000*/
public uint dwInitAfe; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ʼֵ200*/
public uint dwMaxAfe; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ400*/
public ushort wResolutionX;/* <20><EFBFBD><E8B1B8>ǰ<EFBFBD>ֱ<EFBFBD><D6B1>ʿ<EFBFBD>*/
public ushort wResolutionY;/* <20><EFBFBD><E8B1B8>ǰ<EFBFBD>ֱ<EFBFBD><D6B1>ʸ<EFBFBD>*/
public uint dwGainNightValue; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>棬Ĭ<E6A3AC><C4AC>ֵ70*/
public uint dwSceneMode; /*<2A><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD> <20><><EFBFBD><EFBFBD>SCENE_MODE */
public uint dwRecordMode; /*¼<><C2BC><EFBFBD><EFBFBD>־<EFBFBD><D6BE>0-<2D><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>1-¼<><C2BC>*/
public NET_DVR_GEOGLOCATION struGeogLocation; /*<2A><>ַλ<D6B7><CEBB>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VL_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byTrigFlag; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE>0-<2D><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><>β<EFBFBD><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><>ͷ/<2F><>β<EFBFBD><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VL_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byTrigSensitive; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>1-100*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 62, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SNAPENABLECFG
{
public uint dwSize;
public byte byPlateEnable;//<2F>Ƿ<EFBFBD>֧<EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public byte byFrameFlip; //ͼ<><CDBC><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ת 0-<2D><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>1-<2D><>ת
public ushort wFlipAngle; //ͼ<><CDBC><EFBFBD><EFBFBD>ת<EFBFBD>Ƕ<EFBFBD> 0,90,180,270
public ushort wLightPhase; //<2F><>λ<EFBFBD><CEBB>ȡֵ<C8A1><D6B5>Χ[0, 360]
public byte byLightSyncPower; //<2F>Ƿ<EFBFBD><C7B7>źŵƵ<C5B5>Դͬ<D4B4><CDAC><EFBFBD><EFBFBD>0-<2D><>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>1-ͬ<><CDAC>
public byte byFrequency; //<2F>ź<EFBFBD>Ƶ<EFBFBD><C6B5>
public byte byUploadSDEnable; //<2F>Ƿ<EFBFBD><C7B7>Զ<EFBFBD><D4B6>ϴ<EFBFBD>SDͼƬ<CDBC><C6AC>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byPlateMode; //ʶ<><CAB6>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>:0-<2D><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>,1-<2D>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD>
public byte byUploadInfoFTP; //<2F>Ƿ<EFBFBD><C7B7>ϴ<EFBFBD>ץ<EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>FTP<54><50>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byAutoFormatSD; //<2F>Ƿ<EFBFBD><C7B7>Զ<EFBFBD><D4B6><EFBFBD>ʽ<EFBFBD><CABD>SD<53><44><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public ushort wJpegPicSize; //JpegͼƬ<CDBC><C6AC>С[64-8196]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 56, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
/*ftp<74>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FTPCFG
{
public uint dwSize;
public uint dwEnableFTP; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ftp<74>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string sFTPIP; /*ftp <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwFTPPort; /*ftp<74>˿<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /*<2A>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /*<2A><><EFBFBD><EFBFBD>*/
public uint dwDirLevel; /*0 = <20><>ʹ<EFBFBD><CAB9>Ŀ¼<C4BF><EFBFBD><E1B9B9>ֱ<EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD><EFBFBD>ڸ<EFBFBD>Ŀ¼,1 = ʹ<><CAB9>1<EFBFBD><31>Ŀ¼,2=ʹ<><CAB9>2<EFBFBD><32>Ŀ¼*/
public ushort wTopDirMode; /* һ<><D2BB>Ŀ¼<C4BF><C2BC>0x1 = ʹ<><CAB9><EFBFBD><EFBFBD><E8B1B8>,0x2 = ʹ<><CAB9><EFBFBD><EFBFBD><E8B1B8>,0x3 = ʹ<><CAB9><EFBFBD>豸ip<69><70>ַ<EFBFBD><D6B7>0x4=ʹ<><CAB9><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>,0x5=ʹ<><CAB9>ʱ<EFBFBD><CAB1>(<28><><EFBFBD><EFBFBD>),0x=6<>Զ<EFBFBD><D4B6><EFBFBD>,0x7=Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0x8=<3D><><EFBFBD><EFBFBD>,0x9=<3D>ص<EFBFBD>*/
public ushort wSubDirMode; /* <20><><EFBFBD><EFBFBD>Ŀ¼<C4BF><C2BC>0x1 = ʹ<><CAB9>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>,0x2 = ʹ<><CAB9>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD>,0x3=ʹ<><CAB9>ʱ<EFBFBD><CAB1>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>),0x4=ʹ<>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD>,0x=5<>Զ<EFBFBD><D4B6><EFBFBD>,0x6=Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0x7=<3D><><EFBFBD><EFBFBD>,0x8=<3D>ص<EFBFBD>*/
public byte byEnableAnony; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA> */
public const int PICNAME_ITEM_DEV_NAME = 1; /*<2A><EFBFBD><E8B1B8>*/
public const int PICNAME_ITEM_DEV_NO = 2; /*<2A><EFBFBD><E8B1B8>*/
public const int PICNAME_ITEM_DEV_IP = 3; /*<2A>豸IP*/
public const int PICNAME_ITEM_CHAN_NAME = 4; /*ͨ<><CDA8><EFBFBD><EFBFBD>*/
public const int PICNAME_ITEM_CHAN_NO = 5; /*ͨ<><CDA8><EFBFBD><EFBFBD>*/
public const int PICNAME_ITEM_TIME = 6; /*ʱ<><CAB1>*/
public const int PICNAME_ITEM_CARDNO = 7; /*<2A><><EFBFBD><EFBFBD>*/
public const int PICNAME_ITEM_PLATE_NO = 8; /*<2A><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>*/
public const int PICNAME_ITEM_PLATE_COLOR = 9; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ*/
public const int PICNAME_ITEM_CAR_CHAN = 10; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int PICNAME_ITEM_CAR_SPEED = 11; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>*/
public const int PICNAME_ITEM_CARCHAN = 12; /*<2A><>ʾ<EFBFBD><CABE>*/
public const int PICNAME_ITEM_PIC_NUMBER = 13; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public const int PICNAME_ITEM_CAR_NUMBER = 14; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PICNAME_ITEM_SPEED_LIMIT_VALUES = 15; //<2F><><EFBFBD><EFBFBD>ֵ
public const int PICNAME_ITEM_ILLEGAL_CODE = 16; //<2F><><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PICNAME_ITEM_CROSS_NUMBER = 17; //·<>ڱ<EFBFBD><DAB1><EFBFBD>
public const int PICNAME_ITEM_DIRECTION_NUMBER = 18; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PICNAME_MAXITEM = 15;
//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PICTURE_NAME
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PICNAME_MAXITEM, ArraySubType = UnmanagedType.I1)]
public byte[] byItemOrder; /* <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9B6A8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD> */
public byte byDelimiter; /*<2A>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>Ϊ'_'*/
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2013-09-27
public const int PICNAME_ITEM_PARK_DEV_IP = 1; /*<2A>豸IP*/
public const int PICNAME_ITEM_PARK_PLATE_NO = 2;/*<2A><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>*/
public const int PICNAME_ITEM_PARK_TIME = 3; /*ʱ<><CAB1>*/
public const int PICNAME_ITEM_PARK_INDEX = 4; /*<2A><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>*/
public const int PICNAME_ITEM_PARK_STATUS = 5; /*<2A><>λ״̬*/
//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ 2013-09-27
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PICTURE_NAME_EX
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PICNAME_MAXITEM, ArraySubType = UnmanagedType.I1)]
public byte[] byItemOrder; /* <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9B6A8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD> */
public byte byDelimiter; /*<2A>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>Ϊ'_'*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /*<2A><><EFBFBD><EFBFBD>*/
}
/* <20><><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SERIAL_CATCHPIC_PARA
{
public byte byStrFlag; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>ʼ<EFBFBD><CABC>*/
public byte byEndFlag; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wCardIdx; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼλ*/
public uint dwCardLen; /*<2A><><EFBFBD>ų<EFBFBD><C5B3><EFBFBD>*/
public uint dwTriggerPicChans; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>λ<EFBFBD><CEBB><EFBFBD>ӵ<EFBFBD><31><CEBB>ʼ<EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD>0x2<78><32>ʾ<EFBFBD><CABE>һͨ<D2BB><CDA8>*/
}
//DVRץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>ߣ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_JPEGCFG_V30
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_JPEGPARA[] struJpegPara; /*ÿ<><C3BF>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wBurstMode; /*ץͼ<D7A5><CDBC>ʽ,<2C><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>.0x1=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5><EFBFBD><EFBFBD>0x2=<3D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B4A5> 0x4=232<33><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0x8=485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0x10=<3D><><EFBFBD><EFBFBD><E7B4A5>*/
public ushort wUploadInterval; /*ͼƬ<CDBC>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>(<28><>)[0,65535]*/
public NET_DVR_PICTURE_NAME struPicNameRule; /* ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public byte bySaveToHD; /*<2A>Ƿ񱣴浽Ӳ<E6B5BD><D3B2>*/
public byte byRes1;
public ushort wCatchInterval; /*ץͼ<D7A5><CDBC><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)[0,65535]*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_SERIAL_CATCHPIC_PARA struRs232Cfg;
public NET_DVR_SERIAL_CATCHPIC_PARA struRs485Cfg;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint[] dwTriggerPicTimes; /* ÿ<><C3BF>ͨ<EFBFBD><CDA8>һ<EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>մ<EFBFBD><D5B4><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN_V30, ArraySubType = UnmanagedType.U4)]
public uint[] dwAlarmInPicChanTriggered; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5>ͨ<EFBFBD><CDA8>,<2C><>λ<EFBFBD><CEBB><EFBFBD>ã<EFBFBD><C3A3>ӵ<EFBFBD><31><CEBB>ʼ*/
}
//<2F>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_MANUALSNAP
{
public byte byOSDEnable;
public byte byLaneNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 22, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int NET_ITC_GET_TRIGGERCFG = 3003; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_ITC_SET_TRIGGERCFG = 3004; //<2F><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_GET_CURTRIGGERMODE = 3130; //<2F><>ȡ<EFBFBD><EFBFBD><E8B1B8>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ģʽ
public const int NET_ITC_GET_VIDEO_TRIGGERCFG = 3017; //<2F><>ȡ<EFBFBD><C8A1>Ƶ<EFBFBD><EFBFBD><E7BEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_ITC_SET_VIDEO_TRIGGERCFG = 3018; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><E7BEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_ITC_LANE_NUM = 6;
public const int MAX_IOOUT_NUM = 4;
public const int MAX_LANEAREA_NUM = 2;
public const int MAX_IOIN_NUMEX = 10;
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_SERIAL_INFO
{
public byte bySerialProtocol;
public byte byIntervalType;
public ushort wInterval;
public byte byNormalPassProtocol;
public byte byInverseProtocol;
public byte bySpeedProtocol;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_EPOLICE_LANE_PARAM
{
public byte byEnable;
public byte byRelatedDriveWay;
public ushort wDistance;
public byte byRecordEnable;
public byte byRecordType;
public byte byPreRecordTime;
public byte byRecordDelayTime;
public byte byRecordTimeOut;
public byte bySignSpeed;
public byte bySpeedLimit;
public byte byOverlayDriveWay;
public NET_ITC_SERIAL_INFO struSerialInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IOOUT_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byRelatedIOOut;
public byte byFlashMode;
public byte bySerialType;
public byte byRelatedIOOutEx;
public byte bySnapPicPreRecord;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LANEAREA_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_PLATE_RECOG_REGION_PARAM[] struPlateRecog;
public byte byBigCarSignSpeed;
public byte byBigCarSpeedLimit;
public byte byRedTrafficLightChan;
public byte byYellowTrafficLightChan;
public byte byRelaLaneDirectionType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_EPOLICE_RS485_PARAM
{
public byte byRelatedLaneNum;
public byte byTrafficLightSignalSrc;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_ITC_PLATE_RECOG_PARAM struPlateRecog;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ITC_LANE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_EPOLICE_LANE_PARAM[] struLane;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_SINGLEIO_PARAM
{
public byte byDefaultStatus;
public byte byRelatedDriveWay;
public byte bySnapTimes;
public byte byRelatedIOOutEx;
public NET_ITC_INTERVAL_PARAM struInterval;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IOOUT_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byRelatedIOOut;
public byte byFlashMode;
public byte byEnable;
public byte byUseageType;
public byte byRes2;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LANEAREA_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_PLATE_RECOG_REGION_PARAM[] struPlateRecog;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_POST_SINGLEIO_PARAM
{
public NET_ITC_PLATE_RECOG_PARAM struPlateRecog;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IOIN_NUMEX, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_SINGLEIO_PARAM[] struSingleIO;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_CURTRIGGERMODE
{
public uint dwSize;
public uint dwTriggerType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_PLATE_RECOG_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 3)]
public string byDefaultCHN;
public byte byEnable;
public uint dwRecogMode;
public byte byVehicleLogoRecog;
public byte byProvince;
public byte byRegion;
public byte byRes1;
public ushort wPlatePixelWidthMin;
public ushort wPlatePixelWidthMax;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_INTERVAL_PARAM
{
public byte byIntervalType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTERVAL_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wInterval;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct UNION_REGION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 164, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_PLATE_RECOG_REGION_PARAM
{
public byte byMode;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public UNION_REGION uRegion;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_LANE_PARAM
{
public byte byEnable;
public byte byRelatedDriveWay;
public ushort wDistance;
public ushort wTrigDelayTime;
public byte byTrigDelayDistance;
public byte bySpeedCapEn;
public byte bySignSpeed;
public byte bySpeedLimit;
public byte bySnapTimes;
public byte byOverlayDriveWay;
public NET_ITC_INTERVAL_PARAM struInterval;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IOOUT_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byRelatedIOOut;
public byte byFlashMode;
public byte byCartSignSpeed;
public byte byCartSpeedLimit;
public byte byRelatedIOOutEx;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LANEAREA_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_PLATE_RECOG_REGION_PARAM[] struPlateRecog;
public byte byLaneType;
public byte byUseageType;
public byte byRelaLaneDirectionType;
public byte byLowSpeedLimit;
public byte byBigCarLowSpeedLimit;
public byte byLowSpeedCapEn;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_RADAR_PARAM
{
public byte byRadarType;
public byte byLevelAngle;
public ushort wRadarSensitivity;
public ushort wRadarSpeedValidTime;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public float fLineCorrectParam;
public int iConstCorrectParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_POST_RS485_RADAR_PARAM
{
public byte byRelatedLaneNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_ITC_PLATE_RECOG_PARAM struPlateRecog;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ITC_LANE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_LANE_PARAM[] struLane;
public NET_ITC_RADAR_PARAM struRadar;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_TRIGGER_PARAM_UNION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4280, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_SINGLE_TRIGGERCFG
{
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwTriggerType;
public NET_ITC_TRIGGER_PARAM_UNION uTriggerParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_TRIGGERCFG
{
public uint dwSize;
public NET_ITC_SINGLE_TRIGGERCFG struTriggerParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_VIDEO_TRIGGER_COND
{
public uint dwSize;
public uint dwChannel;
public uint dwTriggerMode;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_VIDEO_TRIGGER_PARAM_UNION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 1150, ArraySubType = UnmanagedType.U4)]
public uint[] uLen;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_LIGHT_ACCESSPARAM_UNION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 122, ArraySubType = UnmanagedType.U4)]
public uint[] uLen;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_TRAFFIC_LIGHT_PARAM
{
public byte bySource; //<2F><>ͨ<EFBFBD>źŵƽ<C5B5><C6BD><EFBFBD>Դ<EFBFBD><D4B4>0-IO<49><4F><EFBFBD>룬1-RS485<38><35><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_ITC_LIGHT_ACCESSPARAM_UNION struLightAccess;//<2F>źŵƽ<C5B5><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_LANE_LOGIC_PARAM
{
public byte byUseageType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<EFBFBD><CDBE><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>ITC_LANE_USEAGE_TYPE
public byte byDirectionType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>ITC_LANE_DIRECTION_TYPE
public byte byCarDriveDirect; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʻ<EFBFBD><CABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITC_LANE_CAR_DRIVE_DIRECT
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 33, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_VIOLATION_DETECT_PARAM
{
public uint dwVioDetectType; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>λ<EFBFBD><CEBB>ʾ, <20><><EFBFBD><EFBFBD>ITC_VIOLATION_DETECT_TYPE ,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD>
public byte byDriveLineSnapTimes; //ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-3
public byte byReverseSnapTimes; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5>,2-3
public ushort wStayTime; //<2F><>ռ<EFBFBD><D5BC>ͣ<EFBFBD><CDA3>ʱ<EFBFBD><EFBFBD><E4A3A8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ץ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD>λs
public byte byNonDriveSnapTimes;//<2F><>ռ<EFBFBD><D5BC>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-3
public byte byChangeLaneTimes;//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-3
public byte bybanTimes;//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-3
public byte byDriveLineSnapSen;// ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(0~100)(3.7Ver)
public ushort wSnapPosFixPixel; //<2F><>2,3<><33>ץ<EFBFBD><D7A5>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Сƫ<D0A1><C6AB>(Υ<><CEA5><EFBFBD>źŵ<C5BA>ʱ<EFBFBD><CAB1>Ч)<29><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD>
public byte bySpeedTimes;//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-3(3.8Ver)
public byte byTurnAroundEnable;//Υ<>µ<EFBFBD>ͷʹ<CDB7><CAB9> 0~<7E>ر<EFBFBD> 1~<7E><><EFBFBD><EFBFBD>
public byte byThirdPlateRecogTime;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶʱ<CAB6><CAB1> 0~180s
public byte byPostSnapTimes;//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-2<><32>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 18, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public ushort wStopLineDis; //<2F><EFBFBD><E7BEAF>2<EFBFBD><32>Υ<EFBFBD><CEA5>ͼƬ<CDBC><C6AC>ֹͣ<CDA3>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD>̾<EFBFBD><CCBE>룬[0,300]<5D><>λ(<28><><EFBFBD><EFBFBD>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_VIDEO_TRIGGER_PARAM
{
public uint dwSize;
public uint dwMode;
public NET_ITC_VIDEO_TRIGGER_PARAM_UNION uVideoTrigger;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_LAMP_EXTERNAL_CFG
{
public uint dwSize;
public byte byEnable; //<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_LAMP_STATE struLampStateCtrl;//ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_LAMP_STATE
{
public byte byFlicker;//0~<7E><><EFBFBD><EFBFBD>˸ 1 <20><><EFBFBD><EFBFBD>˸
public byte byParkingIndex;//<2F><>λ<EFBFBD><CEBB>1<EFBFBD><31>3
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwIONo;//1~IO1;2~IO2;4~IO3;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int MAX_LED_INFO_LEN = 512;
public const int MAX_VOICE_INFO_LEN = 128;
public const int NET_DVR_GET_LEDDISPLAY_CFG = 3673;
public const int NET_DVR_SET_LEDDISPLAY_CFG = 3672;
public const int NET_DVR_SET_VOICEBROADCAST_CFG = 3675;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LEDDISPLAY_CFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LED_INFO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDisplayInfo;
public byte byDisplayMode;
public byte bySpeedType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwShowTime;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VOICEBROADCAST_CFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VOICE_INFO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byBroadcastNum;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1~10<31><30>
public byte byIntervalTime;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,1~5s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 126, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_VIDEO_EPOLICE_PARAM
{
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byLaneNum; //ʶ<><CAB6><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byLogicJudge;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD>ж<EFBFBD><D0B6>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ<D6B5><CEAA>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1;
public NET_ITC_PLATE_RECOG_PARAM struPlateRecog; //<2F><>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
public NET_ITC_TRAFFIC_LIGHT_PARAM struTrafficLight; //<2F><>ͨ<EFBFBD>źŵƲ<C5B5><C6B2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ITC_LANE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_LANE_VIDEO_EPOLICE_PARAM[] struLaneParam; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITC_LINE struLaneBoundaryLine; //<2F><><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD>ߣ<EFBFBD><DFA3><EFBFBD><EFBFBD>ұ߳<D2B1><DFB3><EFBFBD><EFBFBD>ı߽<C4B1><DFBD>ߣ<EFBFBD>
public NET_ITC_LINE struLeftLine; //<2F><>ת<EFBFBD><D7AA><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>
public NET_ITC_LINE struRightLine; //<2F><>ת<EFBFBD><D7AA><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>
public NET_ITC_LINE struTopZebraLine; //<2F>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITC_LINE struBotZebraLine; //<2F>²<EFBFBD><C2B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>Ƶ<EFBFBD><EFBFBD>߽ṹ
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_LINE
{
public NET_VCA_LINE struLine; //<2F>߲<EFBFBD><DFB2><EFBFBD>
public byte byLineType; //<2F><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>ITC_LINE_TYPE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ͽṹ<CDBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_POLYGON
{
public uint dwPointNum; //<2F><>Ч<EFBFBD><D0A7> <20><><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_POINT[] struPos; //<2F><><EFBFBD><EFBFBD><EFBFBD>α߽<CEB1><DFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>20<32><30>
}
//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><DFB2><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_VIOLATION_DETECT_LINE
{
public NET_ITC_LINE struLaneLine; //<2F><><EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>
public NET_ITC_LINE struStopLine; //ֹͣ<CDA3>߲<EFBFBD><DFB2><EFBFBD>
public NET_ITC_LINE struRedLightLine; //<2F><><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>
public NET_ITC_LINE struCancelLine; //ֱ<>д<EFBFBD><D0B4><EFBFBD>λ<EFBFBD><CEBB>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
public NET_ITC_LINE struWaitLine; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹͣ<CDA3>߲<EFBFBD><DFB2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.Struct)]
public NET_ITC_LINE[] struRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_ITC_LANE_VIDEO_EPOLICE_PARAM
{
public byte byLaneNO; //<2F><><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>
public byte bySensitivity; //<2F><>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>[1,100]
public byte byEnableRadar;//<2F><><EFBFBD><EFBFBD><EFBFBD>״<EFBFBD><D7B4><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD>ITC_RELA_LANE_DIRECTION_TYPE
//<2F>ò<EFBFBD><C3B2><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD>Ӧ<EFBFBD><D3A6>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ψһ<CEA8>ԡ<EFBFBD>
public byte byRelaLaneDirectionType;
public NET_ITC_LANE_LOGIC_PARAM struLane; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITC_VIOLATION_DETECT_PARAM struVioDetect; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITC_VIOLATION_DETECT_LINE struLine; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITC_POLYGON struPlateRecog; //<2F><>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRecordEnable;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>־<EFBFBD><D6BE>0-<2D><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>1-¼<><C2BC>
public byte byRecordType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-Ԥ¼<D4A4><C2BC>1-<2D><>ʱ¼<CAB1><C2BC>
public byte byPreRecordTime;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ƭ<EFBFBD><C6AC>Ԥ¼ʱ<C2BC>䣨Ĭ<E4A3A8><C4AC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
public byte byRecordDelayTime;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD>ʱʱ<CAB1>䣨Ĭ<E4A3A8><C4AC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
public byte byRecordTimeOut;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ʱʱ<CAB1><EFBFBD>
public byte byCarSpeedLimit; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λkm/h
public byte byCarSignSpeed;//<2F><>־<EFBFBD><D6BE><EFBFBD>٣<EFBFBD><D9A3><EFBFBD>λkm/h
public byte bySnapPicPreRecord; //ץ<><D7A5>ͼƬԤ¼ʱ<C2BC><CAB1><EFBFBD>㣻0-Ĭ<><C4AC>ֵ<EFBFBD><D6B5><EFBFBD>ڶ<EFBFBD><DAB6><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>1-<2D><>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC>2-<2D>ڶ<EFBFBD><DAB6><EFBFBD>ͼƬ<CDBC><C6AC>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ
public NET_ITC_INTERVAL_PARAM struInterval;//ץ<>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20byte<74><65>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 36, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SPRCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHJC_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byDefaultCHN; /*<2A><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʡ<EFBFBD>ݵĺ<DDB5><C4BA>ּ<EFBFBD>д*/
public byte byPlateOSD; /*0:<3A><><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>Ʋ<EFBFBD>ɫͼ,1:<3A><><EFBFBD>ͳ<EFBFBD><CDB3>Ʋ<EFBFBD>ɫͼ*/
public byte bySendJPEG1; /*0-<2D><><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD><CDBD><EFBFBD>JPEGͼ,1-<2D><><EFBFBD>ͽ<EFBFBD><CDBD><EFBFBD>JPEGͼ*/
public byte bySendJPEG2; /*0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6>JPEGͼ,1-<2D><><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6>JPEGͼ*/
public ushort wDesignedPlateWidth; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD><C6BF><EFBFBD>*/
public byte byTotalLaneNum; /*ʶ<><CAB6><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>*/
public byte byRes1; /*<2A><><EFBFBD><EFBFBD>*/
public ushort wRecognizedLane; /*ʶ<><CAB6><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>bit0<74><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>1<EFBFBD>Ƿ<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>0-<2D><>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>1-ʶ<><CAB6>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LANERECT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_RECT[] struLaneRect; /*<2A><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwRecogMode; /*ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>
bit0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>(β<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>) <EFBFBD><EFBFBD>
bit1-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
bit2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bit3-ũ<EFBFBD>ó<EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ũ<EFBFBD>ó<EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-ũ<EFBFBD>ó<EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bit4-ģ<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-ģ<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bit5-֡<EFBFBD><EFBFBD>λ<EFBFBD>򳡶<EFBFBD>λ<EFBFBD><EFBFBD>0-֡<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>1-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>
bit6-֡ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-֡ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bit7-<EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
public byte bySendPRRaw; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ԭͼ<D4AD><CDBC>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte bySendBinImage; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>ƶ<EFBFBD>ֵͼ<D6B5><CDBC>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byDelayCapture; //<2F><>ʱץ<CAB1>Ŀ<EFBFBD><C4BF><EFBFBD>,<2C><>λ<EFBFBD><CEBB>֡
public byte byUseLED; //ʹ<><CAB9>LED<45><44><EFBFBD>ƣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 68, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLCCFG
{
public uint dwSize;
public byte byPlcEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>0-<2D>رգ<D8B1>1-<2D><><EFBFBD><EFBFBD>
public byte byPlateExpectedBright; //<2F><><EFBFBD>Ƶ<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>Ĭ<EFBFBD><C4AC>ֵ50<35><30>, <20><>Χ[0, 100]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public byte byTradeoffFlash; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>Ӱ<EFBFBD><D3B0>: 0 - <20><>; 1 - <20><><><C4AC>);
//ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>ʱ, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD><C7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿЧӦ, <20><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>Ϊ1;<3B><><EFBFBD><EFBFBD>Ϊ0
public byte byCorrectFactor; //<2F><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>, <20><>Χ[0, 100], Ĭ<><C4AC>ֵ50 (<28><>tradeoff_flash<73>л<EFBFBD>ʱ,<2C>ָ<EFBFBD>Ĭ<EFBFBD><C4AC>ֵ<EFBFBD><D6B5>
public ushort wLoopStatsEn; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>ͳ<EFBFBD>ƣ<EFBFBD>1-ͳ<><CDB3>
public byte byPlcBrightOffset;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧģʽ<C4A3><CABD>Ч)<29><>ȡֵ<C8A1><D6B5>Χ1~100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 19, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEVICESTATECFG
{
public uint dwSize;
public ushort wPreviewNum; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD>Ӹ<EFBFBD><D3B8><EFBFBD>
public ushort wFortifyLinkNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӹ<EFBFBD><D3B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LINK, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPADDR[] struPreviewIP; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_FORTIFY_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_IPADDR[] struFortifyIP; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5>û<EFBFBD>IP<49><50>ַ
public uint dwVideoFrameRate; //֡<>ʣ<EFBFBD>0-ȫ<><C8AB>; 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;
public byte byResolution; //<2F>ֱ<EFBFBD><D6B1><EFBFBD>0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF 5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,16-VGA<47><41>640*480<38><30>, 17-UXGA<47><41>1600*1200<30><30>, 18-SVGA <20><>800*600<30><30>,19-HD720p<30><70>1280*720<32><30>,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048
public byte bySnapResolution; //ץ<>ķֱ<C4B7><D6B1><EFBFBD>0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF 5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,16-VGA<47><41>640*480<38><30>, 17-UXGA<47><41>1600*1200<30><30>, 18-SVGA <20><>800*600<30><30>,19-HD720p<30><70>1280*720<32><30>,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048
public byte byStreamType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTriggerType; //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public uint dwSDVolume; //SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwSDFreeSpace; //SD<53><44>ʣ<EFBFBD><CAA3><EFBFBD>ռ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DRIVECHAN_NUM * MAX_COIL_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byDetectorState; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-δʹ<CEB4>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte byDetectorLinkState; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-δ<><CEB4><EFBFBD>ӣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte bySDStatus; //SD<53><44>״̬ 0<><30><EFBFBD><EFBFBD><EEB6AF>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD><ECB3A3>3-<2D><>sd<73><64>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_FORTIFY_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byFortifyLevel; //<2F><><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0-<2D>ޣ<EFBFBD>1-һ<>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>ߣ<EFBFBD><DFA3><EFBFBD>2-<2D><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD>3-<2D><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>ͣ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 116, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POSTEPOLICECFG
{
public uint dwSize;
public uint dwDistance;//<2F><>Ȧ<EFBFBD><C8A6><EFBFBD><EFBFBD>,<2C><>λcm<63><6D>ȡֵ<C8A1><D6B5>Χ[0,20000]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SIGNALLIGHT_NUM, ArraySubType = UnmanagedType.U4)]
public uint[] dwLightChan; //<2F>źŵ<C5BA>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte byCapSpeed;//<2F><>־<EFBFBD><D6BE><EFBFBD>٣<EFBFBD><D9A3><EFBFBD>λkm/h<><68>ȡֵ<C8A1><D6B5>Χ[0,255]
public byte bySpeedLimit;//<2F><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λkm/h<><68>ȡֵ<C8A1><D6B5>Χ[0,255]
public byte byTrafficDirection;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D>ɶ<EFBFBD><C9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>򶫣<EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD>򱱣<EFBFBD>3-<2D>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1; //<2F><><EFBFBD><EFBFBD>
public ushort wLoopPreDist; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ӳپ<D3B3><D9BE><EFBFBD> <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wTrigDelay; /*<2A><><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2>ʱʱ<CAB1><CAB1> <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
/***************************** end *********************************************/
public const int IPC_PROTOCOL_NUM = 50; //ipc Э<><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//Э<><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PROTO_TYPE
{
public uint dwType; /*ipcЭ<63><D0AD>ֵ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDescribe; /*Э<><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
}
//Э<><D0AD><EFBFBD>б<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPC_PROTO_LIST
{
public uint dwSize;
public uint dwProtoNum; /*<2A><>Ч<EFBFBD><D0A7>ipcЭ<63><D0AD><EFBFBD><EFBFBD>Ŀ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = IPC_PROTOCOL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PROTO_TYPE[] struProto; /*<2A><>Ч<EFBFBD><D0A7>ipcЭ<63><D0AD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//Э<><D0AD><EFBFBD>б<EFBFBD>V41
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPC_PROTO_LIST_V41
{
public uint dwSize;
public uint dwProtoNum; //<2F><>Ч<EFBFBD><D0A7>ipcЭ<63><D0AD><EFBFBD><EFBFBD>Ŀ
public IntPtr pBuffer; //Э<><D0AD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, dwProtoNum <20><>NET_DVR_PROTO_TYPE<50>
public uint dwBufferLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int MAX_ALERTLINE_NUM = 8; //<2F><><EFBFBD>󾯽<EFBFBD><F3BEAFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//Խ<><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TRAVERSE_PLANE_SEARCHCOND
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALERTLINE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_TRAVERSE_PLANE[] struVcaTraversePlane; //<2F><>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwPreTime; /*<2A><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>ǰʱ<C7B0><CAB1> <20><>λ:<3A><>*/
public uint dwDelayTime; /*<2A><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD>ӳ<EFBFBD>ʱ<EFBFBD><CAB1> <20><>λ:<3A><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5656, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
public const int MAX_INTRUSIONREGION_NUM = 8; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INTRUSION_SEARCHCOND
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INTRUSIONREGION_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_INTRUSION[] struVcaIntrusion; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwPreTime; /*<2A><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD>ǰʱ<C7B0><CAB1> <20><>λ:<3A><>*/
public uint dwDelayTime; /*<2A><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD>ӳ<EFBFBD>ʱ<EFBFBD><CAB1> <20><>λ:<3A><>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5400, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_AREA_SMARTSEARCH_COND_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6144, ArraySubType = UnmanagedType.I1)]
public byte[] byLen; //<2F><EFBFBD><EFBFBD><E5B3A4>
/*[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64 * 96, ArraySubType = UnmanagedType.I1)]
public byte[] byMotionScope; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-96λ<36><CEBB>ʾ64<36>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>96*64<36><34>С<EFBFBD><D0A1><EFBFBD>飬1-<2D><><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[FieldOffsetAttribute(0)]
public NET_DVR_TRAVERSE_PLANE_SEARCHCOND struTraversPlaneCond; //Խ<><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[FieldOffsetAttribute(0)]
public NET_DVR_INTRUSION_SEARCHCOND struIntrusionCond; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* */
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SMART_SEARCH_PARAM
{
public byte byChan; //ͨ<><CDA8><EFBFBD><EFBFBD>
public byte bySearchCondType; //<2F><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_DVR_AREA_SMARTSEARCH_COND_UNION<4F><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*0-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>1-Խ<><D4BD><EFBFBD><EFBFBD><EFBFBD>⣬ 2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_TIME struStartTime; //¼<><C2BC><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1>
public NET_DVR_TIME struEndTime; //¼<><C2BC>ֹͣ<CDA3><D6B9>ʱ<EFBFBD><CAB1>
public NET_DVR_AREA_SMARTSEARCH_COND_UNION uSmartSearchCond; //<2F><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySensitivity; //<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1 >80% 2 40%~80% 3 1%~40%
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SMART_SEARCH_RET
{
public NET_DVR_TIME struStartTime; //<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1>
public NET_DVR_TIME struEndTime; //<2F>¼<EFBFBD>ֹͣ<CDA3><D6B9>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//IPSAN <20>ļ<EFBFBD>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPSAN_SERACH_PARAM
{
public NET_DVR_IPADDR struIP; // IPSAN IP<49><50>ַ
public ushort wPort; // IPSAN <20>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPSAN_SERACH_RET
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byDirectory; // <20><><EFBFBD>ص<EFBFBD><D8B5>ļ<EFBFBD>Ŀ¼
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//DVR<56><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEVICECFG_V40
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDVRName; //DVR<56><52><EFBFBD><EFBFBD>
public uint dwDVRID; //DVR ID,<2C><><EFBFBD><EFBFBD>ң<EFBFBD><D2A3><EFBFBD><EFBFBD> //V1.4(0-99), V1.5(0-255)
public uint dwRecycleRecord; //<2F>Ƿ<EFBFBD>ѭ<EFBFBD><D1AD>¼<EFBFBD><C2BC>,0:<3A><><EFBFBD><EFBFBD>; 1:<3A><>
//<2F><><EFBFBD>²<EFBFBD><C2B2>ɸ<EFBFBD><C9B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber; //<2F><><EFBFBD>к<EFBFBD>
public uint dwSoftwareVersion; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B1BE>,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public uint dwSoftwareBuildDate; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0xYYYYMMDD
public uint dwDSPSoftwareVersion; //DSP<53><50><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public uint dwDSPSoftwareBuildDate; // DSP<53><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0xYYYYMMDD
public uint dwPanelVersion; // ǰ<><C7B0><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public uint dwHardwareVersion; // Ӳ<><D3B2><EFBFBD>汾,<2C><>16λ<36><CEBB><EFBFBD><EFBFBD><EFBFBD>汾,<2C><>16λ<36>Ǵΰ汾
public byte byAlarmInPortNum; //DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmOutPortNum; //DVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRS232Num; //DVR 232<33><32><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byRS485Num; //DVR 485<38><35><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byNetworkPortNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byDiskCtrlNum; //DVR Ӳ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDiskNum; //DVR Ӳ<≯<EFBFBD><CCB8><EFBFBD>
public byte byDVRType; //DVR<56><52><EFBFBD><EFBFBD>, 1:DVR 2:ATM DVR 3:DVS ......
public byte byChanNum; //DVR ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartChan; //<2F><>ʼͨ<CABC><CDA8><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>DVS-1,DVR - 1
public byte byDecordChans; //DVR <20><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public byte byVGANum; //VGA<47>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byUSBNum; //USB<53>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byAuxoutNum; //<2F><><EFBFBD>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byAudioNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڵĸ<DAB5><C4B8><EFBFBD>
public byte byIPChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD> <20><><38><CEBB><EFBFBD><EFBFBD><38><CEBB>byHighIPChanNum
public byte byZeroChanNum; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySupport; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE>֣<EFBFBD>
//bySupport & 0x1, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//bySupport & 0x2, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
//bySupport & 0x4, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
//bySupport & 0x8, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>
//bySupport & 0x10, <20><>ʾ֧<CABE><D6A7>Զ<EFBFBD><D4B6>SADP
//bySupport & 0x20, <20><>ʾ֧<CABE><D6A7>Raid<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//bySupport & 0x40, <20><>ʾ֧<CABE><D6A7>IPSAN<41><4E><EFBFBD><EFBFBD>
//bySupport & 0x80, <20><>ʾ֧<CABE><D6A7>rtp over rtsp
public byte byEsataUseage; //Esata<74><61>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD>;<EFBFBD><CDBE>0-Ĭ<>ϱ<EFBFBD><CFB1>ݣ<EFBFBD>1-Ĭ<><C4AC>¼<EFBFBD><C2BC>
public byte byIPCPlug; //0-<2D>رռ<D8B1><D5BC><EFBFBD>ã<EFBFBD>1-<2D>򿪼<EFBFBD><F2BFAABC><EFBFBD><E5BCB4>
public byte byStorageMode; //0-<2D><><EFBFBD><EFBFBD>ģʽ,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 2<><32>֡ģʽ
public byte bySupport1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE><D6A7>
//bySupport1 & 0x1, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>snmp v30
//bySupport1 & 0x2, ֧<><D6A7><EFBFBD><EFBFBD><EFBFBD>ֻطź<D8B7><C5BA><EFBFBD><EFBFBD><EFBFBD>
//bySupport1 & 0x4, <20>Ƿ<EFBFBD>֧<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
//bySupport1 & 0x8, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ
//bySupport1 & 0x10, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>33<33><33><EFBFBD><EFBFBD>
//bySupport1 & 0x20, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7>rtsp over http
public ushort wDevType;//<2F><EFBFBD>ͺ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DEV_TYPE_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDevTypeName;//<2F><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EFBFBD><EFBFBD>
public byte bySupport2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>ʾ<EFBFBD><CABE>֧<EFBFBD>֣<EFBFBD>1<EFBFBD><31>ʾ֧<CABE><D6A7>
//bySupport2 & 0x1, <20><>ʾ<EFBFBD>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>OSD<53>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>(<28>ն˺<D5B6>ץ<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>)
public byte byAnalogAlarmInPortNum; //ģ<><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartAlarmInNo; //ģ<><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
public byte byStartAlarmOutNo; //ģ<><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
public byte byStartIPAlarmInNo; //IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC> 0-<2D><>Ч
public byte byStartIPAlarmOutNo; //IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC> 0-<2D><>Ч
public byte byHighIPChanNum; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
public const int MAX_ZEROCHAN_NUM = 16;
//<2F><>ͨ<EFBFBD><CDA8>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ZEROCHANCFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byEnable; //0-ֹͣ<CDA3><D6B9>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>룬1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwVideoBitrate; /*<EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-16K(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) 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
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ(31λ)<EFBFBD>ó<EFBFBD>1<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0-30λ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ(MIN-32K MAX-8192K) */
public uint dwVideoFrameRate; //֡<><D6A1> 0-ȫ<><C8AB>; 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<EFBFBD><EFBFBD><EFBFBD><EFBFBD>14-15, 15-18, 16-22;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ZERO_ZOOMCFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public NET_VCA_POINT struPoint; //<2F><><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byState; //<2F><><EFBFBD>ڵ<EFBFBD>״̬<D7B4><CCAC>0-<2D><>С<EFBFBD><D0A1>1-<2D>Ŵ<EFBFBD>
public byte byPreviewNumber; //Ԥ<><D4A4><EFBFBD><EFBFBD>Ŀ,0-1<><31><EFBFBD><EFBFBD>,1-4<><34><EFBFBD><EFBFBD>,2-9<><39><EFBFBD><EFBFBD>,3-16<31><36><EFBFBD><EFBFBD> <20>ò<EFBFBD><C3B2><EFBFBD>ֻ<EFBFBD><D6BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOW_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byPreviewSeq;//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ <20>ò<EFBFBD><C3B2><EFBFBD>ֻ<EFBFBD><D6BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 30, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
public const int DESC_LEN_64 = 64;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SNMPCFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byEnable; //0-<2D><><EFBFBD><EFBFBD>SNMP<4D><50>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>SNMP
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public ushort wVersion; //snmp <20>汾 v1 = 1, v2 =2, v3 =3<><33><EFBFBD>豸Ŀǰ<C4BF><C7B0>֧<EFBFBD><D6A7> v3
public ushort wServerPort; //snmp<6D><70>Ϣ<EFBFBD><CFA2><EFBFBD>ն˿ڣ<CBBF>Ĭ<EFBFBD><C4AC> 161
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byReadCommunity; //<2F><><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><E5A3AC><EFBFBD><EFBFBD>31,Ĭ<><C4AC>"public"
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byWriteCommunity;//д<><D0B4>ͬ<EFBFBD><CDAC>,<2C><><EFBFBD><EFBFBD>31 <20>ֽ<EFBFBD><><C4AC> "private"
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN_64, ArraySubType = UnmanagedType.I1)]
public byte[] byTrapHostIP; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ip<69><70>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>IPV4 IPV6<56><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wTrapHostPort; //trap<61><70><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byTrapName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 70, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SNMPv3_USER
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName; // <20>û<EFBFBD><C3BB><EFBFBD>
public byte bySecLevel; //<2F><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD> 1-<2D><>У<EFBFBD><D0A3> 2-<2D><><EFBFBD><EFBFBD>ȨУ<C8A8><D0A3> 3-<2D><>ȨУ<C8A8><D0A3>
public byte byAuthtype; //<2F><>֤<EFBFBD><D6A4><EFBFBD><EFBFBD> 0-MD5<44><35>֤ 1-SHA<48><41>֤ 2: none
public byte byPrivtype; //0: DES; 1: AES; 2: none;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAuthpass; //<2F><>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPrivpass; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//snmpv30
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SNMPCFG_V30
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byEnableV1; //0-<2D><><EFBFBD><EFBFBD>SNMP V1<56><31>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>SNMP V1
public byte byEnableV2; //0-<2D><><EFBFBD><EFBFBD>SNMP V2<56><32>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>SNMP V2
public byte byEnableV3; //0-<2D><><EFBFBD><EFBFBD>SNMP V3<56><33>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>SNMP V3
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public ushort wServerPort; //snmp<6D><70>Ϣ<EFBFBD><CFA2><EFBFBD>ն˿ڣ<CBBF>Ĭ<EFBFBD><C4AC> 161
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byReadCommunity; //<2F><><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><E5A3AC><EFBFBD><EFBFBD>31,Ĭ<><C4AC>"public"
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byWriteCommunity; //д<><D0B4>ͬ<EFBFBD><CDAC>,<2C><><EFBFBD><EFBFBD>31 <20>ֽ<EFBFBD><><C4AC> "private"
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN_64, ArraySubType = UnmanagedType.I1)]
public byte[] byTrapHostIP; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ip<69><70>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>IPV4 IPV6<56><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wTrapHostPort; // trap<61><70><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_SNMPv3_USER struRWUser; // <20><>д<EFBFBD>û<EFBFBD>
public NET_DVR_SNMPv3_USER struROUser; // ֻ<><D6BB><EFBFBD>û<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byTrapName;
}
public const int PROCESSING = 0; //<2F><><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>
public const int PROCESS_SUCCESS = 100; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int PROCESS_EXCEPTION = 400; //<2F><><EFBFBD><EFBFBD><EFBFBD>
public const int PROCESS_FAILED = 500; //<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int PROCESS_QUICK_SETUP_PD_COUNT = 501; //һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><33>Ӳ<EFBFBD><D3B2>
public const int SOFTWARE_VERSION_LEN = 48;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SADPINFO
{
public NET_DVR_IPADDR struIP; // <20>豸IP<49><50>ַ
public ushort wPort; // <20><EFBFBD>˿ں<CBBF>
public ushort wFactoryType; // <20><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = SOFTWARE_VERSION_LEN)]
public string chSoftwareVersion;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 16)]
public string chSerialNo; // <20><><EFBFBD>к<EFBFBD>
public ushort wEncCnt; // <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr; // MAC <20><>ַ
public NET_DVR_IPADDR struSubDVRIPMask; // DVR IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struGatewayIpAddr; // <20><><EFBFBD><EFBFBD>
public NET_DVR_IPADDR struDnsServer1IpAddr; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>IP<49><50>ַ */
public NET_DVR_IPADDR struDnsServer2IpAddr; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32>IP<49><50>ַ */
public byte byDns;
public byte byDhcp;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 158, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_SADP_NUM = 256; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SADPINFO_LIST
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public ushort wSadpNum; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SADP_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SADPINFO[] struSadpInfo; // <20><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SADP_VERIFY
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string chPassword;
public NET_DVR_IPADDR struOldIP;
public ushort wOldPort;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 62, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEO_CALL_COND
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEO_CALL_PARAM
{
public uint dwSize;
public uint dwCmdType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>1-ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA>У<EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD> 3-<2D>ܾ<EFBFBD><DCBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>峬ʱ 5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>6-<2D><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>У<EFBFBD>7-<2D>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>У<EFBFBD>8<EFBFBD><38><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wPeriod; //<2F>ں<EFBFBD>, <20><>Χ[0,9]
public ushort wBuildingNumber; //¥<><C2A5>
public ushort wUnitNumber; //<2F><>Ԫ<EFBFBD><D4AA>
public ushort wFloorNumber; //<2F><><EFBFBD><EFBFBD>
public ushort wRoomNumber; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wDevIndex; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public byte byUnitType; //<2F><EFBFBD><E8B1B8><EFBFBD>ͣ<EFBFBD>1-<2D>ſڻ<C5BF><DABB><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD>4-Χǽ<CEA7><C7BD><EFBFBD><EFBFBD>5-<2D><><EFBFBD><EFBFBD><EFBFBD>ſڻ<C5BF><DABB><EFBFBD>6-<2D><><EFBFBD><EFBFBD>ȷ<EFBFBD>ϻ<EFBFBD><CFBB><EFBFBD>7-8700<30>ͻ<EFBFBD><CDBB>ˣ<EFBFBD>8-4200<30>ͻ<EFBFBD><CDBB>ˣ<EFBFBD>9-APP
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 115, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_UNLOCK_RECORD_INFO
{
public byte byUnlockType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>ο<EFBFBD>UNLOCK_TYPE_ENUM
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byControlSrc; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>Ϣ<EFBFBD><CFA2>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱΪ<CAB1><CEAA><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱΪөʯ<D3A9><CAAF>APP<50>˺ţ<CBBA><C5A3><EFBFBD>ά<EFBFBD><EFBFBD><EBBFAA>ʱΪ<CAB1>ÿ͵<C3BF><CDB5>ֻ<EFBFBD><D6BB>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public IntPtr pImage; //ͼƬָ<C6AC><D6B8>
public uint dwCardUserID; //<2F>ֿ<EFBFBD><D6BF><EFBFBD>ID
public ushort nFloorNumber;//ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>Ϊ¥<CEAA><C2A5><EFBFBD><EFBFBD>
public ushort wRoomNumber; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>
public ushort wLockID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ſڻ<C5BF><DABB><EFBFBD>0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻӵ<CFBD><D3B5><EFBFBD><EFBFBD><EFBFBD>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻӵ<CFBD><D3B5><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = LOCK_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLockName; //ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD>Ӧ<EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_EMPLOYEE_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 136, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>ִ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NOTICEDATA_RECEIPT_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NOTICE_NUMBER_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byNoticeNumber; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 224, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><>֤<EFBFBD><D6A4>¼<EFBFBD><C2BC><EFBFBD>豸δʵ<CEB4>֣<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUTH_INFO
{
public byte byAuthResult; //<2F><>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>֤<EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>2-<2D><>֤ʧ<D6A4><CAA7>
public byte byAuthType; //<2F><>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD>0-<2D><>Ч<EFBFBD><D0A7>1-ָ<>ƣ<EFBFBD>2-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //<2F><><EFBFBD><EFBFBD>
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>ʽbyAuthTypeΪ<65><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>
public IntPtr pImage; //ͼƬָ<C6AC><EFBFBD><EBA3A8><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>ʽbyAuthTypeΪ<65><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 212, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byLen;
}
//<2F><><EFBFBD>ӶԽ<D3B6><D4BD>¼<EFBFBD><C2BC><EFBFBD>¼
public struct NET_DVR_VIDEO_INTERCOM_EVENT
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_TIME_EX struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DEV_NUMBER_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDevNumber; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public byte byEventType; //<2F>¼<EFBFBD><C2BC><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ͣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>ִ<EFBFBD><D6B4>3-<2D><>֤<EFBFBD><D6A4>¼<EFBFBD><C2BC>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>5<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>6-<2D>ſڻ<C5BF><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼(<28><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>ſڻ<C5BF><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD>ˢ<EFBFBD><CBA2>ʱ<EFBFBD>Ż<EFBFBD><C5BB>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>¼<EFBFBD>)
public byte byPicTransType; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD><DDB4>ʽ: 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-url
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON uEventInfo; //<2F>¼<EFBFBD><C2BC><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<DDB2>byEventTypeȡֵ
public uint dwIOTChannelNo; //IOTͨ<54><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 252, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
public struct NET_DVR_CONTROL_GATEWAY
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwGatewayIndex; //<2F>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>1<EFBFBD><31>ʼ
public byte byCommand; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D>رգ<D8B1>1-<2D>򿪣<EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>״̬<D7B4><CCAC><EFBFBD><EFBFBD>3-<2D>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>ͨ״̬<D7B4><CCAC>
public byte byLockType; //<2F><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ǰĬ<C7B0>϶<EFBFBD>Ϊ0<CEAA><30>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wLockID; //<2F><>ID<49><44><EFBFBD><EFBFBD>1<EFBFBD><31>ʼ<EFBFBD><CABC>Զ<EFBFBD>̿<EFBFBD><CCBF>ſڻ<C5BF><DABB><EFBFBD>ʱ<EFBFBD><CAB1>0<EFBFBD><30>ʾ<EFBFBD>ſڻ<C5BF><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻӵ<CFBD><D3B5><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻӵ<CFBD><D3B5><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byControlSrc; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>Ϣ
public byte byControlType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>ʾ<EFBFBD><CABE>2-ͨ<><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBA3AC>byLockTypeΪ<65><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 108, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//XML͸<4C><CDB8><EFBFBD>ӿ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_XML_CONFIG_INPUT
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public IntPtr lpRequestUrl;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ʽ
public uint dwRequestUrlLen;
public IntPtr lpInBuffer;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>XML<4D><4C>ʽ
public uint dwInBufferSize;
public uint dwRecvTimeOut;//<2F><><EFBFBD>ճ<EFBFBD>ʱʱ<CAB1><EFBFBD><E4A3AC>λ<EFBFBD><CEBB>ms<6D><73><EFBFBD><EFBFBD>0<EFBFBD><30>ʹ<EFBFBD><CAB9>Ĭ<EFBFBD>ϳ<EFBFBD>ʱ5s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_XML_CONFIG_OUTPUT
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public IntPtr lpOutBuffer;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>XML<4D><4C>ʽ
public uint dwOutBufferSize;
public uint dwReturnedXMLSize;//ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>XML<4D><4C><EFBFBD>ݴ<EFBFBD>С
public IntPtr lpStatusBuffer;//<2F><><EFBFBD>ص<EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>(XML<4D><4C>ʽ<EFBFBD><CABD>ResponseStatus)<29><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ḳֵ<E1B8B3><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NULL
public uint dwStatusSize;//״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С(<28>ڴ<EFBFBD><DAB4><EFBFBD>С)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHANNEL_GROUP
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwGroup; //<2F><><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>0<EFBFBD><30>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>1<EFBFBD>飬1<E9A3AC><31>ʾ<EFBFBD><CABE>2<EFBFBD><EFBFBD><E9A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byID;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwPositionNo;//<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>IPCΪ0<CEAA><30>IPD<50><44>1<EFBFBD><31>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 56, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_TRAVERSE_PLANE_DETECTION
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable;//ʹ<><CAB9>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD>0- <20><><EFBFBD><EFBFBD>1- <20><>
public byte byEnableDualVca; //<2F><><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0- <20><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1- <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALERTLINE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_TRAVERSE_PLANE[] struAlertParam;//<2F><><EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmSched;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬ÿ<E4A3AC><C3BF>7<EFBFBD>죬ÿ<ECA3AC><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public NET_DVR_HANDLEEXCEPTION_V40 struHandleException;//<2F><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
public uint dwMaxRelRecordChanNum;
public uint dwRelRecordChanNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint[] byRelRecordChan;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struHolidayTime; //<2F><><EFBFBD>ղ<EFBFBD><D5B2><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STD_CONFIG
{
public IntPtr lpCondBuffer;
public uint dwCondSize;
public IntPtr lpInBuffer;
public uint dwInSize;
public IntPtr lpOutBuffer;
public uint dwOutSize;
public IntPtr lpStatusBuffer;
public uint dwStatusSize;
public IntPtr lpXmlBuffer;
public uint dwXmlSize;
public byte byDataType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_THERMOMETRY_COND
{
public uint dwSize;
public uint dwChannel;
public ushort wPresetNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 62, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_THERMOMETRY_TRIGGER_COND
{
public uint dwSize;
public uint dwChan;
public uint dwPreset;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EVENT_TRIGGER
{
public uint dwSize;
public NET_DVR_HANDLEEXCEPTION_V41 struHandleException;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRelRecordChan;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PRESETCHAN_INFO[] struPresetChanInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CRUISECHAN_INFO[] struCruiseChanInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PTZTRACKCHAN_INFO[] struPtzTrackInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_THERMOMETRY_ALARMRULE
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = THERMOMETRY_ALARMRULE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_THERMOMETRY_ALARMRULE_PARAM[] struThermometryAlarmRuleParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_THERMOMETRY_ALARMRULE_PARAM
{
public byte byEnabled;
public byte byRuleID;
public byte byRule;
public byte byRes;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = NAME_LEN)]
public string szRuleName;
public float fAlert;
public float fAlarm;
public float fThreshold;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_THERMOMETRY_ALARM
{
public uint dwSize;
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byRuleID;//<2F><><EFBFBD><EFBFBD>ID
public byte byThermometryUnit;//<2F><><EFBFBD>µ<EFBFBD>λ: 0-<2D><><EFBFBD>϶ȣ<CFB6><C8A3><EFBFBD><E6A3A9>1-<2D><><EFBFBD>϶ȣ<CFB6><C8A3>H<EFBFBD><48><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(K)
public ushort wPresetNo; //Ԥ<>õ<EFBFBD><C3B5><EFBFBD>
public NET_PTZ_INFO struPtzInfo;//ptz<74><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public byte byAlarmLevel;//0-Ԥ<><D4A4> 1-<2D><><EFBFBD><EFBFBD>
public byte byAlarmType;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-ƽ<><C6BD><EFBFBD><EFBFBD> 3-<2D>²<EFBFBD> 4-<2D><EFBFBD>ͻ<EFBFBD><CDBB> 5-<2D><EFBFBD>ͻ<EFBFBD><CDBB>*/
public byte byAlarmRule;//0-<2D><><EFBFBD>ڣ<EFBFBD>1-С<><D0A1>
public byte byRuleCalibType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD> 0-<2D>㣬1-<2D><><EFBFBD><EFBFBD>2<EFBFBD><32>
public NET_VCA_POINT struPoint;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD>򣨵<EFBFBD><F2A3A8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public float fRuleTemperature;/*<2A><><EFBFBD>ù<EFBFBD><C3B9><EFBFBD><EFBFBD><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30> */
public float fCurrTemperature;/*<2A><>ǰ<EFBFBD><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30> */
public uint dwPicLen;//<2F>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwThermalPicLen;//<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwThermalInfoLen;//<2F>ȳ<EFBFBD><C8B3>񸽼<EFBFBD><F1B8BDBC><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
public IntPtr pPicBuff; ///<2F>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬָ<C6AC><D6B8>
public IntPtr pThermalPicBuff;// <20>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬָ<C6AC><D6B8>
public IntPtr pThermalInfoBuff; //<2F>ȳ<EFBFBD><C8B3>񸽼<EFBFBD><F1B8BDBC><EFBFBD>Ϣָ<CFA2><D6B8>
public NET_VCA_POINT struHighestPoint;//<2F>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public float fToleranceTemperature;/* <20>ݲ<EFBFBD><DDB2><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30> */
public uint dwAlertFilteringTime;//<2F><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD>ȴ<EFBFBD>ʱ<EFBFBD><CAB1> <20><>λ<EFBFBD><CEBB> <20><>ΧΪ0-200<30>룬Ĭ<EBA3AC><C4AC>Ϊ0<CEAA><30>
public uint dwAlarmFilteringTime;//<2F>¶ȱ<C2B6><C8B1><EFBFBD><EFBFBD>ȴ<EFBFBD>ʱ<EFBFBD><CAB1> <20><>λ<EFBFBD><CEBB> <20><>ΧΪ0-200<30>룬Ĭ<EBA3AC><C4AC>Ϊ0<CEAA><30>
public uint dwTemperatureSuddenChangeCycle;//<2F><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>λ<EFBFBD><CEBB>
public float fTemperatureSuddenChangeValue;//<2F><EFBFBD>ͻ<EFBFBD><CDBB>ֵ,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(<28><><EFBFBD><EFBFBD>0)
public byte byPicTransType; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD><DDB4>ʽ: 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-url
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwVisibleChannel; //<2F>ɼ<EFBFBD><C9BC><EFBFBD>ͨ<EFBFBD><CDA8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public float fAlarmRuleTemperature;/* TMA<4D><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ù<EFBFBD><C3B9><EFBFBD><EFBFBD><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_SDK_MANUALTHERM_BASICPARAM
{
public uint dwSize;
public ushort wDistance;//<2F><><EFBFBD><EFBFBD>(m)[0, 10000]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public float fEmissivity;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ)[0.01, 1.00](<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_SDK_POINT_THERMOMETRY
{
public float fPointTemperature;/*<2A><><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>ǰ<EFBFBD><EFBFBD>, <20><><EFBFBD>궨Ϊ0-<2D><>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10 */
public NET_VCA_POINT struPoint;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><E3A1B1>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_SDK_REGION_THERMOMETRY
{
public float fMaxTemperature;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10 */
public float fMinTemperature;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10 */
public float fAverageTemperature;//ƽ<><C6BD><EFBFBD><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10 */
public float fTemperatureDiff;//<2F>²<EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1000),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10 */
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><DFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>򡱻<EFBFBD><F2A1B1BB>ߡ<EFBFBD><DFA1>ߡ<EFBFBD><DFA1><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_SDK_MANUALTHERM_RULE
{
public byte byRuleID;//<2F><><EFBFBD><EFBFBD>ID 0-<2D><>ʾ<EFBFBD><CABE>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>1<EFBFBD><31>ʼ <20><>list<73>ڲ<EFBFBD><DAB2>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD>ԣ<EFBFBD>
public byte byEnable;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] szRuleName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRuleCalibType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD> 0-<2D>㣬1-<2D><><EFBFBD><EFBFBD>2-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_SDK_POINT_THERMOMETRY struPointTherm;//<2F><><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD>궨Ϊ0-<2D><>ʱ<EFBFBD><CAB1>Ч
public NET_SDK_REGION_THERMOMETRY struRegionTherm; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD>궨Ϊ1-<2D><><EFBFBD><EFBFBD>2-<2D><>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 512, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_SDK_MANUAL_THERMOMETRY
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD>ֻ꣨<EAA3A8><D6BB><EFBFBD><EFBFBD>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD>ֻ꣨<EAA3A8><D6BB><EFBFBD><EFBFBD>
public byte byThermometryUnit;//<2F><><EFBFBD>µ<EFBFBD>λ: 0-<2D><><EFBFBD>϶ȣ<CFB6><C8A3><EFBFBD><E6A3A9>1-<2D><><EFBFBD>϶ȣ<CFB6><C8A3>H<EFBFBD><48><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(K)
public byte byDataType;//<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>:0-<2D><><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>1-<2D><>ʼ<EFBFBD><CABC>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_SDK_MANUALTHERM_RULE struRuleInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 512, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ʵʱ<CAB5>¶ȼ<C2B6><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_REALTIME_THERMOMETRY_COND
{
public uint dwSize;
public uint dwChan;//ͨ<><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>1<EFBFBD><31>ʼ<EFBFBD><CABC>0xffffffff<66><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡȫ<C8A1><C8AB>ͨ<EFBFBD><CDA8>
public byte byRuleID; //<2F><><EFBFBD><EFBFBD>ID 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡȫ<C8A1><C8AB><EFBFBD><EFBFBD><EFBFBD>򣬾<EFBFBD><F2A3ACBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44>1<EFBFBD><31>ʼ
/*
* 1-<EFBFBD><EFBFBD>ʱģʽ<EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>º<EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>²<EFBFBD>
* 2-<EFBFBD>²<EFBFBD>ģʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>»<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>»<EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD>»<EFBFBD><EFBFBD><EFBFBD><EFBFBD>²<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>²<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><EFBFBD><EFBFBD>϶ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>º<EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Сʱ<EFBFBD>²<EFBFBD>ֵ<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>2<EFBFBD><EFBFBD><EFBFBD>϶ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD>º<EFBFBD><EFBFBD>²<EFBFBD>ֵ
*/
public byte byMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>1-<2D><>ʱģʽ<C4A3><CABD>2-<2D>²<EFBFBD>ģʽ
public ushort wInterval; //<2F>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>²<EFBFBD>ģʽ֧<CABD>֣<EFBFBD>1~3600S<30><53><EFBFBD><EFBFBD>0<EFBFBD><30>Ĭ<EFBFBD><C4AC>3600S<30>ϴ<EFBFBD>һ<EFBFBD><D2BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POINT_THERM_CFG
{
public float fTemperature;//<2F><>ǰ<EFBFBD><EFBFBD>
public NET_VCA_POINT struPoint;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 120, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LINEPOLYGON_THERM_CFG
{
public float fMaxTemperature;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fMinTemperature;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fAverageTemperature;//ƽ<><C6BD><EFBFBD><EFBFBD>
public float fTemperatureDiff;//<2F>²<EFBFBD>
public NET_VCA_POLYGON struRegion;//<2F><><EFBFBD>򣨵<EFBFBD><F2A3A8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>/<2F>ߵ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_THERMOMETRY_UPLOAD
{
public uint dwSize;
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] szRuleName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRuleID;//<2F><><EFBFBD><EFBFBD>ID<49><44>
public byte byRuleCalibType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD> 0-<2D>㣬1-<2D><><EFBFBD><EFBFBD>2-<2D><>
public ushort wPresetNo; //Ԥ<>õ<EFBFBD><C3B5><EFBFBD>
public NET_DVR_POINT_THERM_CFG struPointThermCfg;
public NET_DVR_LINEPOLYGON_THERM_CFG struLinePolygonThermCfg;
public byte byThermometryUnit;//<2F><><EFBFBD>µ<EFBFBD>λ: 0-<2D><><EFBFBD>϶ȣ<CFB6><C8A3><EFBFBD><E6A3A9>1-<2D><><EFBFBD>϶ȣ<CFB6><C8A3>H<EFBFBD><48><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(K)
public byte byDataType;//<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>:0-<2D><><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>1-<2D><>ʼ<EFBFBD><CABC>2-<2D><><EFBFBD><EFBFBD>
public byte byRes1;
/*
bit0-<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>0-<EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>1-֧<EFBFBD>֣<EFBFBD>
bit1-<EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>0-<EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>1-֧<EFBFBD>֣<EFBFBD>
bit2-<EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>0-<EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>1-֧<EFBFBD>֣<EFBFBD>
*/
public byte bySpecialPointThermType;// <20>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fCenterPointTemperature;//<2F><><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1500),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10 <20><><EFBFBD><EFBFBD>bySpecialPointThermType<70>ж<EFBFBD><D0B6>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD>ĵ㣩
public float fHighestPointTemperature;//<2F><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1500),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10<31><30><EFBFBD><EFBFBD>bySpecialPointThermType<70>ж<EFBFBD><D0B6>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD>ߵ
public float fLowestPointTemperature;//<2F><><EFBFBD>͵<EFBFBD><CDB5><EFBFBD>,<2C><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ(-40-1500),<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+100<30><30>*10<31><30><EFBFBD><EFBFBD>bySpecialPointThermType<70>ж<EFBFBD><D0B6>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD>͵㣩
public NET_VCA_POINT struHighestPoint;//<2F>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public NET_VCA_POINT struLowestPoint;//<2F>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>Ϊ<EFBFBD>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public byte yIsFreezedata;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD> 0-<2D><> 1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public uint dwChan; //ͨ<><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϊ0xffffffffʱ<66><CAB1><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 88, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/***************************** end *********************************************/
/*******************************<2A><><EFBFBD>ݽṹ begin********************************/
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>Ϣ<EFBFBD>ӿڶ<D3BF><DAB6><EFBFBD>
public const int DESC_LEN_32 = 32; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֳ<EFBFBD><D6B3><EFBFBD>
public const int MAX_NODE_NUM = 256; //<2F>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DESC_NODE
{
public int iValue;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] byDescribe; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>
public uint dwFreeSpace; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>ר<EFBFBD><D7A8>,<2C><>λΪM
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISKABILITY_LIST
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwNodeNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NODE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DESC_NODE[] struDescNode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD>б<EFBFBD>
public const int BACKUP_SUCCESS = 100; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_CHANGE_DEVICE = 101; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_SEARCH_DEVICE = 300; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_SEARCH_FILE = 301; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD>
public const int BACKUP_SEARCH_LOG_FILE = 302; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD>ļ<EFBFBD>
public const int BACKUP_EXCEPTION = 400; //<2F><><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_FAIL = 500; //<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int BACKUP_TIME_SEG_NO_FILE = 501; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD>
public const int BACKUP_NO_RESOURCE = 502; //<2F><><EFBFBD><EFBFBD><EBB2BB><EFBFBD><EFBFBD>Դ
public const int BACKUP_DEVICE_LOW_SPACE = 503; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_DISK_FINALIZED = 504; //<2F><>¼<EFBFBD><C2BC><EFBFBD>̷<EFBFBD><CCB7><EFBFBD>
public const int BACKUP_DISK_EXCEPTION = 505; //<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_DEVICE_NOT_EXIST = 506; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int BACKUP_OTHER_BACKUP_WORK = 507; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>
public const int BACKUP_USER_NO_RIGHT = 508; //<2F>û<EFBFBD>û<EFBFBD>в<EFBFBD><D0B2><EFBFBD>Ȩ<EFBFBD><C8A8>
public const int BACKUP_OPERATE_FAIL = 509; //<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int BACKUP_NO_LOG_FILE = 510; //Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
//<2F><><EFBFBD>ݹ<EFBFBD><DDB9>̽ӿڶ<D3BF><DAB6><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BACKUP_NAME_PARAM
{
public uint dwFileNum; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RECORD_FILE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_FINDDATA_V30[] struFileList; //<2F>ļ<EFBFBD><C4BC>б<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] byDiskDes; //<2F><><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byWithPlayer; //<2F>Ƿ񱸷ݲ<F1B1B8B7><DDB2><EFBFBD><EFBFBD><EFBFBD>
public byte byContinue; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 34, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BACKUP_TIME_PARAM
{
public int lChannel; //<2F><>ʱ<EFBFBD><EFBFBD>ݵ<EFBFBD>ͨ<EFBFBD><CDA8>
public NET_DVR_TIME struStartTime; //<2F><><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime; //<2F><><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD>ֹʱ<D6B9><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] byDiskDes; //<2F><><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byWithPlayer; //<2F>Ƿ񱸷ݲ<F1B1B8B7><DDB2><EFBFBD><EFBFBD><EFBFBD>
public byte byContinue; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD>
public byte byDrawFrame; //0 <20><><EFBFBD><EFBFBD>֡ 1 <20><>֡
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 33, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
/********************************* end *******************************************/
public enum COMPRESSION_ABILITY_TYPE
{
COMPRESSION_STREAM_ABILITY = 0, //<2F><><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
MAIN_RESOLUTION_ABILITY = 1, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
SUB_RESOLUTION_ABILITY = 2, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
EVENT_RESOLUTION_ABILITY = 3, //<2F>¼<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
FRAME_ABILITY = 4, //֡<><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BITRATE_TYPE_ABILITY = 5, //λ<><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BITRATE_ABILITY = 6, //λ<><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
THIRD_RESOLUTION_ABILITY = 7, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
STREAM_TYPE_ABILITY = 8, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
PIC_QUALITY_ABILITY = 9, //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
INTERVAL_BPFRAME_ABILITY = 10, //BP֡<50><D6A1><EFBFBD><EFBFBD>
VIDEO_ENC_ABILITY = 11, //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AUDIO_ENC_ABILITY = 12, //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VIDEO_ENC_COMPLEXITY_ABILITY = 13, //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD><EFBFBD>
FORMAT_ABILITY = 14, //<2F><>װ<EFBFBD><D7B0>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ABILITY_LIST
{
public uint dwAbilityType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> COMPRESSION_ABILITY_TYPE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public uint dwNodeNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NODE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DESC_NODE[] struDescNode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
public const int MAX_ABILITYTYPE_NUM = 12; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSIONCFG_ABILITY
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwAbilityNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ABILITYTYPE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ABILITY_LIST[] struAbilityNode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//ģʽA
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDATE_MODEA
{
public byte byStartMonth; // <20><>ʼ<EFBFBD><CABC> <20><>1<EFBFBD><31>ʼ
public byte byStartDay; // <20><>ʼ<EFBFBD><CABC> <20><>1<EFBFBD><31>ʼ
public byte byEndMonth; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEndDay; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDATE_MODEB
{
public byte byStartMonth; // <20><>1<EFBFBD><31>ʼ
public byte byStartWeekNum; // <20>ڼ<EFBFBD><DABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>1<EFBFBD><31>ʼ
public byte byStartWeekday; // <20><><EFBFBD>ڼ<EFBFBD>
public byte byEndMonth; // <20><>1<EFBFBD><31>ʼ
public byte byEndWeekNum; // <20>ڼ<EFBFBD><DABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>1<EFBFBD><31>ʼ
public byte byEndWeekday; // <20><><EFBFBD>ڼ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDATE_MODEC
{
public ushort wStartYear; // <20><>
public byte byStartMon; // <20><>
public byte byStartDay; // <20><>
public ushort wEndYear; // <20><>
public byte byEndMon; // <20><>
public byte byEndDay; // <20><>
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_HOLIDATE_UNION
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С 12<31>ֽ<EFBFBD>
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.U4)]
public uint[] dwSize;
/*[FieldOffsetAttribute(0)]
public NET_DVR_HOLIDATE_MODEA struModeA; // ģʽA
[FieldOffsetAttribute(0)]
public NET_DVR_HOLIDATE_MODEB struModeB; // ģʽB
[FieldOffsetAttribute(0)]
public NET_DVR_HOLIDATE_MODEC struModeC; // ģʽC
* */
}
public enum HOLI_DATE_MODE
{
HOLIDATE_MODEA = 0,
HOLIDATE_MODEB,
HOLIDATE_MODEC
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_PARAM
{
public byte byEnable; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
public byte byDateMode; // <20><><EFBFBD><EFBFBD>ģʽ 0-ģʽA 1-ģʽB 2-ģʽC
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_HOLIDATE_UNION uHolidate; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_HOLIDAY_NUM = 32;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_PARAM_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HOLIDAY_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_HOLIDAY_PARAM[] struHolidayParam; // <20><><EFBFBD>ղ<EFBFBD><D5B2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD>ձ<EFBFBD><D5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_HANDLE
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 240, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HOLIDAY_RECORD
{
public uint dwSize;
public NET_DVR_RECORDDAY struRecDay; // ¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RECORDSCHED[] struRecordSched; // ¼<><C2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_LINK_V30 = 128;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ONE_LINK
{
public NET_DVR_IPADDR struIP; // <20>ͻ<EFBFBD><CDBB><EFBFBD>IP
public int lChannel; // ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LINK_STATUS
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public ushort wLinkNum; // <20><><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LINK_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_LINK[] struOneLink; // <20><><EFBFBD>ӵĿͻ<C4BF><CDBB><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_BOND_NUM = 2;
//<2F><>BONDING<4E><47><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_ONE_BONDING
{
public byte byMode;
public byte byUseDhcp;
public byte byMasterCard;
public byte byStatus;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NETWORK_CARD, ArraySubType = UnmanagedType.I1)]
public byte[] byBond;
public NET_DVR_ETHERNET_V30 struEtherNet;
public NET_DVR_IPADDR struGatewayIpAddr;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//BONDING<4E><47><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_NETWORK_BONDING
{
public uint dwSize;
public byte byEnable;
public byte byNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_BOND_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_ONE_BONDING[] struOneBond;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISK_QUOTA
{
public byte byQuotaType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public uint dwHCapacity; // <20><><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32λ <20><>λMB
public uint dwLCapacity; // <20><><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32λ <20><>λMB
public uint dwHUsedSpace; // <20><>ʹ<EFBFBD>õĴ<C3B5><C4B4>̴<EFBFBD>С<EFBFBD><D0A1>32λ <20><>λMB
public uint dwLUsedSpace; // <20><>ʹ<EFBFBD>õĴ<C3B5><C4B4>̴<EFBFBD>С<EFBFBD><D0A1>32λ <20><>λMB
public byte byQuotaRatio; // <09><><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4>̱<EFBFBD><CCB1><EFBFBD>,<2C><>λ:%
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 21, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISK_QUOTA_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_DISK_QUOTA struPicQuota; // ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public NET_DVR_DISK_QUOTA struRecordQuota; // ¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIMING_CAPTURE
{
public NET_DVR_JPEGPARA struJpegPara; // <20><>ʱץͼͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwPicInterval; //<2F><>ʱץͼʱ<CDBC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>λs 1-1s 2-2s 3-3s 4-4s 5-5s
//6-10m 7-30m 8-1h 9-12h 10-24h
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_REL_CAPTURE_CHAN
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byChan; // <20><>λ<EFBFBD><CEBB>ʾ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_PIC_EVENT_NUM = 32;
public const int MAX_ALARMIN_CAPTURE = 16;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_REL_CAPTURE_CHAN_V40
{
public uint dwMaxRelCaptureChanNum; //<2F><><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><C9B4><EFBFBD><EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U4)]
public uint[] dwChanNo; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>ץͼͨ<CDBC><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0xffffffff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EVENT_CAPTURE_V40
{
public NET_DVR_JPEGPARA struJpegPara; // <20>¼<EFBFBD>ץͼͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwPicInterval; // <20>¼<EFBFBD>ץͼʱ<CDBC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>λΪ<CEBB><CEAA>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PIC_EVENT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_REL_CAPTURE_CHAN_V40[] struRelCaptureChan; // <20><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD> 0 <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><E2B4A5>ץͼ 1 <20><>Ƶ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>ץͼ 2 <20><>Ƶ<EFBFBD><C6B5>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>ץͼ,<2C><><EFBFBD><EFBFBD>3<EFBFBD><33>ʾPIR<49><52><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><34>ʾ<EFBFBD><CABE><EFBFBD>߱<EFBFBD><DFB1><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35>ʾ<EFBFBD><CABE><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD>ץͼ,<2C><><EFBFBD><EFBFBD>6<EFBFBD><36>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ץͼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN_CAPTURE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_REL_CAPTURE_CHAN_V40[] struAlarmInCapture; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5>ץͼ<D7A5><CDBC><EFBFBD>±<EFBFBD>0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwMaxGroupNum; //<2F>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>󱨾<EFBFBD><F3B1A8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>16<31><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCapTimes; //ץͼ<D7A5><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 59, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EVENT_CAPTURE
{
public NET_DVR_JPEGPARA struJpegPara; // <20>¼<EFBFBD>ץͼͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public uint dwPicInterval; /*<EFBFBD>¼<EFBFBD>ץͼʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>λΪ<EFBFBD><EFBFBD> 1-1s 2-2s 3-3s 4-4s 5-5s
* 6-10m 7-30m 8-1h 9-12h 10-24h*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PIC_EVENT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_REL_CAPTURE_CHAN[] struRelCaptureChan; /* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD> 0 <EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץͼ 1 <EFBFBD><EFBFBD>Ƶ<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץͼ,
* 2 <EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץͼ,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><EFBFBD>ʾPIR<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD>ץͼ<EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><EFBFBD><EFBFBD>ץͼ,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץͼ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>7<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ALARMIN_CAPTURE, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_REL_CAPTURE_CHAN[] struAlarmInCapture; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB4A5>ץͼ<D7A5><CDBC><EFBFBD>±<EFBFBD>0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCapTimes; //ץͼ<D7A5><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 59, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_JPEG_CAPTURE_CFG_V40
{
public uint dwSize; //<2F><EFBFBD><EFBFBD><E5B3A4>
public NET_DVR_TIMING_CAPTURE struTimingCapture;
public NET_DVR_EVENT_CAPTURE_V40 struEventCapture;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_JPEG_CAPTURE_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_TIMING_CAPTURE struTimingCapture;
public NET_DVR_EVENT_CAPTURE struEventCapture;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAPTURE_DAY
{
public byte byAllDayCapture; // <20>Ƿ<EFBFBD>ȫ<EFBFBD><C8AB>ץͼ
public byte byCaptureType; // ץͼ<D7A5><CDBC><EFBFBD>ͣ<EFBFBD>0-<2D><>ʱץͼ<D7A5><CDBC>1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC>2-<2D><><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC>3-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򱨾<EFBFBD>ץͼ<D7A5><CDBC>4-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD>ץͼ<D7A5><CDBC>6-<2D><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD>ץͼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAPTURE_SCHED
{
public NET_DVR_SCHEDTIME struCaptureTime; // ץͼʱ<CDBC><CAB1><EFBFBD><EFBFBD>
public byte byCaptureType; // ץͼ<D7A5><CDBC><EFBFBD>ͣ<EFBFBD>0-<2D><>ʱץͼ<D7A5><CDBC>1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC>2-<2D><><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC>3-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򱨾<EFBFBD>ץͼ<D7A5><CDBC>4-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD>ץͼ<D7A5><CDBC>6-<2D><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD>ץͼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//ͨ<><CDA8>ץͼ<D7A5>ƻ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCHED_CAPTURECFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>
public byte byEnable; //<2F>Ƿ<EFBFBD>ץͼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CAPTURE_DAY[] struCaptureDay;//ȫ<><C8AB>ץͼ<D7A5>ƻ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CAPTURE_SCHED[] struCaptureSched;//ʱ<><CAB1><EFBFBD><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD>
public NET_DVR_CAPTURE_DAY struCaptureHoliday; //<2F><><EFBFBD><EFBFBD>ץͼ<D7A5>ƻ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TIMESEGMENT_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CAPTURE_SCHED[] struHolidaySched; //ʱ<><CAB1><EFBFBD>μ<EFBFBD><CEBC><EFBFBD>ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD>
public uint dwRecorderDuration; //ץͼ<D7A5><CDBC><EFBFBD><EFBFBD><EFBFBD>ʱ<EEB3A4><CAB1> 0xffffffff<66><66>ʾ<EFBFBD><CABE>ֵ<EFBFBD><D6B5>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FLOW_TEST_PARAM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public int lCardIndex; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwInterval; //<2F><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>λ:100ms
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FLOW_INFO
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public uint dwSendFlowSize; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С,<2C><>λkbps
public uint dwRecvFlowSize; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С,<2C><>λkbps
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//¼<><C2BC><EFBFBD><EFBFBD>ǩ
public const int LABEL_NAME_LEN = 40;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORD_LABEL
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_TIME struTimeLabel; // <20><>ǩ<EFBFBD><C7A9>ʱ<EFBFBD><CAB1>
public byte byQuickAdd; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = LABEL_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLabelName; // <20><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ϊ40<34>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int LABEL_IDENTIFY_LEN = 64;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LABEL_IDENTIFY
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = LABEL_IDENTIFY_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLabelIdentify; // 64<36>ֽڱ<D6BD>ʶ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int MAX_DEL_LABEL_IDENTIFY = 20;// ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǩ<EFBFBD><C7A9>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEL_LABEL_PARAM
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byMode; // <20><>λ<EFBFBD><CEBB>ʾ,0x01<30><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ʶɾ<CAB6><C9BE>
public byte byRes1;
public ushort wLabelNum; // <20><>ǩ<EFBFBD><C7A9>Ŀ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DEL_LABEL_IDENTIFY, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_LABEL_IDENTIFY[] struIndentify; // <20><>ǩ<EFBFBD><C7A9>ʶ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 160, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MOD_LABEL_PARAM
{
public NET_DVR_LABEL_IDENTIFY struIndentify; //Ҫ<>޸ĵı<C4B5>ǩ<EFBFBD><C7A9>ʶ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = LABEL_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLabelName; //<2F>޸ĺ<DEB8><C4BA>ı<EFBFBD>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FIND_LABEL
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public int lChannel; // <20><><EFBFBD>ҵ<EFBFBD>ͨ<EFBFBD><CDA8>
public NET_DVR_TIME struStartTime; // <20><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = LABEL_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLabelName; // ¼<><C2BC><EFBFBD><EFBFBD>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><D5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹʱ<D6B9><CAB1><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>ǩ
public byte byDrawFrame; //0:<3A><><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>1<EFBFBD><31><EFBFBD><EFBFBD>֡
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 39, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><>ǩ<EFBFBD><C7A9>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINDLABEL_DATA
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = LABEL_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLabelName; // <20><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>
public NET_DVR_TIME struTimeLabel; // <20><>ǩʱ<C7A9><CAB1>
public NET_DVR_LABEL_IDENTIFY struLabelIdentify; // <20><>ǩ<EFBFBD><C7A9>ʶ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
public const int CARDNUM_LEN_V30 = 40;
public const int PICTURE_NAME_LEN = 64;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FIND_PICTURE
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PICTURE_NAME_LEN)]
public string sFileName;//ͼƬ<CDBC><C6AC>
public NET_DVR_TIME struTime;//ͼƬ<CDBC><C6AC>ʱ<EFBFBD><CAB1>
public uint dwFileSize;//ͼƬ<CDBC>Ĵ<EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = CARDNUM_LEN_V30)]
public string sCardNum; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FIND_PICTURE_PARAM
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public int lChannel; // ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byFileType;
public byte byNeedCard; // <20>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
public byte byProvince; //ʡ<><CAA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
public byte byEventType; // <20>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><>ͨ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>2-Υ<><CEA5>ȡ֤<C8A1><D6A4>3-<2D><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CARDNUM_LEN_V30, ArraySubType = UnmanagedType.I1)]
public byte[] sCardNum; // <20><><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC>Ŀ<EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;// <20><><EFBFBD><EFBFBD>ͼƬ<CDBC>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
//ITC3.7 <20><><EFBFBD><EFBFBD>
public uint dwTrafficType; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7> <20>ο<EFBFBD> VCA_OPERATE _TYPE
public uint dwVehicleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ο<EFBFBD> VCA_VEHICLE_TYPE
//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳο<CDB2> VCA_ILLEGAL_TYPE <20><>ǰ<EFBFBD><C7B0>֧<EFBFBD>ָ<EFBFBD>ѡ
public uint dwIllegalType;
public byte byLaneNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(1~99)
public byte bySubHvtType ;//0-<2D><><EFBFBD><EFBFBD>,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>ֳ<EFBFBD><D6B3>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>ʡ<EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD>),2-<2D>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD>,3-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LICENSE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLicense; //<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>
public byte byRegion; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-ŷ<><C5B7>(Europe Region)<29><>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Russian Region)<29><>3-ŷ<><C5B7>&<26><><EFBFBD><EFBFBD>˹(EU&CIS), 4-<2D>ж<EFBFBD>(Middle East),0xff-<2D><><EFBFBD><EFBFBD>
public byte byCountry; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>գ<EFBFBD>COUNTRY_INDEX
public byte byArea; //<2F><><EFBFBD><EFBFBD>
public byte byISO8601; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>8601<30><31>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>Ч0-ʱ<><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 1-ʱ<><CAB1><EFBFBD><EFBFBD>Ч
public byte cStartTimeDifferenceH; //<2F><>ʼʱ<CABC><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14<31><34> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʱ<EFBFBD><CAB1>
public byte cStartTimeDifferenceM; //<2F><>ʼʱ<CABC><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30, 0, 30, 45<34><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʱ<EFBFBD><CAB1>
public byte cStopTimeDifferenceH; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14<31><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʱ<EFBFBD><CAB1>
public byte cStopTimeDifferenceM; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30, 0, 30, 45<34><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʱ<EFBFBD><CAB1>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ADDRESS
{
public NET_DVR_IPADDR struIP; //IP<49><50>ַ
public ushort wPort; //<2F>˿ں<CBBF>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_PIC_EXTRA_INFO_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 544, ArraySubType = UnmanagedType.I1)]
public byte[] byUnionLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
public const int MAX_FACE_PIC_NUM = 30; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_EXTRA_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_FACE_PIC_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_RECT[] struVcaRect; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FIND_PICTURE_V50
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PICTURE_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sFileName;//ͼƬ<CDBC><C6AC>
public NET_DVR_TIME struTime;//ͼƬ<CDBC><C6AC>ʱ<EFBFBD><CAB1>
public uint dwFileSize;//ͼƬ<CDBC>Ĵ<EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CARDNUM_LEN_V30, ArraySubType = UnmanagedType.I1)]
public byte[] sCardNum; //<2F><><EFBFBD><EFBFBD>
public byte byPlateColor;//<2F>ο<EFBFBD><CEBF>ṹ VCA_PLATE_COLOR
public byte byVehicleLogo;//<2F>ο<EFBFBD><CEBF>ṹ VLR_VEHICLE_CLASS
public byte byFileType; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ͣ<EFBFBD> :0<><30>ʱץͼ1 <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ץͼ 2 <20><><EFBFBD><EFBFBD>ץͼ3 <20><><EFBFBD><EFBFBD> | <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ץͼ 4 <20><><EFBFBD><EFBFBD> & <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>ץͼ 6 <20>ֶ<EFBFBD>ץͼ ,9-<2D><><EFBFBD><EFBFBD>ͼƬ,10- PIR<49><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>11- <20><><EFBFBD>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD>12- <20><><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD>, 0xa Ԥ<><D4A4>ʱ<EFBFBD><CAB1>ͼ<EFBFBD><CDBC>0xd <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0xe Խ<><D4BD><EFBFBD><EFBFBD><EFBFBD>⣬0xf <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬0x10 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0x11-<2D><EFBFBD><E8B1B8><EFBFBD>ػط<D8BB>ʱ<EFBFBD><CAB1>ͼ, 0x12-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRecogResult;//ʶ<><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD><CEBF>ṹVTR_RESULT
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LICENSE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLicense; //<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>
public byte byEventSearchStatus; //<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC>ʾͬһ<CDAC><D2BB><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><E6BBB9>ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2><EFBFBD>ܹ<EFBFBD>ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>״̬Ϊ0<CEAA><30>ͼƬ<CDBC><C6AC>
public NET_DVR_ADDRESS struAddr; //ͼƬ<CDBC><C6AC><EFBFBD>ڵĵ<DAB5>ַ<EFBFBD><D6B7>Ϣ<EFBFBD><CFA2>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ʱ<EFBFBD>õ<EFBFBD>
public byte byISO8601; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>8601<30><31>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>Ч0-ʱ<><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 1-ʱ<><CAB1><EFBFBD><EFBFBD>Ч
public byte cTimeDifferenceH; //<2F><>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14
public byte cTimeDifferenceM; //<2F><>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30,0, 30, 45
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 253, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_PIC_EXTRA_INFO_UNION uPicExtraInfo; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
public const int MAX_RECORD_PICTURE_NUM = 50; //<2F><><EFBFBD>󱸷<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BACKUP_PICTURE_PARAM
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwPicNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RECORD_PICTURE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_FIND_PICTURE[] struPicture;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] byDiskDes;
public byte byWithPlayer;
public byte byContinue; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 34, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_COMPRESSION_LIMIT
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byCompressType; //<2F><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3,<2C>¼<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_COMPRESSIONCFG_V30 struCurrentCfg; //<2F><>ǰѹ<C7B0><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
public const int STEP_READY = 0; //׼<><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int STEP_RECV_DATA = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int STEP_UPGRADE = 2; //<2F><><EFBFBD><EFBFBD>ϵͳ
public const int STEP_BACKUP = 3; //<2F><><EFBFBD><EFBFBD>ϵͳ
public const int STEP_SEARCH = 255; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEO_EFFECT
{
public uint dwBrightValue; //<2F><><EFBFBD><EFBFBD>[0,255]
public uint dwContrastValue; //<2F>Աȶ<D4B1>[0,255]
public uint dwSaturationValue; //<2F><><EFBFBD>Ͷ<EFBFBD>[0,255]
public uint dwHueValue; //ɫ<><C9AB>[0,255]
public uint dwSharpness; //<2F><><EFBFBD><EFBFBD>[0,255]
public uint dwDenoising; //ȥ<><C8A5>[0,255]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEO_INPUT_EFFECT
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public ushort wEffectMode; //ģʽ 0-<2D><>׼ 1-<2D><><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD> 3-<2D><><EFBFBD><EFBFBD> 255-<2D>Զ<EFBFBD><D4B6><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 146, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_VIDEO_EFFECT struVideoEffect; //<2F><>ƵЧ<C6B5><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOPARA_V40
{
public uint dwChannel; // ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwVideoParamType; // <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD> 1-<2D>Աȶ<D4B1> 2-<2D><><EFBFBD>Ͷ<EFBFBD> 3-ɫ<><C9AB> 4-<2D><><EFBFBD><EFBFBD> 5-ȥ<><C8A5>
public uint dwVideoParamValue; //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEFAULT_VIDEO_COND
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwChannel; // ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwVideoMode; // ģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ENCODE_JOINT_PARAM
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byJointed; // 0 û<>й<EFBFBD><D0B9><EFBFBD> 1 <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>
public byte byDevType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD> 1 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_DVR_IPADDR struIP; // <20><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>豸IP<49><50>ַ
public ushort wPort; // <20><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>˿ں<CBBF>
public ushort wChannel; // <20><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VCA_CHAN_WORKSTATUS
{
public byte byJointed; // 0-û<>й<EFBFBD><D0B9><EFBFBD> 1-<2D>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_IPADDR struIP; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>豸IP<49><50>ַ
public ushort wPort; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>˿ں<CBBF>
public ushort wChannel; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>豸ͨ<E8B1B8><CDA8><EFBFBD><EFBFBD>
public byte byVcaChanStatus; // 0 - δ<><CEB4><EFBFBD><EFBFBD> 1 - <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 19, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VCA_DEV_WORKSTATUS
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byDeviceStatus; // <20><EFBFBD><E8B1B8>״̬0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCpuLoad; // CPUʹ<55><CAB9><EFBFBD><EFBFBD>0-100 <20>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ðٷ<C3B0><D9B7><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VCA_CHAN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_VCA_CHAN_WORKSTATUS[] struVcaChanStatus;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_VIDEOPLATFORM_V40
{
/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڶ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>IJ<EFBFBD>λ<EFBFBD><CEBB>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ч)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecoderId;
//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ֱ<EFBFBD><D6B1>ʣ<EFBFBD>1-D1,2-720P,3-1080P<30><50><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>ݴ<EFBFBD>//<2F>ֱ<EFBFBD><D6B1>ʽ<EFBFBD><CABD>н<EFBFBD><D0BD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><E4A3AC>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD>1080P<30><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>4<EFBFBD><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><CBBD><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byDecResolution;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 143, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_NOTVIDEOPLATFORM_V40
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 160, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VGA_DISP_CHAN_CFG_V40
{
public uint dwSize;
public byte byAudio; /*<2A><>Ƶ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>*/
public byte byAudioWindowIdx; /*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>*/
public byte byVgaResolution; /*<2A>ֱ<EFBFBD><D6B1>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ*/
public byte byVedioFormat; /*1:NTSC,2:PAL<41><4C>0-NULL*/
public uint dwWindowMode; /*<2A><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecChan;/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ͨ<EFBFBD><CDA8>*/
public byte byEnlargeStatus; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڷŴ<DAB7>״̬<D7B4><CCAC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>1<EFBFBD><31><EFBFBD>Ŵ<EFBFBD>*/
public byte byEnlargeSubWindowIndex;//<2F>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ں<EFBFBD>
public byte byScale; /*<2A><>ʾģʽ<C4A3><CABD>0---<2D><>ʵ<EFBFBD><CAB5>ʾ<EFBFBD><CABE>1---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ( <20><><EFBFBD><EFBFBD>BNC )*/
/*<2A><><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>壬0-<2D><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byUnionType;
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct struDiff
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 160, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
/*[FieldOffsetAttribute(0)]
public UNION_VIDEOPLATFORM_V40 struVideoPlatform;
[FieldOffsetAttribute(0)]
public UNION_NOTVIDEOPLATFORM_V40 struNotVideoPlatform;
* */
}
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 120, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_V6SUBSYSTEMPARAM
{
public byte bySerialTrans;//<2F>Ƿ<EFBFBD>͸<EFBFBD><CDB8><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 35, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int NET_DVR_V6PSUBSYSTEMARAM_GET = 1501;//<2F><>ȡV6<56><36>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
public const int NET_DVR_V6PSUBSYSTEMARAM_SET = 1502;//<2F><><EFBFBD><EFBFBD>V6<56><36>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CORRECT_DEADPIXEL_PARAM
{
public uint dwSize;
public uint dwCommand; //<2F><><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EBBBB5>ģʽ<C4A3><CABD>1-<2D><><EFBFBD>ӻ<EFBFBD><D3BB>㣬2-<2D><><EFBFBD><EFBFBD>㣬3-<2D>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>
public uint dwDeadPixelX; //<2F><><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>
public uint dwDeadPixelY; //<2F><><EFBFBD><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
public const int MAX_REDAREA_NUM = 6; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_REDAREACFG
{
public uint dwSize;
public uint dwCorrectEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD>0-<2D>رգ<D8B1>1-<2D><><EFBFBD><EFBFBD>
public uint dwCorrectLevel; //У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1(У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)-10(У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>),Ĭ<><C4AC>Ϊ5
public uint dwAreaNum; //У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_REDAREA_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_RECT[] struLaneRect; //У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HISTORICDATACFG
{
public uint dwSize;
public uint dwTotalNum; //<2F><>ʷ<EFBFBD><CAB7><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int INQUEST_MESSAGE_LEN = 44; //<2F><>Ѷ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
public const int INQUEST_MAX_ROOM_NUM = 2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD>Ҹ<EFBFBD><D2B8><EFBFBD>
public const int MAX_RESUME_SEGMENT = 2; //֧<><D6A7>ͬʱ<CDAC>ָ<EFBFBD><D6B8><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD>Ŀ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_ROOM
{
public byte byRoomIndex; //<2F><>Ѷ<EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
public const int MAX_INQUEST_CDRW_NUM = 4; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>Ŀ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_CDRW_STATUS
{
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD>0-<EFBFBD><EFBFBD>Ѷ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>
* 1-<EFBFBD><EFBFBD>Ѷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>п<EFBFBD>¼<EFBFBD><EFBFBD>2-<EFBFBD><EFBFBD>Ѷֹͣ<EFBFBD><EFBFBD>
* 3-<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>Ѷ<EFBFBD>ļ<EFBFBD>,
* 4-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD>º󱸷ݺͱ<EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD>)
* 5-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 6-<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD>
* 7-<EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ѷ*/
public uint dwType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_INQUEST_CDRW_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_INQUEST_CDRW[] strCDRWNum; //<2F><><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>¼<EFBFBD><C2BC>1
public NET_DVR_TIME_EX struInquestStartTime; //<2F><>Ѷ<EFBFBD><D1B6>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_CDRW
{
public uint dwEnable; //<2F><>¼<EFBFBD><C2BC>״̬<D7B4>Ƿ<EFBFBD><C7B7><EFBFBD>Ч,0-<2D><>Ч,1-<2D><>Ч
public uint dwStatus; /* <EFBFBD><EFBFBD>dwType=0ʱ<EFBFBD><EFBFBD>
0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD>޹<EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
<EFBFBD><EFBFBD>dwType=1<EFBFBD><EFBFBD>2ʱ<EFBFBD><EFBFBD>
0-<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD>޹<EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>(81<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>)<EFBFBD><EFBFBD>3-<EFBFBD><EFBFBD><EFBFBD>̿ռ<EFBFBD>
4-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><EFBFBD>ֹ(81<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>)
<EFBFBD><EFBFBD>dwType=3ʱ<EFBFBD><EFBFBD>
0-<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD>޹<EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>(81<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>)<EFBFBD><EFBFBD>3-<EFBFBD><EFBFBD><EFBFBD>̿ռ<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>dwType=4ʱ<EFBFBD><EFBFBD>
0-<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<EFBFBD>޹<EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>(81<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>)<EFBFBD><EFBFBD>3-<EFBFBD><EFBFBD><EFBFBD>̿ռ<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>dwType=5ʱ,
0-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<EFBFBD>޹<EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>(81<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>)
<EFBFBD><EFBFBD>dwType=6<EFBFBD><EFBFBD>7ʱ,
0-<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 1-<EFBFBD>޹<EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>(81<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>), 3-<EFBFBD><EFBFBD><EFBFBD>̿ռ<EFBFBD><EFBFBD>*/
public uint dwVolumn; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>λM
public uint dwFreeSpace; //<2F><><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>λM
public uint dwTimeLeft; // <20><><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3>ʱ<EFBFBD><EFBFBD><E4A3AC>λ<EFBFBD><CEBB>
public byte byCDType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_CDRW_CFG
{
public uint dwSize;
public uint dwNum; //<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U4)]
public uint[]dwRwSelectPara;// <20>Ƿ<EFBFBD>ѡ<EFBFBD>иù<D0B8><C3B9><EFBFBD>
public uint dwModeSelect; //0<><30>ʾѭ<CABE><D1AD><EFBFBD><EFBFBD>¼ģʽ 1<><31>ʾ<EFBFBD><CABE><EFBFBD>п<EFBFBD>¼ģʽ<><C4AC>ģʽ)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public uint dwStartCDRW; //DVR <20><><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD>ʼ<EFBFBD><CABC>¼
public uint dwHdExcp; //Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>
public uint dwInterval; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10<31><30><EFBFBD><EFBFBD>(0)<29><>20<32><30><EFBFBD><EFBFBD>(1)<29><>30<33><30><EFBFBD><EFBFBD>(2)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] sLable; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_MESSAGE
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = INQUEST_MESSAGE_LEN)]
public string sMessage; //<2F>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 46, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_SENSOR_DEVICE
{
public ushort wDeviceType; //<2F><><EFBFBD>ݲɼ<DDB2><C9BC><EFBFBD>ͺ<EFBFBD>:0-<2D><> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>ز<EFBFBD> 3-<2D><><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD> 5-<2D><><EFBFBD>ء<EFBFBD>6-<2D><><EFBFBD>ϡ<EFBFBD>7-ά<><CEAC>˹<EFBFBD><CBB9>
public ushort wDeviceAddr; //<2F><><EFBFBD>ݲɼ<DDB2><C9BC><EFBFBD><E8B1B8>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 28, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_SENSOR_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = INQUEST_MAX_ROOM_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_INQUEST_SENSOR_DEVICE[] struSensorDevice;
public uint dwSupportPro; //֧<><D6A7>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>λ<EFBFBD><CEBB>ʾ, <20>°汾<C2B0><E6B1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD>ֶ<EFBFBD>
//0x1:<3A><><EFBFBD><EFBFBD> 0x2:<3A>ز<EFBFBD> 0x4:<3A><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 120, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_ROOM_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = NAME_LEN)]
public string szCDName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD>˫<EFBFBD>̹<EFBFBD><CCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct uCalcMode
{
[FieldOffsetAttribute(0)]
public byte byBitRate; // byCalcTypeΪ0ʱ<30><CAB1>Ч<EFBFBD><D0A7>(0-32<33><32>1-48<34><38>2-64<36><34>3-80<38><30>4-96<39><36>5-128<32><38>
//6-160<36><30>7-192<39><32>8-224<32><34>9-256<35><36>10-320<32><30>11-384<38><34>12-448<34><38>
//13-512<31><32>14-640<34><30>15-768<36><38>16-896ǰ16<31><36>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>)17-1024<32><34>18-1280<38><30>19-1536<33><36>
//20-1792<39><32>21-2048<34><38>22-3072<37><32>23-4096<39><36>24-8192
[FieldOffsetAttribute(0)]
public byte byInquestTime; // byCalcTypeΪ1ʱ<31><CAB1>Ч<EFBFBD><D0A7>0-1Сʱ, 1-2Сʱ,2-3Сʱ,3-4Сʱ, 4-6Сʱ,5-8Сʱ
//8-16Сʱ, 9-20Сʱ,10-22Сʱ,11-24Сʱ
}
public byte byCalcType; //<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><>ʱ<EFBFBD><CAB1>
public byte byAutoDelRecord; // <20>Ƿ<EFBFBD><C7B7>Զ<EFBFBD>ɾ<EFBFBD><C9BE>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>0-<2D><>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>¼<EFBFBD><C2BC> 1-ɾ<><C9BE>
public byte byAlarmThreshold; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
public byte byInquestChannelResolution; //<2F><>Ѷͨ<D1B6><CDA8><EFBFBD>ֱ<EFBFBD><D6B1>ʣ<EFBFBD>0:720P 1:1080P
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_SYSTEM_INFO
{
public uint dwRecordMode; //<2F><>¼ģʽ:1 <20><><EFBFBD><EFBFBD>˫<EFBFBD><CBAB>ģʽ 2 <20><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>ģʽ 3 ˫<><CBAB>˫<EFBFBD><CBAB>ģʽ<C4A3><CABD><EFBFBD>޸<EFBFBD><DEB8><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>
public uint dwWorkMode; //<2F><><EFBFBD><EFBFBD>ģʽ:0 <20><>׼ģʽ 1 ͨ<><CDA8>ģʽ(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀǰֻ<C7B0>б<EFBFBD>׼ģʽ)
public uint dwResolutionMode; //<2F><EFBFBD>ֱ<EFBFBD><D6B1>ʣ<EFBFBD>0:<3A><><EFBFBD><EFBFBD> 1:D1 2:720P 3:1080P<30><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><D1B6><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><C3B4>ֶΣ<D6B6>
public NET_DVR_INQUEST_SENSOR_INFO struSensorInfo; //<2F><>ʪ<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = INQUEST_MAX_ROOM_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_INQUEST_ROOM_INFO[] struInquestRoomInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_RESUME_SEGMENT
{
public NET_DVR_TIME struStartTime; //<2F>¼<EFBFBD><C2BC><EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime; //<2F>¼<EFBFBD><C2BC><EFBFBD>ֹʱ<D6B9><CAB1>
public byte byRoomIndex; //<2F><>Ѷ<EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
public byte byDriveIndex; //<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
public ushort wSegmetSize; //<2F><>Ƭ<EFBFBD>ϵĴ<CFB5>С, <20><>λM
public uint dwSegmentNo; //<2F><>Ƭ<EFBFBD><C6AC><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>,<2C><>1<EFBFBD><31>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_RESUME_EVENT
{
public uint dwResumeNum; //<2F><><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RESUME_SEGMENT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_INQUEST_RESUME_SEGMENT[] struResumeSegment;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 200, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INQUEST_DEVICE_VERSION
{
public byte byMainVersion; /*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
0 : δ֪
1 : 8000<EFBFBD><EFBFBD>ѶDVR
<EFBFBD>ΰ: 1 : 8000HD-S
2 : 8100<EFBFBD><EFBFBD>ѶDVR
<EFBFBD>ΰ: 1 : <EFBFBD><EFBFBD>Ѷ81SNL
2 : <EFBFBD><EFBFBD>Ѷ81SH
3 : <EFBFBD><EFBFBD>Ѷ81SFH
3 : 8608<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><EFBFBD>NVR
<EFBFBD>ΰ: 1 : DS-8608SN-SP
2 : DS-8608SN-ST
*/
public byte bySubVersion; //<2F><><EFBFBD>ߴΰ汾
public byte byUpgradeVersion; //<2F><><EFBFBD><EFBFBD><EFBFBD>汾,δ<><CEB4><EFBFBD><EFBFBD>Ϊ0
public byte byCustomizeVersion; //<2F><><EFBFBD>ư汾,<2C>Ƕ<EFBFBD><C7B6><EFBFBD>Ϊ0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISK_RAID_INFO
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; //<2F><><EFBFBD><EFBFBD>Raid<69>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 35, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SYNCHRONOUS_IPC
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>Ϊǰ<CEAA><C7B0>IPCͬ<43><CDAC><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPC_PASSWD
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string sOldPasswd; //IPC<50>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EBA3AC><EFBFBD><EFBFBD>DVR<56><52>DVR<56><52>֤
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = PASSWD_LEN)]
public string sNewPasswd; //IPC<50><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ͨ<><CDA8><EFBFBD><EFBFBD>ȡDVR<56><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>λbps
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DEVICE_NET_USING_INFO
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwPreview; //Ԥ<><D4A4>
public uint dwPlayback; //<2F>ط<EFBFBD>
public uint dwIPCModule; //IPC<50><43><EFBFBD><EFBFBD>
public uint dwNetDiskRW; //<2F><><EFBFBD>̶<EFBFBD>д
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] res;
}
//ͨ<><CDA8>DVR<56><52><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>IPC<50><43>IP<49><50>ַ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IPC_NETCFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_IPADDR struIP; //IPC<50><43>IP<49><50>ַ
public ushort wPort; //IPC<50>Ķ˿<C4B6>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 126)]
public string res;
}
//<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_TIME_LOCK
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_TIME strBeginTime;
public NET_DVR_TIME strEndTime;
public uint dwChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>, 0xff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public uint dwRecordType; //¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 0xffffffff<66><66>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD>ʱ¼<CAB1><C2BC><EFBFBD><EFBFBD>1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬2<E2A3AC><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬5-<2D><><EFBFBD><EFBFBD><EEB4A5><EFBFBD><EFBFBD>6-<2D>ֶ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>)
public uint dwLockDuration; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,<2C><>λ<EFBFBD><CEBB>,0xffffffff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME_EX strUnlockTimePoint; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>dwLockDuration<6F><6E>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4B5BD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LOCK_RETURN
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_TIME strBeginTime;
public NET_DVR_TIME strEndTime;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//67DVS
//֤<><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum NET_SDK_UPLOAD_TYPE
{
UPGRADE_CERT_FILE = 0,
UPLOAD_CERT_FILE = 1,
TRIAL_CERT_FILE = 2,
CONFIGURATION_FILE = 3
}
public enum NET_SDK_DOWNLOAD_TYPE
{
NET_SDK_DOWNLOAD_CERT = 0, //<2F><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>
NET_SDK_DOWNLOAD_IPC_CFG_FILE = 1,//<2F><><EFBFBD><EFBFBD>IPC<50><43><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
NET_SDK_DOWNLOAD_BASELINE_SCENE_PIC = 2, //<2F><><EFBFBD>ػ<EFBFBD>׼<EFBFBD><D7BC><EFBFBD><EFBFBD>ͼƬ
NET_SDK_DOWNLOAD_VQD_ALARM_PIC = 3, //<2F><><EFBFBD><EFBFBD>VQD<51><44><EFBFBD><EFBFBD>ͼƬ
NET_SDK_DOWNLOAD_CONFIGURATION_FILE=4 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>״̬
public enum NET_SDK_DOWNLOAD_STATUS
{
NET_SDK_DOWNLOAD_STATUS_SUCCESS = 1, //<2F><><EFBFBD>سɹ<D8B3>
NET_SDK_DOWNLOAD_STATUS_PROCESSING, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
NET_SDK_DOWNLOAD_STATUS_FAILED, //<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
NET_SDK_DOWNLOAD_STATUS_UNKOWN_ERROR //δ֪<CEB4><D6AA><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BONJOUR_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnableBonjour; // Bonjourʹ<72><CAB9> 0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD>ر<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byFriendlyName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SOCKS_CFG
{
public uint dwSize; // <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byEnableSocks; // ʹ<><CAB9> 0<><30><EFBFBD>ر<EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byVersion; // SOCKS<4B>汾 4<><34>SOCKS4 5<><35>SOCKS5
public ushort wProxyPort; // <20><><EFBFBD><EFBFBD><EFBFBD>˿ڣ<CBBF>Ĭ<EFBFBD><C4AC>1080
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byProxyaddr; // <20><><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byUserName; // <20>û<EFBFBD><C3BB><EFBFBD> SOCKS<4B><53><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPassword; // <20><><EFBFBD><EFBFBD>SOCKS5<53><35><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LOCAL_ADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLocalAddr; //<2F><>ʹ<EFBFBD><CAB9>socks<6B><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD><CEA3><EFBFBD>ʽΪ"ip/netmask;ip/netmask;<3B><>"
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_QOS_CFG
{
public uint dwSize;
public byte byManageDscp; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>DSCPֵ [0-63]
public byte byAlarmDscp; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>DSCPֵ [0-63]
public byte byVideoDscp; // <20><>Ƶ<EFBFBD><C6B5><EFBFBD>ݵ<EFBFBD>DSCPֵ [0-63]<5D><>byFlagΪ0ʱ<30><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ƶ
public byte byAudioDscp; // <20><>Ƶ<EFBFBD><C6B5><EFBFBD>ݵ<EFBFBD>DSCPֵ [0-63]<5D><>byFlagΪ1ʱ<31><CAB1>Ч
public byte byFlag; // 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>һ<EFBFBD><D2BB>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ֿ<EFBFBD>
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 126, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HTTPS_CFG
{
public uint dwSize;
public ushort wHttpsPort; // HTTPS<50>˿<EFBFBD>
public byte byEnable; // ʹ<><CAB9> 0<><30><EFBFBD>ر<EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 125, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//֤<><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CERT_NAME
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_COUNTRY_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCountry; //<2F><><EFBFBD>Ҵ<EFBFBD><D2B4><EFBFBD> CN<43><4E>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byState; //<2F>޻<EFBFBD>ʡ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byLocality; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byOrganization; //<2F><>֯
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byUnit; //<2F><>λ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byCommonName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOMAIN_NAME, ArraySubType = UnmanagedType.I1)]
public byte[] byEmail;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CERT_PARAM
{
public uint dwSize;
public ushort wCertFunc; //֤<><D6A4><EFBFBD><EFBFBD><EFBFBD>࣬0-802.1x,1-HTTPS
public ushort wCertType; //֤<><D6A4><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-CA<43><41>1-Certificate,2-˽Կ<CBBD>ļ<EFBFBD>
public byte byFileType; //֤<><D6A4><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ͣ<EFBFBD>0-PEM,1-PFX
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 35, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int UPLOAD_CERTIFICATE = 1; //<2F>ϴ<EFBFBD>֤<EFBFBD><D6A4>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CERT_INFO
{
public uint dwSize;
public NET_DVR_CERT_PARAM struCertParam; //֤<><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwValidDays; //<2F><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>ǩ<EFBFBD><C7A9>ʱ<EFBFBD><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPasswd; //˽Կ<CBBD><D4BF><EFBFBD><EFBFBD>
public NET_DVR_CERT_NAME struCertName; // ֤<><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_CERT_NAME struIssuerName; // ֤<><EFBFBD><E9B7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD>ǩ<EFBFBD><C7A9>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡʱ<C8A1><CAB1>Ч<EFBFBD><D0A7>
public NET_DVR_TIME_EX struBeginTime; //֤<><EFBFBD><E9B4B4>ʱ<EFBFBD><EFBFBD><E4A3A8>ǩ<EFBFBD><C7A9>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡʱ<C8A1><CAB1>Ч<EFBFBD><D0A7>
public NET_DVR_TIME_EX struEndTime; //֤<><D6A4><EFBFBD><EFBFBD>ֹʱ<D6B9><EFBFBD><E4A3A8>ǩ<EFBFBD><C7A9>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡʱ<C8A1><CAB1>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] serialNumber; //֤<><D6A4><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EBA3A8>ǩ<EFBFBD><C7A9>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡʱ<C8A1><CAB1>Ч<EFBFBD><D0A7>
public byte byVersion;
public byte byKeyAlgorithm; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-RSA 1-DSA
public byte byKeyLen; //<2F><><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD> 0-512 1-1024<32><34> 2-2048
public byte bySignatureAlgorithm; //ǩ<><C7A9><EFBFBD><EFBFBD><E3B7A8><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ǩ<EFBFBD><C7A9>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡʱ<C8A1><CAB1>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//channel record status
//***ͨ<><CDA8>¼<EFBFBD><C2BC>״̬*****//
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHANS_RECORD_STATUS
{
public byte byValid; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
public byte byRecord; /*(ֻ<EFBFBD><EFBFBD>)¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʾ:0: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD> 2-<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
3-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 4-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ 5-δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 6-<EFBFBD><EFBFBD><EFBFBD>
7-<EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD> 8-<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 9-δ<EFBFBD><EFBFBD>֤
10-<EFBFBD><EFBFBD>к<EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 11-¼<EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD>к<EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wChannelNO; //ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwRelatedHD; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byOffLineRecord; //<2F><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D>ر<EFBFBD> 1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IP_ALARM_GROUP_NUM
{
public uint dwSize;
public uint dwIPAlarmInGroup; //IPͨ<50><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwIPAlarmInNum; //IPͨ<50><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwIPAlarmOutGroup; //IPͨ<50><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwIPAlarmOutNum; //IPͨ<50><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//****NVR end***//
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHAN_GROUP_RECORD_STATUS
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CHANS_RECORD_STATUS[] struChanStatus; //һ<><D2BB>64<36><34>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECTCFG
{
public ushort wXCoordinate; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD><EFBFBD>ʼ<EFBFBD><CABC>X<EFBFBD><58><EFBFBD><EFBFBD>*/
public ushort wYCoordinate; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>*/
public ushort wWidth; /*<2A><><EFBFBD>ο<EFBFBD><CEBF><EFBFBD>*/
public ushort wHeight; /*<2A><><EFBFBD>θ߶<CEB8>*/
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WINCFG
{
public uint dwSize;
public byte byVaild;
public byte byInputIdx; /*<2A><><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>*/
public byte byLayerIdx; /*ͼ<>㣬0Ϊ<30><CEAA><EFBFBD>ײ<EFBFBD>*/
public byte byTransparency; //͸<><CDB8><EFBFBD>ȣ<EFBFBD>0<EFBFBD><30>100
public NET_DVR_RECTCFG struWin;//Ŀ<>Ĵ<EFBFBD><C4B4><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾǽ)
public ushort wScreenHeight;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wScreenWidth;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALLWINCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LAYERNUMS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_WINCFG[] struWinCfg;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREENZOOM
{
public uint dwSize;
public uint dwScreenNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_POINT_FRAME struPointFrame;
public byte byLayer;//ͼ<><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//2011-04-18
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ,<2C><><EFBFBD><EFBFBD>9999<39><39><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>ʼ */
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_CAMERAINFO
{
public uint dwGlobalCamId; /* cam<61><6D>ȫ<EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sCamName; /*cam<61><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwMatrixId; /*cam<61><6D>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>*/
public uint dwLocCamId; /*cam<61><6D>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>*/
public byte byValid; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public byte byPtzCtrl; /* <20>Ƿ<EFBFBD><C7B7>ɿأ<C9BF>0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public byte byUseType; //*ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD>1-BNC<4E><43>2-SP3,3-V6<56><36><EFBFBD>ˣ<EFBFBD>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byUsedByTrunk;//<2F><>ǰʹ<C7B0><CAB9>״̬<D7B4><CCAC>0-û<>б<EFBFBD>ʹ<EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
public byte byTrunkReq; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>,<2C><>D1Ϊ<31><CEAA>λ<EFBFBD><CEBB>1 - 1<><31>D1<44><31>2- 2<><32>D1<44><31><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ʱ<EFBFBD><CAB1>ָ<EFBFBD><D6B8><EFBFBD>Ǹ<EFBFBD><C7B8>ߵĴ<DFB5><C4B4><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_TIME struInstallTime;//<2F><>װʱ<D7B0><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPurpose;/*<2A><>;<EFBFBD><CDBE><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2048<34><38>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_MONITORINFO
{
public uint dwGloalMonId; /*mon <20><>ͳһ<CDB3><D2BB><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sMonName;
public uint dwMatrixId; /*mon<6F><6E><EFBFBD>ھ<EFBFBD><DABE><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>*/
public uint dwLocalMonId; /*mon<6F><6E><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>*/
public byte byValid; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public byte byTrunkType; /*ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD>1-BNC<4E><43>2-SP3,3-V6<56><36><EFBFBD>ˣ<EFBFBD>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byUsedByTrunk;//<2F><>ǰʹ<C7B0><CAB9>״̬<D7B4><CCAC>0-û<>б<EFBFBD>ʹ<EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
public byte byTrunkReq; /*<2A>ֱ<EFBFBD><D6B1><EFBFBD>, <20><>D1Ϊ<31><CEAA>λ<EFBFBD><CEBB>1- 1<><31>D1<44><31>2- 2<><32>D1<44><31><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ʱ<EFBFBD><CAB1>ָ<EFBFBD><D6B8><EFBFBD>Ǹ<EFBFBD><C7B8>ߵĴ<DFB5><C4B4><EFBFBD>*/
public NET_DVR_TIME struInstallTime;//<2F><>װʱ<D7B0><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPurpose;/*<2A><>;<EFBFBD><CDBE><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_DIGITALMATRIX
{
public NET_DVR_IPADDR struAddress; /*<2A>豸Ϊ<E8B1B8><CEAA><EFBFBD><EFBFBD><EFBFBD>豸ʱ<E8B1B8><CAB1>IP<49><50>Ϣ*/
public ushort wPort;
public byte byNicNum; /*0 - eth0, 1 - eth1, <20><><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>ż<EFBFBD><C5BC><EFBFBD><EFBFBD>󶨵<EFBFBD><F3B6A8B5><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 69, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_ANALOGMATRIX
{
public byte bySerPortNum; /*<2A><><EFBFBD>ӵĴ<D3B5><C4B4>ں<EFBFBD>*/
public byte byMatrixSerPortType;/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>صĴ<D8B5><C4B4><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>̿<EFBFBD>(<28><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>)<29><><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>ſڣ<C5BF><DAA3><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD><E9A3A9><EFBFBD><EFBFBD> <20><>0 --- <20><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>ͨѶ<CDA8><D1B6> 1 --- <20><><EFBFBD><EFBFBD>ͨѶ<CDA8><D1B6>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_SINGLE_RS232 struRS232; //232<33><32><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 200, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIXLIST
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwMatrixNum;//<2F><EFBFBD><E8B1B8><EFBFBD>صľ<D8B5><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBuffer;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwBufLen;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_UARTPARAM
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPortName;
public ushort wUserId; /*<2A>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸Ϊ<E8B1B8><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>޹<EFBFBD><DEB9><EFBFBD>*/
public byte byPortType; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>0-RS232/1-RS485/2-RS422*/
public byte byFuncType; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD>У<EFBFBD>1-<2D><><EFBFBD>̣<EFBFBD>2-<2D><><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>(485<38><35><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD>͸<EFBFBD><CDB8>ͨ<EFBFBD><CDA8>),3-ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byProtocolType; /*<2A><><EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD><EFBFBD>豸ʱ<E8B1B8><CAB1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>Ϣ,<2C><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>Э<EFBFBD><D0AD><EFBFBD>ı<EFBFBD><C4B1>ż<EFBFBD><C5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byBaudRate;
public byte byDataBits;
public byte byStopBits; /*ֹͣλ*/
public byte byParity; /*У<><D0A3>*/
public byte byFlowCtrl; /*<2A><><EFBFBD>أ<EFBFBD><D8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><D8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 22, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /*Ԥ<><D4A4>*/
}
//<2F><><EFBFBD><EFBFBD>256<35><36><EFBFBD>û<EFBFBD><C3BB><EFBFBD>1<EFBFBD><31>256
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_USERPARAM
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword;
public byte byRole;/*<2A>û<EFBFBD><C3BB><EFBFBD>ɫ:0-<2D><><EFBFBD><EFBFBD>Ա,1-<2D><><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1>ֻ<EFBFBD><D6BB>һ<EFBFBD><D2BB>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1>255<35><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա*/
public byte byLevel; /*ͳһ<CDB3><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1- 255*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 18, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>255<35><35><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_RESOURSEGROUPPARAM
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byGroupName;
public byte byGroupType;/*0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CAM<41>飬1-<2D><>ʾ<EFBFBD><CABE>MON<4F><4E>*/
public byte byRes1;
public ushort wMemNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 512, ArraySubType = UnmanagedType.U4)]
public uint[] dwGlobalId;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD>255<35><35><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_USERGROUPPARAM
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sGroupName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 255, ArraySubType = UnmanagedType.U2)]
public ushort[] wUserMember; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>Ա*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 255, ArraySubType = UnmanagedType.U2)]
public ushort[] wResorceGroupMember; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>Ա*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byPermission;//Ȩ<>ޣ<EFBFBD><DEA3><EFBFBD><EFBFBD><EFBFBD>0-ptzȨ<7A>ޡ<EFBFBD><DEA1>л<EFBFBD>Ȩ<EFBFBD>ޡ<EFBFBD><DEA1><EFBFBD>ѯȨ<D1AF><C8A8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_MATRIX_TRUNKPARAM
{
public uint dwSize;
public uint dwTrunkId;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sTrunkName;
public uint dwSrcMonId;
public uint dwDstCamId;
public byte byTrunkType; /*ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-BNC<4E><43>2-SP3<50><33><EFBFBD>˸<EFBFBD><CBB8>壬3-SP3<50><33><EFBFBD><EFBFBD>D1<44><31> 4-V6<56><36><EFBFBD>ˣ<EFBFBD>5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byAbility; /*<2A><>ʾ<EFBFBD><CABE><EFBFBD>˵Ĵ<CBB5><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>伸·*/
public byte bySubChan; /*<2A><><EFBFBD>Թ<EFBFBD><D4B9>˸<EFBFBD><CBB8>߶<EFBFBD><DFB6>ԣ<EFBFBD><D4A3><EFBFBD>ʾ<EFBFBD><CABE>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>*/
public byte byLevel; /* <20><><EFBFBD>߼<EFBFBD><DFBC><EFBFBD> 1-255*/
public ushort wReserveUserID; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ID<49><44> 1~256 <20><>0<EFBFBD><30>ʾ<EFBFBD>ͷ<EFBFBD>Ԥ<EFBFBD><D4A4>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 18, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_TRUNKLIST
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwTrunkNum;//<2F><EFBFBD><E8B1B8><EFBFBD>صĸ<D8B5><C4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBuffer;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwBufLen;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
public const int MATRIX_PROTOCOL_NUM = 20; //֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>
public const int KEYBOARD_PROTOCOL_NUM = 20; //֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PROTO_TYPE_EX
{
public ushort wType; /*ipcЭ<63><D0AD>ֵ*/
public ushort wCommunitionType; /*0<><30>ģ<EFBFBD><C4A3> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><E2A1A2><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DESC_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDescribe; /*Э<><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIXMANAGE_ABIILITY
{
public uint dwSize;
public uint dwMaxCameraNum;//<2F><><EFBFBD><EFBFBD>Camera<72><61><EFBFBD><EFBFBD>
public uint dwMaxMonitorNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMaxMatrixNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMaxSerialNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMaxUser;//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public ushort wMaxResourceArrayNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public ushort wMaxUserArrayNum;//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
public ushort wMaxTrunkNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte nStartUserNum;//<2F><>ʼ<EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public byte nStartUserGroupNum;//<2F><>ʼ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
public byte nStartResourceGroupNum;//<2F><>ʼ<EFBFBD><CABC>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public byte nStartSerialNum;//<2F><>ʼ<EFBFBD><CABC><EFBFBD>ں<EFBFBD>
public uint dwMatrixProtoNum; /*<2A><>Ч<EFBFBD>ľ<EFBFBD><C4BE><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>0<EFBFBD><30>ʼ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MATRIX_PROTOCOL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PROTO_TYPE_EX[] struMatrixProto;/*<2A><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwKeyBoardProtoNum; /*<2A><>Ч<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>0<EFBFBD><30>ʼ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MATRIX_PROTOCOL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PROTO_TYPE_EX[] struKeyBoardProto;/*<2A><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SINGLEWALLPARAM
{
public uint dwSize;
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwWallNum;//<2F><><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>128<32><38>128<32><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ͸߶<CDB8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>Ϊ<EFBFBD><CEAA>׼ֵ
public NET_DVR_RECTCFG struRectCfg;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 36, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WALLWINCFG
{
public uint dwSize;
public byte byEnable;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 7, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwWinNum;//<2F><><EFBFBD>ں<EFBFBD>
public uint dwLayerIndex;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
public NET_DVR_RECTCFG struWinPosition;//Ŀ<>Ĵ<EFBFBD><C4B4><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾǽ)
public uint dwDeviceIndex;//<2F>ֲ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public ushort wInputIndex;//<2F><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WALLWINPARAM
{
public uint dwSize;
public byte byTransparency; //ʹ<><CAB9>͸<EFBFBD><CDB8><EFBFBD>ȣ<EFBFBD>0-<2D>أ<EFBFBD><D8A3><EFBFBD>0-<2D><>
public byte byWinMode;//<2F><><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public byte byEnableSpartan;//<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>0-<2D>أ<EFBFBD>1-<2D><>
public byte byDecResource; //Ϊ<><CEAA><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>1-D1,2-720P,3-1080P
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECTCFG_EX
{
public uint dwXCoordinate;
public uint dwYCoordinate;
public uint dwWidth;
public uint dwHeight;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOWALLDISPLAYPOSITION
{
public uint dwSize;
public byte byEnable; //ʹ<>ܣ<EFBFBD>0- <20><><EFBFBD>ã<EFBFBD>1- <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwVideoWallNo;//<2F><><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD>(<28><><EFBFBD><EFBFBD>)
public uint dwDisplayNo; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡȫ<C8A1><C8AB>ʱ<EFBFBD><CAB1>Ч
public NET_DVR_RECTCFG_EX struRectCfg;//λ<><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3AC>Ϊ<EFBFBD><CEAA>׼<EFBFBD><D7BC><EFBFBD>꣨ͨ<EAA3A8><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ͸߶<CDB8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>Ϊ<EFBFBD><CEAA>׼ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPLAYPARAM
{
public uint dwDisplayNo;//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDispChanType;/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ,1-BNC<EFBFBD><EFBFBD>2-VGA<EFBFBD><EFBFBD>3-HDMI<EFBFBD><EFBFBD>4-DVI<EFBFBD><EFBFBD>5-SDI, 6-FIBER, \
7-RGB, 8-YPrPb, 9-VGA/HDMI/DVI<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>10-3GSDI,11-VGA/DVI<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>12-HDBaseT, 0xff-<EFBFBD><EFBFBD>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MAX_DISPLAY_NUM = 512; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPLAYCFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISPLAY_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISPLAYPARAM[] struDisplayParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VIDEOWALLWINDOWPOSITION
{
public uint dwSize;
public byte byEnable; //<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>,0-<2D><>ʹ<EFBFBD>ܣ<EFBFBD>1-ʹ<><CAB9>
public byte byWndOperateMode; //<2F><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>ģʽ<C4A3><CABD>0-ͳһ<CDB3><D2BB><EFBFBD>꣬1-<2D>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwWindowNo;//<2F><><EFBFBD>ں<EFBFBD>
public uint dwLayerIndex;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>ͼ<EFBFBD><CDBC><EFBFBD>ţ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_RECTCFG_EX struRect; //Ŀ<>Ĵ<EFBFBD><C4B4><EFBFBD>ͳһ<CDB3><D2BB><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾǽ)<29><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ͳһ<CDB3><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч
public NET_DVR_RECTCFG_EX struResolution; //Ŀ<>Ĵ<EFBFBD><C4B4>ڷֱ<DAB7><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3AC>ȡ<EFBFBD>򰴷ֱ<F2B0B4B7><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHAN_RELATION_RESOURCE
{
public uint dwSize;
public uint dwDisplayChan; //<2F><>ʾͨ<CABE><CDA8><EFBFBD>ţ<EFBFBD>1<EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD><E8B1B8>+1<>ֽڱ<D6BD><DAB1><EFBFBD>+2<>ֽ<EFBFBD><D6BD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD>ţ<EFBFBD>
public byte byRelateAudio; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>Ƶ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwSubWinNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD>Ӵ<EFBFBD><D3B4>ںţ<DABA>1<EFBFBD>ֽڵ<D6BD><DAB5><EFBFBD>ǽ<EFBFBD><C7BD>+1<>ֽ<EFBFBD><D6BD>Ӵ<EFBFBD><D3B4>ں<EFBFBD>+2<>ֽڴ<D6BD><DAB4>ںţ<DABA>
public uint dwChannel; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ȡȫ<C8A1><C8AB>ʱ<EFBFBD><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PU_STREAM_CFG_V41
{
public uint dwSize;
public byte byStreamMode;//ȡ<><C8A1>ģʽ<C4A3><CABD>0- <20><>Ч<EFBFBD><D0A7>1- ͨ<><CDA8>IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>2- ͨ<><CDA8>URLȡ<4C><C8A1><EFBFBD><EFBFBD>3- ͨ<><CDA8><EFBFBD><EFBFBD>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ȡ<E8B1B8><C8A1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_DEC_STREAM_MODE uDecStreamMode;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_VIDEO_WALL_INFO
{
public uint dwSize;
public uint dwWindowNo;
public uint dwSceneNo;
public uint dwDestWallNo; //Ŀ<><C4BF>ǽ<EFBFBD><C7BD>
public uint dwDestSceneNo;//Ŀ<>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_SCENE_CONTROL_INFO
{
public uint dwSize;
public NET_DVR_VIDEO_WALL_INFO struVideoWallInfo;
public uint dwCmd;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WALLSCENECFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSceneName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEnable; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч
public byte bySceneIndex; //<2F><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>г<EFBFBD><D0B3><EFBFBD>ʱʹ<CAB1>øò<C3B8><C3B2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 78, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BUF_INFO
{
public IntPtr pBuf;
public uint nLen;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_IN_PARAM
{
public NET_DVR_BUF_INFO struCondBuf;
public NET_DVR_BUF_INFO struInParamBuf;
public uint dwRecvTimeOut;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OUT_PARAM
{
public NET_DVR_BUF_INFO struOutBuf;
public IntPtr lpStatusList;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INPUTSTREAMCFG_V40
{
public uint dwSize;
public byte byValid; //
public byte byCamMode;//<2F><>NET_DVR_CAM_MODE
public ushort wInputNo; //<2F>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = NAME_LEN)]
public string sCamName;
public NET_DVR_VIDEOEFFECT struVideoEffect;//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>
public NET_DVR_PU_STREAM_CFG struPuStream; //ip<69><70><EFBFBD><EFBFBD>ʱʹ<CAB1><CAB9>
public ushort wBoardNum; //<2F>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>ڵİ忨<C4B0>ţ<EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ
public ushort wInputIdxOnBoard; //<2F>ź<EFBFBD>Դ<EFBFBD>ڰ忨<DAB0>ϵ<EFBFBD>λ<EFBFBD>ã<EFBFBD>ֻ<EFBFBD>ܻ<EFBFBD>ȡ
public uint dwResolution;//<2F>ֱ<EFBFBD><D6B1><EFBFBD>
public byte byVideoFormat;//<2F><>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>VIDEO_STANDARD
public byte byStatus; //<2F>ź<EFBFBD>Դ״̬<D7B4><CCAC>0-<2D>ֶ<EFBFBD><D6B6><EFBFBD>Ч 1-<2D><><EFBFBD>ź<EFBFBD> 2-<2D><><EFBFBD>ź<EFBFBD> 3-<2D>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = NAME_LEN)]
public string sGroupName; //<2F><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
public byte byJointMatrix; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>ԴΪNET_DVR_CAM_BNC<4E><43>NET_DVR_CAM_VGA<47><41>NET_DVR_CAM_DVI<56><49>NET_DVR_CAM_HDMI,<2C>е<EFBFBD>һ<EFBFBD><D2BB>ʱ<EFBFBD><CAB1><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public byte byJointNo; //ƴ<><C6B4><EFBFBD>ź<EFBFBD>Դ<EFBFBD><D4B4>ƴ<EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD><>ܻ<EFBFBD>ȡ)
public byte byColorMode; //ɫ<><C9AB>ģʽ<C4A3><CABD> 0-<2D>Զ<EFBFBD><D4B6><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D><>ͨ 3-<2D><><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>ʱ<EFBFBD><CAB1>ʹ<EFBFBD><CAB9>struVideoEffect<63><74><EFBFBD><EFBFBD>
public byte byScreenServer; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byDevNo; //<2F><EFBFBD><E8B1B8>
public byte byRes1;
public uint dwInputSignalNo; //<2F><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>ţ<EFBFBD><C5A3>£<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 120, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>(<28><><EFBFBD><EFBFBD>)
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SINGLE_FACESNAPCFG
{
public byte byActive; //<2F>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struVcaPolygon; //<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAPCFG
{
public uint dwSize;
public byte bySnapTime; //<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>0-10
public byte bySnapInterval; //ץ<>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>֡
public byte bySnapThreshold; //ץ<><D7A5><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>0-100
public byte byGenerateRate; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>,<2C><>Χ[1, 5]
public byte bySensitive; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Χ[1, 5]
public byte byReferenceBright; //2012-3-27<32>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD>[0,100]
public byte byMatchType; //2012-5-3<>ȶԱ<C8B6><D4B1><EFBFBD>ģʽ<C4A3><CABD>0-Ŀ<><C4BF><EFBFBD><EFBFBD>ʧ<EFBFBD>󱨾<EFBFBD><F3B1A8BE><EFBFBD>1-ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>
public byte byMatchThreshold; //2012-5-3ʵʱ<CAB5>ȶ<EFBFBD><C8B6><EFBFBD>ֵ<EFBFBD><D6B5>0~100
public NET_DVR_JPEGPARA struPictureParam; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RULE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_SINGLE_FACESNAPCFG[] struRule; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 100, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_HUMAN_FEATURE
{
public byte byRes3;
public byte bySex; //<2F>Ա<EFBFBD>, 0-<2D><>ʾ<EFBFBD><CABE>δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B7A8>֧<EFBFBD>֣<EFBFBD>,1 <20>C <20><> , 2 <20>C Ů, 0xff-<2D>㷨֧<E3B7A8>֣<EFBFBD><D6A3><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEyeGlass; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>۾<EFBFBD> 0-<2D><>ʾ<EFBFBD><CABE>δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B7A8>֧<EFBFBD>֣<EFBFBD>,1 <20>C <20><><EFBFBD><EFBFBD>, 2 <20>C <20><>,0xff-<2D>㷨֧<E3B7A8>֣<EFBFBD>public byte byRes4;
public byte byDeviation;//<2F><><EFBFBD><EFBFBD>ֵ
public byte byEthnic; //<2F>ֶ<EFBFBD>Ԥ<EFBFBD><D4A4>,<2C>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD>
public byte byMask; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>ʾ<EFBFBD><CABE>δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B7A8>֧<EFBFBD>֣<EFBFBD>,1 <20>C <20><><EFBFBD><EFBFBD>, 2 <20>C<EFBFBD><43><EFBFBD><EFBFBD>ͨ<EFBFBD>۾<EFBFBD>, 3 <20>C<EFBFBD><43>ī<EFBFBD><C4AB>,0xff-<2D>㷨֧<E3B7A8>֣<EFBFBD><D6A3><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySmile; //<2F>Ƿ<EFBFBD>΢Ц 0-<2D><>ʾ<EFBFBD><CABE>δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B7A8>֧<EFBFBD>֣<EFBFBD>,1 <20>C <20><>΢Ц, 2 <20>C ΢Ц, 0xff-<2D>㷨֧<E3B7A8>֣<EFBFBD><D6A3><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byFaceExpression;
public byte byBeard;
public byte byRes2;
public byte byHat; //ñ<><C3B1>, 0-<2D><>֧<EFBFBD><D6A7>,1-<2D><><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1>,2-<2D><>ñ<EFBFBD><C3B1>,0xff-unknow<6F><77>ʾδ֪,<2C>㷨֧<E3B7A8><D6A7>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAP_ADDINFO
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Сͼ(ͷ<><CDB7><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_RECT struFacePicRect;
public int iSwingAngle;//<2F><>ת<EFBFBD><D7AA>, -90~90<39><30>
public int iTiltAngle;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, -90~90<39><30>
public uint dwPupilDistance;//ͫ<><CDAB>,<2C><>ΧΪ<CEA7><CEAA><EFBFBD><EFBFBD>СֵΪ10<31><30><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>ֵΪ<D6B5><CEAA>ǰ<EFBFBD>ֱ<EFBFBD><D6B1>ʿ<EFBFBD><CABF><EFBFBD>/1.6
public byte byBlockingState;//Ŀ<><C4BF><EFBFBD>ڵ<EFBFBD>״̬<D7B4><CCAC> 0-<2D><>ʾ<EFBFBD><CABE>δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B7A8>֧<EFBFBD>֣<EFBFBD>,1~<7E><><EFBFBD>ڵ<EFBFBD>,2~˲ʱ<CBB2><CAB1><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>3~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>4~<7E><><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>
public byte byFaceSnapThermometryEnabled;//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>ʹ<EFBFBD><CAB9> 1-<2D><><EFBFBD><EFBFBD> 0-<2D>ر<EFBFBD>
public byte byIsAbnomalTemperature;//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><C2B6>쳣 1-<2D><> 0-<2D><>
public byte byThermometryUnit;//<2F><><EFBFBD>µ<EFBFBD>λ: 0-<2D><><EFBFBD>϶ȣ<CFB6><C8A3><EFBFBD><E6A3A9>1-<2D><><EFBFBD>϶ȣ<CFB6><C8A3>H<EFBFBD><48><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(K)
public NET_DVR_TIME_EX struEnterTime; // <20><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD>½<EFBFBD><C2BD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_TIME_EX struExitTime; // <20><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD>뿪ʱ<EBBFAA><CAB1>
public float fFaceTemperature; // <20><><EFBFBD><EFBFBD><EFBFBD>ȣ<C2B6> - 20.0<EFBFBD><EFBFBD>~150.0<EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fAlarmTemperature;// <20><><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 472, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;// <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAP_RESULT
{
public uint dwSize;
public uint dwRelativeTime;
public uint dwAbsTime;
public uint dwFacePicID;
public uint dwFaceScore;
public NET_VCA_TARGET_INFO struTargetInfo;
public NET_VCA_RECT struRect;
public NET_VCA_DEV_INFO struDevInfo;
public uint dwFacePicLen;
public uint dwBackgroundPicLen;
public byte bySmart; //IDS<44><EFBFBD><E8B1B8><EFBFBD><EFBFBD>0(Ĭ<><C4AC>ֵ)<29><>Smart Functiom Return 1
public byte byAlarmEndMark;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD><C7A3><EFBFBD><EFBFBD>ֶν<D6B6><CEBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49>ֶ<EFBFBD>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ʾ<EFBFBD><CABE>ID<49><44>Ӧ<EFBFBD><D3A6><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><E1B9A9>NVRʹ<52>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϱ<D0B6><CFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡʶ<C8A1><CAB6>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>ͼƬ<CDBC><C6AC>
public byte byRepeatTimes; //<2F>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byUploadEventDataType;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>1-URL
public NET_VCA_HUMAN_FEATURE struFeature; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fStayDuration; //ͣ<><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ: <20><>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sStorageIP; //<2F><EFBFBD><E6B4A2><EFBFBD><EFBFBD>IP<49><50>ַ
public ushort wStoragePort; //<2F><EFBFBD><E6B4A2><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
public ushort wDevInfoIvmsChannelEx; //<2F><>NET_VCA_DEV_INFO<46><4F><EFBFBD><EFBFBD>byIvmsChannel<65><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܱ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ͽͻ<CFBF><CDBB><EFBFBD><EFBFBD><EFBFBD>byIvmsChannel<65>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>255<35><35><EFBFBD>¿ͻ<C2BF><CDBB>˰汾<CBB0><E6B1BE>ʹ<EFBFBD><CAB9>wDevInfoIvmsChannelEx<45><78>
public byte byFacePicQuality;
public byte byUIDLen; // <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
public byte byLivenessDetectionStatus;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪(<28><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>)<29><>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-δ<><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ʶλ<CAB6><CEBB><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>NET_VCA_FACESNAP_ADDINFO<46><EFBFBD>壩,0-<2D>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>Ϣ, 1-<2D>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>*/
public byte byAddInfo;
public IntPtr pUIDBuffer; //<2F><>ʶָ<CAB6><D6B8>
public IntPtr pAddInfoBuffer;
public byte byTimeDiffFlag; /*ʱ<><CAB1><EFBFBD>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-ʱ<><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7> 1-ʱ<><CAB1><EFBFBD><EFBFBD>Ч */
public byte cTimeDifferenceH; /*<2A><>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14<31><34> +<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>,<2C><>byTimeDiffFlagΪ1ʱ<31><CAB1>Ч*/
public byte cTimeDifferenceM; /*<2A><>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30, 30, 45<34><35> +<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>byTimeDiffFlagΪ1ʱ<31><CAB1>Ч*/
public byte byBrokenNetHttp; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־λ<D6BE><CEBB>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD>ݣ<EFBFBD>1-<2D>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBuffer1;//ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pBuffer2;//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ͼƬ<CDBC><C6AC><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>ͼ<EFBFBD>ӿڿ<D3BF><DABF>Ի<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_DETECTION
{
public uint dwSize;
public uint dwRelativeTime;
public uint dwAbsTime;
public uint dwBackgroundPicLen;
public NET_VCA_DEV_INFO struDevInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 30, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_RECT[] struFacePic; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>򣬹<EFBFBD>һ<EFBFBD><D2BB>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ)<29>ķֱ<C4B7><D6B1><EFBFBD>
public byte byFacePicNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 255, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
public IntPtr pBackgroundPicpBuffer;//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
}
//<2F><EFBFBD><E9BDB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEFOCUS_ALARM
{
public uint dwSize; /*<2A><EFBFBD><E1B9B9><EFBFBD><EFBFBD>*/
public NET_VCA_DEV_INFO struDevInfo;/*<2A><EFBFBD><E8B1B8>Ϣ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUDIOEXCEPTION_ALARM
{
public uint dwSize; /*<2A><EFBFBD><E1B9B9><EFBFBD><EFBFBD>*/
public byte byAlarmType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>2-<2D><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB>
public byte byRes1;
public ushort wAudioDecibel;//<2F><><EFBFBD><EFBFBD>ǿ<EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB>ʱ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD>
public NET_VCA_DEV_INFO struDevInfo;/*<2A><EFBFBD><E8B1B8>Ϣ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_BUTTON_DOWN_EXCEPTION_ALARM
{
public uint dwSize; /*<2A><EFBFBD><E1B9B9><EFBFBD><EFBFBD>*/
public NET_VCA_DEV_INFO struDevInfo;/*<2A><EFBFBD><E8B1B8>Ϣ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FD_IMAGE_CFG
{
public uint dwWidth; //<2F>Ҷ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>
public uint dwHeight; //<2F>Ҷ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>߶<EFBFBD>
public uint dwImageLen; //<2F>Ҷ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public IntPtr pImage; //<2F>Ҷ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FD_PROCIMG_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public byte byEnable; //<2F>Ƿ񼤻<C7B7><F1BCA4BB><EFBFBD><EFBFBD><EFBFBD>;
public byte bySensitivity; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>[0,5]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 22, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public NET_VCA_SIZE_FILTER struSizeFilter; //<2F>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POLYGON struPolygon; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_FD_IMAGE_CFG struFDImage; //ͼƬ<CDBC><C6AC>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SUB_PROCIMG
{
public uint dwImageLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public uint dwFaceScore; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-100
public NET_VCA_RECT struVcaRect; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public IntPtr pImage; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FD_PROCIMG_RESULT
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public uint dwImageId; //<2F><>ͼID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public uint dwSubImageNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_TARGET_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_SUB_PROCIMG[] struProcImg; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>Ϣ
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_PICMODEL_RESULT
{
public uint dwImageLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public uint dwModelLen; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public IntPtr pImage; //<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
public IntPtr pModel; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_REGISTER_PIC
{
public uint dwImageID; //<2F><>ͼID
public uint dwFaceScore; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-100
public NET_VCA_RECT struVcaRect; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AREAINFOCFG
{
public ushort wNationalityID;//<2F><><EFBFBD><EFBFBD>
public ushort wProvinceID;//ʡ
public ushort wCityID;//<2F><>
public ushort wCountyID;//<2F><>
public uint dwCode;//<2F><><EFBFBD><EFBFBD>
}
//<2F><>Ա<EFBFBD><D4B1>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_HUMAN_ATTRIBUTE
{
public byte bySex;//<2F>Ա<EFBFBD><D4B1><EFBFBD>0-<2D>У<EFBFBD>1-Ů
public byte byCertificateType;//֤<><D6A4><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>1-<2D><><EFBFBD><EFBFBD>֤
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HUMAN_BIRTHDATE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byBirthDate;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3>磺201106
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_AREAINFOCFG struNativePlace;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCertificateNumber; //֤<><D6A4><EFBFBD><EFBFBD>
public uint dwPersonInfoExtendLen;// <20><>Ա<EFBFBD><D4B1>ǩ<EFBFBD><C7A9>Ϣ<EFBFBD><CFA2>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
public IntPtr pPersonInfoExtend; //<2F><>Ա<EFBFBD><D4B1>ǩ<EFBFBD><C7A9>Ϣ<EFBFBD><CFA2>չ<EFBFBD><D5B9>Ϣ
public byte byGroup;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 11, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_HUMANATTRIBUTE_COND
{
public byte bySex; //<2F>Ա<EFBFBD><D4B1><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D>У<EFBFBD>2-Ů
public byte byCertificateType; //֤<><D6A4><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>2-<2D><><EFBFBD><EFBFBD>֤
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HUMAN_BIRTHDATE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byStartBirthDate; //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3>磺201106
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HUMAN_BIRTHDATE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byEndBirthDate; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD>201106
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_AREAINFOCFG struNativePlace; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCertificateNumber; //֤<><D6A4><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_INFO
{
public uint dwSize;//<2F><EFBFBD><E1B9B9>С
public uint dwRegisterID;//<2F><><EFBFBD><EFBFBD>ע<EFBFBD><D7A2>ID<49>ţ<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>
public uint dwGroupNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE>0-ȫ<><C8AB><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>
public byte byLevel;//<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0-ȫ<><C8AB><EFBFBD><EFBFBD>1-<2D>ͣ<EFBFBD>2-<2D>У<EFBFBD>3-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public NET_VCA_HUMAN_ATTRIBUTE struAttribute;//<2F><>Ա<EFBFBD><D4B1>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRemark;//<2F><>ע<EFBFBD><D7A2>Ϣ
public uint dwFDDescriptionLen;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public IntPtr pFDDescriptionBuffer;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
public uint dwFCAdditionInfoLen;//ץ<>Ŀ⸽<C4BF><E2B8BD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
public IntPtr pFCAdditionInfoBuffer;//ץ<>Ŀ⸽<C4BF><E2B8BD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ָ<EFBFBD>루FCAdditionInfo<66>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PTZ<54><5A><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_PARA
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public NET_VCA_BLOCKLIST_INFO struBlockListInfo; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwRegisterPicNum; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HUMAN_PICTURE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_PICMODEL_RESULT[] struRegisterPic; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_COND
{
public Int32 lChannel; //ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwGroupNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE>0-ȫ<><C8AB><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>
public byte byLevel; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0-ȫ<><C8AB><EFBFBD><EFBFBD>1-<2D>ͣ<EFBFBD>2-<2D>У<EFBFBD>3-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public NET_VCA_HUMAN_ATTRIBUTE struAttribute; //<2F><>Ա<EFBFBD><D4B1>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_PIC
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public uint dwFacePicNum; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_HUMAN_PICTURE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_PICMODEL_RESULT[] struBlockListPic; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC>Ϣ
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FIND_PICTURECOND
{
public Int32 lChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
public const int MAX_FACE_PIC_LEN = 6144; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SUB_SNAPPIC_DATA
{
public uint dwFacePicID; //<2F><><EFBFBD><EFBFBD>ͼID
public uint dwFacePicLen; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public NET_DVR_TIME struSnapTime; //ץ<><D7A5>ʱ<EFBFBD><CAB1>
public uint dwSimilarity; //<2F><><EFBFBD>ƶ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_FACE_PIC_LEN)]
public string sPicBuf; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_ADVANCE_FIND
{
public uint dwFacePicID; //<2F><><EFBFBD><EFBFBD>ͼƬID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 36, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_NORMAL_FIND
{
public uint dwImageID; //<2F><>ͼID
public uint dwFaceScore; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_RECT struVcaRect; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_VCA_FIND_SNAPPIC_UNION
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>СΪ44<34>ֽ<EFBFBD>
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
/*[FieldOffsetAttribute(0)]
public NET_VCA_NORMAL_FIND struNormalFind; //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
[FieldOffsetAttribute(0)]
public NET_VCA_ADVANCE_FIND struAdvanceFind; //<2F>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
* */
}
public enum VCA_FIND_SNAPPIC_TYPE
{
VCA_NORMAL_FIND = 0x00000000, //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
VCA_ADVANCE_FIND = 0x00000001 //<2F>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FIND_PICTURECOND_ADVANCE
{
public Int32 lChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime;//<2F><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struStopTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public byte byThreshold; //<2F><>ֵ<EFBFBD><D6B5>0-100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public VCA_FIND_SNAPPIC_TYPE dwFindType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>VCA_FIND_SNAPPIC_TYPE
public NET_VCA_FIND_SNAPPIC_UNION uFindParam; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAP_INFO_ALARM
{
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwSnapFacePicID; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼID
public uint dwSnapFacePicLen; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ij<EFBFBD><C4B3>ȣ<EFBFBD>Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>ͼƬ
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public byte byFaceScore; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-100
public byte bySex;//<2F>Ա<EFBFBD><D4B1><EFBFBD>0-δ֪<CEB4><D6AA>1-<2D>У<EFBFBD>2-Ů
public byte byGlasses;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>۾<EFBFBD><DBBE><EFBFBD>0-δ֪<CEB4><D6AA>1-<2D>ǣ<EFBFBD>2-<2D><>
public byte byRes1;
public byte byDeviation;//<2F><><EFBFBD><EFBFBD>ֵ
public byte byGroup;
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼͼƬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD>0-<EFBFBD>͵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-<EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-<EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȿ<EFBFBD>Ӱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><EFBFBD><EFBFBD>*/
public byte byFacePicQuality;
public byte byEthnic; //<2F>ֶ<EFBFBD>Ԥ<EFBFBD><D4A4>,<2C>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD>
public uint dwUIDLen; // <20>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
public IntPtr pUIDBuffer; //<2F><>ʶָ<CAB6><D6B8>
public float fStayDuration; //ͣ<><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ: <20><>)
public IntPtr pBuffer1; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
}
//<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_INFO_ALARM
{
public NET_VCA_BLOCKLIST_INFO struBlockListInfo;
public uint dwBlockListPicLen; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ij<EFBFBD><C4B3>ȣ<EFBFBD>Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE>ͼƬ
public uint dwFDIDLen;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD>
public IntPtr pFDID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Idָ<64><D6B8>
public uint dwPIDLen;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬID<49><44><EFBFBD><EFBFBD>
public IntPtr pPID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬIDָ<44><D6B8>
public ushort wThresholdValue; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ[0,100]
public byte byIsNoSaveFDPicture;//0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>߽<EFBFBD>ģʱ<C4A3><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭͼ<D4AD><CDBC><EFBFBD><EFBFBD>ʱ,<2C><><EFBFBD>ֶη<D6B6><CEB7><EFBFBD>1,<2C><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>ٷ<EFBFBD><D9B7><EFBFBD>
public byte byRealTimeContrast;//<2F>Ƿ<EFBFBD>ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD> 0-ʵʱ 1-<2D><>ʵʱ
public IntPtr pBuffer1;//ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
}
//<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ȶԽ<C8B6><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAP_MATCH_ALARM
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public float fSimilarity; //<2F><><EFBFBD>ƶȣ<C6B6>[0.001,1]
public NET_VCA_FACESNAP_INFO_ALARM struSnapInfo; //ץ<><D7A5><EFBFBD><EFBFBD>Ϣ
public NET_VCA_BLOCKLIST_INFO_ALARM struBlockListInfo; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sStorageIP; //<2F><EFBFBD><E6B4A2><EFBFBD><EFBFBD>IP<49><50>ַ
public ushort wStoragePort; //<2F><EFBFBD><E6B4A2><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>
public byte byMatchPicNum; //ƥ<><C6A5>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ֵĬ<D6B5><C4AC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ֵΪ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2>
public byte byPicTransType;//ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD><DDB4>ʽ: 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-url
public uint dwSnapPicLen;//<2F>豸ʶ<E8B1B8><CAB6>ץ<EFBFBD><D7A5>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pSnapPicBuffer;//<2F>豸ʶ<E8B1B8><CAB6>ץ<EFBFBD><D7A5>ͼƬָ<C6AC><D6B8>
public NET_VCA_RECT struRegion;//Ŀ<><C4BF><EFBFBD>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ʶ<E8B1B8><CAB6>ץ<EFBFBD><D7A5>ͼƬ<CDBC>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
public uint dwModelDataLen;//<2F><>ģ<EFBFBD><C4A3><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public IntPtr pModelDataBuffer;// <20><>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
public byte byModelingStatus;// <20><>ģ״̬
public byte byLivenessDetectionStatus;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-δ<><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte cTimeDifferenceH; /*<2A><>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14<31><34> +<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>,0xff<66><66>Ч*/
public byte cTimeDifferenceM; /*<2A><>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30, 30, 45<34><35> +<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xff<66><66>Ч*/
public byte byMask; //ץ<><D7A5>ͼ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySmile; //ץ<><D7A5>ͼ<EFBFBD>Ƿ<EFBFBD>΢Ц<CEA2><D0A6>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA>2-<2D><>΢Ц<CEA2><D0A6>3-΢Ц
public byte byContrastStatus; //<2F>ȶԽ<C8B6><D4BD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D>ȶԳɹ<D4B3><C9B9><EFBFBD>2-<2D>ȶ<EFBFBD>ʧ<EFBFBD><CAA7>
public byte byBrokenNetHttp; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־λ<D6BE><CEBB>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD>ݣ<EFBFBD>1-<2D>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_INFO_ALARM_LOG
{
public NET_VCA_BLOCKLIST_INFO struBlockListInfo; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public uint dwBlockListPicID; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼID<49><44><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>ͼƬ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAP_INFO_ALARM_LOG
{
public uint dwRelativeTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwSnapFacePicID; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼID
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACESNAP_MATCH_ALARM_LOG
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public float fSimilarity; //<2F><><EFBFBD>ƶȣ<C6B6>[0.001,1]
public NET_VCA_FACESNAP_INFO_ALARM_LOG struSnapInfoLog; //ץ<><D7A5><EFBFBD><EFBFBD>Ϣ
public NET_VCA_BLOCKLIST_INFO_ALARM_LOG struBlockListInfoLog; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACEMATCH_PICCOND
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public uint dwSnapFaceID; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼID
public uint dwBlockListID; //ƥ<><C6A5><EFBFBD>Ľ<EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>ID
public uint dwBlockListFaceID; //<2F>ȶԵĽ<D4B5>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; // <20><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_FACEMATCH_PICTURE
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
public uint dwSnapFaceLen; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
public uint dwBlockListFaceLen; //<2F>ȶԵĽ<D4B5>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public IntPtr pSnapFace; //ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pBlockListFace; //<2F>ȶԵĽ<D4B5>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_BLOCKLIST_FASTREGISTER_PARA
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public NET_VCA_BLOCKLIST_INFO struBlockListInfo; //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwImageLen; //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public IntPtr pImage; //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SINGLE_PATH
{
public byte byActive; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>,1-<2D><>
public byte byType; //0-<2D>洢ץ<E6B4A2>ģ<EFBFBD>1-<2D><EFBFBD><E6B4A2>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ȶԱ<C8B6><D4B1><EFBFBD><EFBFBD><EFBFBD>2-<2D>洢ץ<E6B4A2>ĺͽ<C4BA>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ȶԱ<C8B6><D4B1><EFBFBD><EFBFBD><EFBFBD>0xff-<2D><>Ч
public byte bySaveAlarmPic; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ͼƬ<CDBC><C6AC>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>
public uint dwDiskDriver; //<2F>̷<EFBFBD><CCB7>ţ<EFBFBD><C5A3><EFBFBD>0<EFBFBD><30>ʼ
public uint dwLeftSpace; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λΪG<CEAA><47>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F>洢·<E6B4A2><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_SAVE_PATH_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISKNUM_V30, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_SINGLE_PATH[] struPathInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEV_ACCESS_CFG
{
public uint dwSize;
public NET_DVR_IPADDR struIP; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>IP<49><50>ַ
public ushort wDevicePort; //<2F>˿ں<CBBF>
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byRes1; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>¼<EFBFBD>ʺ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/********************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6> end****************************/
//<2F>ֱ<EFBFBD><D6B1><EFBFBD>
public const int NOT_AVALIABLE = 0;
public const int SVGA_60HZ = 52505660;
public const int SVGA_75HZ = 52505675;
public const int XGA_60HZ = 67207228;
public const int XGA_75HZ = 67207243;
public const int SXGA_60HZ = 84017212;
public const int SXGA2_60HZ = 84009020;
public const int _720P_60HZ = 83978300;
public const int _720P_50HZ = 83978290;
public const int _1080I_60HZ = 394402876;
public const int _1080I_50HZ = 394402866;
public const int _1080P_60HZ = 125967420;
public const int _1080P_50HZ = 125967410;
public const int _1080P_30HZ = 125967390;
public const int _1080P_25HZ = 125967385;
public const int _1080P_24HZ = 125967384;
public const int UXGA_60HZ = 105011260;
public const int UXGA_30HZ = 105011230;
public const int WSXGA_60HZ = 110234940;
public const int WUXGA_60HZ = 125982780;
public const int WUXGA_30HZ = 125982750;
public const int WXGA_60HZ = 89227324;
public const int SXGA_PLUS_60HZ = 91884860;
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>ģʽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPWINDOWMODE
{
public byte byDispChanType;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-VGA, 1-BNC, 2-HDMI, 3-DVI
public byte byDispChanSeq;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>1<EFBFBD><31>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>VGA<47><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>VGA
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byDispMode;
}
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPINFO
{
public byte byChanNums;//ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartChan;//<2F><>ʼͨ<CABC><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SUPPORT_RES, ArraySubType = UnmanagedType.U1)]
public uint[] dwSupportResolution;//֧<>ֵķֱ<C4B7><D6B1><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREENINFO
{
public byte bySupportBigScreenNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byStartBigScreenNum;//<2F><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
public byte byMaxScreenX;//<2F><><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>ģʽ
public byte byMaxScreenY;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_ABILITY_V41
{
public uint dwSize;
public byte byDspNums;//DSP<53><50><EFBFBD><EFBFBD>
public byte byDecChanNums;//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public byte byStartChan;//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_DISPINFO struVgaInfo;//VGA<47><41>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>Ϣ
public NET_DVR_DISPINFO struBncInfo;//BNC<4E><43>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>Ϣ
public NET_DVR_DISPINFO struHdmiInfo;//HDMI<4D><49>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>Ϣ
public NET_DVR_DISPINFO struDviInfo;//DVI<56><49>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISPNUM_V41, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISPWINDOWMODE[] struDispMode;
public NET_DVR_SCREENINFO struBigScreenInfo;
public byte bySupportAutoReboot; //<2F>Ƿ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 119, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int MAX_WINDOWS = 16;//<2F><><EFBFBD>󴰿<EFBFBD><F3B4B0BF><EFBFBD>
public const int MAX_WINDOWS_V41 = 36;
public const int STARTDISPCHAN_VGA = 1;
public const int STARTDISPCHAN_BNC = 9;
public const int STARTDISPCHAN_HDMI = 25;
public const int STARTDISPCHAN_DVI = 29;
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_VIDEO_PLATFORM
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 160, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
/*[FieldOffsetAttribute(0)]
public VideoPlatform struVideoPlatform;
[FieldOffsetAttribute(0)]
public NotVideoPlatform struNotVideoPlatform;
* */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct VideoPlatform
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecoderId;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byDecResolution;
public NET_DVR_RECTCFG struPosition; //<2F><>ʾͨ<CABE><CDA8><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>ǽ<EFBFBD><C7BD>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 80, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NotVideoPlatform
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 160, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*<2A><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_VOUTCFG
{
public uint dwSize;
public byte byAudio; /*<2A><>Ƶ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>*/
public byte byAudioWindowIdx; /*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>*/
public byte byDispChanType; /*<2A><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-BNC<4E><43>1-VGA<47><41>2-HDMI<4D><49>3-DVI<56><49>4-YPbPr(<28><><EFBFBD><EFBFBD><EBBFA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DECODER_SERVERר<52><D7A8>)*/
public byte byVedioFormat; /*1:NTSC,2:PAL<41><4C>0-NULL*/
public uint dwResolution;//<2F>ֱ<EFBFBD><D6B1><EFBFBD>
public uint dwWindowMode; /*<2A><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecChan;/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ͨ<EFBFBD><CDA8>,<2C>豸֧<E8B1B8>ֽ<EFBFBD><D6BD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byEnlargeStatus; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڷŴ<DAB7>״̬<D7B4><CCAC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>1<EFBFBD><31><EFBFBD>Ŵ<EFBFBD>*/
public byte byEnlargeSubWindowIndex;//<2F>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ں<EFBFBD>
public byte byScale; /*<2A><>ʾģʽ<C4A3><CABD>0---<2D><>ʵ<EFBFBD><CAB5>ʾ<EFBFBD><CABE>1---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ( <20><><EFBFBD><EFBFBD>BNC )*/
public byte byUnionType;/*<2A><><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_VIDEO_PLATFORM struDiff;
public uint dwDispChanNum; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>ȡʱ<C8A1><CAB1>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 76, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸״̬*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISP_CHAN_STATUS_V41
{
public byte byDispStatus; /*<2A><>ʾ״̬<D7B4><CCAC>0<EFBFBD><30>δ<EFBFBD><CEB4>ʾ<EFBFBD><CABE>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ*/
public byte byBVGA; /*0-BNC<4E><43>1-VGA<47><41> 2-HDMI<4D><49>3-DVI<56><49>0xff-<2D><>Ч*/
public byte byVideoFormat; /*<2A><>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>1:NTSC,2:PAL,0-NON*/
public byte byWindowMode; /*<2A><><EFBFBD><EFBFBD>ģʽ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecChan; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byFpsDisp; /*ÿ<><C3BF><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ֡<CABE><D6A1>*/
public byte byScreenMode; /*<2A><>Ļģʽ0-<2D><>ͨ 1-<2D><><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwDispChan; /*<2A><>ȡȫ<C8A1><C8AB><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8>״̬ʱ<CCAC><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>0*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸״̬*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DECODER_WORK_STATUS_V41
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MATRIX_CHAN_STATUS[] struDecChanStatus; /*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>״̬*/
/*<2A><>ʾͨ<CABE><CDA8>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DISPNUM_V41, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_DISP_CHAN_STATUS_V41[] struDispChanStatus;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmInStatus; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byAlarmOutStatus; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬*/
public byte byAudioInChanStatus; /*<2A><><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>״̬*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 127, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*******************************<2A>ļ<EFBFBD><C4BC>ط<EFBFBD><>̻ط<CCBB><D8B7><EFBFBD><EFBFBD><EFBFBD>*******************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_DEC_REMOTE_PLAY_V41
{
public uint dwSize;
public NET_DVR_IPADDR struIP; /* DVR IP<49><50>ַ */
public ushort wDVRPort; /* <20>˿ں<CBBF> */
public byte byChannel; /* ͨ<><CDA8><EFBFBD><EFBFBD> */
public byte byReserve;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /* <20>û<EFBFBD><C3BB><EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /* <20><><EFBFBD><EFBFBD> */
public uint dwPlayMode; /* 0<><30><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> 1<><31><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
public NET_DVR_TIME StartTime;
public NET_DVR_TIME StopTime;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 128)]
public string sFileName;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /*<2A><><EFBFBD><EFBFBD>*/
}
public const int MAX_BIGSCREENNUM_SCENE = 100;
//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECTCFG_SCENE
{
public ushort wXCoordinate; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD><EFBFBD>ʼ<EFBFBD><CABC>X<EFBFBD><58><EFBFBD><EFBFBD>*/
public ushort wYCoordinate; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>*/
public ushort wWidth; /*<2A><><EFBFBD>ο<EFBFBD><CEBF><EFBFBD>*/
public ushort wHeight; /*<2A><><EFBFBD>θ߶<CEB8>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCENEDISPCFG
{
public byte byEnable;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte bySoltNum;//<2F><>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byDispChanNum;
public byte byAudio; /*<2A><>Ƶ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD>1-<2D><>*/
public byte byAudioWindowIdx; /*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>*/
public byte byVedioFormat; /*1:NTSC,2:PAL<41><4C>0-NULL*/
public byte byWindowMode; /*<2A><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ*/
public byte byEnlargeStatus; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڷŴ<DAB7>״̬<D7B4><CCAC>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>1<EFBFBD><31><EFBFBD>Ŵ<EFBFBD>*/
public byte byEnlargeSubWindowIndex;//<2F>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ں<EFBFBD>
public byte byScale; /*<2A><>ʾģʽ<C4A3><CABD>0-<2D><>ʵ<EFBFBD><CAB5>ʾ<EFBFBD><CABE>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ( <20><><EFBFBD><EFBFBD>BNC )*/
public uint dwResolution;//<2F>ֱ<EFBFBD><D6B1><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecChan;/*<2A><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ͨ<EFBFBD><CDA8>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byJoinDecoderId;/*<2A><>λ<EFBFBD><CEBB>*/
//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ֱ<EFBFBD><D6B1>ʣ<EFBFBD>1-D1,2-720P,3-1080P<30><50><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>ݴ<EFBFBD>//<2F>ֱ<EFBFBD><D6B1>ʽ<EFBFBD><CABD>н<EFBFBD><D0BD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><E4A3AC>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD>1080P<30><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>4<EFBFBD><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><CBBD><EFBFBD>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WINDOWS_V41, ArraySubType = UnmanagedType.I1)]
public byte[] byDecResolution;
public byte byRow;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
public byte byColumn;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public NET_DVR_RECTCFG struDisp; //<2F><><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD>ʾλ<CABE><CEBB>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEV_CHAN_INFO_SCENE
{
public NET_DVR_IPADDR struIP; /* DVR IP<49><50>ַ */
public ushort wDVRPort; /* <20>˿ں<CBBF> */
public byte byChannel; /* ͨ<><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD>9000<30><30><EFBFBD><EFBFBD><E8B1B8>IPC<50><43><EFBFBD>룬ͨ<EBA3AC><CDA8><EFBFBD>Ŵ<EFBFBD>33<33><33>ʼ */
public byte byTransProtocol; /* <20><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-TCP<43><50>1-UDP <20><>2-MCAST<53><54>3-RTP*/
public byte byTransMode; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 0<><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byFactoryType; /*ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byDeviceType; //<2F><EFBFBD><E8B1B8><EFBFBD>ͣ<EFBFBD>1-IPC<50><43>2- ENCODER
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>ʺ<EFBFBD> */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
}
/*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE
{
public byte byValid; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>,0<><30>ʾ<EFBFBD><CABE>Ч*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_IPADDR struDevIP; /*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ*/
public ushort wDevPort; /*<2A><>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>*/
public byte byTransmitType; /*<2A><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-TCP<43><50>1-UDP */
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PU_STREAM_CFG_SCENE
{
public NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE streamMediaServerCfg;
public NET_DVR_DEV_CHAN_INFO_SCENE struDevChanInfo;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CYC_SUR_CHAN_ELE_SCENE
{
public byte byEnable; /* <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE struStreamMediaSvrCfg;
public NET_DVR_DEV_CHAN_INFO_SCENE struDecChanInfo; /*<2A><>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ϣ*/
}
//<2F><>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_LOOP_DECINFO_SCENE
{
public ushort wPoolTime; /*<2A><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CYCLE_CHAN, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CYC_SUR_CHAN_ELE_SCENE[] struChanArray;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BIGSCREENCFG_SCENE
{
public byte byAllValid; /*<2A><><EFBFBD><EFBFBD>ʹ<EFBFBD>ܱ<EFBFBD>־ */
public byte byAssociateBaseMap;//<2F><><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ţ<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEnableSpartan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>0-<2D><>
public byte byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LAYERNUMS, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_WINCFG[] struWinCfg;
public NET_DVR_BIGSCREENCFG struBigScreen;
public void Init()
{
struBigScreen = new NET_DVR_BIGSCREENCFG();
struWinCfg = new NET_DVR_WINCFG[MAX_LAYERNUMS];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_SCENECFG
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSceneName;
public byte byBigScreenNums;//<2F><><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵͨ<D6B5><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public ushort wDecChanNums;//<2F><><EFBFBD><EFBFBD><EFBFBD>н<EFBFBD><D0BD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>
public ushort wDispChanNums;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾͨ<CABE><CDA8><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public IntPtr pBigScreenBuffer;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>, byBigScreenNums<6D><73>sizeof(NET_DVR_BIGSCREENCFG_SCENE)
public IntPtr pDecChanBuffer;//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>, wDecChanNums<6D><73>sizeof(NET_DVR_DECODECHANCFG_SCENE)
public IntPtr pDispChanBuffer;//<2F><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>, wDispChanNums<6D><73>sizeof(NET_DVR_SCENEDISPCFG)
public void Init()
{
sSceneName = new byte[NAME_LEN];
byRes1 = new byte[3];
byRes1 = new byte[12];
}
}
public const int NET_DVR_GET_ALLWINCFG = 1503; //<2F><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>ȡ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BIGSCREENASSOCIATECFG
{
public uint dwSize;
public byte byEnableBaseMap;//ʹ<>ܵ<EFBFBD>ͼ<EFBFBD><CDBC>ʾ
public byte byAssociateBaseMap;//<2F><><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ţ<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byEnableSpartan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>0-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 21, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*******************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*******************************/
public const int MAX_WIN_COUNT = 224; //֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>󿪴<EFBFBD><F3BFAAB4><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREEN_WINCFG{
public uint dwSize;
public byte byVaild;
public byte byInputType; //<2F><>CAM_MDOE
public ushort wInputIdx; /*<2A><><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>*/
public uint dwLayerIdx; /*ͼ<>㣬0Ϊ<30><CEAA><EFBFBD>ײ<EFBFBD>*/
public NET_DVR_RECTCFG struWin; //Ŀ<>Ĵ<EFBFBD><C4B4><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾǽ)
public byte byWndIndex; //<2F><><EFBFBD>ں<EFBFBD>
public byte byCBD; //0-<2D>ޣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySubWnd; //0<><30><EFBFBD>ǣ<EFBFBD>1<EFBFBD><31>
public byte byRes1;
public uint dwDeviceIndex;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_WINLIST
{
public uint dwSize;
public ushort wScreenSeq; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 10, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwWinNum; //<2F><EFBFBD><E8B1B8><EFBFBD>صĴ<D8B5><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBuffer; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ224*sizeof(NET_DVR_WINCFG)
public uint dwBufLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EBB3A4>
}
public const int MAX_LAYOUT_COUNT = 16; //<2F><><EFBFBD>󲼾<EFBFBD><F3B2BCBE><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LAYOUTCFG
{
public uint dwSize;
public byte byValid; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLayoutName; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_WIN_COUNT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCREEN_WINCFG[] struWinCfg; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4>ڲ<EFBFBD><DAB2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LAYOUT_LIST
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LAYOUT_COUNT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_LAYOUTCFG[] struLayoutInfo; //<2F><><EFBFBD>в<EFBFBD><D0B2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int MAX_CAM_COUNT = 224;
public enum NET_DVR_CAM_MODE
{
NET_DVR_UNKNOW = 0,//<2F><>Ч
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,
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INPUTSTREAMCFG
{
public uint dwSize ;
public byte byValid ;
public byte byCamMode; //<2F>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>NET_DVR_CAM_MODE
public ushort wInputNo; //<2F>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>0-224
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sCamName; //<2F>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public NET_DVR_VIDEOEFFECT struVideoEffect; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>
public NET_DVR_PU_STREAM_CFG struPuStream; //ip<69><70><EFBFBD><EFBFBD>ʱʹ<CAB1><CAB9>
public ushort wBoardNum ; //<2F>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>ڵİ忨<C4B0><E5BFA8>
public ushort wInputIdxOnBoard; //<2F>ź<EFBFBD>Դ<EFBFBD>ڰ忨<DAB0>ϵ<EFBFBD>λ<EFBFBD><CEBB>
public ushort wResolutionX; //<2F>ֱ<EFBFBD><D6B1><EFBFBD>
public ushort wResolutionY;
public byte byVideoFormat; //<2F><>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>0-<2D>ޣ<EFBFBD>1-NTSC<53><43>2-PAL
public byte byNetSignalResolution; //; 1-CIF 2-4CIF 3-720P 4-1080P 5-500wp <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ<EFBFBD>ķֱ<C4B7><D6B1>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դʱ<D4B4><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sGroupName; //<2F><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
public byte byJointMatrix; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD>
public byte byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INPUTSTREAM_LIST
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CAM_COUNT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_INPUTSTREAMCFG[] struInputStreamInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*******************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*******************************/
/*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OUTPUTPARAM
{
public uint dwSize;
public byte byMonMode; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ,1-BNC,2-VGA,3-DVI,4-HDMI*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwResolution; /*<2A>ֱ<EFBFBD><D6B1>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>֧<EFBFBD>ֵĽ<D6B5><C4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public NET_DVR_VIDEOEFFECT struVideoEffect; /*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OUTPUTCFG
{
public uint dwSize;
public byte byScreenLayX; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byScreenLayY; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wOutputChanNum; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾʵ<CABE><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_OUTPUTPARAM struOutputParam; /*<2A><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sWallName; //<2F><><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*******************************/
public const int SCREEN_PROTOCOL_NUM = 20; //֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREENSERVER_ABILITY
{
public uint dwSize; /*<2A><EFBFBD><E1B9B9><EFBFBD><EFBFBD>*/
public byte byIsSupportScreenNum; /*<2A><>֧<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ*/
public byte bySerialNums; //<2F><><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
public byte byMaxInputNums;
public byte byMaxLayoutNums;
public byte byMaxWinNums;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 19, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byMaxScreenLayX;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byMaxScreenLayY;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMatrixProtoNum; /*<2A><>Ч<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>Ŀ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SCREEN_PROTOCOL_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PROTO_TYPE[] struScreenProto;/*<2A><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD>б<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREENCONTROL_ABILITY
{
public uint dwSize; /*<2A><EFBFBD><E1B9B9><EFBFBD><EFBFBD>*/
public byte byLayoutNum; /* <20><><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>*/
public byte byWinNum; /*<2A><>Ļ<EFBFBD><C4BB><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>*/
public byte byOsdNum; /*OSD<53><44><EFBFBD><EFBFBD>*/
public byte byLogoNum; /*Logo<67><6F><EFBFBD><EFBFBD>*/
public byte byInputStreamNum; //<2F><><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD> ---<2D>豸֧<E8B1B8><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
public byte byOutputChanNum; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>---<2D>豸֧<E8B1B8><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCamGroupNum; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public byte byPlanNum; /*Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byIsSupportPlayBack; /*<2A>Ƿ<EFBFBD>֧<EFBFBD>ֻط<D6BB>*/
public byte byMatrixInputNum; //֧<><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byMatrixOutputNum; //֧<><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_DISPINFO struVgaInfo;//VGA<47><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_DVR_DISPINFO struBncInfo;//BNC<4E><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_DVR_DISPINFO struHdmiInfo;//HDMI<4D><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public NET_DVR_DISPINFO struDviInfo;//DVI<56><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public byte byMaxUserNums;//֧<><D6A7><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public byte byPicSpan; //<2F><>ͼ<EFBFBD><CDBC><EFBFBD>ȣ<EFBFBD>һ<EFBFBD>ŵ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ɸ<EFBFBD><C9B8>ǵ<EFBFBD><C7B5><EFBFBD>Ļ<EFBFBD><C4BB>
public ushort wDVCSDevNum; //<2F>ֲ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>
public ushort wNetSignalNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public ushort wBaseCoordinateX;//<2F><>׼<EFBFBD><D7BC><EFBFBD><EFBFBD>
public ushort wBaseCoordinateY;
public byte byExternalMatrixNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӿ<EFBFBD><D3BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 49, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************<2A><><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>״̬*******************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ANALOGINPUTSTATUS
{
public uint dwLostFrame; /*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD>붪֡<EBB6AA><D6A1>*/
public byte byHaveSignal; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD>*/
public byte byVideoFormat; /*<2A><>Ƶ<EFBFBD><C6B5>ʽ<EFBFBD><CABD>1<EFBFBD><31>NTSC,2<><32>PAL,0<><30><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 46, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_INPUTSTATUS_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 52, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
/*[FieldOffsetAttribute(0)]
public NET_DVR_MATRIX_CHAN_STATUS struIpInputStatus;
[FieldOffsetAttribute(0)]
public NET_DVR_ANALOGINPUTSTATUS struAnalogInputStatus;
* */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INPUTSTATUS
{
public ushort wInputNo; /*<2A>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>*/
public byte byInputType; //<2F><>NET_DVR_CAM_MODE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_INPUTSTATUS_UNION struStatusUnion;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREENINPUTSTATUS
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public uint dwNums; //<2F><EFBFBD><E8B1B8><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>Դ״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pBuffer; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwBufLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREENALARMCFG
{
public uint dwSize;
public byte byAlarmType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D>Ӱ<EFBFBD><D3B0>γ<EFBFBD><CEB3><EFBFBD>2-<2D>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD>룬3-<2D><>ϵͳ״̬<D7B4><EFBFBD><ECB3A3>4-<2D><>ϵͳ<CFB5>ָ<EFBFBD><D6B8>ָ<EFBFBD> 5-<2D><><EFBFBD><EFBFBD>Դ<EFBFBD>쳣 6-<2D>¶ȱ<C2B6><C8B1><EFBFBD> 7-FPGA<47><EFBFBD><E6B1BE>ƥ<EFBFBD><C6A5> 8-Ԥ<><D4A4><EFBFBD><EFBFBD>ʼ 9-Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 11-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7>ͻ<EFBFBD><CDBB>12-<2D><><EFBFBD><EFBFBD><EFBFBD>
public byte byBoardType; // 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>3-<2D><><EFBFBD>壬4-<2D><><EFBFBD><EFBFBD><E5A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<CEAA><31>2<EFBFBD><32>3<EFBFBD><33>6<EFBFBD><36>ʱ<EFBFBD><CAB1>ʹ<EFBFBD><CAB9>
public byte bySubException; //<2F><><EFBFBD><EFBFBD><EFBFBD>쳣ʱ<ECB3A3><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣 1- <20>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD> 2-<2D><><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD>͸ı<CDB8>3-<2D>ֱ<EFBFBD><D6B1>ʴ<EFBFBD><CAB4><EFBFBD>4-<2D>ֱ<EFBFBD><D6B1>ʸı<C4B1>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>رո<D8B1><D5B8><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>Ӧ<EFBFBD><D3A6><EFBFBD>ڡ<EFBFBD>5-<2D>ֱ<EFBFBD><D6B1>ʸı<C4B1><E4A3AC><EFBFBD><EFBFBD><EFBFBD>ѿ<EFBFBD><D1BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><C5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1/8<><38>8<EFBFBD><38><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7>6-<2D>ֱ<EFBFBD><D6B1>ʻָ<CABB><D6B8><EFBFBD><EFBFBD><EFBFBD>,7-<2D>ֱ<EFBFBD><D6B1>ʸı<C4B1><E4B5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><EFBFBD>رմ<D8B1><D5B4><EFBFBD>
public byte byRes1;
public ushort wStartInputNum; // <20><EFBFBD><ECB3A3><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><ECB3A3><EFBFBD>
public ushort wEndInputNum; // <20><EFBFBD><ECB3A3><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>յ㣩
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MATRIX_CFG
{
public byte byValid; //<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>
public byte byCommandProtocol; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>4<EEA3A8>֣<EFBFBD>
public byte byScreenType; //<2F><><EFBFBD><EFBFBD>
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byScreenToMatrix; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>Ķ<EFBFBD>Ӧ<EFBFBD><D3A6>ϵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DIGITALSCREEN
{
public NET_DVR_IPADDR struAddress;/*<2A>豸Ϊ<E8B1B8><CEAA><EFBFBD><EFBFBD><EFBFBD>豸ʱ<E8B1B8><CAB1>IP<49><50>Ϣ*/
public ushort wPort; //ͨ<><CDA8><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 26, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ANALOGSCREEN
{
public byte byDevSerPortNum; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4>ں<EFBFBD>*/
public byte byScreenSerPort; /*<2A><><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4>ں<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 130, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_MATRIX_CFG struMatrixCfg;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_SCREEN_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 172, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
/*[FieldOffsetAttribute(0)]
public NET_DVR_DIGITALSCREEN struDigitalScreen;
[FieldOffsetAttribute(0)]
public NET_DVR_ANALOGSCREEN struAnalogScreen;
* */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREEN_SCREENINFO
{
public uint dwSize;
public byte byValid; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
public byte nLinkMode; //<2F><><EFBFBD>ӷ<EFBFBD>ʽ<EFBFBD><CABD>0-<2D><><EFBFBD>ڣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byDeviceType; //<2F><EFBFBD>ͺţ<CDBA><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public byte byScreenLayX; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byScreenLayY; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; /*<2A><>¼<EFBFBD>û<EFBFBD><C3BB><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PASSWD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPassword; /*<2A><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDevName; /*<2A><EFBFBD><E8B1B8><EFBFBD><EFBFBD>*/
public NET_DVR_SCREEN_UNION struScreenUnion;
public byte byInputNum; // <20><><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public byte byOutputNum; // <20><><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public byte byCBDNum; //CBD<42><44><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 29, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************<2A><>ͼ<EFBFBD>ϴ<EFBFBD>*******************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_BASEMAP_CFG
{
public byte byScreenIndex; //<2F><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byMapNum; /*<2A><><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>˶<EFBFBD><CBB6>ٿ<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] res;
public ushort wSourWidth; /* ԭͼƬ<CDBC>Ŀ<EFBFBD><C4BF><EFBFBD> */
public ushort wSourHeight; /* ԭͼƬ<CDBC>ĸ߶<C4B8> */
}
/*******************************OSD*******************************/
public const int MAX_OSDCHAR_NUM = 256;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_OSDCFG
{
public uint dwSize;
public byte byValid; /*<2A>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0<><30>Ч 1<><31>Ч*/
public byte byDispMode; //<2F><>ʾģʽ<C4A3><CABD>1-͸<><CDB8><EFBFBD><EFBFBD>2-<2D><>͸<EFBFBD><CDB8><EFBFBD><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
public byte byFontColorY; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫY,0-255*/
public byte byFontColorU; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫU,0-255*/
public byte byFontColorV; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫV,0-255*/
public byte byBackColorY; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫY,0-255*/
public byte byBackColorU; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫU,0-255*/
public byte byBackColorV; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫV,0-255*/
public ushort wXCoordinate; /*OSD<53><44><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>Ͻ<EFBFBD>λ<EFBFBD><CEBB>x*/
public ushort wYCoordinate; /*OSD<53><44><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>Ͻ<EFBFBD>λ<EFBFBD><CEBB>y*/
public ushort wWidth; /*OSD<53><44><EFBFBD><EFBFBD>*/
public ushort wHeight; /*OSD<53>߶<EFBFBD>*/
public uint dwCharCnt; /*<2A>ַ<EFBFBD><D6B7>ĸ<EFBFBD><C4B8><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_OSDCHAR_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wOSDChar; /*OSD<53>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*******************************<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*******************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SERIAL_CONTROL
{
public uint dwSize ;
public byte bySerialNum; // <20><><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] bySerial;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************<2A><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>*******************************/
//<2F><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public enum INPUT_INTERFACE_TYPE
{
INTERFACE_VGA = 0,
INTERFACE_SVIDEO, // 2046NL<4E><4C>֧<EFBFBD>֣<EFBFBD>2046NH֧<48><D6A7>
INTERFACE_YPBPR,
INTERFACE_DVI ,
INTERFACE_BNC ,
INTERFACE_DVI_LOOP,//(<28><>ͨ) 2046NH<4E><48>֧<EFBFBD>֣<EFBFBD>2046NL֧<4C><D6A7>
INTERFACE_BNC_LOOP, //(<28><>ͨ) 2046NH<4E><48>֧<EFBFBD>֣<EFBFBD>2046NL.֧<><D6A7>
INTERFACE_HDMI,
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INPUT_INTERFACE_CTRL
{
public byte byInputSourceType; //<2F><>INPUT_INTERFACE_TYPE
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ʾ<EFBFBD><CABE>Ԫ<EFBFBD><D4AA>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPLAY_COLOR_CTRL
{
public byte byColorType; //1-<2D><><EFBFBD><EFBFBD> 2-<2D>Աȶ<D4B1> 3-<2D><><EFBFBD>Ͷ<EFBFBD> 4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public char byScale; //-1 <20><>0<EFBFBD><30>+1<><31><EFBFBD><EFBFBD>ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>ʾ<EFBFBD><CABE>Ԫλ<D4AA>ÿ<EFBFBD><C3BF><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DISPLAY_POSITION_CTRL
{
public byte byPositionType; //1-ˮƽλ<C6BD><CEBB> 2-<2D><>ֱλ<D6B1>ã<EFBFBD>
public char byScale; //-1 <20><>0<EFBFBD><30>+1<><31><EFBFBD><EFBFBD>ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 14, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_SCREEN_CONTROL_PARAM
{
/*[FieldOffsetAttribute(0)]
public NET_DVR_INPUT_INTERFACE_CTRL struInputCtrl;
[FieldOffsetAttribute(0)]
public NET_DVR_DISPLAY_COLOR_CTRL struDisplayCtrl;
[FieldOffsetAttribute(0)]
public NET_DVR_DISPLAY_POSITION_CTRL struPositionCtrl;
[FieldOffsetAttribute(0)]
* */
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREEN_CONTROL
{
public uint dwSize;
public uint dwCommand ; /* <20><><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD> 1-<2D><> 2-<2D><> 3-<2D><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>Դѡ<D4B4><D1A1> 4-<2D><>ʾ<EFBFBD><CABE>Ԫ<EFBFBD><D4AA>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD> 5-<2D><>ʾ<EFBFBD><CABE>Ԫλ<D4AA>ÿ<EFBFBD><C3BF><EFBFBD>*/
public byte byProtocol; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1:LCD-S1,2:LCD-S2
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_SCREEN_CONTROL_PARAM struControlParam;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 52, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************<2A><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>V41*******************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SCREEN_CONTROL_V41
{
public uint dwSize;
public byte bySerialNo; //<2F><><EFBFBD>ں<EFBFBD>
public byte byBeginAddress; //<2F><><EFBFBD>Ͻ<EFBFBD><CFBD><EFBFBD>Ļ<EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>1<EFBFBD><31>ʼ
public byte byEndAddress; //<2F><><EFBFBD>½<EFBFBD><C2BD><EFBFBD>Ļ<EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>1<EFBFBD><31>ʼ
public byte byProtocol; // <20><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-LCD-S1 , 2-LCD-S2 , 3-LCD-L1 <20><> 4-LCD-DLP<4C><50> 5-LCD-S3 , 6-LCD-H1
public uint dwCommand ; /* <20><><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD> 1-<2D><> 2-<2D><> 3-<2D><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>Դѡ<D4B4><D1A1> 4-<2D><>ʾ<EFBFBD><CABE>Ԫ<EFBFBD><D4AA>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD> 5-<2D><>ʾ<EFBFBD><CABE>Ԫλ<D4AA>ÿ<EFBFBD><C3BF><EFBFBD>*/
public NET_DVR_SCREEN_CONTROL_PARAM struControlParam;
public byte byWallNo; // <20><><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 51, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/*******************************Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*******************************/
public const int MAX_PLAN_ACTION_NUM = 32; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int DAYS_A_WEEK = 7; //һ<><D2BB>7<EFBFBD><37>
public const int MAX_PLAN_COUNT = 16; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public enum NET_DVR_PLAN_OPERATE_TYPE
{
NET_DVR_SWITCH_LAYOUT = 1, // <20><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD> Ĭ<><C4AC>
NET_DVR_SCREEN_POWER_OFF, // <20>رմ<D8B1><D5B4><EFBFBD>Ļ<EFBFBD><C4BB>ʾ
NET_DVR_SCREEN_POWER_ON, // <20>򿪴<EFBFBD><F2BFAAB4><EFBFBD>Ļ<EFBFBD><C4BB>ʾ
}
/*Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLAN_INFO
{
public byte byValid; // <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
public byte byType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_DVR_PLAN_OPERATE_TYPE
public ushort wLayoutNo; // <20><><EFBFBD>ֺ<EFBFBD>
public byte byScreenStyle; //<2F><>Ļ<EFBFBD>ͺţ<CDBA><C5A3><EFBFBD><EFBFBD>ػ<EFBFBD><D8BB><EFBFBD><EFBFBD>ã<EFBFBD>1<EFBFBD>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwDelayTime; // һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>, <20><>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CYCLE_TIME
{
public byte byValid;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_TIME_EX struTime;
}
/*Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLAN_CFG
{
public uint dwSize;
public byte byValid; // <20><>Ԥ<EFBFBD><D4A4><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
public byte byWorkMode; // Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ 1<><31>ʾ<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>2<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><33><D4A4>ѭ<EFBFBD><D1AD>
public byte byWallNo; //<2F><><EFBFBD><EFBFBD>ǽ<EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>1<EFBFBD><31>ʼ
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPlanName; //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME_EX struTime; // <20><><EFBFBD><EFBFBD>ģʽΪ<CABD>Զ<EFBFBD>ʱʹ<CAB1><CAB9>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = DAYS_A_WEEK, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CYCLE_TIME[] struTimeCycle; /*ѭ<><D1AD>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD>Ϊһ<CEAA><D2BB><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>¡<EFBFBD><C2A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>á<EFBFBD><C3A1>磺struTimeCycle[0]<5D>е<EFBFBD>byValid<69><64>ֵ<EFBFBD><D6B5>1<EFBFBD><31><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡֵ<C8A1><D6B5><EFBFBD><EFBFBD>Ϊ[0,6]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>죬1<ECA3AC><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwWorkCount; // Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>һֱѭ<D6B1><D1AD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PLAN_ACTION_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_PLAN_INFO[] strPlanEntry; // Ԥ<><D4A4>ִ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************<2A><>ȡ<EFBFBD>豸״̬*******************************/
/*Ԥ<><D4A4><EFBFBD>б<EFBFBD>*/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLAN_LIST
{
public uint dwSize;
public uint dwPlanNums; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public IntPtr pBuffer; //ָ<><D6B8>dwInputSignalNums<6D><73>NET_DVR_PLAN_CFG<46><EFBFBD><E1B9B9>С<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD>
public byte byWallNo; //ǽ<>ţ<EFBFBD><C5A3><EFBFBD>1<EFBFBD><31>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwBufLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>dwInputSignalNums<6D><73>NET_DVR_PLAN_CFG<46><EFBFBD><E1B9B9>С<EFBFBD><D0A1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
/*******************************Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*******************************/
//<2F>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊͨ<CEAA>ÿ<EFBFBD><C3BF>ƽ<C6BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CONTROL_PARAM
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sDeviceID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>豸ID
public ushort wChan; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byIndex; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾʲô<CAB2><C3B4><EFBFBD><EFBFBD>
public byte byRes1;
public uint dwControlParam;
public byte byMandatoryAlarm; //1-ʹ<><CAB9> 0-<2D><>ʹ<EFBFBD><CAB9>
public byte byRes2;
public ushort wZoneIndex; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byOperatorCode;//<2F>ؿ<EFBFBD><D8BF><EFBFBD>
public uint dwPlanNo; //4<>ֽ<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD>ţ<EFBFBD><C5A3>ͻ<EFBFBD><CDBB><EFBFBD>ͳһʹ<D2BB><CAB9>4<EFBFBD>ֽڵ<D6BD>Ԥ<EFBFBD><D4A4><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>ֽڵ<D6BD>Ԥ<EFBFBD><D4A4><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>ʹ<EFBFBD><CAB9>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
}
/*******************************<2A><>ȡ<EFBFBD>豸״̬*******************************/
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DEVICE_RUN_STATUS
{
public uint dwSize;
public uint dwMemoryTotal; //<2F>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD> <09><>λKbyte
public uint dwMemoryUsage; //<2F>ڴ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD> <20><>λKbyte
public byte byCPUUsage; //CPUʹ<55><CAB9><EFBFBD><EFBFBD> 0-100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 127, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//91ϵ<31><CFB5>HD-SDI<44><49><EFBFBD><EFBFBD>DVR <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACCESS_CAMERA_INFO
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sCameraInfo; // ǰ<><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public byte byInterfaceType; // ǰ<>˽<EFBFBD><CBBD><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD>ͣ<EFBFBD>1:VGA, 2:HDMI, 3:YPbPr 4:SDI 5:FC
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwChannel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AUDIO_INPUT_PARAM
{
public byte byAudioInputType; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-mic in<69><6E>1-line in
public byte byVolume; //volume,[0-100]
public byte byEnableNoiseFilter; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D>أ<EFBFBD>-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 5, ArraySubType = UnmanagedType.I1)]
public byte[] byres;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CAMERA_DEHAZE_CFG
{
public uint dwSize;
public byte byDehazeMode; //0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D>Զ<EFBFBD>ģʽ<C4A3><CABD>2-<2D><>
public byte byLevel; //<2F>ȼ<EFBFBD><C8BC><EFBFBD>0-100
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_INPUT_SIGNAL_LIST
{
public uint dwSize;
public uint dwInputSignalNums; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
public IntPtr pBuffer; //ָ<><D6B8>dwInputSignalNums<6D><73>NET_DVR_INPUTSTREAMCFG<46><EFBFBD><E1B9B9>С<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwBufLen; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>dwInputSignalNums<6D><73>NET_DVR_INPUTSTREAMCFG<46><EFBFBD><E1B9B9>С<EFBFBD><D0A1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>״̬
public const int PULL_DISK_SUCCESS = 1; // <20><>ȫ<EFBFBD><C8AB><EFBFBD>̳ɹ<CCB3>
public const int PULL_DISK_FAIL = 2; // <20><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int PULL_DISK_PROCESSING = 3; // <20><><EFBFBD><EFBFBD>ֹͣ<CDA3><D6B9><EFBFBD><EFBFBD>
public const int PULL_DISK_NO_ARRAY = 4; // <20><><EFBFBD>в<EFBFBD><D0B2><EFBFBD><EFBFBD><EFBFBD>
public const int PULL_DISK_NOT_SUPPORT = 5; // <20><>֧<EFBFBD>ְ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
//ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
public const int SCAN_RAID_SUC = 1; // ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD>гɹ<D0B3>
public const int SCAN_RAID_FAIL = 2; // ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
public const int SCAN_RAID_PROCESSING = 3; // <20><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int SCAN_RAID_NOT_SUPPORT = 4; // <20><>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>
//<2F><><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
public const int SET_CAMERA_TYPE_SUCCESS = 1; // <20>ɹ<EFBFBD>
public const int SET_CAMERA_TYPE_FAIL = 2; // ʧ<><CAA7>
public const int SET_CAMERA_TYPE_PROCESSING = 3; // <20><><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>
//9000 2.2
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORD_TIME_SPAN_INQUIRY
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byType; //0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ¼<C6B5><C2BC>, 1ͼƬͨ<C6AC><CDA8>¼<EFBFBD><C2BC>, 2ANRͨ<52><CDA8>¼<EFBFBD><C2BC>, 3<><33>֡ͨ<D6A1><CDA8>¼<EFBFBD><C2BC>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 63, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_RECORD_TIME_SPAN
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_TIME strBeginTime; //<2F><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME strEndTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public byte byType; //0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ¼<C6B5><C2BC>, 1ͼƬͨ<C6AC><CDA8>¼<EFBFBD><C2BC>, 2ANRͨ<52><CDA8>¼<EFBFBD><C2BC>, 3<><33>֡ͨ<D6A1><CDA8>¼<EFBFBD><C2BC>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 35, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DRAWFRAME_DISK_QUOTA_CFG
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public byte byPicQuota; //ͼƬ<CDBC>ٷֱ<D9B7> [0%, 30%]
public byte byRecordQuota; //<2F><>ͨ¼<CDA8><C2BC><EFBFBD>ٷֱ<D9B7> [20%, 40%]
public byte byDrawFrameRecordQuota; //<2F><>֡¼<D6A1><C2BC><EFBFBD>ٷֱ<D9B7> [30%, 80%]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 61, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MANUAL_RECORD_PARA
{
public NET_DVR_STREAM_INFO struStreamInfo;
public uint lRecordType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>˿<EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NAT_PORT
{
public ushort wEnable;
public ushort wExtPort;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>˿<EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_NAT_CFG
{
public uint dwSize;
public ushort wEnableUpnp;
public ushort wEnableNat;
public NET_DVR_IPADDR struIpAddr;//<2F><>ʱ<EFBFBD><CAB1>ֹͣʱ<D6B9><CAB1>
public NET_DVR_NAT_PORT struHttpPort;//<2F><>ʱ<EFBFBD><CAB1>ֹͣʱ<D6B9><CAB1>
public NET_DVR_NAT_PORT struCmdPort;//<2F><>ʱ<EFBFBD><CAB1>ֹͣʱ<D6B9><CAB1>
public NET_DVR_NAT_PORT struRtspPort;//<2F><>ʱ<EFBFBD><CAB1>ֹͣʱ<D6B9><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byFriendName;
public byte byNatType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_NAT_PORT struHttpsPort;//<2F><>ʱ<EFBFBD><CAB1>ֹͣʱ<D6B9><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 76, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//Upnp<6E>˿<EFBFBD>ӳ<EFBFBD><D3B3>״̬<D7B4><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_UPNP_PORT_STATE
{
public uint dwEnabled;//<2F>ö˿<C3B6><CBBF>Ƿ<EFBFBD><C7B7><EFBFBD>ʹ<EFBFBD><CAB9>ӳ<EFBFBD><D3B3>
public ushort wInternalPort;//ӳ<><D3B3>ǰ<EFBFBD>Ķ˿<C4B6>
public ushort wExternalPort;//ӳ<><D3B3><EFBFBD><EFBFBD><EFBFBD>Ķ˿<C4B6>
public uint dwStatus;//<2F>˿<EFBFBD>ӳ<EFBFBD><D3B3>״̬<D7B4><CCAC>0- δ<><CEB4>Ч<EFBFBD><D0A7>1- δ<><CEB4>Ч<EFBFBD><D0A7>ӳ<EFBFBD><D3B3>Դ<EFBFBD>˿<EFBFBD><CBBF><EFBFBD>Ŀ<EFBFBD>Ķ˿<C4B6><CBBF><EFBFBD>һ<EFBFBD>£<EFBFBD>2- δ<><CEB4>Ч<EFBFBD><D0A7>ӳ<EFBFBD><D3B3><EFBFBD>˿ں<CBBF><DABA>ѱ<EFBFBD>ʹ<EFBFBD>ã<EFBFBD>3- <20><>Ч
public NET_DVR_IPADDR struNatExternalIp;//ӳ<><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⲿ<EFBFBD><E2B2BF>ַ
public NET_DVR_IPADDR struNatInternalIp;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
//Upnp<6E>˿<EFBFBD>ӳ<EFBFBD><D3B3>״̬<D7B4><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_UPNP_NAT_STATE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_UPNP_PORT_STATE[] strUpnpPort;//<2F>˿<EFBFBD>ӳ<EFBFBD><D3B3>״̬:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0- web server<65>˿ڣ<CBBF><DAA3><EFBFBD><EFBFBD><EFBFBD>1- <20><><EFBFBD><EFBFBD><EFBFBD>˿ڣ<CBBF><DAA3><EFBFBD><EFBFBD><EFBFBD>2- rtsp<73><70>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 200, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLAYCOND
{
public uint dwChannel;
public NET_DVR_TIME struStartTime;
public NET_DVR_TIME struStopTime;
public byte byDrawFrame; //0:<3A><><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>1<EFBFBD><31><EFBFBD><EFBFBD>֡
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 63, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
//¼<><C2BC><EFBFBD>طŽṹ<C5BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VOD_PARA
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public NET_DVR_STREAM_INFO struIDInfo; //<2F><>ID<49><44>Ϣ
public NET_DVR_TIME struBeginTime;//<2F>طſ<D8B7>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struEndTime;//<2F>طŽ<D8B7><C5BD><EFBFBD>ʱ<EFBFBD><CAB1>
public IntPtr hWnd;//<2F>طŴ<D8B7><C5B4><EFBFBD>
public byte byDrawFrame;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>֡<EFBFBD><D6A1>0- <20><><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>1- <20><>֡
public byte byVolumeType;//0-<2D><>ͨ¼<CDA8><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><EFBFBD><E6B5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>CVR<56><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>¼<EFBFBD>񣬴浵<F1A3ACB4><E6B5B5><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD>¼<EFBFBD><C2BC>
public byte byVolumeNum;//<2F><EFBFBD><E6B5B5><EFBFBD><EFBFBD>
public byte byRes1;//<2F><><EFBFBD><EFBFBD>
public uint dwFileIndex;//<2F><EFBFBD><E6B5B5><EFBFBD>ϵ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B5B5>¼<EFBFBD><C2BC>ʱ<EFBFBD><CAB1><EFBFBD>ص<EFBFBD>ֵ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ATMFINDINFO
{
public byte byTransactionType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-ȫ<><C8AB><EFBFBD><EFBFBD>1-<2D><>ѯ<EFBFBD><D1AF> 2-ȡ<> 3-<2D><><EFBFBD> 4-<2D>޸<EFBFBD><DEB8><EFBFBD><EFBFBD>룬5-ת<>ˣ<EFBFBD> 6-<2D>޿<EFBFBD><DEBF><EFBFBD>ѯ 7-<2D>޿<EFBFBD><DEBF><EFBFBD><EFBFBD> 8-<2D>̳<EFBFBD> 9-<2D>̿<EFBFBD> 10-<2D>Զ<EFBFBD><D4B6><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public uint dwTransationAmount ; //<2F><><EFBFBD>׽<EFBFBD><D7BD><EFBFBD> ;
}
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct NET_DVR_SPECIAL_FINDINFO_UNION
{
[FieldOffsetAttribute(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byLenth ;
/* [FieldOffsetAttribute(0)]
public NET_DVR_ATMFINDINFO struATMFindInfo; //ATM<54><4D>ѯ
* */
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FILECOND_V40
{
public Int32 lChannel;
public uint dwFileType;
public uint dwIsLocked;
public uint dwUseCardNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CARDNUM_LEN_OUT, ArraySubType = UnmanagedType.I1)]
public byte[] sCardNumber;
public NET_DVR_TIME struStartTime;
public NET_DVR_TIME struStopTime;
public byte byDrawFrame; //0:<3A><><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>1<EFBFBD><31><EFBFBD><EFBFBD>֡
public byte byFindType; //0:<3A><>ѯ<EFBFBD><D1AF>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><E6B5B5>
public byte byQuickSearch; //0:<3A><>ͨ<EFBFBD><CDA8>ѯ<EFBFBD><D1AF>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD>٣<EFBFBD><D9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ
public byte bySpecialFindInfoType ; //ר<>в<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>Ч<EFBFBD><D0A7> 1-<2D><>ATM<54><4D>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
public uint dwVolumeNum; //<2F><EFBFBD><E6B5B5><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = GUID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byWorkingDeviceGUID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GUID<49><44>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ȡN+1<>õ<EFBFBD>
public NET_DVR_SPECIAL_FINDINFO_UNION uSpecialFindInfo ; //ר<>в<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SEARCH_EVENT_PARAM_V40
{
public ushort wMajorType; //0-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 2-<2D><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD> 5-pos¼<73><C2BC> 7-<2D>Ž<EFBFBD><C5BD>¼<EFBFBD>
public ushort wMinorType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ仯<CDB1><E4BBAF>0xffff<66><66>ʾȫ<CABE><C8AB>
public NET_DVR_TIME struStartTime; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>ʼʱ<CABC>䣬ֹͣʱ<D6B9><CAB1>: ͬʱΪ(0, 0) <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ʼ<E4BFAA><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>4000<30><30><EFBFBD>¼<EFBFBD>
public NET_DVR_TIME struEndTime; //
public byte byLockType; // 0xff-ȫ<><C8AB><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byQuickSearch; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>ٲ<EFBFBD>ѯ<EFBFBD><D1AF>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>ٲ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><E1B7B5><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD>в<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̣<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 130, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;// <20><><EFBFBD><EFBFBD>
public UNION_EVENT_PARAM uSeniorParam;
public void Init()
{
byRes = new byte[130];
uSeniorParam.Init();
}
}
public const int SEARCH_EVENT_INFO_LEN_V40 = 800;
[StructLayout(LayoutKind.Explicit)]
public struct UNION_EVENT_PARAM
{
[FieldOffset(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SEARCH_EVENT_INFO_LEN_V40, ArraySubType = UnmanagedType.I1)]
public byte[] byLen;
public void Init()
{
byLen = new byte[SEARCH_EVENT_INFO_LEN_V40];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struMotionParam
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.U2)]
public ushort[] wMotDetChanNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 672, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
wMotDetChanNo = new ushort[MAX_CHANNUM_V30];
byRes = new byte[672];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struStreamIDParam
{
public NET_DVR_STREAM_INFO struIDInfo;
public uint dwCmdType;
public byte byBackupVolumeNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byArchiveLabel;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 656, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes1 = new byte[3];
byArchiveLabel = new byte[64];
byRes = new byte[656];
struIDInfo.Init();
}
}
//<2F><><EFBFBD>ҷ<EFBFBD><D2B7>ؽ<EFBFBD><D8BD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SEARCH_EVENT_RET_V40
{
public ushort wMajorType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wMinorType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME struStartTime; //<2F>¼<EFBFBD><C2BC><EFBFBD>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1>
public NET_DVR_TIME struEndTime; //<2F>¼<EFBFBD>ֹͣ<CDA3><D6B9>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>ʱ<EFBFBD>Ϳ<EFBFBD>ʼʱ<CABC><CAB1>һ<EFBFBD><D2BB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V40, ArraySubType = UnmanagedType.U2)]
public ushort[] wChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD>0xffff<66><66>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 36, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public UNION_EVENT_RET uSeniorRet;
}
[StructLayout(LayoutKind.Explicit)]
public struct UNION_EVENT_RET
{
[FieldOffset(0)]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 800, ArraySubType = UnmanagedType.I1)]
public byte[] byLen;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struMotionRet
{
public uint dwMotDetNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 796, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int NET_SDK_MAX_TAPE_INDEX_LEN = 32; //<2F>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
public const int NET_SDK_MAX_FILE_LEN = 256; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳤶<EFBFBD>
//<2F><>id¼<64><C2BC><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct struStreamIDRet
{
public uint dwRecordType; //¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><>ʱ¼<CAB1><C2BC> 1-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 2-<2D><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC> 3-<2D><><EFBFBD><EFBFBD>|<7C>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 4-<2D><><EFBFBD><EFBFBD>&<26>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD> 5-<2D><><EFBFBD><EFBFBD><EEB4A5> 6-<2D>ֶ<EFBFBD>¼<EFBFBD><C2BC> 7-<2D>𶯱<EFBFBD><F0B6AFB1><EFBFBD> 8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 9-<2D><><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD> 10-<2D>ش<EFBFBD>¼<EFBFBD><C2BC>
public uint dwRecordLength; //¼<><C2BC><EFBFBD><EFBFBD>С
public byte byLockFlag; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־ 0<><30>û<EFBFBD><C3BB><EFBFBD><EFBFBD> 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDrawFrameType; // 0<><30><EFBFBD>dz<EFBFBD>֡¼<D6A1><C2BC> 1<><31><EFBFBD><EFBFBD>֡¼<D6A1><C2BC>
public byte byPosition;// <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ڴ洢λ<E6B4A2>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD>2-<2D>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>Ҫ<EFBFBD>Ѵ<EFBFBD><D1B4><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ϣ<EFBFBD>3-<2D><><EFBFBD>ڴŴ<DAB4><C5B4><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD>Ҫ<EFBFBD>Ѵ<EFBFBD><D1B4>̲嵽<CCB2>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD>
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byFileName; //<2F>ļ<EFBFBD><C4BC><EFBFBD>
public uint dwFileIndex; // <20><EFBFBD><E6B5B5><EFBFBD>ϵ<EFBFBD><CFB5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_MAX_TAPE_INDEX_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byTapeIndex; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ڴŴ<DAB4><C5B4><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_MAX_FILE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byFileNameEx; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>չ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 464, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_AES_KEY_INFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] sAESKey; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; /*<2A><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_POE_CFG
{
public NET_DVR_IPADDR struIP; //IP<49><50>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
}
public const int MAX_PRO_PATH = 256; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CUSTOM_PROTOCAL
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwEnabled; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ø<EFBFBD>Э<EFBFBD><D0AD>0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = DESC_LEN)]
public string sProtocalName; //<2F>Զ<EFBFBD><D4B6><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 16λ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //<2F><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ
public uint dwEnableSubStream; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 <20><><EFBFBD><EFBFBD>
public byte byMainProType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 RTSP
public byte byMainTransType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30>Auto 1<><31>udp 2<><32>rtp over rtsp
public ushort wMainPort; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_PRO_PATH)]
public string sMainPath; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
public byte bySubProType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 RTSP
public byte bySubTransType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30>Auto 1<><31>udp 2<><32>rtp over rtsp
public ushort wSubPort; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_PRO_PATH)]
public string sSubPath; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 200, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
}
//Ԥ<><D4A4>V40<34>ӿ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PREVIEWINFO
{
public Int32 lChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwStreamType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD>3<EFBFBD><33>3-<2D><><EFBFBD><EFBFBD>4 <20><><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD>
public uint dwLinkMode;// 0<><30>TCP<43><50>ʽ,1<><31>UDP<44><50>ʽ,2<><32><EFBFBD><EFBFBD><E0B2A5>ʽ,3 - RTP<54><50>ʽ<EFBFBD><CABD>4-RTP/RTSP,5-RSTP/HTTP
public IntPtr hPlayWnd;//<2F><><EFBFBD>Ŵ<EFBFBD><C5B4>ڵľ<DAB5><C4BE><EFBFBD>,ΪNULL<4C><4C>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
public bool bBlocked; //0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>, 1-<2D><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SDK<44>ڲ<EFBFBD>connectʧ<74>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD>5s<35>ij<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ܹ<EFBFBD><DCB9><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD>ʺ<EFBFBD><CABA><EFBFBD><EFBFBD><EFBFBD>ѯȡ<D1AF><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
public bool bPassbackRecord; //0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ش<EFBFBD>,1<><31><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ش<EFBFBD>
public byte byPreviewMode;//Ԥ<><D4A4>ģʽ<C4A3><CABD>0-<2D><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>1-<2D>ӳ<EFBFBD>Ԥ<EFBFBD><D4A4>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = STREAM_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byStreamID;//<2F><>ID<49><44>lChannelΪ0xffffffffʱ<66><CAB1><EFBFBD>ô˲<C3B4><CBB2><EFBFBD>
public byte byProtoType; //Ӧ<>ò<EFBFBD>ȡ<EFBFBD><C8A1>Э<EFBFBD>飬0-˽<><CBBD>Э<EFBFBD>飬1-RTSPЭ<50><D0AD>
public byte byRes1;
public byte byVideoCodingType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-ͨ<>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D>ȳ<EFBFBD><C8B3><EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭʼ<D4AD><CABC><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><C2B6><EFBFBD><EFBFBD>ݵļ<DDB5><C4BC><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ͨ<EFBFBD><CDA8>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3A3AC>ԭʼ<D4AD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>
public uint dwDisplayBufNum; //<2F><><EFBFBD>ſ<C5BF>Ż<EFBFBD><C5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󻺳<EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ1-50<35><30><EFBFBD><EFBFBD>0ʱĬ<CAB1><C4AC>Ϊ1
public byte byNPQMode; //NPQ<50><51>ֱ<EFBFBD><D6B1>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD>ý<EFBFBD><C3BD> 0-ֱ<><D6B1> 1-<2D><><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 215, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
///ץ<>Ļ<EFBFBD>
///
public const int MAX_OVERLAP_ITEM_NUM = 50; //<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_ITS_GET_OVERLAP_CFG = 5072;//<2F><>ȡ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITS<54>նˣ<D5B6>
public const int NET_ITS_SET_OVERLAP_CFG = 5073;//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ITS<54>նˣ<D5B6>
public const int NET_ITS_SET_LAMP_EXTERNAL_CFG = 5095; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_OVERLAPCFG_COND
{
public uint dwSize;
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public uint dwConfigMode;//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0- <20>նˣ<D5B6>1- ǰ<><C7B0><><D6B1>ǰ<EFBFBD>˻<EFBFBD><CBBB>ն˽<D5B6>ǰ<EFBFBD><C7B0>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_OVERLAP_SINGLE_ITEM_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public byte byItemType;//<2F><><EFBFBD><EFBFBD>
public byte byChangeLineNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡֵ<C8A1><D6B5>Χ<EFBFBD><CEA7>[0,10]<5D><>Ĭ<EFBFBD>ϣ<EFBFBD>0
public byte bySpaceNum;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀո<C4BF><D5B8><EFBFBD><EFBFBD><EFBFBD>ȡֵ<C8A1><D6B5>Χ<EFBFBD><CEA7>[0-255]<5D><>Ĭ<EFBFBD>ϣ<EFBFBD>0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 15, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_OVERLAP_ITEM_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_OVERLAP_ITEM_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_ITS_OVERLAP_SINGLE_ITEM_PARAM[] struSingleItem;//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public uint dwLinePercent;
public uint dwItemsStlye;
public ushort wStartPosTop;
public ushort wStartPosLeft;
public ushort wCharStyle;
public ushort wCharSize;
public ushort wCharInterval;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public uint dwForeClorRGB;//ǰ<><C7B0>ɫ<EFBFBD><C9AB>RGBֵ<42><D6B5>bit0~bit7: B<><42>bit8~bit15: G<><47>bit16~bit23: R<><52>Ĭ<EFBFBD>ϣ<EFBFBD>x00FFFFFF-<2D><>
public uint dwBackClorRGB;//<2F><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>RGBֵ<42><D6B5>ֻ<EFBFBD><D6BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>bit0~bit7: B<><42>bit8~bit15: G<><47>bit16~bit23: R<><52>Ĭ<EFBFBD>ϣ<EFBFBD>x00000000-<2D><>
public byte byColorAdapt;//<2F><>ɫ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>0-<2D><><EFBFBD><EFBFBD>1-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_OVERLAP_INFO_PARAM
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128, ArraySubType = UnmanagedType.I1)]
public byte[] bySite;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRoadNum;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byInstrumentNum;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byDirection;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byDirectionDesc;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byLaneDes;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 44, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitoringSite1;//
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitoringSite2;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_OVERLAP_CFG
{
public uint dwSize;
public byte byEnable;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD>0- <20><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1- <20><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITS_OVERLAP_ITEM_PARAM struOverLapItem;//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_ITS_OVERLAP_INFO_PARAM struOverLapInfo;//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFB1A3><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SETUPALARM_PARAM
{
public uint dwSize;
public byte byLevel;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0- һ<>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>ߣ<EFBFBD><DFA3><EFBFBD>1- <20><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD>2- <20><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmInfoType;//<2F>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>ܽ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD>0- <20>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>NET_DVR_PLATE_RESULT<4C><54><EFBFBD><EFBFBD>1- <20>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD>Ϣ(NET_ITS_PLATE_RESULT)
public byte byRetAlarmTypeV40;
public byte byRetDevInfoVersion;
public byte byRetVQDAlarmType;
public byte byFaceAlarmDetection;
public byte bySupport;
public byte byBrokenNetHttp;
public ushort wTaskNo;
public byte byDeployType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D>ͻ<EFBFBD><CDBB>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD>1-ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>
public byte bySubScription; //<2F><><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2>ϱ<EFBFBD> //ռλ //Bit7-<2D>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ͼ<EFBFBD><CDBC>0-<2D><><EFBFBD><EFBFBD>ͼ(V30<33>ϱ<EFBFBD>)<29><>1-<2D><>ͼ(V40<34>ϱ<EFBFBD>)
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public byte byAlarmTypeURL;
//bit0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ץ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>INTER_FACESNAP_RESULT<4C><54><EFBFBD><EFBFBD>0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>䣬1-<2D><>ʾURL<52><4C><EFBFBD><EFBFBD>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3>豸֧<E8B1B8><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݾ<EFBFBD><DDBE><EFBFBD><E5B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>,ͬʱ<CDAC><EFBFBD><E8B1B8>Ҫ֧<D2AA><D6A7>URL<52><4C><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><D8B7>񣬵<EFBFBD>ǰ<EFBFBD>ǡ<EFBFBD><C7A1>ƴ洢<C6B4><E6B4A2><EFBFBD><EFBFBD>
//bit1-<2D><>ʾEVENT_JSON<4F><4E>ͼƬ<CDBC><C6AC><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>䣬1-<2D><>ʾURL<52><4C><EFBFBD><EFBFBD>豸֧<E8B1B8>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3>豸֧<E8B1B8><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݾ<EFBFBD><DDBE><EFBFBD><E5B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6>
//bit2 - <20><><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪCOMM_SNAP_MATCH_ALARM)<29><>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ͣ<EFBFBD>0 - <20><><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>䣬1 - URL<52><4C><EFBFBD><EFBFBD>
//bit3 - <20><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪCOMM_ALARM_RULE)<29><>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD>ͣ<EFBFBD>0 - <20><><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4>䣬1 - URL<52><4C><EFBFBD><EFBFBD><E4A3AC><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD>Ӧ<EFBFBD><D3A6>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><isSupportBehaviorUploadByCloudStorageURL><3E>ڵ<EFBFBD><DAB5>Ƿ񷵻<C7B7><F1B7B5BB><EFBFBD>Ϊtrue
public byte byCustomCtrl;//Bit0- <20><>ʾ֧<CABE>ָ<EFBFBD><D6B8><EFBFBD>ʻ<EFBFBD><CABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ϴ<EFBFBD>: 0-<2D><><EFBFBD>ϴ<EFBFBD>,1-<2D>ϴ<EFBFBD>
}
//<2F><>բ<EFBFBD><D5A2><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_BARRIERGATE_CFG
{
public uint dwSize;
public uint dwChannel;//ͨ<><CDA8><EFBFBD><EFBFBD>
public byte byLaneNo; //<2F><>բ<EFBFBD>ţ<EFBFBD>0-<2D><>ʾ<EFBFBD><CABE>Чֵ(<28><EFBFBD><E8B1B8>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>Чֵ<D0A7>ж<EFBFBD>),1-<2D><>բ1<D5A2><31>
public byte byBarrierGateCtrl;//0-<2D>رյ<D8B1>բ,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>բ,2-ֹͣ<CDA3><D6B9>բ 3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>բ,4~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>բ
public byte byEntranceNo;//<2F><><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD> [1,8]
public byte byUnlock;//<2F><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>0~Ϊ<><CEAA><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1~<7E><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 12, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int MAX_RELAY_NUM = 12;
public const int MAX_IOIN_NUM = 8;
public const int MAX_VEHICLE_TYPE_NUM = 8;
public const int NET_DVR_GET_ENTRANCE_PARAMCFG = 3126; //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF>Ʋ<EFBFBD><C6B2><EFBFBD>
public const int NET_DVR_SET_ENTRANCE_PARAMCFG = 3127; //<2F><><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF>Ʋ<EFBFBD><C6B2><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_BARRIERGATE_COND
{
public byte byLaneNo;//<2F><><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>0- <20><>ʾ<EFBFBD><CABE>Чֵ(<28><EFBFBD><E8B1B8>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>Чֵ<D0A7>ж<EFBFBD>)<29><>1- <20><><EFBFBD><EFBFBD>1
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_RELAY_PARAM
{
public byte byAccessDevInfo;//0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>1-<2D><><EFBFBD><EFBFBD>բ<EFBFBD><D5A2>2-<2D>ص<EFBFBD>բ<EFBFBD><D5A2>3-ͣ<><CDA3>բ<EFBFBD><D5A2>4-<2D><><EFBFBD><EFBFBD><EFBFBD>źš<C5BA>5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ܿز<DCBF><D8B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_DVR_VEHICLE_CONTROL
{
public byte byGateOperateType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0- <20>޲<EFBFBD><DEB2><EFBFBD><EFBFBD><EFBFBD>1- <20><><EFBFBD><EFBFBD>բ
public byte byRes1;
public ushort wAlarmOperateType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0- <20>޲<EFBFBD><DEB2><EFBFBD><EFBFBD><EFBFBD>bit0- <20>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit1- <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bit3- <20><EFBFBD><E6BEAF><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>ֵ<EFBFBD><D6B5>0-<2D><>ʾ<EFBFBD>أ<EFBFBD>1-<2D><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ɸ<EFBFBD>ѡ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF>Ʋ<EFBFBD><C6B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ENTRANCE_CFG
{
public uint dwSize;
public byte byEnable;
public byte byBarrierGateCtrlMode;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;//<2F><><EFBFBD><EFBFBD>
public uint dwRelateTriggerMode;
public uint dwMatchContent;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_RELAY_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_RELAY_PARAM[] struRelayRelateInfo;//<2F>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_IOIN_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byGateSingleIO;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_VEHICLE_TYPE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_VEHICLE_CONTROL[] struVehicleCtrl;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ܿ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;//<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_GATE_VEHICLE
{
public uint dwSize;
public uint dwMatchNo;
public byte byGroupNum;
public byte byPicNo;
public byte bySecondCam;
public byte byRes;
public ushort wLaneid;
public byte byCamLaneId;
public byte byRes1;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] byAlarmReason;
public ushort wBackList;
public ushort wSpeedLimit;
public uint dwChanIndex;
public NET_DVR_PLATE_INFO struPlateInfo;
public NET_DVR_VEHICLE_INFO struVehicleInfo;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 48)]
public byte[] byMonitoringSiteID;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 48)]
public byte[] byDeviceID;
public byte byDir;
public byte byDetectType;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
public byte[] byRes2;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 48)]
public byte[] byCardNo;
public uint dwPicNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
public NET_ITS_PICTURE_INFO[] struPicInfo;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] bySwipeTime;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 224)]
public byte[] byRes3;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_PICTURE_INFO
{
public uint dwDataLen;
public byte byType;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
public byte[] byRes1;
public uint dwRedLightTime;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] byAbsTime;
public NET_VCA_RECT struPlateRect;
public NET_VCA_RECT struPlateRecgRect;
public IntPtr pBuffer;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 12)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_PLATE_RESULT
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwMatchNo; //ƥ<><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>
public byte byGroupNum; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱƥ<CAB1><C6A5><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>
public byte byPicNo; //<2F><><EFBFBD>ĵ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>յ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󣬱<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<3B><><EFBFBD>ճ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>
public byte bySecondCam; //<2F>Ƿ<EFBFBD><C7B7>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ץ<EFBFBD>ĵ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>ץ<EFBFBD>ĵĺ<C4B5><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>л<EFBFBD><D0BB>õ<EFBFBD><C3B5><EFBFBD>
public byte byFeaturePicNo; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƶ羯<C6B5><E7BEAF>ȡ<EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>ͼ<EFBFBD><CDBC>Ϊ<EFBFBD><CEAA>дͼ,0xff-<2D><>ʾ<EFBFBD><CABE>ȡ
public byte byDriveChan; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byVehicleType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD>VTR_RESULT
public byte byDetSceneID;//<2F><><EFBFBD><EFBFBD><E2B3A1><EFBFBD><EFBFBD>[1,4], IPCĬ<43><C4AC><EFBFBD><EFBFBD>0
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0- <20>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>ͨ<EFBFBD><CDA8>)<29><>bit1- <20>Ʊ공(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>־)<29><>bit2- Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>0- <20><><EFBFBD><EFBFBD>1- <20><>
//<2F>ýڵ<C3BD><DAB5>Ѳ<EFBFBD><D1B2><EFBFBD>ʹ<EFBFBD><CAB9>,ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>byYellowLabelCar<61><72>byDangerousVehicles<65>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7>Ʊ공<C6B1><EAB3B5>Σ<EFBFBD><CEA3>Ʒ<EFBFBD><C6B7>
public byte byVehicleAttribute;
public ushort wIllegalType; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2>ù<EFBFBD><C3B9><EFBFBD><EAB6A8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byIllegalSubType; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPostPicNo; //Υ<><CEA5>ʱȡ<CAB1>ڼ<EFBFBD><DABC><EFBFBD>ͼƬ<CDBC><C6AC>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ͼ,0xff-<2D><>ʾ<EFBFBD><CABE>ȡ
//ͨ<><CDA8><EFBFBD><EFBFBD>(<28><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>һ<EFBFBD>£<EFBFBD><C2A3>ں<EFBFBD><DABA>˺<EFBFBD><CBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ͨ<><CDA8><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>)
public byte byChanIndex;
public ushort wSpeedLimit; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޣ<EFBFBD><DEA3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>
public byte byChanIndexEx; //byChanIndexEx*256+byChanIndex<65><78>ʾ<EFBFBD><CABE>ʵͨ<CAB5><CDA8><EFBFBD>š<EFBFBD>
public byte byRes2;
public NET_DVR_PLATE_INFO struPlateInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>
public NET_DVR_VEHICLE_INFO struVehicleInfo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 48, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitoringSiteID; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 48, ArraySubType = UnmanagedType.I1)]
public byte[] byDeviceID; //<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
public byte byDir; //<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>򣩣<EFBFBD>2-<2D><><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)<29><>3-˫<><CBAB><EFBFBD><EFBFBD>4-<2D>ɶ<EFBFBD><C9B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,6-<2D><><EFBFBD><EFBFBD><EFBFBD>򶫣<EFBFBD>7-<2D>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD>ϣ<EFBFBD>8-<2D><><EFBFBD><EFBFBD>
public byte byDetectType; //<2F><><EFBFBD>ʽ,1-<2D>ظд<D8B8><D0B4><EFBFBD><EFBFBD><EFBFBD>2-<2D><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><>֡ʶ<D6A1><CAB6><EFBFBD><EFBFBD>4-<2D>״ﴥ<D7B4><EFB4A5>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD>ITC_RELA_LANE_DIRECTION_TYPE
//<2F>ò<EFBFBD><C3B2><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD>Ӧ<EFBFBD><D3A6>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ψһ<CEA8>ԡ<EFBFBD>
public byte byRelaLaneDirectionType;
public byte byCarDirectionType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʻ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʻ<EFBFBD><CABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>
//<2F><>wIllegalType<70><65><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>ʱ<EFBFBD><CAB1>ʹ<EFBFBD>øò<C3B8><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>wIllegalType<70><65><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>ֵʱ<D6B5><CAB1><EFBFBD><EFBFBD>wIllegalType<70><65><EFBFBD><EFBFBD>Ϊ׼<CEAA><D7BC><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public uint dwCustomIllegalType; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>(<28>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD>)
/*Ϊ0~<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>ʽʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD>ϵ<EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>wIllegalType<EFBFBD><EFBFBD>dwCustomIllegalType<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* Ϊ1~<EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>ʽʱ<EFBFBD><EFBFBD>pIllegalInfoBuf<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>wIllegalType<EFBFBD><EFBFBD>dwCustomIllegalType<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public IntPtr pIllegalInfoBuf; //Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>ָ<EFBFBD>룻ָ<EBA3BB><D6B8>NET_ITS_ILLEGAL_INFO
public byte byIllegalFromatType; //Υ<><CEA5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ʽ<EFBFBD><CABD><EFBFBD>ͣ<EFBFBD> 0~<7E><><EFBFBD>ָ<EFBFBD>ʽ<EFBFBD><CABD> 1~<7E>ַ<EFBFBD><D6B7><EFBFBD>ʽ
public byte byPendant;// 0-<2D><>ʾδ֪,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDataAnalysis; //0-<2D><><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>, 1-<2D><><EFBFBD><EFBFBD><EFBFBD>ѷ<EFBFBD><D1B7><EFBFBD>
public byte byYellowLabelCar; //0-<2D><>ʾδ֪, 1-<2D>ǻƱ공,2-<2D>Ʊ공
public byte byDangerousVehicles; //0-<2D><>ʾδ֪, 1-<2D><>Σ<EFBFBD><CEA3>Ʒ<EFBFBD><C6B7>,2-Σ<><CEA3>Ʒ<EFBFBD><C6B7>
//<2F><><EFBFBD><EFBFBD><EFBFBD>ֶΰ<D6B6><CEB0><EFBFBD>Pilot<6F>ַ<EFBFBD><D6B7><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʻ<EFBFBD><CABB><EFBFBD><EFBFBD>Copilot<6F>ַ<EFBFBD><D6B7><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʻ
public byte byPilotSafebelt;//0-<2D><>ʾδ֪,1-ϵ<><CFB5>ȫ<EFBFBD><C8AB>,2-<2D><>ϵ<EFBFBD><CFB5>ȫ<EFBFBD><C8AB>
public byte byCopilotSafebelt;//0-<2D><>ʾδ֪,1-ϵ<><CFB5>ȫ<EFBFBD><C8AB>,2-<2D><>ϵ<EFBFBD><CFB5>ȫ<EFBFBD><C8AB>
public byte byPilotSunVisor;//0-<2D><>ʾδ֪,1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCopilotSunVisor;//0-<2D><>ʾδ֪, 1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPilotCall;// 0-<2D><>ʾδ֪, 1-<2D><><EFBFBD><EFBFBD><EFBFBD>绰,2-<2D><><EFBFBD>
//0-<2D><>բ<EFBFBD><D5A2>1-δ<><CEB4>բ (ר<><D7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>բ<EFBFBD>ɹ<EFBFBD><C9B9>ı<EFBFBD>־)<29><><EFBFBD><EFBFBD>byAlarmDataTypeΪ0-ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>ʱ 0-δ<><CEB4>բ 1-<2D><>բ
public byte byBarrierGateCtrlType;
public byte byAlarmDataType;//0-ʵʱ<CAB5><CAB1><EFBFBD>ݣ<EFBFBD>1-<2D><>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD>
public NET_DVR_TIME_V30 struSnapFirstPicTime;//<2F>˵<EFBFBD>ʱ<EFBFBD><CAB1>(ms)<29><>ץ<EFBFBD>ĵ<EFBFBD>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC>ʱ<EFBFBD>
public uint dwIllegalTime;//Υ<><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣨ms<6D><73> = ץ<><D7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC>ʱ<EFBFBD><CAB1> - ץ<>ĵ<EFBFBD>һ<EFBFBD><D2BB>ͼƬ<CDBC><C6AC>ʱ<EFBFBD><CAB1>
public uint dwPicNum; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>picGroupNum<75><6D>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2>struVehicleInfoEx<45><78><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 6, ArraySubType = UnmanagedType.Struct)]
public NET_ITS_PICTURE_INFO[] struPicInfo; //ͼƬ<CDBC><C6AC>Ϣ,<2C><><EFBFBD>Żص<C5BB><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><36>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_ITS_PARK_VEHICLE
{
public uint dwSize;
public byte byGroupNum;
public byte byPicNo;
public byte byLocationNum;
public byte byParkError;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_PARKNO_LEN)]
public string byParkingNo;
public byte byLocationStatus;
public byte bylogicalLaneNum;
public ushort wUpLoadType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwChanIndex;
public NET_DVR_PLATE_INFO struPlateInfo;
public NET_DVR_VEHICLE_INFO struVehicleInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMonitoringSiteID;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDeviceID;
public uint dwPicNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.Struct)]
public NET_ITS_PICTURE_INFO[] struPicInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_GATE_INFO
{
public UNION_GATE_VEHICLE struVehicleInfo; //<2F><>struAlarmTypeΪ(0x1<78><31><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EBB1A8>)
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct UNION_GATE_VEHICLE
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LICENSE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sLicense;//<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD> 1-<2D>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD>2-<2D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>3-Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-<2D><><EFBFBD><EFBFBD><ECB3B5>5-<2D><>Ȩ<EFBFBD><C8A8>*/
public byte byVehicleType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 111, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GATE_ALARMINFO
{
public uint dwSize;
//0x1<78><31><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EBB1A8>
//0x2<78><32>բ<EFBFBD><D5A2>ʱδ<CAB1>ر<EFBFBD><D8B1><EFBFBD>
//0x3<78><33><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9>Ȧ<EFBFBD><C8A6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
//0x4<78><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޿<EFBFBD><DEBF><EFBFBD>
//0x5<78><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٿ<EFBFBD><D9BF><EFBFBD>
//0x6<78><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>
public byte byAlarmType;
public byte byExternalDevType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>(EXTERNAL_DEVICES_TYPE)
public byte byExternalDevStatus;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD>(EXTERNAL_DEVICES_STATUS)
public byte byRes;
public NET_DVR_TIME_V30 struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public UNION_GATE_INFO uAlarmInfo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //Ԥ<><D4A4>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DIAGNOSIS_UPLOAD
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = STREAM_ID_LEN)]
public string sStreamID; ///< <20><>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1>32<33><32><EFBFBD>ֽ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 64)]
public string sMonitorIP; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ip
public uint dwChanIndex; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
public uint dwWidth; ///< ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwHeight; ///< ͼ<><CDBC><EFBFBD>߶<EFBFBD>
public NET_DVR_TIME struCheckTime; ///< <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD>ں<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ֶ<EFBFBD>)<29><><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>2012-08-06 13:00:00
public byte byResult; ///0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>쳣 3-<2D><>¼ʧ<C2BC><CAA7> 4-ȡ<><C8A1><EFBFBD>
public byte bySignalResult; ///< <20><>Ƶ<EFBFBD><C6B5>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byBlurResult; ///< ͼ<><CDBC>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byLumaResult; ///< ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byChromaResult; ///< ƫɫ<C6AB><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte bySnowResult; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><C5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byStreakResult; ///< <20><><EFBFBD>Ƹ<EFBFBD><C6B8>ż<EFBFBD><C5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byFreezeResult; ///< <20><><EFBFBD><EFBFBD><E6B6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byPTZResult; ///< <20><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD> 2-<2D>
public byte byContrastResult; //<2F>Աȶ<D4B1><C8B6><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte byMonoResult; //<2F>ڰ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte byShakeResult; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 256)]
public string sSNapShotURL; ///<ͼƬURL<52><4C>ַ
public byte byFlashResult; //<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte byCoverResult; //<2F><>Ƶ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte bySceneResult; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte byDarkResult; //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-δ<><CEB4><EFBFBD>⣬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D>
public byte byStreamType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-δ֪<CEB4><D6AA>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>3-<2D>ǹ<EFBFBD><C7B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 59, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int CID_CODE_LEN = 4;
public const int ACCOUNTNUM_LEN = 6;
public const int ACCOUNTNUM_LEN_32 = 32;
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CID_ALARM
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CID_CODE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sCIDCode; //CID<49>¼<EFBFBD><C2BC><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sCIDDescribe; //CID<49>¼<EFBFBD><C2BC><EFBFBD>
public NET_DVR_TIME_EX struTriggerTime; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
public NET_DVR_TIME_EX struUploadTime; //<2F>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACCOUNTNUM_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sCenterAccount; //<2F><><EFBFBD><EFBFBD><EFBFBD>ʺ<EFBFBD>
public byte byReportType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_DVR_ALARMHOST_REPORT_TYPE
public byte byUserType; //<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>,2-<2D>ֻ<EFBFBD><D6BB>û<EFBFBD>,3-ϵͳ<CFB5>û<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUserName; //<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>û<EFBFBD><C3BB><EFBFBD>
public ushort wKeyUserNo; //<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD> 0xFFFF<46><46>ʾ<EFBFBD><CABE>Ч
public byte byKeypadNo; //<2F><><EFBFBD>̺<EFBFBD> 0xFF<46><46>ʾ<EFBFBD><CABE>Ч
public byte bySubSysNo; //<2F><>ϵͳ<CFB5><CDB3> 0xFF<46><46>ʾ<EFBFBD><CABE>Ч
public ushort wDefenceNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0xFFFF<46><46>ʾ<EFBFBD><CABE>Ч
public byte byVideoChanNo; //<2F><>Ƶͨ<C6B5><CDA8><EFBFBD><EFBFBD> 0xFF<46><46>ʾ<EFBFBD><CABE>Ч
public byte byDiskNo; //Ӳ<>̺<EFBFBD> 0xFF<46><46>ʾ<EFBFBD><CABE>Ч
public ushort wModuleAddr; //ģ<><C4A3><EFBFBD><EFBFBD>ַ 0xFFFF<46><46>ʾ<EFBFBD><CABE>Ч
public byte byCenterType; //0-<2D><>Ч, 1-<2D><><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>(<28><><EFBFBD><EFBFBD>6),2-<2D><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>(<28><><EFBFBD><EFBFBD>9)
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACCOUNTNUM_LEN_32, ArraySubType = UnmanagedType.I1)]
public byte[] sCenterAccountV40; //<2F><><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>V40,ʹ<>ô<EFBFBD><C3B4>ֶ<EFBFBD>ʱsCenterAccount<6E><74>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 28, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_PTZ_INFO
{
public float fPan;
public float fTilt;
public float fZoom;
public uint dwFocus;// <20>۽<EFBFBD><DBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>0-100000
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FIREDETECTION_ALARM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9>С
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo; //ǰ<><C7B0><EFBFBD><EFBFBD><E8B1B8>Ϣ
public ushort wPanPos;
public ushort wTiltPos;
public ushort wZoomPos;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwPicDataLen;//<2F><><EFBFBD><EFBFBD>ץ<EFBFBD><D7A5>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pBuffer; //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
public NET_VCA_RECT struRect;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_POINT struPoint;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶ȵ<C2B6><C8B5><EFBFBD><EFBFBD><EFBFBD>
public ushort wFireMaxTemperature;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[300<30><30>~4000<30><30>]
public ushort wTargetDistance;//Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[100m ~ 10000m]
public byte byStrategyType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0~<7E><><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>1~Эͬ<D0AD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2~<7E><>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3~ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B1A8><EFBFBD><EFBFBD>4~ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byAlarmSubType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD>0~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>1~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD>2~<7E>̻𱨾<CCBB>
/*<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PTZ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><EFBFBD>
0~<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>PTZ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>wPanPos<EFBFBD><EFBFBD>wTiltPos<EFBFBD><EFBFBD>wZoomPosΪ׼<EFBFBD><EFBFBD>
1~<EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>PTZ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>struPtzPosExΪ׼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PTZ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>struPtzPosEx<EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>ΪwPanPos<EFBFBD><EFBFBD>wTiltPos<EFBFBD><EFBFBD>wZoomPosֵ<EFBFBD><EFBFBD>
*/
public byte byPTZPosExEnable;
public byte byRes2;
public NET_PTZ_INFO struPtzPosEx;// ptz<74><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ(֧<>ָ߾<D6B8><DFBE><EFBFBD>PTZֵ<5A><D6B5><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ)
public uint dwVisiblePicLen;//<2F>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public IntPtr pVisiblePicBuf; //<2F>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
// pSmokeBuf<75><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD>byAlarmSubType<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<CEAA><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD>̻𱨾<CCBB><F0B1A8BE><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>
public IntPtr pSmokeBuf; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬ָ<EBA3AC><D6B8>һ<EFBFBD><D2BB>NET_DVR_SMOKEDETECTION_ALARM<52><EFBFBD><E1B9B9>
public ushort wDevInfoIvmsChannelEx; //<2F><>NET_VCA_DEV_INFO<46><4F><EFBFBD><EFBFBD>byIvmsChannel<65><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܱ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ͽͻ<CFBF><CDBB><EFBFBD><EFBFBD><EFBFBD>byIvmsChannel<65>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>255<35><35><EFBFBD>¿ͻ<C2BF><CDBB>˰汾<CBB0><E6B1BE>ʹ<EFBFBD><CAB9>wDevInfoIvmsChannelEx<45><78>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 58, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_EVENT_INFO
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //<2F><><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public byte byCardType; //<2F><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>3-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Ѳ<><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-в<>ȿ<EFBFBD><C8BF><EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>Ч
public byte byAllowListNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-8<><38>Ϊ0<CEAA><30>Ч
public byte byReportChannel; //<2F><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>Ϊ0<CEAA><30>Ч
public byte byCardReaderKind; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>࣬0-<2D><>Ч<EFBFBD><D0A7>1-IC<49><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,4-ָ<><D6B8>ͷ
public uint dwCardReaderNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwDoorNo; //<2F>ű<EFBFBD><C5B1><EFBFBD><><C2A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>Ϊ0<CEAA><30>Ч
public uint dwVerifyNo; //<2F><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>֤<EFBFBD><D6A4><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwAlarmInNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwAlarmOutNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwCaseSensorNo; //<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwRs485No; //RS485ͨ<35><CDA8><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwMultiCardGroupNo; //Ⱥ<><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wAccessChannel; //<2F><>Աͨ<D4B1><CDA8><EFBFBD><EFBFBD>
public byte byDeviceNo; //<2F><EFBFBD><E8B1B8><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public byte byDistractControlNo;//<2F>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public ushort wLocalControllerID; //<2F>͵ؿ<CDB5><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>0-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-64<36><34><EFBFBD><EFBFBD><EFBFBD>͵ؿ<CDB5><D8BF><EFBFBD><EFBFBD><EFBFBD>
public byte byInternetAccess; //<2F><><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2,3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>
public byte byType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0:<3A><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>,1-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>,2-<2D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> ,3-<2D>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Կ<>׷<EFBFBD><D7B7><EFBFBD> 5-<2D>𾯷<EFBFBD><F0BEAFB7><EFBFBD> 6-<2D>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD> 7-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 8-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-24Сʱ<D0A1>𶯷<EFBFBD><F0B6AFB7><EFBFBD>,10-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7><EFBFBD><EFBFBD><EFBFBD>11-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7><EFBFBD> 0xff-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>Ϊ0<CEAA><30>Ч
public byte bySwipeCardType;//ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>ά<EFBFBD><CEAC>
public byte byMask;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwSerialNo; //<2F>¼<EFBFBD><C2BC><EFBFBD>ˮ<EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public byte byChannelControllerID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byChannelControllerLampID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public byte byChannelControllerIRAdaptorID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD>Ӱ<EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public byte byChannelControllerIREmitterID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_EVENT_INFO_EXTEND
{
public int dwFrontSerialNo; //<2F>¼<EFBFBD><C2BC><EFBFBD>ˮ<EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>Ϊ0<CEAA><30>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>dwSerialNo<4E>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD>ʧ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶβ<D6B6>Ϊ0<CEAA><30>ƽ̨<C6BD><CCA8><EFBFBD>ݸ<EFBFBD><DDB8>ֶκ<D6B6>dwSerialNo<4E>ֶι<D6B6>ͬ<EFBFBD>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD>ʧ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD><EFBFBD><EFBFBD>dwSerialNo<4E><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byUserType; //<2F><>Ա<EFBFBD><D4B1><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>ͨ<EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿͣ<C3BF><CDA3><EFBFBD>3-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>4-<2D><><EFBFBD><EFBFBD>Ա
public byte byCurrentVerifyMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><><EFBFBD>ߣ<EFBFBD>2-ˢ<><CBA2>+<2B><><EFBFBD>룬3-ˢ<><CBA2><EFBFBD><EFBFBD>4-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬5-ָ<>ƣ<EFBFBD>6-ָ<><D6B8>+<2B><><EFBFBD>룬7-ָ<>ƻ<EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD>8-ָ<><D6B8><><CBA2><EFBFBD><EFBFBD>9-ָ<><D6B8><><CBA2>+<2B><><EFBFBD>룬10-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>ƻ<EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬11-<2D><><EFBFBD><EFBFBD><>ƣ<EFBFBD>12-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD>룬13-<2D><><EFBFBD><EFBFBD><><CBA2><EFBFBD><EFBFBD>14-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>15-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD>룬16-ָ<>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD>룬17-<2D><><EFBFBD><EFBFBD><>ƣ<EFBFBD>18-<2D><><EFBFBD><EFBFBD><><D6B8>+<2B><><EFBFBD>룬19-<2D><><EFBFBD><EFBFBD><><D6B8><><CBA2><EFBFBD><EFBFBD>20-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD><EFBFBD><>ƣ<EFBFBD>21-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>22-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CBA2><EFBFBD><EFBFBD>23-ָ<>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>24-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬25-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>26-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>ƣ<EFBFBD>27-ˢ<><CBA2><EFBFBD><EFBFBD>ָ<EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
public byte byCurrentEvent; //<2F>Ƿ<EFBFBD>Ϊʵʱ<CAB5>¼<EFBFBD><C2BC><EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D>ǣ<EFBFBD>ʵʱ<CAB5>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>
public byte byPurePwdVerifyEnable; //<2F><EFBFBD>Ƿ<EFBFBD>֧<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4> 0-<2D><>֧<EFBFBD>֣<EFBFBD>1-֧<><D6A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_EMPLOYEE_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>˹<EFBFBD><CBB9>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44><EFBFBD>ֶΣ<D6B6>byEmployeeNoһ<6F><D2BB>Ҫ<EFBFBD><D2AA><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>byEmployeeNo<4E><6F>ת<EFBFBD><D7AA>ΪdwEmployeeNo<4E><6F><EFBFBD><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ֶ<EFBFBD>ҲҪ<D2B2><D2AA><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD>byEmployeeNo<4E>ֶΣ<D6B6><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><D5A3>ٿ<EFBFBD><D9BF>ǽ<EFBFBD><C7BD><EFBFBD>dwEmployeeNo<4E>ֶΣ<D6B6>
public byte byAttendanceStatus; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-δ<><CEB4><EFBFBD><EFBFBD>,1-<2D>ϰ࣬2-<2D>°࣬3-<2D><>ʼ<EFBFBD><CABC>Ϣ<EFBFBD><CFA2>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>5-<2D><>ʼ<EFBFBD>Ӱ࣬6-<2D><><EFBFBD><EFBFBD><EFBFBD>Ӱ<EFBFBD>
public byte byStatusValue; //<2F><><EFBFBD><EFBFBD>״ֵ̬
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_UUID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byUUID; //UUID<49><44><EFBFBD><EFBFBD><EFBFBD>ֶν<D6B6><CEBD>ڶԽ<DAB6>өʯƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD>вŻ<D0B2>ʹ<EFBFBD>ã<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_DEV_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDeviceName; //<2F><EFBFBD><E8B1B8><EFBFBD>к<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>չ<EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD>ϢV20
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_EVENT_INFO_EXTEND_V20
{
public byte byRemoteCheck; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ҪԶ<D2AA>̺<EFBFBD><CCBA>飨0-<2D><>Ч<EFBFBD><D0A7>1-<2D><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>2-<2D><>Ҫ<EFBFBD><D2AA>
public byte byThermometryUnit; //<2F><><EFBFBD>µ<EFBFBD>λ<EFBFBD><CEBB>0-<2D><><EFBFBD>϶ȣ<CFB6>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>1-<2D><><EFBFBD>϶ȣ<CFB6>2-<2D><><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>
public byte byIsAbnomalTemperature; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><C2B6><EFBFBD><ECB3A3>1-<2D>ǣ<EFBFBD>0-<2D><>
public byte byRes2;
public float fCurrTemperature; //<2F><><EFBFBD><EFBFBD><EFBFBD>ȣ<C2B6><C8A3><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ<D2BB><CEBB>
public NET_VCA_POINT struRegionCoordinates; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
public ushort dwQRCodeInfoLen; //<2F><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort dwVisibleLightDataLen; //<2F>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort dwThermalDataLen; //<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pQRCodeInfo; //<2F><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>
public IntPtr pVisibleLightData; //<2F>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬָ<C6AC><D6B8>
public IntPtr pThermalData; //<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬָ<C6AC><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byAttendanceLabel; //<2F><><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 960, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_ALARM_INFO
{
public uint dwSize;
public uint dwMajor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF><EFBFBD><EAB6A8>
public uint dwMinor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF><EFBFBD><EAB6A8>
public NET_DVR_TIME struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNetUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public NET_DVR_IPADDR struRemoteHostAddr ;//Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public NET_DVR_ACS_EVENT_INFO struAcsEventInfo; //<2F><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pPicData;
public ushort wInductiveEventType; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>жϸ<D0B6>ֵΪ<D6B5><CEAA><30>󣬱<EFBFBD><F3A3ACB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD><D6A3><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>ԭ<EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>dwMajor<6F><72>dwMinor<6F><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicTransType; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD><DDB4>ʽ: 0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-url
public byte byRes1; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public uint dwIOTChannelNo; //IOTͨ<54><CDA8><EFBFBD><EFBFBD>
public IntPtr pAcsEventInfoExtend; //byAcsEventInfoExtendΪ1ʱ<31><CAB1><EFBFBD><EFBFBD>ʾָ<CABE><D6B8>һ<EFBFBD><D2BB>NET_DVR_ACS_EVENT_INFO_EXTEND<4E><EFBFBD><E1B9B9>
public byte byAcsEventInfoExtend; //pAcsEventInfoExtend<6E>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч
public byte byTimeType; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬1-UTCʱ<43>䣨struTime<6D><65>ʱ<EFBFBD>
public byte byRes2; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
public byte byAcsEventInfoExtendV20; //pAcsEventInfoExtendV20<32>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч
public IntPtr pAcsEventInfoExtendV20; //byAcsEventInfoExtendV20Ϊ1ʱ<31><CAB1><EFBFBD><EFBFBD>ʾָ<CABE><D6B8>һ<EFBFBD><D2BB>NET_DVR_ACS_EVENT_INFO_EXTEND_V20<32><EFBFBD><E1B9B9>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_EVENT_DETAIL
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //<2F><><EFBFBD>ţ<EFBFBD>mac<61><63>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ϊ0<CEAA><30>Ч
public byte byCardType; //<2F><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>3-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Ѳ<><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-в<>ȿ<EFBFBD><C8BF><EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>Ч
public byte byAllowListNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1-8<><38>Ϊ0<CEAA><30>Ч
public byte byReportChannel; //<2F><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>Ϊ0<CEAA><30>Ч
public byte byCardReaderKind; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>࣬0-<2D><>Ч<EFBFBD><D0A7>1-IC<49><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,4-ָ<><D6B8>ͷ
public uint dwCardReaderNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwDoorNo; //<2F>ű<EFBFBD><C5B1>ţ<EFBFBD>¥<EFBFBD><C2A5><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwVerifyNo; //<2F><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>֤<EFBFBD><D6A4><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwAlarmInNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwAlarmOutNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwCaseSensorNo; //<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwRs485No; //RS485ͨ<35><CDA8><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwMultiCardGroupNo; //Ⱥ<><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wAccessChannel; //<2F><>Աͨ<D4B1><CDA8><EFBFBD><EFBFBD>
public byte byDeviceNo; //<2F><EFBFBD><E8B1B8><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public byte byDistractControlNo;//<2F>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public ushort wLocalControllerID; //<2F>͵ؿ<CDB5><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>0-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-64<36><34><EFBFBD><EFBFBD><EFBFBD>͵ؿ<CDB5><D8BF><EFBFBD><EFBFBD><EFBFBD>
public byte byInternetAccess; //<2F><><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1,2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2,3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>
public byte byType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0:<3A><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>,1-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>,2-<2D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> ,3-<2D>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Կ<>׷<EFBFBD><D7B7><EFBFBD> 5-<2D>𾯷<EFBFBD><F0BEAFB7><EFBFBD> 6-<2D>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD> 7-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 8-24Сʱ<D0A1><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-24Сʱ<D0A1>𶯷<EFBFBD><F0B6AFB7><EFBFBD>,10-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7><EFBFBD><EFBFBD><EFBFBD>11-<2D>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><C5B7><EFBFBD> 0xff-<2D><>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMACAddr; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>Ϊ0<CEAA><30>Ч
public byte bySwipeCardType;//ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>ά<EFBFBD><CEAC>
public byte byEventAttribute; //<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ԣ<EFBFBD>0-δ<><CEB4><EFBFBD>壬1-<2D>Ϸ<EFBFBD><CFB7><EFBFBD>֤<EFBFBD><D6A4>2-<2D><><EFBFBD><EFBFBD>
public uint dwSerialNo; //<2F>¼<EFBFBD><C2BC><EFBFBD>ˮ<EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public byte byChannelControllerID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byChannelControllerLampID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public byte byChannelControllerIRAdaptorID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD>Ӱ<EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public byte byChannelControllerIREmitterID; //ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44>Ϊ0<CEAA><30>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public uint dwRecordChannelNum; //¼<><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ŀ
public IntPtr pRecordChannelData;//¼<><C2BC>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>СΪsizeof(DWORD)* dwRecordChannelNum
public byte byUserType; //<2F><>Ա<EFBFBD><D4B1><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>ͨ<EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿͣ<C3BF><CDA3><EFBFBD>3-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>4-<2D><><EFBFBD><EFBFBD>Ա
public byte byCurrentVerifyMode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><><EFBFBD>ߣ<EFBFBD>2-ˢ<><CBA2>+<2B><><EFBFBD>룬3-ˢ<><CBA2><EFBFBD><EFBFBD>4-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬5-ָ<>ƣ<EFBFBD>6-ָ<><D6B8>+<2B><><EFBFBD>룬7-ָ<>ƻ<EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD>8-ָ<><D6B8><><CBA2><EFBFBD><EFBFBD>9-ָ<><D6B8><><CBA2>+<2B><><EFBFBD>룬10-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>ƻ<EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬11-<2D><><EFBFBD><EFBFBD><>ƣ<EFBFBD>12-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD>
//13-<2D><><EFBFBD><EFBFBD><><CBA2><EFBFBD><EFBFBD>14-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>15-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD>룬16-ָ<>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD>룬17-<2D><><EFBFBD><EFBFBD><>ƣ<EFBFBD>18-<2D><><EFBFBD><EFBFBD><><D6B8>+<2B><><EFBFBD>룬19-<2D><><EFBFBD><EFBFBD><><D6B8><><CBA2><EFBFBD><EFBFBD>20-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD><EFBFBD><>ƣ<EFBFBD>21-<2D><><EFBFBD><EFBFBD>+<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>22-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><CBA2><EFBFBD><EFBFBD>23-ָ<>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>24-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬25-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>26-ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>ƣ<EFBFBD>27-ˢ<><CBA2><EFBFBD><EFBFBD>ָ<EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
public byte byAttendanceStatus; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0-δ<><CEB4><EFBFBD><EFBFBD>,1-<2D>ϰ࣬2-<2D>°࣬3-<2D><>ʼ<EFBFBD><CABC>Ϣ<EFBFBD><CFA2>4-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>5-<2D><>ʼ<EFBFBD>Ӱ࣬6-<2D><><EFBFBD><EFBFBD><EFBFBD>Ӱ<EFBFBD>
public byte byStatusValue; //<2F><><EFBFBD><EFBFBD>״ֵ̬
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_EMPLOYEE_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>˹<EFBFBD><CBB9>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44><EFBFBD>ֶΣ<D6B6>byEmployeeNoһ<6F><D2BB>Ҫ<EFBFBD><D2AA><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>byEmployeeNo<4E><6F>ת<EFBFBD><D7AA>ΪdwEmployeeNo<4E><6F><EFBFBD><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ֶ<EFBFBD>ҲҪ<D2B2><D2AA><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD>byEmployeeNo<4E>ֶΣ<D6B6><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><D5A3>ٿ<EFBFBD><D9BF>ǽ<EFBFBD><C7BD><EFBFBD>dwEmployeeNo<4E>ֶΣ<D6B6>
public byte byRes1; //<2F><><EFBFBD><EFBFBD>
public byte byMask; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byThermometryUnit; //<2F><><EFBFBD>µ<EFBFBD>λ<EFBFBD><CEBB>0-<2D><><EFBFBD>϶ȣ<CFB6>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>1-<2D><><EFBFBD>϶ȣ<CFB6>2-<2D><><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>
public byte byIsAbnomalTemperature; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><C2B6><EFBFBD><ECB3A3>1-<2D>ǣ<EFBFBD>0-<2D><>
public float fCurrTemperature; //<2F><><EFBFBD><EFBFBD><EFBFBD>ȣ<C2B6><C8A3><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ<D2BB><CEBB>
public NET_VCA_POINT struRegionCoordinates; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 48, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byMACAddr = new byte[CHCNetSDK.MACADDR_LEN];
byEmployeeNo = new byte[CHCNetSDK.NET_SDK_EMPLOYEE_NO_LEN];
byRes = new byte[48];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_EVENT_CFG
{
public uint dwSize;
public uint dwMajor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF><EFBFBD><EAB6A8>
public uint dwMinor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF><EFBFBD><EAB6A8>
public NET_DVR_TIME struTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNetUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public NET_DVR_IPADDR struRemoteHostAddr;//Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public NET_DVR_ACS_EVENT_DETAIL struAcsEventInfo; //<2F><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pPicData;
public ushort wInductiveEventType; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>μ<EFBFBD>2.2<EFBFBD>½ڣ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϸ<EFBFBD>ֵΪ<EFBFBD><EFBFBD><EFBFBD>󣬱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>ԭ<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>dwMajor<EFBFBD><EFBFBD>dwMinor<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTimeType; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD>䣨Ĭ<E4A3A8>ϣ<EFBFBD><CFA3><EFBFBD>1-UTCʱ<43>䣨struTime<6D><65>ʱ<EFBFBD>
public byte byRes1;
public uint dwQRCodeInfoLen; //<2F><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwVisibleLightDataLen; //<2F>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwThermalDataLen; //<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pQRCodeInfo; //<2F><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>
public IntPtr pVisibleLightData; //<2F>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬָ<C6AC><D6B8>
public IntPtr pThermalData; //<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬָ<C6AC><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 36, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
sNetUser = new byte[CHCNetSDK.MAX_NAMELEN];
struRemoteHostAddr.Init();
struAcsEventInfo.init();
byRes = new byte[36];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_DATE
{
public ushort wYear; //<2F><>
public byte byMonth; //<2F><>
public byte byDay; //<2F><>
}
//<2F><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ID_CARD_INFO
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ID_NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName; //<2F><><EFBFBD><EFBFBD>
public NET_DVR_DATE struBirth; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ID_ADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byAddr; //סַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ID_NUM_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byIDNum; //<2F><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_ID_ISSUING_AUTHORITY_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byIssuingAuthority; //ǩ<><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_DATE struStartDate; //<2F><>Ч<EFBFBD><D0A7>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
public NET_DVR_DATE struEndDate; //<2F><>Ч<EFBFBD><D0A7>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>
public byte byTermOfValidity; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7> 0-<2D><><EFBFBD><EFBFBD>1-<2D>ǣ<EFBFBD><C7A3><EFBFBD>Ч<EFBFBD><D0A7>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>
public byte bySex; //<2F>Ա<EFBFBD><D4B1><EFBFBD>1-<2D>У<EFBFBD>2-Ů
public byte byNation;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 101, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><>չ<EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ID_CARD_INFO_EXTEND
{
public byte byRemoteCheck; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ҪԶ<D2AA>̺<EFBFBD><CCBA>飨0-<2D><>Ч<EFBFBD><D0A7>1-<2D><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>2-<2D><>Ҫ<EFBFBD><D2AA>
public byte byThermometryUnit; //<2F><><EFBFBD>µ<EFBFBD>λ<EFBFBD><CEBB>0-<2D><><EFBFBD>϶ȣ<CFB6>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>1-<2D><><EFBFBD>϶ȣ<CFB6>2-<2D><><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>
public byte byIsAbnomalTemperature; //<2F><><EFBFBD><EFBFBD>ץ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><C2B6><EFBFBD><ECB3A3>1-<2D>ǣ<EFBFBD>0-<2D><>
public byte byRes2;
public float fCurrTemperature; //<2F><><EFBFBD><EFBFBD><EFBFBD>ȣ<C2B6><C8A3><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ<D2BB><CEBB>
public NET_VCA_POINT struRegionCoordinates; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
public uint dwQRCodeInfoLen; //<2F><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwVisibleLightDataLen; //<2F>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwThermalDataLen; //<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pQRCodeInfo; //<2F><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>Ϣָ<CFA2><D6B8>
public IntPtr pVisibleLightData; //<2F>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD>ͼƬָ<C6AC><D6B8>
public IntPtr pThermalData; //<2F>ȳ<EFBFBD><C8B3><EFBFBD>ͼƬָ<C6AC><D6B8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 1024, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ID_CARD_INFO_ALARM
{
public uint dwSize; //<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public NET_DVR_ID_CARD_INFO struIDCardCfg;//<2F><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>Ϣ
public uint dwMajor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF><EFBFBD><EAB6A8>
public uint dwMinor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF><EFBFBD><EAB6A8>
public NET_DVR_TIME_V30 struSwipeTime; //ʱ<><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] byNetUser;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>
public NET_DVR_IPADDR struRemoteHostAddr;//Զ<><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
public uint dwCardReaderNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwDoorNo; //<2F>ű<EFBFBD><C5B1>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
public uint dwPicDataLen; //ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pPicData;
public byte byCardType; //<2F><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>3-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Ѳ<><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-в<>ȿ<EFBFBD><C8BF><EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>Ч
public byte byDeviceNo; // <20><EFBFBD><E8B1B8><EFBFBD>ţ<EFBFBD>Ϊ0ʱ<30><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Χ1-255<35><35>
public byte byMask; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byCurrentEvent;//<2F>Ƿ<EFBFBD>Ϊʵʱ<CAB5>¼<EFBFBD><C2BC><EFBFBD>0-<2D><>Ч<EFBFBD><D0A7>1-<2D>ǣ<EFBFBD>ʵʱ<CAB5>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>
public uint dwFingerPrintDataLen; // ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pFingerPrintData;
public uint dwCapturePicDataLen; // ץ<><D7A5>ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pCapturePicData;
public uint dwCertificatePicDataLen; //֤<><D6A4>ץ<EFBFBD><D7A5>ͼƬ<CDBC><C6AC><EFBFBD>ݴ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>Ϊ0<CEAA>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public IntPtr pCertificatePicData;
public byte byCardReaderKind; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>࣬0-<2D><>Ч<EFBFBD><D0A7>1-IC<49><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,4-ָ<><D6B8>ͷ
public byte byHelmet;//<2F><>ѡ<EFBFBD><D1A1><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ȫñ<C8AB><C3B1>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-δ֪<CEB4><D6AA>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ, 3-<2D><><EFBFBD><EFBFBD>ȫñ
public byte byRes3;
public byte byIDCardInfoExtend; //pIDCardInfoExtend<6E>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч
public IntPtr pIDCardInfoExtend; //byIDCardInfoExtendΪ1ʱ<31><CAB1><EFBFBD><EFBFBD>ʾָ<CABE><D6B8>һ<EFBFBD><D2BB>NET_DVR_ID_CARD_INFO_EXTEND<4E><EFBFBD><E1B9B9>
public uint dwSerialNo; //<2F>¼<EFBFBD><C2BC><EFBFBD>ˮ<EFBFBD>ţ<EFBFBD>Ϊ0<CEAA><30>Ч
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 168, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_VALID_PERIOD_CFG
{
public byte byEnable; //ʹ<><CAB9><EFBFBD><EFBFBD>Ч<EFBFBD>ڣ<EFBFBD>0-<2D><>ʹ<EFBFBD>ܣ<EFBFBD>1ʹ<31><CAB9>
public byte byBeginTimeFlag; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼʱ<CABC><CAB1><EFBFBD>ı<EFBFBD>־<EFBFBD><D6BE>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byEnableTimeFlag; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹʱ<D6B9><CAB1><EFBFBD>ı<EFBFBD>־<EFBFBD><D6BE>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byTimeDurationNo; //<2F><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>0<EFBFBD><30>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>SDK<44><4B><EFBFBD>ø<EFBFBD><C3B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD>ʱ<EFBFBD><CAB1>ֻ<EFBFBD><D6BB>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_TIME_EX struBeginTime; //<2F><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>ʼʱ<CABC><CAB1>
public NET_DVR_TIME_EX struEndTime; //<2F><>Ч<EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>ʱ<EFBFBD><CAB1>
public byte byTimeType; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD>䣨Ĭ<E4A3A8>ϣ<EFBFBD><CFA3><EFBFBD>1-UTCʱ<43><EFBFBD><E4A3A8><EFBFBD><EFBFBD>struBeginTime<6D><65>struEndTime<6D>ֶ<EFBFBD><D6B6><EFBFBD>Ч<EFBFBD><D0A7>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CARD_COND
{
public uint dwSize;
public uint dwCardNum; //card number, 0xffffffff means to get all card information when getting
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes = new byte[64];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CARD_RECORD
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //card No
public byte byCardType;
public byte byLeaderCard;
public byte byUserType;
public byte byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOOR_NUM_256, ArraySubType = UnmanagedType.I1)]
public byte[] byDoorRight;
public NET_DVR_VALID_PERIOD_CFG struValid;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_GROUP_NUM_128, ArraySubType = UnmanagedType.I1)]
public byte[] byBelongGroup;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CARD_PASSWORD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardPassword;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOOR_NUM_256, ArraySubType = UnmanagedType.I1)]
public ushort[] wCardRightPlan;
public uint dwMaxSwipeTimes;
public uint dwSwipeTimes;
public uint dwEmployeeNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName;
//<2F><>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>
//<2F><><30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7B1A8>
//<2F><><31><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>
//<2F><><32><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ƿͿ<C6BF>
//<2F><><33><CEBB>ʾ<EFBFBD><CABE>ͨ<EFBFBD><CDA8>
//<2F><><34><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><35><CEBB>ʾ<EFBFBD><CABE>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwCardRight;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byCardNo = new byte[ACS_CARD_NO_LEN];
byDoorRight = new byte[MAX_DOOR_NUM_256];
byBelongGroup = new byte[MAX_GROUP_NUM_128];
byCardPassword = new byte[CARD_PASSWORD_LEN];
wCardRightPlan = new ushort[MAX_DOOR_NUM_256];
byName = new byte[NAME_LEN];
byRes = new byte[256];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CARD_STATUS
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //card No
public uint dwErrorCode;
public byte byStatus; //0-fail, 1-success
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 23, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byCardNo = new byte[ACS_CARD_NO_LEN];
byRes = new byte[23];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CARD_SEND_DATA
{
public uint dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //card No
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byCardNo = new byte[ACS_CARD_NO_LEN];
byRes = new byte[16];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_PARAM_CTRL_ByCard
{
public int dwSize;
public byte byMode;//0 del by card,1 del by card reader
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_FACE_PARAM_BYCARD struProcessMode;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes1 = new byte[3];
byRes = new byte[64];
struProcessMode = new NET_DVR_FACE_PARAM_BYCARD();
struProcessMode.Init();
}
}
public const int MAX_FACE_NUM = 2; //max face number
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_PARAM_BYCARD
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.MAX_CARD_READER_NUM_512, ArraySubType = UnmanagedType.I1)]
public byte[] byEnableCardReader;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.MAX_FACE_NUM, ArraySubType = UnmanagedType.I1)]
public byte[] byFaceID;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 42, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public void Init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byEnableCardReader = new byte[CHCNetSDK.MAX_CARD_READER_NUM_512];
byFaceID = new byte[CHCNetSDK.MAX_FACE_NUM];
byRes1 = new byte[42];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_PARAM_CTRL_ByReader
{
public int dwSize;
public byte byMode;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_FACE_PARAM_BYREADER struProcessMode;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes1 = new byte[3];
byRes = new byte[64];
struProcessMode = new NET_DVR_FACE_PARAM_BYREADER();
struProcessMode.Init();
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_PARAM_BYREADER
{
public int dwCardReaderNo;
public byte byClearAllCard;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 548, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes1 = new byte[3];
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byRes = new byte[548];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_STATUS
{
public int dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ERROR_MSG_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byErrorMsg;//<2F>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>byCardReaderRecvStatusΪ4ʱ<34><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD>Ѵ<EFBFBD><D1B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>
public int dwReaderNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>󷵻<EFBFBD>
public byte byRecvStatus; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD>ֽڱ<D6BD>ʾ<EFBFBD><CABE>0-ʧ<>ܣ<EFBFBD>1-<2D>ɹ<EFBFBD><C9B9><EFBFBD>2-<2D><><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3-<2D>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>4-<2D>Ѵ<EFBFBD><D1B4>ڸ<EFBFBD><DAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-<2D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 131, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byErrorMsg = new byte[CHCNetSDK.ERROR_MSG_LEN];
byRes = new byte[131];
}
}
[StructLayout(LayoutKind.Sequential)]
public struct NET_DVR_FACE_RECORD
{
public int dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN)]
public byte[] byCardNo;
public int dwFaceLen;
public IntPtr pFaceBuffer;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 128)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byRes = new byte[128];
}
}
[StructLayout(LayoutKind.Sequential)]
public struct NET_DVR_FACE_COND
{
public int dwSize;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN)]
public byte[] byCardNo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD>ɲ<EFBFBD><C9B2><EFBFBD><EFBFBD>ã<EFBFBD>
public int dwFaceNum;// <20><><EFBFBD>û<EFBFBD><C3BB><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡʱ<C8A1><CAB1>Ϊ0xffffffff<66><66>ʾ<EFBFBD><CABE>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public int dwEnableReaderNo;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 124)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byRes = new byte[124];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACE_PARAM_CTRL_CARDNO
{
public int dwSize;
public byte byMode;//ɾ<><C9BE><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD>ʽɾ<CABD><C9BE><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public CHCNetSDK.NET_DVR_FACE_PARAM_BYCARD struByCard;//<2F><><EFBFBD><EFBFBD><EFBFBD>ŵķ<C5B5>ʽɾ<CABD><C9BE>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>д
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public void Init()
{
byRes1 = new byte[3];
byRes = new byte[64];
struByCard.Init();
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FINGERPRINT_COND
{
public int dwSize;
public int dwFingerprintNum;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CHCNetSDK.ACS_CARD_NO_LEN)]
public byte[] byCardNo;
public int dwEnableReaderNo;
public byte byFingerPrintID;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 131)]
public byte[] byRes;
public void init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byRes = new byte[131];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CARD_CFG_V50
{
public uint dwSize;
public uint dwModifyParamType;
// <20><>Ҫ<EFBFBD>޸ĵĿ<C4B5><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>ÿλ<C3BF><CEBB><EFBFBD><EFBFBD>һ<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD><31><CEAA>Ҫ<EFBFBD>޸ģ<DEB8><30><CEAA><EFBFBD>޸<EFBFBD>
// #define CARD_PARAM_CARD_VALID 0x00000001 //<2F><><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>
// #define CARD_PARAM_VALID 0x00000002 //<2F><>Ч<EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
// #define CARD_PARAM_CARD_TYPE 0x00000004 //<2F><><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>
// #define CARD_PARAM_DOOR_RIGHT 0x00000008 //<2F><>Ȩ<EFBFBD>޲<EFBFBD><DEB2><EFBFBD>
// #define CARD_PARAM_LEADER_CARD 0x00000010 //<2F>׿<EFBFBD><D7BF><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_PARAM_SWIPE_NUM 0x00000020 //<2F><><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_PARAM_GROUP 0x00000040 //<2F><><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_PARAM_PASSWORD 0x00000080 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_PARAM_RIGHT_PLAN 0x00000100 //<2F><>Ȩ<EFBFBD>޼ƻ<DEBC><C6BB><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_PARAM_SWIPED_NUM 0x00000200 //<2F><>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_PARAM_EMPLOYEE_NO 0x00000400 //<2F><><EFBFBD><EFBFBD>
// #define CARD_PARAM_NAME 0x00000800 //<2F><><EFBFBD><EFBFBD>
// #define CARD_PARAM_DEPARTMENT_NO 0x00001000 //<2F><><EFBFBD>ű<EFBFBD><C5B1><EFBFBD>
// #define CARD_SCHEDULE_PLAN_NO 0x00002000 //<2F>Ű<EFBFBD><C5B0>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_SCHEDULE_PLAN_TYPE 0x00004000 //<2F>Ű<EFBFBD><C5B0>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_ROOM_NUMBER 0x00008000 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// #define CARD_SIM_NO 0x00010000 //SIM<49><4D><EFBFBD>ţ<EFBFBD><C5A3>ֻ<EFBFBD><D6BB>ţ<EFBFBD>
// #define CARD_FLOOR_NUMBER 0x00020000 //¥<><C2A5><EFBFBD><EFBFBD>
// #define CARD_USER_TYPE 0x00040000 //<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //<2F><><EFBFBD><EFBFBD>
public byte byCardValid; //<2F><><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7>0-<2D><>Ч<EFBFBD><D0A7>1-<2D><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ϊ0<CEAA><30><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡʱ<C8A1><CAB1><EFBFBD>ֶ<EFBFBD>ʼ<EFBFBD><CABC>Ϊ1<CEAA><31>
public byte byCardType; //<2F><><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>3-<2D><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-Ѳ<><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-в<>ȿ<EFBFBD><C8BF><EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-Ա<><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10-Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>11-Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8>ʱ<EFBFBD><CAB1>Ȩ<EFBFBD>ޣ<EFBFBD><DEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD><DCBF>ţ<EFBFBD><C5A3><EFBFBD>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public byte byLeaderCard; //<2F>Ƿ<EFBFBD>Ϊ<EFBFBD>׿<EFBFBD><D7BF><EFBFBD>1-<2D>ǣ<EFBFBD>0-<2D><>
public byte byUserType; // 0 <20>C <20><>ͨ<EFBFBD>û<EFBFBD>1 - <20><><EFBFBD><EFBFBD>Ա<EFBFBD>û<EFBFBD>;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOOR_NUM_256, ArraySubType = UnmanagedType.I1)]
public byte[] byDoorRight; //<2F><>Ȩ<EFBFBD><C8A8><><C2A5>Ȩ<EFBFBD>ޡ<EFBFBD><DEA1><EFBFBD>Ȩ<EFBFBD><C8A8>)<29><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><31><CEAA>Ȩ<EFBFBD>ޣ<EFBFBD><30><CEAA>Ȩ<EFBFBD>ޣ<EFBFBD><DEA3>ӵ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD>1-N<>Ƿ<EFBFBD><C7B7><EFBFBD>Ȩ<EFBFBD><C8A8>
public NET_DVR_VALID_PERIOD_CFG struValid; //<2F><>Ч<EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_GROUP_NUM_128, ArraySubType = UnmanagedType.I1)]
public byte[] byBelongGroup; //<2F><><EFBFBD><EFBFBD>Ⱥ<EFBFBD><EFBFBD><E9A3AC><EFBFBD>ֽڱ<D6BD>ʾ<EFBFBD><CABE>1-<2D><><EFBFBD>ڣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = CARD_PASSWORD_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardPassword; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOOR_NUM_256*MAX_CARD_RIGHT_PLAN_NUM, ArraySubType = UnmanagedType.U2)]
public ushort[] wCardRightPlan; //<2F><>Ȩ<EFBFBD>޼ƻ<DEBC><C6BB><EFBFBD>ȡֵΪ<D6B5>ƻ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD>ƻ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>޻<EFBFBD><DEBB>ķ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
public uint dwMaxSwipeTime; //<2F><><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30>޴<EFBFBD><DEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwSwipeTime; //<2F><>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wRoomNumber; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public ushort wFloorNumber; //<2F><><EFBFBD><EFBFBD>
public uint dwEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD><C5A3>û<EFBFBD>ID<49><44>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName; //<2F><><EFBFBD><EFBFBD>
public ushort wDepartmentNo; //<2F><><EFBFBD>ű<EFBFBD><C5B1><EFBFBD>
public ushort wSchedulePlanNo; //<2F>Ű<EFBFBD><C5B0>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>
public byte bySchedulePlanType; //<2F>Ű<EFBFBD><C5B0>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>塢1-<2D><><EFBFBD>ˡ<EFBFBD>2-<2D><><EFBFBD><EFBFBD>
public byte byRightType; //<2F>·<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ȩ<EFBFBD>ޡ<EFBFBD>1-<2D><>ά<EFBFBD><CEAC>Ȩ<EFBFBD>ޡ<EFBFBD>2-<2D><><EFBFBD><EFBFBD>Ȩ<EFBFBD>ޣ<EFBFBD><DEA3><EFBFBD><EFBFBD>ӶԽ<D3B6><D4BD><EFBFBD><E8B1B8>ά<EFBFBD><CEAC>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEA3BA><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD><C5A1><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>ޣ<EFBFBD><DEA3><EFBFBD><EFBFBD>ţ<EFBFBD>өʯAPP<50>˺ţ<CBBA><C5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8>һ<EFBFBD>£<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
public uint dwLockID; //<2F><>ID
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_LOCK_CODE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byLockCode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DOOR_CODE_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byRoomCode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0-<2D><>Ȩ<EFBFBD>ޣ<EFBFBD>1-<2D><>Ȩ<EFBFBD><C8A8>
//<2F><><30><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7B1A8>
//<2F><><31><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>
//<2F><><32><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ƿͿ<C6BF>
//<2F><><33><CEBB>ʾ<EFBFBD><CABE>ͨ<EFBFBD><CDA8>
//<2F><><34><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><35><CEBB>ʾ<EFBFBD><CABE>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwCardRight; //<2F><>Ȩ<EFBFBD><C8A8>
public uint dwPlanTemplate; //<2F>ƻ<EFBFBD>ģ<EFBFBD><C4A3>(ÿ<><C3BF>)<29><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE>0--<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public uint dwCardUserId; //<2F>ֿ<EFBFBD><D6BF><EFBFBD>ID
public byte byCardModelType; //0-<2D>գ<EFBFBD>1- M1 CARD S50<35><30>2- M1 CARD S70<37><30>3- FM1208 CPU<50><55><EFBFBD><EFBFBD>4- FM1216 CPU<50><55><EFBFBD><EFBFBD>5-<2D><><EFBFBD><EFBFBD>CPU<50><55><EFBFBD><EFBFBD>6-<2D><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>7- NFC
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 51, ArraySubType = UnmanagedType.I1)]
public byte[] byRes3;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] bySIMNum; //SIM<49><4D><EFBFBD>ţ<EFBFBD><C5A3>ֻ<EFBFBD><D6BB>ţ<EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CHECK_FACE_PICTURE_COND
{
public uint dwSize;
public uint dwPictureNum; //ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
public byte byCheckTemplate; //0-У<><D0A3>ͼƬ<CDBC>Ƿ<EFBFBD><C7B7>Ϸ<EFBFBD><CFB7><EFBFBD>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>1-У<><D0A3>ͼƬ<CDBC>ͽ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>ƥ<EFBFBD><C6A5>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 127, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GROUP_COMBINATION_INFO_V50
{
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ø<EFBFBD>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byMemberNum; //ˢ<><CBA2><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
public byte bySequenceNo; //Ⱥ<><C8BA>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byRes;
public uint dwGroupNo; //Ⱥ<><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0xffffffff<66><66>ʾԶ<CABE>̿<EFBFBD><CCBF>ţ<EFBFBD>0xfffffffe<66><65>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MULTI_CARD_GROUP_CFG_V50
{
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>øö<C3B8><C3B6>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byEnableOfflineVerifyMode; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>֤<EFBFBD><D6A4>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>̿<EFBFBD><CCBF>ţ<EFBFBD><C5A3><EFBFBD>1-<2D><><EFBFBD>ã<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwTemplateNo; //<2F><><EFBFBD>ö<EFBFBD><C3B6>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD>ܵļƻ<C4BC>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = GROUP_COMBINATION_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_GROUP_COMBINATION_INFO_V50[] struGroupCombination; //Ⱥ<><C8BA><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_MULTI_CARD_CFG_V50
{
public uint dwSize;
public byte byEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD>ܣ<EFBFBD>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte bySwipeIntervalTimeout; //ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1>䣬1-255s<35><73>Ĭ<EFBFBD><C4AC>10s
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_MULTI_CARD_GROUP_NUM_20, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_MULTI_CARD_GROUP_CFG_V50[] struGroupCfg; //Ⱥ<><C8BA>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
public const int NET_SDK_MONITOR_ID_LEN = 64; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ACS_EVENT_COND
{
public uint dwSize;
public uint dwMajor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF>¼<EFBFBD><C2BC>ϴ<EFBFBD><CFB4><EFBFBD>壬0-ȫ<><C8AB>
public uint dwMinor; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>ο<EFBFBD><CEBF>¼<EFBFBD><C2BC>ϴ<EFBFBD><CFB4><EFBFBD>壬0-ȫ<><C8AB>
public NET_DVR_TIME struStartTime; //<2F><>ʼʱ<CABC><CAB1>
public NET_DVR_TIME struEndTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = ACS_CARD_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byCardNo; //<2F><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byName; //<2F>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byPicEnable; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ͼƬ<CDBC><C6AC>0-<2D><><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC>1-<2D><>ͼƬ
public byte byTimeType; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʱ<EFBFBD>䣨Ĭ<E4A3A8>ϣ<EFBFBD><CFA3><EFBFBD>1-UTCʱ<43>䣨struStartTime<6D><65>struEndTime<6D><65>ʱ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2; //<2F><><EFBFBD><EFBFBD>
public uint dwBeginSerialNo; //<2F><>ʼ<EFBFBD><CABC>ˮ<EFBFBD>ţ<EFBFBD>Ϊ0ʱĬ<CAB1><C4AC>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
public uint dwEndSerialNo; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD>ţ<EFBFBD>Ϊ0ʱĬ<CAB1><C4AC>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
public uint dwIOTChannelNo; //IOTͨ<54><CDA8><EFBFBD>ţ<EFBFBD>0-<2D><>Ч
public ushort wInductiveEventType; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>μ<EFBFBD>2.2<EFBFBD>½ڣ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϸ<EFBFBD>ֵΪ<EFBFBD><EFBFBD><EFBFBD>󣬱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>ԭ<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>dwMajor<EFBFBD><EFBFBD>dwMinor<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte bySearchType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD>¼<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱͨ<CAB1><CDA8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ƶͨ<C6B5><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>2-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD>
public byte byEventAttribute; //<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ԣ<EFBFBD>0-δ<><CEB4><EFBFBD>壬1-<2D>Ϸ<EFBFBD><CFB7>¼<EFBFBD><C2BC><EFBFBD>2-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_MONITOR_ID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] szMonitorID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>кš<D0BA>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD><CDA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>к<EFBFBD>+<2B><>DOOR<4F><52>+<2B>ű<EFBFBD><C5B1>ţ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_EMPLOYEE_NO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byEmployeeNo; //<2F><><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>ԱID<49><44>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 140, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public void Init()
{
byCardNo = new byte[CHCNetSDK.ACS_CARD_NO_LEN];
byName = new byte[CHCNetSDK.NAME_LEN];
byRes2 = new byte[2];
byEmployeeNo = new byte[CHCNetSDK.NET_SDK_EMPLOYEE_NO_LEN];
byRes = new byte[140];
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LOCAL_GENERAL_CFG
{
public byte byExceptionCbDirectly; //0-ͨ<><CDA8><EFBFBD>̳߳<DFB3><CCB3><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>1-ֱ<><D6B1><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>ϲ<EFBFBD>
public byte byNotSplitRecordFile; //<2F>طź<D8B7>Ԥ<EFBFBD><D4A4><EFBFBD>б<EFBFBD><D0B1><EFBFBD><E6B5BD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>Ƭ 0-Ĭ<><C4AC><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC>1-<2D><><EFBFBD><EFBFBD>Ƭ
public byte byResumeUpgradeEnable; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>0-<2D>رգ<D8B1>Ĭ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>1-<2D><><EFBFBD><EFBFBD>
public byte byAlarmJsonPictureSeparate; //<2F><><EFBFBD><EFBFBD>JSON͸<4E><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݺ<EFBFBD>ͼƬ<CDBC>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>룬0-<2D><><EFBFBD><EFBFBD><EFBFBD>룬1-<2D><><EFBFBD><EFBFBD><EBA3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>COMM_ISAPI_ALARM<52>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>أ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes; //<2F><><EFBFBD><EFBFBD>
public Int64 i64FileSize; //<2F><>λ<EFBFBD><CEBB>Byte
public uint dwResumeUpgradeTimeout; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1><EFBFBD><E4A3AC>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 236, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1; //Ԥ<><D4A4>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LOCAL_CHECK_DEV
{
public uint dwCheckOnlineTimeout; //Ѳ<><D1B2>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λms <20><>СֵΪ30s<30><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ120s<30><73>Ϊ0ʱ<30><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>Ĭ<EFBFBD><C4AC>ֵ(120s)
public uint dwCheckOnlineNetFailMax; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼӴ<DBBC><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵSDK<44>Żص<C5BB><D8B5>û<EFBFBD><C3BB><EFBFBD><ECB3A3>Ϊ0ʱ<30><CAB1><EFBFBD><EFBFBD>ʾʹ<CABE><CAB9>Ĭ<EFBFBD><C4AC>ֵ1
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARM_ISAPI_INFO
{
public IntPtr pAlarmData; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public uint dwAlarmDataLen; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
public byte byDataType; // 0-invalid,1-xml,2-json
public byte byPicturesNumber; // ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public IntPtr pPicPackData; // ͼƬ<CDBC><EFBFBD><E4B3A4><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
}
public const int MAX_FILE_PATH_LEN = 256; //<2F>ļ<EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARM_ISAPI_PICDATA
{
public uint dwPicLen;
public byte byPicType; //ͼƬ<CDBC><C6AC>ʽ: 1- jpg
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_FILE_PATH_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] szFilename;
public IntPtr pPicData;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_EXTERNAL_DEVICE_STATE_UNION
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 512, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE
{
public uint dwSize;
public byte byDevType; //1-UPS<50><53>2-<2D><><EFBFBD>ص<EFBFBD>Դ<EFBFBD><D4B4>3-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>4-<2D><>ʪ<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5-<2D>յ<EFBFBD><D5B5><EFBFBD>6-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬, 8-ˮλ<CBAE><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9-<2D><EFBFBD><EFB3BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10-<2D><><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC>ǡ<EFBFBD>11-<2D><><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>12-ͨ<><CDA8><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>״̬<D7B4><CCAC>13-<2D><>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>14-̫<><CCAB><EFBFBD>ܿ<EFBFBD><DCBF><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>15-SF6<46><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>16-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>17-<2D><><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD>ϵͳ״̬<D7B4><CCAC>18-ˮ<>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>19-ȼ<><C8BC><EFBFBD><EFBFBD>ʾϵͳ״̬<D7B4><CCAC>20-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_EXTERNAL_DEVICE_STATE_UNION struDevState;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byRes2;
}
//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int REGIONTYPE = 0;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int MATRIXTYPE = 11;//<2F><><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>
public const int DEVICETYPE = 2;//<2F><><EFBFBD><EFBFBD><EFBFBD>
public const int CHANNELTYPE = 3;//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
public const int USERTYPE = 5;//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LOG_MATRIX
{
public NET_DVR_TIME strLogTime;
public uint dwMajorType;
public uint dwMinorType;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sPanelUser;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_NAMELEN, ArraySubType = UnmanagedType.I1)]
public byte[] sNetUser;
public NET_DVR_IPADDR struRemoteHostAddr;
public uint dwParaType;
public uint dwChannel;
public uint dwDiskNumber;
public uint dwAlarmInPort;
public uint dwAlarmOutPort;
public uint dwInfoLen;
public byte byDevSequence;//<2F><>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMacAddr;//MAC<41><43>ַ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber;//<2F><><EFBFBD>к<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = LOG_INFO_LEN - SERIALNO_LEN - MACADDR_LEN - 1)]
public string sInfo;
}
//<2F><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct tagVEDIOPLATLOG
{
public byte bySearchCondition;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-<2D><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD><D0BA><EFBFBD><EFBFBD><EFBFBD> 2-<2D><>MAC<41><43>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byDevSequence;//<2F><>λ<EFBFBD>ţ<EFBFBD>0-79<37><39><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>ϵͳ<CFB5>IJ<EFBFBD>λ<EFBFBD>ţ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = SERIALNO_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sSerialNumber;//<2F><><EFBFBD>к<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MACADDR_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byMacAddr;//MAC<41><43>ַ
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
public enum IVS_PARAM_KEY
{
OBJECT_DETECT_SENSITIVE = 1,//Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BACKGROUND_UPDATE_RATE = 2,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
SCENE_CHANGE_RATIO = 3,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BBAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сֵ
SUPPRESS_LAMP = 4,//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Ƴ<EFBFBD>ͷ<EFBFBD><CDB7>
MIN_OBJECT_SIZE = 5,//<2F>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>СĿ<D0A1><C4BF><EFBFBD><EFBFBD>С
OBJECT_GENERATE_RATE = 6,//Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
MISSING_OBJECT_HOLD = 7,//Ŀ<><C4BF><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
MAX_MISSING_DISTANCE = 8,//Ŀ<><C4BF><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
OBJECT_MERGE_SPEED = 9,//<2F><><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EABDBB>ʱ<EFBFBD><CAB1>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><DABA>ٶ<EFBFBD>
REPEATED_MOTION_SUPPRESS = 10,//<2F>ظ<EFBFBD><D8B8>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>
ILLUMINATION_CHANGE = 11,//<2F><>Ӱ<EFBFBD><EFBFBD><E4BBAF><EFBFBD>ƿ<EFBFBD><C6BF><EFBFBD>
TRACK_OUTPUT_MODE = 12,//<2F><><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ĵײ<C4B5><D7B2><EFBFBD><EFBFBD><EFBFBD>
ENTER_CHANGE_HOLD = 13,//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BBAF>ֵ
RESUME_DEFAULT_PARAM = 255,//<2F>ָ<EFBFBD>Ĭ<EFBFBD>Ϲؼ<CFB9><D8BC>ֲ<EFBFBD><D6B2><EFBFBD>
}
//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LF_CALIBRATION_PARAM
{
public byte byPointNum;//<2F><>Ч<EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CALIB_PT, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_CB_POINT[] struCBPoint;//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
}
//LF˫<46><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LF_CFG
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byEnable;//<2F>ʹ<EAB6A8><CAB9>
public byte byFollowChan;// <20><><EFBFBD><EFBFBD><EFBFBD>ƵĴ<C6B5>ͨ<EFBFBD><CDA8>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public NET_DVR_LF_CALIBRATION_PARAM struCalParam;//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
}
//L/F<>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD>ƽ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LF_MANUAL_CTRL_INFO
{
public NET_VCA_POINT struCtrlPoint;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//L/FĿ<46><C4BF><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LF_TRACK_TARGET_INFO
{
public uint dwTargetID;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_LF_TRACK_MODE
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byTrackMode;//ģʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
[StructLayoutAttribute(LayoutKind.Explicit)]
public struct uModeParam
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.U4)]
[FieldOffsetAttribute(0)]
public uint[] dwULen;
/*[FieldOffsetAttribute(0)]
public NET_DVR_LF_MANUAL_CTRL_INFO struManualCtrl;//<2F>ֶ<EFBFBD><D6B6>
[FieldOffsetAttribute(0)]
public NET_DVR_LF_TRACK_TARGET_INFO struTargetTrack;//Ŀ<><C4BF><EFBFBD>
* */
}
}
// Long config callback type
public enum NET_SDK_CALLBACK_TYPE
{
NET_SDK_CALLBACK_TYPE_STATUS = 0, //<2F>ص<EFBFBD>״ֵ̬
NET_SDK_CALLBACK_TYPE_PROGRESS, //<2F>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>ֵ
NET_SDK_CALLBACK_TYPE_DATA //<2F>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
// Long config status value
public enum NET_SDK_CALLBACK_STATUS_NORMAL
{
NET_SDK_CALLBACK_STATUS_SUCCESS = 1000, //<2F>ɹ<EFBFBD>
NET_SDK_CALLBACK_STATUS_PROCESSING, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
NET_SDK_CALLBACK_STATUS_FAILED, //ʧ<><CAA7>
NET_SDK_CALLBACK_STATUS_EXCEPTION, //<2F>
NET_SDK_CALLBACK_STATUS_LANGUAGE_MISMATCH, //<2F><><EFBFBD>Բ<EFBFBD>ƥ<EFBFBD><C6A5>
NET_SDK_CALLBACK_STATUS_DEV_TYPE_MISMATCH, //<2F><EFBFBD><E8B1B8><EFBFBD>Ͳ<EFBFBD>ƥ<EFBFBD><C6A5>
NET_DVR_CALLBACK_STATUS_SEND_WAIT //<2F><><EFBFBD>͵ȴ<CDB5>
}
//Sensor<6F><72>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SENSOR_PARAM
{
public byte bySensorType;//SensorType:0-CCD,1-CMOS
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 31, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
public float fHorWidth;//ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD> <20><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ *10000
public float fVerWidth;//<2F><>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD> <20><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ *10000
public float fFold;//zoom=1û<31><C3BB>ʱ<EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD> <20><>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ *100
}
//<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PTZPOS_PARAM{
public float fPanPos;//ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fTiltPos;//<2F><>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public float fZoomPos;//<2F><EFBFBD><E4B1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes ;
}
//GIS<49><53>Ϣ<EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GIS_UPLOADINFO
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С
public uint dwRelativeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_VCA_DEV_INFO struDevInfo;//ǰ<><C7B0><EFBFBD>
public float fAzimuth;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵ķ<CCB5>λ<EFBFBD><CEBB>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>[0.00<EFBFBD><EFBFBD>,360.00<EFBFBD><EFBFBD>)
public byte byLatitudeType ;//γ<><CEB3><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><>γ<EFBFBD><CEB3>1-<2D><>γ
public byte byLongitudeType ;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0-<2D><><EFBFBD>ȣ<EFBFBD>1-<2D><><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public NET_DVR_LLI_PARAM struLatitude; /*γ<><CEB3>*/
public NET_DVR_LLI_PARAM struLongitude; /*<2A><><EFBFBD><EFBFBD>*/
public float fHorizontalValue;//ˮƽ<CBAE>ӳ<EFBFBD><D3B3>ǣ<EFBFBD><C7A3><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
public float fVerticalValue;//<2F><>ֱ<EFBFBD>ӳ<EFBFBD><D3B3>ǣ<EFBFBD><C7A3><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
public float fVisibleRadius;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD>Ӱ뾶<D3B0><EBBEB6><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
public float fMaxViewRadius;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӱ뾶<D3B0><EBBEB6><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><CEBB>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public NET_DVR_SENSOR_PARAM struSensorParam;//Sensor<6F><72>Ϣ
public NET_DVR_PTZPOS_PARAM struPtzPos; //ptz<74><7A><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 256, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int NET_SDK_MAX_FDID_LEN = 256;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>ͼƬ+ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_FACELIB_COND
{
public uint dwSize; // <20><EFBFBD><E1B9B9>С
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NET_SDK_MAX_FDID_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] szFDID;
public byte byConcurrent;//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1- <20><>ʼ
public byte byCover;//<2F>Ƿ񸲸<C7B7>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD>1-<2D><>
public byte byCustomFaceLibID;//FDID<49>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6>壬0-<2D><><EFBFBD>ǣ<EFBFBD>1-<2D>ǣ<EFBFBD>
public byte byPictureSaveMode;//<2F>ϴ<EFBFBD>ԭͼ<D4AD><CDBC><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>0-<2D><><EFBFBD>棬1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byIdentityKey;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 60, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_SEND_PARAM_IN
{
public IntPtr pSendData;
public uint dwSendDataLen;
public NET_DVR_TIME_V30 struTime;
public byte byPicType;
public byte byPicURL; //ͼƬ<CDBC><C6AC><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>URL<52><4C>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݣ<EFBFBD>1-ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>URL<52><4C>ʽ
public byte byUploadModeling;
public byte byRes1;
public uint dwPicMangeNo;
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = 32)]
public string sPicName;
public uint dwPicDisplayTime;
public IntPtr pSendAppendData;
public uint dwSendAppendDataLen;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 192, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public enum HKUploadType
{
IMPORT_DATA_TO_FACELIB = 39,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>ͼƬ+ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
public const int MAX_UPLOADFILE_URL_LEN = 240;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_UPLOAD_FILE_RET
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_UPLOADFILE_URL_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] sUrl;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 260, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD>
}
//GPS<50><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><E1B9B9>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_GPSALARMINFO
{
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = NAME_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byDeviceID;/*<2A><EFBFBD><E8B1B8>ID<49><44>*/
public NET_DVR_TIME_EX struGpsTime; /*GPS<50>ϴ<EFBFBD><CFB4><EFBFBD>ʱ<EFBFBD><CAB1>*/
public uint dwLongitude; /* <20><><EFBFBD><EFBFBD>*/
public uint dwLatitude; /* γ<><CEB3>*/
public int iTimeZone; /*ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>+60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>+480<38><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38><EFBFBD><EFBFBD>-60<36><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-480<38><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶκ<D6B6>GPSTime<6D><65><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwDirection; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>Ϊ<EFBFBD><CEAA>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>˳ʱ<CBB3><EFBFBD><EBB7BD><EFBFBD><EFBFBD><EFBFBD>㣩*100*/
public ushort wSatellites; /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public ushort wPrecision; /*<2A><><EFBFBD><EFBFBD>*/
public uint dwHeight; /*<2A>߶<EFBFBD>:<3A><><EFBFBD>ף<EFBFBD>Ԥ<EFBFBD><D4A4>*/
public uint dwGPSSeq; /*GPS<50><53><EFBFBD>ţ<EFBFBD>GPS<50><53><EFBFBD><EFBFBD>ʱҪ<CAB1>õ<EFBFBD>*/
public ushort wSpeed;//<2F>ٶȣ<D9B6><C8A3><EFBFBD>λ<EFBFBD><CEBB>km/h
/* direction[0]:'E'or'W'(<28><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>), direction[1]:'N'or'S'(<28><>γ/<2F><>γ)*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] sDirection;
public byte byLocateMode;/*<2A><>λģʽ(<28><>ֵ0)<29><>1,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ,2,<2C><><EFBFBD><EFBFBD>3,<2C><><EFBFBD><EFBFBD>,4,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>65,<2C><>Ч<EFBFBD><D0A7>λ<EFBFBD><CEBB>78<37><38><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>λ*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F>ȶ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_HEATMAP_RESULT
{
public uint dwSize;
public NET_VCA_DEV_INFO struDevInfo;/*<2A><EFBFBD><E8B1B8>Ϣ*/
public NET_DVR_TIME_EX struStartTime;/*<2A><>ʼʱ<CABC><CAB1>*/
public NET_DVR_TIME_EX struEndTime;/*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
public uint dwMaxHeatMapValue;//<2F><><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD>ֵ
public uint dwMinHeatMapValue;//<2F><>С<EFBFBD>ȶ<EFBFBD>ֵ
public uint dwTimeHeatMapValue;// (ʱ<><CAB1><EFBFBD>ȶ<EFBFBD>ֵ)ƽ<><C6BD><EFBFBD>ȶ<EFBFBD>ֵ
public ushort wArrayLine;//ͼƬ<CDBC><C6AC><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>ֵ
public ushort wArrayColumn;//ͼƬ<CDBC><C6AC><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>ֵ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ0<CEAA><30>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>ֵ<EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>
public IntPtr pBuffer; //<2F>ȶ<EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
public byte byDetSceneID;//<2F><><EFBFBD><EFBFBD><E2B3A1><EFBFBD><EFBFBD>[1],<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ֧<C7B0><D6A7>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, IPCĬ<43><C4AC><EFBFBD><EFBFBD>0
public byte byBrokenNetHttp; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־λ<D6BE><CEBB>0-<2D><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD>ݣ<EFBFBD>1-<2D>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>
public ushort wDevInfoIvmsChannelEx; //<2F><>NET_VCA_DEV_INFO<46><4F><EFBFBD><EFBFBD>byIvmsChannel<65><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܱ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ͽͻ<CFBF><CDBB><EFBFBD><EFBFBD><EFBFBD>byIvmsChannel<65>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>255<35><35><EFBFBD>¿ͻ<C2BF><CDBB>˰汾<CBB0><E6B1BE>ʹ<EFBFBD><CAB9>wDevInfoIvmsChannelEx<45><78>
public byte byTimeDiffFlag; /*ʱ<><CAB1><EFBFBD>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>Ч 0-ʱ<><CAB1><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7> 1-ʱ<><CAB1><EFBFBD><EFBFBD>Ч */
public byte cStartTimeDifferenceH; /*<2A><>ʼʱ<CABC><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14<31><34>+<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte cStartTimeDifferenceM; /*<2A><>ʼʱ<CABC><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30, 30, 45<34><35>+<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte cStopTimeDifferenceH; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD>Сʱ<D0A1><CAB1><EFBFBD><EFBFBD>-12 ... +14<31><34> +<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte cStopTimeDifferenceM; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>UTC<54><43>ʱ<EFBFBD><EFBFBD><EEA3A8><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>-30, 30, 45<34><35>+<2B><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
public byte byArrayUnitType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>1-byte<74><65>2-short,4-int
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
public uint dwTotalTime;//ͣ<><CDA3>ʱ<EFBFBD><CAB1><EFBFBD>ܺͣ<DCBA><CDA3><EFBFBD>λ<EFBFBD><EFBFBD><EBA3AC><EFBFBD><EFBFBD>Աͣ<D4B1><CDA3>ʱ<EFBFBD><EFBFBD><E4B1A8>ʱ<EFBFBD>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 112, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
/********************************<2A>ӿڲ<D3BF><DAB2><EFBFBD><EFBFBD>ṹ(end)*********************************/
#region <EFBFBD>ӿں<EFBFBD><EFBFBD><EFBFBD>
/********************************SDK<44>ӿں<D3BF><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*********************************/
/*********************************************************
Function: NET_DVR_Init
Desc: <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>SDK<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SDK<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>
Input:
Output:
Return: TRUE<EFBFBD><EFBFBD>ʾ<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>FALSE<EFBFBD><EFBFBD>ʾʧ<EFBFBD>ܡ<EFBFBD>
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_Init();
/*********************************************************
Function: NET_DVR_Cleanup
Desc: <EFBFBD>ͷ<EFBFBD>SDK<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>֮ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input:
Output:
Return: TRUE<EFBFBD><EFBFBD>ʾ<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>FALSE<EFBFBD><EFBFBD>ʾʧ<EFBFBD><EFBFBD>
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_Cleanup();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessage(uint nMessage, IntPtr hWnd);
/*********************************************************
Function: EXCEPYIONCALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void EXCEPYIONCALLBACK(uint dwType, int lUserID, int lHandle, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetExceptionCallBack_V30(uint nMessage, IntPtr hWnd, EXCEPYIONCALLBACK fExceptionCallBack, IntPtr pUser);
/*********************************************************
Function: MESSCALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate int MESSCALLBACK(int lCommand, string sDVRIP, string pBuf, uint dwBufLen);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessCallBack(MESSCALLBACK fMessCallBack);
/*********************************************************
Function: MESSCALLBACKEX
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate int MESSCALLBACKEX(int iCommand, int iUserID, string pBuf, uint dwBufLen);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessCallBack_EX(MESSCALLBACKEX fMessCallBack_EX);
/*********************************************************
Function: MESSCALLBACKNEW
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate int MESSCALLBACKNEW(int lCommand, string sDVRIP, string pBuf, uint dwBufLen, ushort dwLinkDVRPort);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessCallBack_NEW(MESSCALLBACKNEW fMessCallBack_NEW);
/*********************************************************
Function: MESSAGECALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate int MESSAGECALLBACK(int lCommand, System.IntPtr sDVRIP, System.IntPtr pBuf, uint dwBufLen, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessageCallBack(MESSAGECALLBACK fMessageCallBack, uint dwUser);
/*********************************************************
Function: MSGCallBack
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void MSGCallBack(int lCommand, ref NET_DVR_ALARMER pAlarmer, IntPtr pAlarmInfo, uint dwBufLen, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessageCallBack_V30(MSGCallBack fMessageCallBack, IntPtr pUser);
public delegate bool MSGCallBack_V31(int lCommand, ref NET_DVR_ALARMER pAlarmer, IntPtr pAlarmInfo, uint dwBufLen, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRMessageCallBack_V31(MSGCallBack_V31 fMessageCallBack, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetSDKLocalCfg(int enumType, IntPtr lpInBuff);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetSDKLocalCfg(int enumType, IntPtr lpOutBuff);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetConnectTime(uint dwWaitTime, uint dwTryTimes);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetReconnect(uint dwInterval, int bEnableRecon);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetLocalIP(byte[] strIP, ref uint pValidNum, ref Boolean pEnableBind);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetValidIP(uint dwIPIndex, Boolean bEnableBind);
[DllImport(@".\HCNetSDK.dll")]
public static extern uint NET_DVR_GetSDKVersion();
[DllImport(@".\HCNetSDK.dll")]
public static extern uint NET_DVR_GetSDKBuildVersion();
[DllImport(@".\HCNetSDK.dll")]
public static extern Int32 NET_DVR_IsSupport();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StartListen(string sLocalIP, ushort wLocalPort);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopListen();
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_StartListen_V30(String sLocalIP, ushort wLocalPort, MSGCallBack DataCallback, IntPtr pUserData);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopListen_V30(Int32 lListenHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern Int32 NET_DVR_Login(string sDVRIP, ushort wDVRPort, string sUserName, string sPassword, ref NET_DVR_DEVICEINFO lpDeviceInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_Logout(int iUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern uint NET_DVR_GetLastError();
[DllImport(@".\HCNetSDK.dll")]
public static extern IntPtr NET_DVR_GetErrorMsg(ref int pErrorNo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetShowMode(uint dwShowType, uint colorKey);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDVRIPByResolveSvr(string sServerIP, ushort wServerPort, string sDVRName, ushort wDVRNameLen, string sDVRSerialNumber, ushort wDVRSerialLen, IntPtr pGetIP);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDVRIPByResolveSvr_EX(string sServerIP, ushort wServerPort, byte[] sDVRName, ushort wDVRNameLen, byte[] sDVRSerialNumber, ushort wDVRSerialLen, byte[] sGetIP, ref uint dwPort);
//Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD>ؽӿ<D8BD>
[DllImport(@".\HCNetSDK.dll")]
public static extern Int32 NET_DVR_RealPlay(int iUserID, ref NET_DVR_CLIENTINFO lpClientInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern Int32 NET_SDK_RealPlay(int iUserLogID, ref NET_DVR_CLIENTINFO lpDVRClientInfo);
/*********************************************************
Function: REALDATACALLBACK
Desc: Ԥ<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>
Input: lRealHandle <EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
dwDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pBuffer <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>
dwBufSize <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
pUser <EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Output:
Return: void
**********************************************************/
public delegate void REALDATACALLBACK(Int32 lRealHandle, UInt32 dwDataType, IntPtr pBuffer, UInt32 dwBufSize, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
/*********************************************************
Function: NET_DVR_RealPlay_V30
Desc: ʵʱԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: lUserID [in] NET_DVR_Login()<EFBFBD><EFBFBD>NET_DVR_Login_V30()<EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD>ֵ
lpClientInfo [in] Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
cbRealDataCallBack [in] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pUser [in] <EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bBlocked [in] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Output:
Return: 1<EFBFBD><EFBFBD>ʾʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ΪNET_DVR_StopRealPlay<EFBFBD>Ⱥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
**********************************************************/
public static extern int NET_DVR_RealPlay_V30(int iUserID, ref NET_DVR_CLIENTINFO lpClientInfo, REALDATACALLBACK fRealDataCallBack_V30, IntPtr pUser, UInt32 bBlocked);
/*********************************************************
Function: NET_DVR_RealPlay_V40
Desc: ʵʱԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD>ӿڡ<EFBFBD>
Input: lUserID [in] NET_DVR_Login()<EFBFBD><EFBFBD>NET_DVR_Login_V30()<EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD>ֵ
lpPreviewInfo [in] Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
fRealDataCallBack_V30 [in] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pUser [in] <EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Output:
Return: 1<EFBFBD><EFBFBD>ʾʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ΪNET_DVR_StopRealPlay<EFBFBD>Ⱥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_RealPlay_V40(int iUserID, ref NET_DVR_PREVIEWINFO lpPreviewInfo, REALDATACALLBACK fRealDataCallBack_V30, IntPtr pUser);
// [DllImport(@".\HCNetSDK.dll")]
// public static extern int NET_DVR_GetRealPlayerIndex(int lRealHandle);
/*********************************************************
Function: NET_DVR_StopRealPlay
Desc: ֹͣԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: lRealHandle [in] Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_DVR_RealPlay<EFBFBD><EFBFBD><EFBFBD><EFBFBD>NET_DVR_RealPlay_V30<EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD>ֵ
Output:
Return:
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopRealPlay(int iRealHandle);
/*********************************************************
Function: DRAWFUN
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void DRAWFUN(int lRealHandle, IntPtr hDc, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_RigisterDrawFun(int lRealHandle, DRAWFUN fDrawFun, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetPlayerBufNumber(Int32 lRealHandle, uint dwBufNum);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ThrowBFrame(Int32 lRealHandle, uint dwNum);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetAudioMode(uint dwMode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_OpenSound(Int32 lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseSound();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_OpenSoundShare(Int32 lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseSoundShare(Int32 lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_Volume(Int32 lRealHandle, ushort wVolume);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SaveRealData(Int32 lRealHandle, string sFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopSaveRealData(Int32 lRealHandle);
/*********************************************************
Function: REALDATACALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void SETREALDATACALLBACK(int lRealHandle, uint dwDataType, IntPtr pBuffer, uint dwBufSize, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetRealDataCallBack(int lRealHandle, SETREALDATACALLBACK fRealDataCallBack, uint dwUser);
/*********************************************************
Function: STDDATACALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void STDDATACALLBACK(int lRealHandle, uint dwDataType, ref byte pBuffer, uint dwBufSize, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetStandardDataCallBack(int lRealHandle, STDDATACALLBACK fStdDataCallBack, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CapturePicture(Int32 lRealHandle, string sPicFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CapturePictureBlock(Int32 lRealHandle, string sPicFileName, int dwTimeOut);
//<2F><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MakeKeyFrame(Int32 lUserID, Int32 lChannel);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MakeKeyFrameSub(Int32 lUserID, Int32 lChannel);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؽӿ<D8BD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetPTZCtrl(Int32 lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetPTZCtrl_Other(Int32 lUserID, int lChannel);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZControl(Int32 lRealHandle, uint dwPTZCommand, uint dwStop);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZControl_Other(Int32 lUserID, Int32 lChannel, uint dwPTZCommand, uint dwStop);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_TransPTZ(Int32 lRealHandle, string pPTZCodeBuf, uint dwBufSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_TransPTZ_Other(int lUserID, int lChannel, string pPTZCodeBuf, uint dwBufSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZPreset(int lRealHandle, uint dwPTZPresetCmd, uint dwPresetIndex);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZPreset_Other(int lUserID, int lChannel, uint dwPTZPresetCmd, uint dwPresetIndex);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_TransPTZ_EX(int lRealHandle, string pPTZCodeBuf, uint dwBufSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZControl_EX(int lRealHandle, uint dwPTZCommand, uint dwStop);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZPreset_EX(int lRealHandle, uint dwPTZPresetCmd, uint dwPresetIndex);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZCruise(int lRealHandle, uint dwPTZCruiseCmd, byte byCruiseRoute, byte byCruisePoint, ushort wInput);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZCruise_Other(int lUserID, int lChannel, uint dwPTZCruiseCmd, byte byCruiseRoute, byte byCruisePoint, ushort wInput);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZCruise_EX(int lRealHandle, uint dwPTZCruiseCmd, byte byCruiseRoute, byte byCruisePoint, ushort wInput);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZTrack(int lRealHandle, uint dwPTZTrackCmd);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZTrack_Other(int lUserID, int lChannel, uint dwPTZTrackCmd);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZTrack_EX(int lRealHandle, uint dwPTZTrackCmd);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZControlWithSpeed(int lRealHandle, uint dwPTZCommand, uint dwStop, uint dwSpeed);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZControlWithSpeed_Other(int lUserID, int lChannel, uint dwPTZCommand, uint dwStop, uint dwSpeed);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZControlWithSpeed_EX(int lRealHandle, uint dwPTZCommand, uint dwStop, uint dwSpeed);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetPTZCruise(int lUserID, int lChannel, int lCruiseRoute, ref NET_DVR_CRUISE_RET lpCruiseRet);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZMltTrack(int lRealHandle, uint dwPTZTrackCmd, uint dwTrackIndex);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZMltTrack_Other(int lUserID, int lChannel, uint dwPTZTrackCmd, uint dwTrackIndex);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZMltTrack_EX(int lRealHandle, uint dwPTZTrackCmd, uint dwTrackIndex);
//<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFile(int lUserID, int lChannel, uint dwFileType, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextFile(int lFindHandle, ref NET_DVR_FIND_DATA lpFindData);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_FindClose(int lFindHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextFile_V30(int lFindHandle, ref NET_DVR_FINDDATA_V30 lpFindData);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextFile_V40(int lFindHandle, ref NET_DVR_FINDDATA_V40 lpFindData);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFile_V30(int lUserID, ref NET_DVR_FILECOND pFindCond);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFile_V40(int lUserID, ref NET_DVR_FILECOND_V40 pFindCond);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFileByEvent_V40(int lUserID, ref NET_DVR_SEARCH_EVENT_PARAM_V40 lpSearchEventParam);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextEvent_V40(int lSearchHandle, ref NET_DVR_SEARCH_EVENT_RET_V40 lpSearchEventRet);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_FindClose_V30(int lFindHandle);
//2007-04-16<31><36><EFBFBD>Ӳ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextFile_Card(int lFindHandle, ref NET_DVR_FINDDATA_CARD lpFindData);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFile_Card(int lUserID, int lChannel, uint dwFileType, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_LockFileByName(int lUserID, string sLockFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_UnlockFileByName(int lUserID, string sUnlockFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_PlayBackByName(int lUserID, string sPlayBackFileName, IntPtr hWnd);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_PlayBackByTime(int lUserID, int lChannel, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime, System.IntPtr hWnd);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_PlayBackByTime_V40(int lUserID, ref NET_DVR_VOD_PARA pVodPara);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_PlayBackReverseByName(int lUserID, string sPlayBackFileName, IntPtr hWnd);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_PlayBackReverseByTime_V40(int lUserID, IntPtr hWnd, ref NET_DVR_PLAYCOND pPlayCond);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PlayBackControl(int lPlayHandle, uint dwControlCode, uint dwInValue, ref uint LPOutValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PlayBackControl_V40(int lPlayHandle, uint dwControlCode, IntPtr lpInBuffer, uint dwInValue, IntPtr lpOutBuffer, ref uint LPOutValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopPlayBack(int lPlayHandle);
/*********************************************************
Function: PLAYDATACALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void PLAYDATACALLBACK(int lPlayHandle, uint dwDataType, IntPtr pBuffer, uint dwBufSize, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetPlayDataCallBack(int lPlayHandle, PLAYDATACALLBACK fPlayDataCallBack, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PlayBackSaveData(int lPlayHandle, string sFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopPlayBackSave(int lPlayHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetPlayBackOsdTime(int lPlayHandle, ref NET_DVR_TIME lpOsdTime);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PlayBackCaptureFile(int lPlayHandle, string sFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetFileByName(int lUserID, string sDVRFileName, string sSavedFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetFileByTime(int lUserID, int lChannel, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime, string sSavedFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetFileByTime_V40(int lUserID, string sSavedFileName, ref NET_DVR_PLAYCOND pDownloadCond);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopGetFile(int lFileHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetDownloadPos(int lFileHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetPlayBackPos(int lPlayHandle);
//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindPicture(int lUserID, ref NET_DVR_FIND_PICTURE_PARAM pFindParam);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextPicture_V50(int lFindHandle, ref NET_DVR_FIND_PICTURE_V50 lpFindData);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseFindPicture(int lFindHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetPicture(int lUserID, String sDVRFileName, String sSavedFileName);
//<2F><><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_Upgrade(int lUserID, string sFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetUpgradeState(int lUpgradeHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetUpgradeProgress(int lUpgradeHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseUpgradeHandle(int lUpgradeHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetNetworkEnvironment(uint dwEnvironmentLevel);
//Զ<≯<EFBFBD>ʽ<EFBFBD><CABD>Ӳ<EFBFBD><D3B2>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FormatDisk(int lUserID, int lDiskNumber);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetFormatProgress(int lFormatHandle, ref int pCurrentFormatDisk, ref int pCurrentDiskPos, ref int pFormatStatic);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseFormatHandle(int lFormatHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetIPCProtoList(int lUserID, ref NET_DVR_IPC_PROTO_LIST lpProtoList);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetIPCProtoList_V41(int lUserID, ref NET_DVR_IPC_PROTO_LIST_V41 lpProtoList);
//<2F><><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_SetupAlarmChan(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseAlarmChan(int lAlarmHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_SetupAlarmChan_V30(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_SetupAlarmChan_V41(int lUserID, ref NET_DVR_SETUPALARM_PARAM lpSetupParam);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseAlarmChan_V30(int lAlarmHandle);
//<2F><><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>
/*********************************************************
Function: VOICEDATACALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void VOICEDATACALLBACK(int lVoiceComHandle, string pRecvDataBuffer, uint dwBufSize, byte byAudioFlag, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_StartVoiceCom(int lUserID, VOICEDATACALLBACK fVoiceDataCallBack, uint dwUser);
/*********************************************************
Function: VOICEDATACALLBACKV30
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void VOICEDATACALLBACKV30(int lVoiceComHandle, IntPtr pRecvDataBuffer, uint dwBufSize, byte byAudioFlag, System.IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_StartVoiceCom_V30(int lUserID, uint dwVoiceChan, bool bNeedCBNoEncData, VOICEDATACALLBACKV30 fVoiceDataCallBack, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetVoiceComClientVolume(int lVoiceComHandle, ushort wVolume);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopVoiceCom(int lVoiceComHandle);
//<2F><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_StartVoiceCom_MR(int lUserID, VOICEDATACALLBACK fVoiceDataCallBack, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_StartVoiceCom_MR_V30(int lUserID, uint dwVoiceChan, VOICEDATACALLBACKV30 fVoiceDataCallBack, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_VoiceComSendData(int lVoiceComHandle, string pSendBuf, uint dwBufSize);
//<2F><><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientAudioStart();
/*********************************************************
Function: VOICEAUDIOSTART
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void VOICEAUDIOSTART(string pRecvDataBuffer, uint dwBufSize, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientAudioStart_V30(VOICEAUDIOSTART fVoiceAudioStart, IntPtr pUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientAudioStop();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_AddDVR(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_AddDVR_V30(int lUserID, uint dwVoiceChan);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DelDVR(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DelDVR_V30(int lVoiceHandle);
//͸<><CDB8>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*********************************************************
Function: SERIALDATACALLBACK
Desc: (<EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Input:
Output:
Return:
**********************************************************/
public delegate void SERIALDATACALLBACK(int lSerialHandle, string pRecvDataBuffer, uint dwBufSize, uint dwUser);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SerialStart(int lUserID, int lSerialPort, SERIALDATACALLBACK fSerialDataCallBack, uint dwUser);
//485<38><35>Ϊ͸<CEAA><CDB8>ͨ<EFBFBD><CDA8>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ҫָ<D2AA><D6B8>ͨ<EFBFBD><CDA8><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD>Ϊ<EFBFBD><CEAA>ͬͨ<CDAC><CDA8><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>Բ<EFBFBD>ͬ(<28><><EFBFBD><EFBFBD><E7B2A8><EFBFBD><EFBFBD>)
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SerialSend(int lSerialHandle, int lChannel, string pSendBuf, uint dwBufSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SerialStop(int lSerialHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SendTo232Port(int lUserID, string pSendBuf, uint dwBufSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SendToSerialPort(int lUserID, uint dwSerialPort, uint dwSerialIndex, string pSendBuf, uint dwBufSize);
//<2F><><EFBFBD><EFBFBD> nBitrate = 16000
[DllImport(@".\HCNetSDK.dll")]
public static extern System.IntPtr NET_DVR_InitG722Decoder(int nBitrate);
[DllImport(@".\HCNetSDK.dll")]
public static extern void NET_DVR_ReleaseG722Decoder(IntPtr pDecHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DecodeG722Frame(IntPtr pDecHandle, ref byte pInBuffer, ref byte pOutBuffer);
//<2F><><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern IntPtr NET_DVR_InitG722Encoder();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_EncodeG722Frame(IntPtr pEncodeHandle, ref byte pInBuffer, ref byte pOutBuffer);
[DllImport(@".\HCNetSDK.dll")]
public static extern void NET_DVR_ReleaseG722Encoder(IntPtr pEncodeHandle);
//Զ<>̿<EFBFBD><CCBF>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD>ʾ
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClickKey(int lUserID, int lKeyIndex);
//Զ<>̿<EFBFBD><CCBF><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ֶ<EFBFBD>¼<EFBFBD><C2BC>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StartDVRRecord(int lUserID, int lChannel, int lRecordType);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopDVRRecord(int lUserID, int lChannel);
//<2F><><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_InitDevice_Card(ref int pDeviceTotalChan);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ReleaseDevice_Card();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_InitDDraw_Card(IntPtr hParent, uint colorKey);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ReleaseDDraw_Card();
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_RealPlay_Card(int lUserID, ref NET_DVR_CARDINFO lpCardInfo, int lChannelNum);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ResetPara_Card(int lRealHandle, ref NET_DVR_DISPLAY_PARA lpDisplayPara);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_RefreshSurface_Card();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClearSurface_Card();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_RestoreSurface_Card();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_OpenSound_Card(int lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseSound_Card(int lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetVolume_Card(int lRealHandle, ushort wVolume);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_AudioPreview_Card(int lRealHandle, int bEnable);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetCardLastError_Card();
[DllImport(@".\HCNetSDK.dll")]
public static extern System.IntPtr NET_DVR_GetChanHandle_Card(int lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CapturePicture_Card(int lRealHandle, string sPicFileName);
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EBBFA8><EFBFBD>кŴ˽ӿ<CBBD><D3BF><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GetBoardDetail<69>ӿڻ<D3BF><DABB><EFBFBD>(2005-12-08֧<38><D6A7>)
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetSerialNum_Card(int lChannelNum, ref uint pDeviceSerialNo);
//<2F><>־
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindDVRLog(int lUserID, int lSelectMode, uint dwMajorType, uint dwMinorType, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextLog(int lLogHandle, ref NET_DVR_LOG lpLogData);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_FindLogClose(int lLogHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindDVRLog_V30(int lUserID, int lSelectMode, uint dwMajorType, uint dwMinorType, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime, bool bOnlySmart);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextLog_V30(int lLogHandle, ref NET_DVR_LOG_V30 lpLogData);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_FindLogClose_V30(int lLogHandle);
//<2F><>ֹ2004<30><34>8<EFBFBD><38>5<EFBFBD><35>,<2C><>113<31><33><EFBFBD>ӿ<EFBFBD>
//ATM DVR
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFileByCard(int lUserID, int lChannel, uint dwFileType, int nFindType, ref byte sCardNumber, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime);
//2005-09-15
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CaptureJPEGPicture(int lUserID, int lChannel, ref NET_DVR_JPEGPARA lpJpegPara, string sPicFileName);
//JPEGץͼ<D7A5><CDBC><EFBFBD>ڴ<EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CaptureJPEGPicture_NEW(int lUserID, int lChannel, ref NET_DVR_JPEGPARA lpJpegPara, byte[] sJpegPicBuffer, uint dwPicSize, ref uint lpSizeReturned);
//2006-02-16
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetRealPlayerIndex(int lRealHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetPlayBackPlayerIndex(int lPlayHandle);
[DllImportAttribute(@".\HCNetSDK.dll")]
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD>ϴ<EFBFBD><CFB4>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public static extern Int32 NET_DVR_UploadSend(int lUploadHandle, ref NET_DVR_SEND_PARAM_IN pstruSendParamIN, IntPtr lpOutBuffer);
[DllImportAttribute(@".\HCNetSDK.dll")]
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD>ϴ<EFBFBD><CFB4>ļ<EFBFBD>
public static extern Int32 NET_DVR_UploadFile_V40(int lUserID, uint dwUploadType, IntPtr lpInBuffer, uint dwInBufferSize, string sFileName, IntPtr lpOutBuffer, uint dwOutBufferSize);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern Int32 NET_DVR_GetUploadState(int lUploadHandle, ref uint pProgress);
//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD>ϴ<EFBFBD><CFB4>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetUploadResult(int lUploadHandle, IntPtr lpOutBuffer, uint dwOutBufferSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_UploadClose(int lUploadHandle);
//2006-08-28 704-640 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetScaleCFG(int lUserID, uint dwScale);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetScaleCFG(int lUserID, ref uint lpOutScale);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetScaleCFG_V30(int lUserID, ref NET_DVR_SCALECFG pScalecfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetScaleCFG_V30(int lUserID, ref NET_DVR_SCALECFG pScalecfg);
//2006-08-28 ATM<54><4D><EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetATMPortCFG(int lUserID, ushort wATMPort);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetATMPortCFG(int lUserID, ref ushort LPOutATMPort);
//2006-11-10 ֧<><D6A7><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_InitDDrawDevice();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ReleaseDDrawDevice();
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetDDrawDeviceTotalNums();
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDDrawDevice(int lPlayPort, uint nDeviceNum);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZSelZoomIn(int lRealHandle, ref NET_DVR_POINT_FRAME pStruPointFrame);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_PTZSelZoomIn_EX(int lUserID, int lChannel, ref NET_DVR_POINT_FRAME pStruPointFrame);
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸DS-6001D/DS-6001F
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StartDecode(int lUserID, int lChannel, ref NET_DVR_DECODERINFO lpDecoderinfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopDecode(int lUserID, int lChannel);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDecoderState(int lUserID, int lChannel, ref NET_DVR_DECODERSTATE lpDecoderState);
//2005-08-01
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDecInfo(int lUserID, int lChannel, ref NET_DVR_DECCFG lpDecoderinfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDecInfo(int lUserID, int lChannel, ref NET_DVR_DECCFG lpDecoderinfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDecTransPort(int lUserID, ref NET_DVR_PORTCFG lpTransPort);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDecTransPort(int lUserID, ref NET_DVR_PORTCFG lpTransPort);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DecPlayBackCtrl(int lUserID, int lChannel, uint dwControlCode, uint dwInValue, ref uint LPOutValue, ref NET_DVR_PLAYREMOTEFILE lpRemoteFileInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StartDecSpecialCon(int lUserID, int lChannel, ref NET_DVR_DECCHANINFO lpDecChanInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_StopDecSpecialCon(int lUserID, int lChannel, ref NET_DVR_DECCHANINFO lpDecChanInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DecCtrlDec(int lUserID, int lChannel, uint dwControlCode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DecCtrlScreen(int lUserID, int lChannel, uint dwControl);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDecCurLinkStatus(int lUserID, int lChannel, ref NET_DVR_DECSTATUS lpDecStatus);
//<2F><>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//2007-11-30 V211֧<31><D6A7><EFBFBD><EFBFBD><EFBFBD>½ӿ<C2BD> //11
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixStartDynamic(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DYNAMIC_DEC lpDynamicInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixStopDynamic(int lUserID, uint dwDecChanNum);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDecChanInfo(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DEC_CHAN_INFO lpInter);
[DllImport(@"..\bin\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDecChanInfo_V41(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DEC_CHAN_INFO_V41 lpOuter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetLoopDecChanInfo(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_LOOP_DECINFO lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetLoopDecChanInfo(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_LOOP_DECINFO lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetLoopDecChanEnable(int lUserID, uint dwDecChanNum, uint dwEnable);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetLoopDecChanEnable(int lUserID, uint dwDecChanNum, ref uint lpdwEnable);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetLoopDecEnable(int lUserID, ref uint lpdwEnable);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetDecChanEnable(int lUserID, uint dwDecChanNum, uint dwEnable);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDecChanEnable(int lUserID, uint dwDecChanNum, ref uint lpdwEnable);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDecChanStatus(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DEC_CHAN_STATUS lpInter);
//2007-12-22 <20><><EFBFBD><EFBFBD>֧<EFBFBD>ֽӿ<D6BD> //18
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetTranInfo(int lUserID, ref NET_DVR_MATRIX_TRAN_CHAN_CONFIG lpTranInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetTranInfo(int lUserID, ref NET_DVR_MATRIX_TRAN_CHAN_CONFIG lpTranInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetRemotePlay(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DEC_REMOTE_PLAY lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetRemotePlayControl(int lUserID, uint dwDecChanNum, uint dwControlCode, uint dwInValue, ref uint LPOutValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetRemotePlayStatus(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS lpOuter);
//2009-4-13 <20><><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixStartDynamic_V30(int lUserID, uint dwDecChanNum, ref NET_DVR_PU_STREAM_CFG lpDynamicInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixStartDynamic_V41(int lUserID, uint dwDecChanNum, ref NET_DVR_PU_STREAM_CFG_V41 lpDynamicInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetLoopDecChanInfo_V30(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetLoopDecChanInfo_V30(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDecChanInfo_V30(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_DEC_CHAN_INFO_V30 lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetTranInfo_V30(int lUserID, ref NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 lpTranInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetTranInfo_V30(int lUserID, ref NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 lpTranInfo);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDisplayCfg(int lUserID, uint dwDispChanNum, ref NET_DVR_VGA_DISP_CHAN_CFG lpDisplayCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetDisplayCfg(int lUserID, uint dwDispChanNum, ref NET_DVR_VGA_DISP_CHAN_CFG lpDisplayCfg);
[DllImport(@"..\bin\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDisplayCfg_V41(int lUserID, uint dwDispChanNum, ref NET_DVR_MATRIX_VOUTCFG lpDisplayCfg);
[DllImport(@"..\bin\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetDisplayCfg_V41(int lUserID, uint dwDispChanNum, ref NET_DVR_MATRIX_VOUTCFG lpDisplayCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_MatrixStartPassiveDecode(int lUserID, uint dwDecChanNum, ref NET_DVR_MATRIX_PASSIVEMODE lpPassiveMode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSendData(int lPassiveHandle, System.IntPtr pSendBuf, uint dwBufSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixStopPassiveDecode(int lPassiveHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_UploadLogo(int lUserID, uint dwDispChanNum, ref NET_DVR_DISP_LOGOCFG lpDispLogoCfg, System.IntPtr sLogoBuffer);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_PicUpload(int lUserID, String sFileName, ref NET_DVR_PICTURECFG lpPictureCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetPicUploadProgress(int lUploadHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_CloseUploadHandle(int lUploadHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_GetPicUploadState(int lUploadHandle);
public const int NET_DVR_SHOWLOGO = 1;/*<2A><>ʾLOGO*/
public const int NET_DVR_HIDELOGO = 2;/*<2A><><EFBFBD><EFBFBD>LOGO*/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_LogoSwitch(int lUserID, uint dwDecChan, uint dwLogoSwitch);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetDeviceStatus(int lUserID, ref NET_DVR_DECODER_WORK_STATUS lpDecoderCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetInputSignalList_V40(int lUserID, uint dwDevNum, ref NET_DVR_INPUT_SIGNAL_LIST lpInputSignalList);
public const int DISP_CMD_ENLARGE_WINDOW = 1; /*<2A><>ʾͨ<CABE><CDA8><EFBFBD>Ŵ<EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public const int DISP_CMD_RENEW_WINDOW = 2; /*<2A><>ʾͨ<CABE><CDA8><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD>ԭ*/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixDiaplayControl(int lUserID, uint dwDispChanNum, uint dwDispChanCmd, uint dwCmdParam);
//end
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_RefreshPlay(int lPlayHandle);
//<2F>ָ<EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_RestoreConfig(int lUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SaveConfig(int lUserID);
//<2F><><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_RebootDVR(int lUserID);
//<2F>ر<EFBFBD>DVR
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ShutDownDVR(int lUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> begin
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDVRConfig(int lUserID, uint dwCommand, int lChannel, IntPtr lpOutBuffer, uint dwOutBufferSize, ref uint lpBytesReturned);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDVRConfig(int lUserID, uint dwCommand, int lChannel, System.IntPtr lpInBuffer, uint dwInBufferSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDVRWorkState_V30(int lUserID, IntPtr pWorkState);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDVRWorkState(int lUserID, ref NET_DVR_WORKSTATE lpWorkState);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetVideoEffect(int lUserID, int lChannel, uint dwBrightValue, uint dwContrastValue, uint dwSaturationValue, uint dwHueValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetVideoEffect(int lUserID, int lChannel, ref uint pBrightValue, ref uint pContrastValue, ref uint pSaturationValue, ref uint pHueValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientGetframeformat(int lUserID, ref NET_DVR_FRAMEFORMAT lpFrameFormat);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientSetframeformat(int lUserID, ref NET_DVR_FRAMEFORMAT lpFrameFormat);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetAtmProtocol(int lUserID, ref NET_DVR_ATM_PROTOCOL lpAtmProtocol);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetAlarmOut_V30(int lUserID, IntPtr lpAlarmOutState);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetAlarmOut(int lUserID, ref NET_DVR_ALARMOUTSTATUS lpAlarmOutState);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetAlarmOut(int lUserID, int lAlarmOutPort, int lAlarmOutStatic);
//<2F><>ȡUPNP<4E>˿<EFBFBD>ӳ<EFBFBD><D3B3>״̬
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetUpnpNatState(int lUserID, ref NET_DVR_UPNP_NAT_STATE lpState);
//<2F><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientSetVideoEffect(int lRealHandle, uint dwBrightValue, uint dwContrastValue, uint dwSaturationValue, uint dwHueValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ClientGetVideoEffect(int lRealHandle, ref uint pBrightValue, ref uint pContrastValue, ref uint pSaturationValue, ref uint pHueValue);
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetConfigFile(int lUserID, string sFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetConfigFile(int lUserID, string sFileName);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetConfigFile_V30(int lUserID, string sOutBuffer, uint dwOutSize, ref uint pReturnSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetConfigFile_EX(int lUserID, string sOutBuffer, uint dwOutSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetConfigFile_EX(int lUserID, string sInBuffer, uint dwInSize);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD>ļ<EFBFBD>д<EFBFBD><D0B4><EFBFBD>ӿ<EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetLogToFile(int bLogEnable, string strLogDir, bool bAutoDel);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetSDKState(ref NET_DVR_SDKSTATE pSDKState);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetSDKAbility(ref NET_DVR_SDKABL pSDKAbl);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetPTZProtocol(int lUserID, ref NET_DVR_PTZCFG pPtzcfg);
//ǰ<><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_LockPanel(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_UnLockPanel(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetRtspConfig(int lUserID, uint dwCommand, ref NET_DVR_RTSPCFG lpInBuffer, uint dwInBufferSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetRtspConfig(int lUserID, uint dwCommand, ref NET_DVR_RTSPCFG lpOutBuffer, uint dwOutBufferSize);
//<2F><>Ƶ<EFBFBD>ۺ<EFBFBD>ƽ̨
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixGetSceneCfg(int lUserID, uint dwSceneNum, ref NET_DVR_MATRIX_SCENECFG lpSceneCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_MatrixSetSceneCfg(int lUserID, uint dwSceneNum, ref NET_DVR_MATRIX_SCENECFG lpSceneCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetRealHeight(int lUserID, int lChannel, ref NET_VCA_LINE lpLine, ref Single lpHeight);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetRealLength(int lUserID, int lChannel, ref NET_VCA_LINE lpLine, ref Single lpLength);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SaveRealData_V30(int lRealHandle, uint dwTransType, string sFileName);
//Win32λ<32><CEBB><EFBFBD><EFBFBD>
//[DllImport(@".\HCNetSDK.dll")]
//public static extern bool NET_DVR_EncodeG711Frame(uint iType, ref byte pInBuffer, ref byte pOutBuffer);
[DllImport(@".\HCNetSDK.dll")]
public static extern IntPtr NET_DVR_InitG711Encoder(ref NET_DVR_AUDIOENC_INFO enc_info);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_EncodeG711Frame(IntPtr handle, ref NET_DVR_AUDIOENC_PROCESS_PARAM p_enc_proc_param);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ReleaseG711Encoder(IntPtr pEncodeHandle);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_DecodeG711Frame(uint iType, ref byte pInBuffer, ref byte pOutBuffer);
//2009-7-22 end
//<2F>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 9000_1.1
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_EmailTest(int lUserID);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindFileByEvent(int lUserID, ref NET_DVR_SEARCH_EVENT_PARAM lpSearchEventParam);
[DllImport(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextEvent(int lSearchHandle, ref NET_DVR_SEARCH_EVENT_RET lpSearchEventRet);
/*********************************************************
Function: NET_DVR_Login_V30
Desc:
Input: sDVRIP [in] <EFBFBD>IP<EFBFBD><EFBFBD>ַ
wServerPort [in] <EFBFBD><EFBFBD>˿ں<EFBFBD>
sUserName [in] <EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>
sPassword [in] <EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Output: lpDeviceInfo [out] <EFBFBD><EFBFBD><EFBFBD>Ϣ
Return: -1<EFBFBD><EFBFBD>ʾʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD>û<EFBFBD>IDֵ
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern Int32 NET_DVR_Login_V30(string sDVRIP, Int32 wDVRPort, string sUserName, string sPassword, ref NET_DVR_DEVICEINFO_V30 lpDeviceInfo);
[DllImport(@"HCNetSDK.dll")]
public static extern int NET_DVR_Login_V40(ref NET_DVR_USER_LOGIN_INFO pLoginInfo, ref NET_DVR_DEVICEINFO_V40 lpDeviceInfo);
/*********************************************************
Function: NET_DVR_Logout_V30
Desc: <EFBFBD>û<EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: lUserID [in] <EFBFBD>û<EFBFBD>ID<EFBFBD><EFBFBD>
Output:
Return: TRUE<EFBFBD><EFBFBD>ʾ<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>FALSE<EFBFBD><EFBFBD>ʾʧ<EFBFBD><EFBFBD>
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_Logout_V30(Int32 lUserID);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindNextLog_MATRIX(int iLogHandle, ref NET_DVR_LOG_MATRIX lpLogData);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern int NET_DVR_FindDVRLog_Matrix(int iUserID, int lSelectMode, uint dwMajorType, uint dwMinorType, ref tagVEDIOPLATLOG lpVedioPlatLog, ref NET_DVR_TIME lpStartTime, ref NET_DVR_TIME lpStopTime);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_STDXMLConfig(int iUserID, ref NET_DVR_XML_CONFIG_INPUT lpInputParam, ref NET_DVR_XML_CONFIG_OUTPUT lpOutputParam);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDeviceConfig(int lUserID, uint dwCommand, uint dwCount, IntPtr lpInBuffer, uint dwInBufferSize, IntPtr lpStatusList, IntPtr lpOutBuffer, uint dwOutBufferSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDeviceConfig(int lUserID, uint dwCommand, uint dwCount, IntPtr lpInBuffer, uint dwInBufferSize, IntPtr lpStatusList, IntPtr lpInParamBuffer, uint dwInParamBufferSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetDeviceConfigEx(Int32 lUserID, uint dwCommand, uint dwCount, ref NET_DVR_IN_PARAM lpInParam, ref NET_DVR_OUT_PARAM lpOutParam);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetSTDConfig(int iUserID, uint dwCommand, ref NET_DVR_STD_CONFIG lpConfigParam);
[DllImportAttribute(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetSTDConfig(int iUserID, uint dwCommand, ref NET_DVR_STD_CONFIG lpConfigParam);
public delegate void RemoteConfigCallback(uint dwType, IntPtr lpBuffer, uint dwBufLen, IntPtr pUserData);
[DllImportAttribute(@"HCNetSDK.dll")]
public static extern int NET_DVR_StartRemoteConfig(int lUserID, int dwCommand, IntPtr lpInBuffer, Int32 dwInBufferLen, RemoteConfigCallback cbStateCallback, IntPtr pUserData);
[DllImportAttribute(@"HCNetSDK.dll")]
public static extern int NET_DVR_GetNextRemoteConfig(int lHandle, IntPtr lpOutBuff, int dwOutBuffSize);
[DllImportAttribute(@"HCNetSDK.dll")]
public static extern bool NET_DVR_SendRemoteConfig(int lHandle, int dwDataType, IntPtr pSendBuf, int dwBufSize);
[DllImportAttribute(@"HCNetSDK.dll")]
public static extern bool NET_DVR_StopRemoteConfig(int lHandle);
[DllImportAttribute(@"HCNetSDK.dll")]
public static extern bool NET_DVR_RemoteControl(int lUserID, int dwCommand, IntPtr lpInBuffer, int dwInBufferSize);
[DllImportAttribute(@"HCNetSDK.dll")]
public static extern bool NET_DVR_RemoteControl(int lUserID, int dwCommand, ref CHCNetSDK.NET_DVR_FACE_PARAM_CTRL_CARDNO lpInBuffer, int dwInBufferSize);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ContinuousShoot(Int32 lUserID, ref NET_DVR_SNAPCFG lpInter);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_ManualSnap(Int32 lUserID, ref NET_DVR_MANUALSNAP lpInter, ref NET_DVR_PLATE_RESULT lpOuter);
/*********************************************************
Function: NET_DVR_GetDeviceAbility
Desc:
Input:
Output:
Return: TRUE<EFBFBD><EFBFBD>ʾ<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>FALSE<EFBFBD><EFBFBD>ʾʧ<EFBFBD>ܡ<EFBFBD>
**********************************************************/
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetDeviceAbility(int lUserID, uint dwAbilityType, IntPtr pInBuf, uint dwInLength, IntPtr pOutBuf, uint dwOutLength);
//<2F><><EFBFBD><EFBFBD>/<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetBehaviorParamKey(int lUserID, int lChannel, uint dwParameterKey, int nValue);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetBehaviorParamKey(int lUserID, int lChannel, uint dwParameterKey, ref int pValue);
//<2F><>ȡ/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>Ϊʶ<CEAA><CAB6>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>ӽӿ<D3BD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetVCADrawMode(int lUserID, int lChannel, ref NET_VCA_DRAW_MODE lpDrawMode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetVCADrawMode(int lUserID, int lChannel, ref NET_VCA_DRAW_MODE lpDrawMode);
//˫<><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD>ýӿ<C3BD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetLFTrackMode(int lUserID, int lChannel, ref NET_DVR_LF_TRACK_MODE lpTrackMode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetLFTrackMode(int lUserID, int lChannel, ref NET_DVR_LF_TRACK_MODE lpTrackMode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetCCDCfg(int lUserID, int lChannel, ref NET_DVR_CCD_CFG lpCCDCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_SetCCDCfg(int lUserID, int lChannel, ref NET_DVR_CCD_CFG lpCCDCfg);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_GetParamSetMode(int lUserID, ref uint dwParamSetMode);
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_DVR_InquestStartCDW_V30(int lUserID, ref NET_DVR_INQUEST_ROOM lpInquestRoom, bool bNotBurn);
#endregion
#region <EFBFBD><EFBFBD>Ϣ<EFBFBD>¼<EFBFBD>
[DllImport("User32.dll", EntryPoint = "PostMessage")]
public static extern int PostMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
#endregion
//ʶ<>𳡾<EFBFBD>
public enum VCA_RECOGNIZE_SCENE
{
VCA_LOW_SPEED_SCENE = 0,//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>շ<EFBFBD>վ<EFBFBD><D5BE>С<EFBFBD><D0A1><EFBFBD>ſڡ<C5BF>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
VCA_HIGH_SPEED_SCENE = 1,//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڡ<EFBFBD><DAA1><EFBFBD><EFBFBD>ٹ<EFBFBD>·<EFBFBD><C2B7><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>)
VCA_MOBILE_CAMERA_SCENE = 2,//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ã<EFBFBD>
}
//ʶ<><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
public enum VCA_RECOGNIZE_RESULT
{
VCA_RECOGNIZE_FAILURE = 0,//ʶ<><CAB6>ʧ<EFBFBD><CAA7>
VCA_IMAGE_RECOGNIZE_SUCCESS,//ͼ<><CDBC>ʶ<EFBFBD><CAB6><EFBFBD>ɹ<EFBFBD>
VCA_VIDEO_RECOGNIZE_SUCCESS_OF_BEST_LICENSE,//<2F><>Ƶʶ<C6B5><CAB6><EFBFBD><EFBFBD><EFBFBD>Ž<EFBFBD><C5BD><EFBFBD>
VCA_VIDEO_RECOGNIZE_SUCCESS_OF_NEW_LICENSE,//<2F><>Ƶʶ<C6B5><CAB6><EFBFBD><EFBFBD><EFBFBD>µij<C2B5><C4B3><EFBFBD>
VCA_VIDEO_RECOGNIZE_FINISH_OF_CUR_LICENSE,//<2F><>Ƶʶ<C6B5><CAB6><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>
}
//<2F><>Ƶʶ<C6B5>𴥷<EFBFBD><F0B4A5B7><EFBFBD><EFBFBD><EFBFBD>
public enum VCA_TRIGGER_TYPE
{
INTER_TRIGGER = 0,// ģ<><C4A3><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>
EXTER_TRIGGER = 1,// <20>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD><EFBFBD>źŴ<C5BA><C5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȧ<EFBFBD><C8A6><EFBFBD>״<D7B4>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źţ<C5BA>
}
public const int MAX_CHINESE_CHAR_NUM = 64; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD>ƿɶ<C6BF>̬<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_PLATE_PARAM
{
public NET_VCA_RECT struSearchRect;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>һ<EFBFBD><D2BB>)
public NET_VCA_RECT struInvalidateRect;//<2F><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD> (<28><>һ<EFBFBD><D2BB>)
public ushort wMinPlateWidth;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
public ushort wTriggerDuration;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>
public byte byTriggerType;//<2F><><EFBFBD><EFBFBD>ģʽ, VCA_TRIGGER_TYPE
public byte bySensitivity;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 64, ArraySubType = UnmanagedType.I1)]
public byte[] byCharPriority;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
}
/*wMinPlateWidth:<EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ80<EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD>ڳ<EFBFBD><EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>
ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ù<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD>ƾͻ<EFBFBD>©ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><EFBFBD>ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ձ<EFBFBD><EFBFBD>ϴ󣬿<EFBFBD><EFBFBD>԰Ѹò<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ󣬱<EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD>ٶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٳ<EFBFBD><EFBFBD>ƵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ80<EFBFBD><EFBFBD> <EFBFBD>ڸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ120
wTriggerDuration <EFBFBD><EFBFBD> <EFBFBD>ⲿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źų<EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǴӴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>źſ<EFBFBD>ʼʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>ڵ<EFBFBD><EFBFBD>ٳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ50<EFBFBD><EFBFBD>100<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ15<EFBFBD><EFBFBD>25<EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>ʶ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD>ⲿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ15<EFBFBD><EFBFBD>25<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӽṹ
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_PLATEINFO
{
public VCA_RECOGNIZE_SCENE eRecogniseScene;//ʶ<>𳡾<EFBFBD>(<28><><EFBFBD>ٺ͸<D9BA><CDB8><EFBFBD>)
public NET_VCA_PLATE_PARAM struModifyParam;//<2F><><EFBFBD>ƿɶ<C6BF>̬<EFBFBD>޸IJ<DEB8><C4B2><EFBFBD>
}
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_PLATECFG
{
public uint dwSize;
public byte byPicProType;//<2F><><EFBFBD><EFBFBD>ʱͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D>ϴ<EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
public NET_DVR_JPEGPARA struPictureParam;//ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD>
public NET_VCA_PLATEINFO struPlateInfo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT_2, ArraySubType = UnmanagedType.Struct)]
public NET_DVR_SCHEDTIME[] struAlarmTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public NET_DVR_HANDLEEXCEPTION_V30 struHandleType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_CHANNUM_V30, ArraySubType = UnmanagedType.I1)]
public byte[] byRelRecordChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͨ<EFBFBD><CDA8>,Ϊ1<CEAA><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
}
//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӽṹ
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct NET_VCA_PLATE_INFO
{
public VCA_RECOGNIZE_RESULT eResultFlag;//ʶ<><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
public VCA_PLATE_TYPE ePlateType;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public VCA_PLATE_COLOR ePlateColor;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
public NET_VCA_RECT struPlateRect;//<2F><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0
public uint dwLicenseLen;//<2F><><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_LICENSE_LEN)]
public string sLicense;//<2F><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValTStr, SizeConst = MAX_LICENSE_LEN)]
public string sBelieve;//<2F><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷȣ<C5B6><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B5BD><EFBFBD><EFBFBD>"<22><>A12345", <20><><EFBFBD>Ŷ<EFBFBD>Ϊ10,20,30,40,50,60,70<37><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ"<22><>"<22><><EFBFBD><EFBFBD>ȷ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB>10%<25><>"A"<22>ֵ<EFBFBD><D6B5><EFBFBD>ȷ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20%
}
//<2F><><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_PLATE_RESULT
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public uint dwRelativeTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public uint dwAbsTime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
public byte byPlateNum;//<2F><><EFBFBD>Ƹ<EFBFBD><C6B8><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = UnmanagedType.I1)]
public byte[] byRes1;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_PLATE_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_PLATE_INFO[] struPlateInfo;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>
public uint dwPicDataLen;//<2F><><EFBFBD><EFBFBD>ͼƬ<CDBC>ij<EFBFBD><C4B3><EFBFBD> Ϊ0<CEAA><30>ʾû<CABE><C3BB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes2;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0 ͼƬ<CDBC>ĸ߿<C4B8>
public System.IntPtr pImage;//ָ<><D6B8>ͼƬ<CDBC><C6AC>ָ<EFBFBD><D6B8>
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD>
[DllImport(@".\HCNetSDK.dll")]
public static extern bool NET_VCA_RestartLib(int lUserID, int lChannel);
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_LINE_SEGMENT
{
public NET_VCA_POINT struStartPoint;//<2F><>ʾ<EFBFBD>߶<EFBFBD><DFB6><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʾͷ<CABE><CDB7><EFBFBD><EFBFBD>
public NET_VCA_POINT struEndPoint;//<2F><>ʾ<EFBFBD>߶<EFBFBD><DFB6><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>
public float fValue;//<2F>߶<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_VCA_LINE_SEG_LIST
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte bySegNum;//<2F><EFBFBD><EAB6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 3, ArraySubType = System.Runtime.InteropServices.UnmanagedType.I1)]
public byte[] byRes;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_SEGMENT_NUM, ArraySubType = UnmanagedType.Struct)]
public NET_VCA_LINE_SEGMENT[] struSeg;
}
//2009-8-18 ץ<>Ļ<EFBFBD>
public const int PLATE_INFO_LEN = 1024;
public const int PLATE_NUM_LEN = 16;
public const int FILE_NAME_LEN = 256;
//liscense plate result
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_PLATE_RET
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PLATE_NUM_LEN, ArraySubType = UnmanagedType.I1)]
public byte[] byPlateNum;//<2F><><EFBFBD>ƺ<EFBFBD>
public byte byVehicleType;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public byte byTrafficLight;//0-<2D>̵ƣ<CCB5>1-<2D><><EFBFBD><EFBFBD>
public byte byPlateColor;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
public byte byDriveChan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 32, ArraySubType = UnmanagedType.I1)]
public byte[] byTimeInfo;/*ʱ<><CAB1><EFBFBD><EFBFBD>Ϣ*///plate_172.6.113.64_20090724155526948_197170484
//Ŀǰ<C4BF><C7B0>17λ<37><CEBB><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>ms:20090724155526948
public byte byCarSpeed;/*<2A><>λkm/h*/
public byte byCarSpeedH;/*cm/s<><73>8λ*/
public byte byCarSpeedL;/*cm/s<><73>8λ*/
public byte byRes;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = PLATE_INFO_LEN - 36, ArraySubType = UnmanagedType.I1)]
public byte[] byInfo;
public uint dwPicLen;
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct NET_DVR_CCD_CFG
{
public uint dwSize;//<2F><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
public byte byBlc;/*<2A><><EFBFBD><EFBFBD><E2B2B9>0-off; 1-on*/
public byte byBlcMode;/*blc<6C><63><EFBFBD><EFBFBD>0-<2D>Զ<EFBFBD><D4B6><EFBFBD>1-<2D>ϣ<EFBFBD>2-<2D>£<EFBFBD>3-<2D><><EFBFBD><EFBFBD>4-<2D>ң<EFBFBD>5-<2D>У<EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>blcΪ on ʱ<><CAB1><EFBFBD><EFBFBD>Ч*/
public byte byAwb;/*<2A>Զ<EFBFBD><D4B6><EFBFBD>ƽ<EFBFBD><C6BD>0-<2D>Զ<EFBFBD>1; 1-<2D>Զ<EFBFBD>2; 2-<2D>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>*/
public byte byAgc;/*<2A>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>0-<2D><>; 1-<2D><>; 2-<2D><>; 3-<2D><>*/
public byte byDayNight;/*<2A><>ҹת<D2B9><D7AA><EFBFBD><EFBFBD>0 <20><>ɫ<EFBFBD><C9AB>1<EFBFBD>ڰף<DAB0>2<EFBFBD>Զ<EFBFBD>*/
public byte byMirror;/*<2A><><EFBFBD><EFBFBD>0-<2D><>;1-<2D><><EFBFBD><EFBFBD>;2-<2D><><EFBFBD><EFBFBD>;3-<2D><><EFBFBD><EFBFBD>*/
public byte byShutter;/*<2A><><EFBFBD><EFBFBD>0-<2D>Զ<EFBFBD>; 1-1/25; 2-1/50; 3-1/100; 4-1/250;5-1/500; 6-1/1k ;7-1/2k; 8-1/4k; 9-1/10k; 10-1/100k;*/
public byte byIrCutTime;/*IRCUT<55>л<EFBFBD>ʱ<EFBFBD>䣬5, 10, 15, 20, 25*/
public byte byLensType;/*<2A><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>0-<2D><><EFBFBD>ӹ<EFBFBD>Ȧ; 1-<2D>Զ<EFBFBD><D4B6><EFBFBD>Ȧ*/
public byte byEnVideoTrig;/*<2A><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>1-֧<>֣<EFBFBD>0-<2D><>֧<EFBFBD>֡<EFBFBD><D6A1><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ٶȰ<D9B6><C8B0><EFBFBD>byShutter<65>ٶȣ<D9B6>ץ<EFBFBD><D7A5>ͼƬ<CDBC>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ٶȰ<D9B6><C8B0><EFBFBD>byCapShutter<65>ٶȣ<D9B6>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD>Ƶģʽ*/
public byte byCapShutter;/*ץ<><D7A5>ʱ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ٶȣ<D9B6>1-1/25; 2-1/50; 3-1/100; 4-1/250;5-1/500; 6-1/1k ;7-1/2k; 8-1/4k; 9-1/10k; 10-1/100k; 11-1/150; 12-1/200*/
public byte byEnRecognise;/*1-֧<><D6A7>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>0-<2D><>֧<EFBFBD><D6A7>ʶ<EFBFBD><CAB6>*/
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct tagCAMERAPARAMCFG
{
public uint dwSize;
public uint dwPowerLineFrequencyMode;/*0-50HZ; 1-60HZ*/
public uint dwWhiteBalanceMode;/*0<>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD>; 1<>Զ<EFBFBD><D4B6><EFBFBD>ƽ<EFBFBD><C6BD>1<EFBFBD><31><EFBFBD><EFBFBD>ΧС<CEA7><D0A1>; 2 <20>Զ<EFBFBD><D4B6><EFBFBD>ƽ<EFBFBD><C6BD>2<EFBFBD><32><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD>2200K-15000K<30><4B>;3<>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>3*/
public uint dwWhiteBalanceModeRGain;/*<2A>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD> R<><52><EFBFBD><EFBFBD>*/
public uint dwWhiteBalanceModeBGain;/*<2A>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>ƽ<EFBFBD><C6BD> B<><42><EFBFBD><EFBFBD>*/
public uint dwExposureMode;/*0 <20>ֶ<EFBFBD><D6B6>ع<EFBFBD> 1<>Զ<EFBFBD><D4B6>ع<EFBFBD>*/
public uint dwExposureSet;/* 0-USERSET, 1-<2D>Զ<EFBFBD>x2<78><32>2-<2D>Զ<EFBFBD>4<EFBFBD><34>3-<2D>Զ<EFBFBD>81/25, 4-1/50, 5-1/100, 6-1/250, 7-1/500, 8-1/750, 9-1/1000, 10-1/2000, 11-1/4000,12-1/10,000; 13-1/100,000*/
public uint dwExposureUserSet;/* <20>Զ<EFBFBD><D4B6>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ع<EFBFBD>ʱ<EFBFBD><CAB1>*/
public uint dwExposureTarget;/*<2A>ֶ<EFBFBD><D6B6>ع<EFBFBD>ʱ<EFBFBD><CAB1> <20><>Χ<EFBFBD><CEA7>Manumal<61><6C>Ч<EFBFBD><D0A7>΢<EFBFBD>룩*/
public uint dwIrisMode;/*0 <20>Զ<EFBFBD><D4B6><EFBFBD>Ȧ 1<>ֶ<EFBFBD><D6B6><EFBFBD>Ȧ*/
public uint dwGainLevel;/*<2A><><EFBFBD>棺0-100*/
public uint dwBrightnessLevel;/*0-100*/
public uint dwContrastLevel;/*0-100*/
public uint dwSharpnessLevel;/*0-100*/
public uint dwSaturationLevel;/*0-100*/
public uint dwHueLevel;/*0-100<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
public uint dwGammaCorrectionEnabled;/*0 dsibale 1 enable*/
public uint dwGammaCorrectionLevel;/*0-100*/
public uint dwWDREnabled;/*<2A><><EFBFBD><EFBFBD>̬<EFBFBD><CCAC>0 dsibale 1 enable*/
public uint dwWDRLevel1;/*0-F*/
public uint dwWDRLevel2;/*0-F*/
public uint dwWDRContrastLevel;/*0-100*/
public uint dwDayNightFilterType;/*<2A><>ҹ<EFBFBD>л<EFBFBD><D0BB><EFBFBD>0 day,1 night,2 auto */
public uint dwSwitchScheduleEnabled;/*0 dsibale 1 enable,(<28><><EFBFBD><EFBFBD>)*/
//ģʽ1(<28><><EFBFBD><EFBFBD>)
public uint dwBeginTime; /*0-100*/
public uint dwEndTime;/*0-100*/
//ģʽ2
public uint dwDayToNightFilterLevel;//0-7
public uint dwNightToDayFilterLevel;//0-7
public uint dwDayNightFilterTime;//(60<36><30>)
public uint dwBacklightMode;/*<2A><><EFBFBD><EFBFBD><E2B2B9>:0 USERSET 1 UP<55><50>2 DOWN<57><4E>3 LEFT<46><54>4 RIGHT<48><54>5MIDDLE*/
public uint dwPositionX1;//<2F><>X<EFBFBD><58><EFBFBD><EFBFBD>1<EFBFBD><31>
public uint dwPositionY1;//<2F><>Y<EFBFBD><59><EFBFBD><EFBFBD>1<EFBFBD><31>
public uint dwPositionX2;//<2F><>X<EFBFBD><58><EFBFBD><EFBFBD>2<EFBFBD><32>
public uint dwPositionY2;//<2F><>Y<EFBFBD><59><EFBFBD><EFBFBD>2<EFBFBD><32>
public uint dwBacklightLevel;/*0x0-0xF*/
public uint dwDigitalNoiseRemoveEnable; /*<2A><><EFBFBD><EFBFBD>ȥ<EFBFBD>룺0 dsibale 1 enable*/
public uint dwDigitalNoiseRemoveLevel;/*0x0-0xF*/
public uint dwMirror; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0 Left;1 Right,;2 Up;3Down */
public uint dwDigitalZoom;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:0 dsibale 1 enable*/
public uint dwDeadPixelDetect;/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 dsibale 1 enable*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.U4)]
public uint[] dwRes;
}
public const int NET_DVR_GET_CCDPARAMCFG = 1067; //IPC<50><43>ȡCCD<43><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public const int NET_DVR_SET_CCDPARAMCFG = 1068; //IPC<50><43><EFBFBD><EFBFBD>CCD<43><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>
//ͼ<><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct tagIMAGEREGION
{
public uint dwSize;//<2F>ܵĽṹ<C4BD><E1B9B9><EFBFBD><EFBFBD>
public ushort wImageRegionTopLeftX;/* ͼ<><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD> */
public ushort wImageRegionTopLeftY;/* ͼ<><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD> */
public ushort wImageRegionWidth;/* ͼ<><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD> */
public ushort wImageRegionHeight;/*ͼ<><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>*/
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
//ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ȥ<EFBFBD><EFBFBD><EBBCB6><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct tagIMAGESUBPARAM
{
public NET_DVR_SCHEDTIME struImageStatusTime;//ͼ<><CDBC>״̬ʱ<CCAC><CAB1><EFBFBD><EFBFBD>
public byte byImageEnhancementLevel;//ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>0-7<><37>0<EFBFBD><30>ʾ<EFBFBD>ر<EFBFBD>
public byte byImageDenoiseLevel;//ͼ<><CDBC>ȥ<EFBFBD><C8A5><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>0-7<><37>0<EFBFBD><30>ʾ<EFBFBD>ر<EFBFBD>
public byte byImageStableEnable;//ͼ<><CDBC><EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD>ʹ<EFBFBD>ܣ<EFBFBD>0<EFBFBD><30>ʾ<EFBFBD>رգ<D8B1>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 9, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
public const int NET_DVR_GET_IMAGEREGION = 1062; //ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public const int NET_DVR_SET_IMAGEREGION = 1063; //ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ǿȥ<C7BF><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ
public const int NET_DVR_GET_IMAGEPARAM = 1064; // ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><EBA1A2>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD>ʹ<EFBFBD><CAB9>)<29><>ȡ
public const int NET_DVR_SET_IMAGEPARAM = 1065; // ͼ<><CDBC><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><EBA1A2>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD>ʹ<EFBFBD><CAB9>)<29><><EFBFBD><EFBFBD>
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct tagIMAGEPARAM
{
public uint dwSize;
//ͼ<><CDBC><EFBFBD><EFBFBD>ǿʱ<C7BF><CAB1><EFBFBD>β<EFBFBD><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>տ<EFBFBD>ʼ
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = MAX_DAYS * MAX_TIMESEGMENT, ArraySubType = UnmanagedType.Struct)]
public tagIMAGESUBPARAM[] struImageParamSched;
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I1)]
public byte[] byRes;
}
}
}